non-working new Makefile
This commit is contained in:
parent
609ee430aa
commit
b5dd2decd0
69
proc/module.mk
Normal file
69
proc/module.mk
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
# Google "recursive make considered harmful" for how this works.
|
||||||
|
|
||||||
|
SRC += $(wildcard proc/*.c) $(wildcard proc/*.c)
|
||||||
|
|
||||||
|
------
|
||||||
|
|
||||||
|
# PROJECT SPECIFIC MACROS
|
||||||
|
NAME = proc
|
||||||
|
|
||||||
|
# INSTALLATION OPTIONS
|
||||||
|
TOPDIR = /usr
|
||||||
|
HDRDIR = $(TOPDIR)/include/$(NAME)# where to put .h files
|
||||||
|
LIBDIR = $(TOPDIR)/lib# where to put library files
|
||||||
|
SHLIBDIR = /lib# where to put shared library files
|
||||||
|
HDROWN = $(OWNERGROUP) # owner of header files
|
||||||
|
LIBOWN = $(OWNERGROUP) # owner of library files
|
||||||
|
INSTALL = install
|
||||||
|
|
||||||
|
SRC = $(sort $(wildcard *.c) $(filter %.c,$(RCSFILES)))
|
||||||
|
HDR = $(sort $(wildcard *.h) $(filter %.h,$(RCSFILES)))
|
||||||
|
OBJ = $(SRC:.c=.o)
|
||||||
|
|
||||||
|
|
||||||
|
SONAME = lib$(NAME).so.$(LIBVERSION)
|
||||||
|
|
||||||
|
ifeq ($(SHARED),1)
|
||||||
|
CFLAGS += -fpic
|
||||||
|
all: lib$(NAME).a $(SONAME)
|
||||||
|
else
|
||||||
|
all: lib$(NAME).a
|
||||||
|
endif
|
||||||
|
|
||||||
|
lib$(NAME).a: $(OBJ)
|
||||||
|
$(AR) rcs $@ $^
|
||||||
|
|
||||||
|
$(SONAME): $(OBJ)
|
||||||
|
gcc -shared -Wl,-soname,$(SONAME) -o $@ $^ -lc
|
||||||
|
ln -sf $(SONAME) lib$(NAME).so
|
||||||
|
|
||||||
|
|
||||||
|
# AUTOMATIC DEPENDENCY GENERATION -- GCC AND GNUMAKE DEPENDENT
|
||||||
|
.depend:
|
||||||
|
$(strip $(CC) $(CFLAGS) -MM -MG $(SRC) > .depend)
|
||||||
|
-include .depend
|
||||||
|
|
||||||
|
|
||||||
|
# INSTALLATION
|
||||||
|
install: all
|
||||||
|
if ! [ -d $(HDRDIR) ] ; then mkdir $(HDRDIR) ; fi
|
||||||
|
$(INSTALL) $(HDROWN) $(HDR) $(TOPDIR)/include/$(NAME)
|
||||||
|
$(INSTALL) $(LIBOWN) lib$(NAME).a $(LIBDIR)
|
||||||
|
ifeq ($(SHARED),1)
|
||||||
|
$(INSTALL) $(LIBOWN) $(SONAME) $(SHLIBDIR)
|
||||||
|
cd $(SHLIBDIR) && ln -sf $(SONAME) lib$(NAME).so
|
||||||
|
ldconfig
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
# CUSTOM c -> o rule so that command-line has minimal whitespace
|
||||||
|
%.o : %.c
|
||||||
|
$(strip $(CC) $(CFLAGS) -c $<)
|
||||||
|
|
||||||
|
|
||||||
|
version.o: version.c version.h
|
||||||
|
ifdef MINORVERSION
|
||||||
|
$(strip $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -DSUBVERSION=\"$(SUBVERSION)\" -DMINORVERSION=\"$(MINORVERSION)\" -c version.c)
|
||||||
|
else
|
||||||
|
$(strip $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" -DSUBVERSION=\"$(SUBVERSION)\" -c version.c)
|
||||||
|
endif
|
39
ps/module.mk
Executable file
39
ps/module.mk
Executable file
@ -0,0 +1,39 @@
|
|||||||
|
INSTALL += install_ps
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
|
all: ps
|
||||||
|
|
||||||
|
ps: escape.o global.o help.o select.o sortformat.o output.o parser.o display.o
|
||||||
|
$(CC) -o ps escape.o global.o help.o select.o sortformat.o output.o parser.o display.o -L../proc -lproc
|
||||||
|
|
||||||
|
# This just adds the stacktrace code
|
||||||
|
debug: escape.o global.o help.o select.o sortformat.o output.o parser.o display.o stacktrace.o
|
||||||
|
$(CC) -o ps escape.o global.o help.o select.o sortformat.o output.o parser.o display.o stacktrace.o -L../proc -lproc -lefence
|
||||||
|
|
||||||
|
sortformat.o: sortformat.c common.h
|
||||||
|
|
||||||
|
global.o: global.c common.h
|
||||||
|
|
||||||
|
escape.o: escape.c
|
||||||
|
|
||||||
|
help.o: help.c
|
||||||
|
|
||||||
|
select.o: select.c common.h
|
||||||
|
|
||||||
|
output.o: output.c common.h
|
||||||
|
|
||||||
|
parser.o: parser.c common.h
|
||||||
|
|
||||||
|
display.o: display.c common.h
|
||||||
|
|
||||||
|
stacktrace.o: stacktrace.c
|
||||||
|
|
||||||
|
|
||||||
|
install: ps
|
||||||
|
install $(OWNERGROUP) --mode a=rx --strip ps $(BINDIR)/ps
|
||||||
|
install $(OWNERGROUP) --mode a=r ps.1 $(MAN1DIR)/ps.1
|
||||||
|
-rm -f $(DESTDIR)/var/catman/cat1/ps.1.gz $(DESTDIR)/var/man/cat1/ps.1.gz
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f *.o DEADJOE *~ core ps gmon.out
|
Loading…
x
Reference in New Issue
Block a user