17 |
LIBFILES= bcmp.o bcopy.o bzero.o user_init.o user_match.o |
LIBFILES= bcmp.o bcopy.o bzero.o user_init.o user_match.o |
18 |
# compile main.c with -g, since signalling may not be ok on -O |
# compile main.c with -g, since signalling may not be ok on -O |
19 |
MAIN_DEBUG= |
MAIN_DEBUG= |
20 |
DPP = ../bin/dpp |
DPP = ../bin/dpp$(EXE) |
21 |
|
|
22 |
|
DECL := $(HDIR)/new_decl.h |
23 |
|
|
24 |
# AUX_INFO=-aux-info $*.X |
# AUX_INFO=-aux-info $*.X |
25 |
.c.o: |
%.o: %.c $(DECL) |
26 |
$(CC) -c $(CFLAGS) $(DEFS) $*.c $(AUX_INFO) |
$(CC) -c $(CFLAGS) $(DEFS) $*.c $(AUX_INFO) |
27 |
.d.o: |
%.o: %.d $(DECL) |
28 |
$(DPP) $* |
$(DPP) $* |
29 |
$(CC) -c $(CFLAGS) $(DEFS) $*.c $(AUX_INFO) |
$(CC) -c $(CFLAGS) $(DEFS) $*.c $(AUX_INFO) |
30 |
rm $*.c |
rm $*.c |
31 |
|
|
32 |
CPP= |
CPP= |
33 |
.c.ini: |
%.ini: %.c grab_defs |
34 |
|
[ -e $(DECL) ] || touch $(DECL) |
35 |
$(CC) -DNO_DEFUN $(CFLAGS) $(DEFS) -E $*.c | sed -e 's:\"[ ]*):\"):g' | ./grab_defs > $*.ini |
$(CC) -DNO_DEFUN $(CFLAGS) $(DEFS) -E $*.c | sed -e 's:\"[ ]*):\"):g' | ./grab_defs > $*.ini |
36 |
|
|
37 |
.d.ini: |
%.ini: %.d $(DPP) grab_defs |
38 |
|
[ -e $(DECL) ] || touch $(DECL) |
39 |
$(DPP) $* |
$(DPP) $* |
40 |
./grab_defs < $*.c > $*.ini |
./grab_defs < $*.c > $*.ini |
41 |
rm $*.c |
rm $*.c |
84 |
$(OD)init_pari.o $(OD)nsocket.o $(NEW_INIT) $(MPFILES) $(SFASL) $(EXTRAS) \ |
$(OD)init_pari.o $(OD)nsocket.o $(NEW_INIT) $(MPFILES) $(SFASL) $(EXTRAS) \ |
85 |
$(RL_OBJS) |
$(RL_OBJS) |
86 |
|
|
87 |
all: ../bin/dpp${EXE} $(OBJS) new-init $(LIBFILES) new_init.o $(GCLIB) $(LAST_FILE) $(FIRST_FILE) |
INI_FILES=$(patsubst %.o,%.ini,${OBJS}) |
88 |
|
|
89 |
|
all: $(OBJS) $(LIBFILES) new_init.o $(GCLIB) $(LAST_FILE) $(FIRST_FILE) |
90 |
|
|
91 |
go: |
go: |
92 |
$(MAKE) "CFLAGS=${CFLAGS} -pg" |
$(MAKE) "CFLAGS=${CFLAGS} -pg" |
93 |
|
|
94 |
../bin/dpp${EXE}: ../bin/dpp.c |
$(DPP): ../bin/dpp.c |
95 |
${CC} ${DEFS} -o ../bin/dpp${EXE} ../bin/dpp.c |
${CC} ${DEFS} -o $@ $< |
96 |
|
|
97 |
|
|
98 |
new-init: grab_defs |
new-init: |
99 |
$(MAKE) new_init.c decls1 "INI_FILES=`echo ${OBJS} | sed -e 's:\.o:.ini:g' -e 's:new_init.o::g' `" |
$(MAKE) new_init.c decls1 |
100 |
|
|
101 |
new_init.c: ${INI_FILES} |
new_init.c: ${INI_FILES} |
102 |
echo '#include "make-init.h"' > new_init.c |
echo '#include "make-init.h"' > new_init.c |
105 |
echo '}' >> new_init.c |
echo '}' >> new_init.c |
106 |
|
|
107 |
ifneq ($(NIFLAGS),) |
ifneq ($(NIFLAGS),) |
108 |
new_init.o: new_init.c |
new_init.o: new_init.c $(DECL) |
109 |
$(CC) -c $(NIFLAGS) $(DEFS) $< -o $@ |
$(CC) -c $(NIFLAGS) $(DEFS) $< -o $@ |
110 |
endif |
endif |
111 |
|
|
112 |
decls1: |
decls1: $(INI_FILES) |
113 |
echo '#include "make-decl.h"' > foo.c |
echo '#include "make-decl.h"' > foo.c |
114 |
cat ${INI_FILES} >> foo.c |
cat ${INI_FILES} >> foo.c |
115 |
${CC} -E -I${HDIR} foo.c | sed -n -e '/#/d' -e '/DO_/d' -e '/[a-zA-Z;]/p' > tmpx |
${CC} -E -I${HDIR} foo.c | sed -n -e '/#/d' -e '/DO_/d' -e '/[a-zA-Z;]/p' > tmpx |
116 |
../xbin/move-if-changed mv tmpx ${HDIR}new_decl.h |
../xbin/move-if-changed mv tmpx ${HDIR}new_decl.h |
117 |
|
|
118 |
|
$(DECL): $(HDIR)/make-decl.h $(INI_FILES) |
119 |
|
echo '#include "make-decl.h"' > foo.c |
120 |
|
cat ${INI_FILES} >> foo.c |
121 |
|
${CC} -E -I${HDIR} foo.c | sed -n -e '/#/d' -e '/DO_/d' -e '/[a-zA-Z;]/p' > $@ |
122 |
|
rm foo.c |
123 |
|
|
124 |
grab_defs: grab_defs.c |
grab_defs: grab_defs.c |
125 |
${CC} $(OFLAGS) -o grab_defs grab_defs.c |
${CC} $(OFLAGS) -o grab_defs grab_defs.c |
132 |
$(AR) gcllib.a ${ALIB} |
$(AR) gcllib.a ${ALIB} |
133 |
${RANLIB} gcllib.a |
${RANLIB} gcllib.a |
134 |
clean: |
clean: |
135 |
rm -f $(OBJS) ${ALIB} new_init.o $(LAST_FILE) $(FIRST_FILE) *.a grab_defs$(EXE) *.ini tmpx foo.c cmpinclude.h new_init.c |
rm -f $(OBJS) ${ALIB} new_init.o $(LAST_FILE) $(FIRST_FILE) *.a grab_defs$(EXE) *.ini tmpx foo.c cmpinclude.h new_init.c $(DECL) |
136 |
|
|
137 |
fsavres.o: /lib/libc.a |
fsavres.o: /lib/libc.a |
138 |
ar xv /lib/libc.a fsavres.o |
ar xv /lib/libc.a fsavres.o |