inclhack.def inclhack.tpl hackshell.tpl fixincl.tpl
TARGETS = $(SH_TARGET) $(BIN_TARGET)
-default : fixincl.sh
+default : gen
all : $(TARGETS)
sh : $(SH_TARGET)
+gen : $(SH_TARGET) fixincl.x
$(OBJ): $(HDR)
-fixincl.o: fixincl.x
fixincl: $(OBJ)
+ @echo $(CC) -o $@ $(OBJ) $(LIB) ; \
if $(CC) -o $@ $(OBJ) $(LIB) ; then : ; else \
rm -f $@ ; (echo "#! /bin/sh" ; echo exit 1 ) > $@ ; \
chmod 777 $@ ; fi
regex.o: regex.c
- $(CC) -g -DSTDC_HEADERS=1 -c regex.c
+ -$(CC) -g -DSTDC_HEADERS=1 -c regex.c
+
+fixincl.o : fixincl.x fixincl.c
+ -$(CC) $(CFLAGS) -o $@ -c fixincl.c
+
+server.o : server.c server.h
+ -$(CC) $(CFLAGS) -o $@ -c server.c
fixincl.x: fixincl.tpl inclhack.def
@if ( autogen --help > /dev/null 2>&1 ) ; then \
autogen inclhack.def ; \
else echo You need to install autogen ; touch $@ ; fi
-fixincl.sh: inclhack.def inclhack.tpl fixincl inclhack.sh
- @if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
- if ( autogen --help > /dev/null 2>&1 ) ; then \
+fixincl.sh: inclhack.def inclhack.tpl
+ @if ( autogen --help > /dev/null 2>&1 ) ; then \
echo autogen -DPROGRAM=1 -b fixincl inclhack.def ; \
autogen -DPROGRAM=1 -b fixincl inclhack.def ; touch $@ ; \
- else echo You need to install autogen ; touch $@ ; fi ; \
- else cp inclhack.sh $@ ; echo cp inclhack.sh $@ ; fi
+ else echo You need to install autogen ; touch $@ ; fi ; \
clean:
- rm -f *.o fixincl
+ rm -f *.o $(TARGETS) fixincl.x
-install: fixincl.sh
+# Ensure all the targets are built. If the program "fixincl"
+# failed to compile, link or load, then we install the
+# "inclhack.sh" script. Otherwise, we install that program
+# plus the wrapper script, "fixincl.sh".
+#
+install: $(TARGETS)
@rm -f $(DESTDIR)/fixinc.sh ; \
+ if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
echo cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
cp fixincl.sh $(DESTDIR)/fixinc.sh ; \
- chmod 555 $(DESTDIR)/fixinc.sh
- @echo check for fixincl copy...
- @if ( ./fixincl -v > /dev/null 2>&1 ) ; then \
- rm -f $(DESTDIR)/fixincl ; \
+ chmod 555 $(DESTDIR)/fixinc.sh ; \
+ rm -f $(DESTDIR)/fixincl ; \
echo cp fixincl $(DESTDIR) ; \
cp fixincl $(DESTDIR) ; \
- chmod 555 $(DESTDIR)/fixincl ; fi
+ chmod 555 $(DESTDIR)/fixincl ; \
+ else \
+ echo cp inclhack.sh $(DESTDIR)/fixinc.sh ; \
+ cp inclhack.sh $(DESTDIR)/fixinc.sh ; \
+ fi