#! /usr/bin/make all: $(SHARED_LIBS) $(EXTRAS) experimental: $(EXTRAS_EXP) # Have to handle extensions which no longer exist. clean: $(EXTRA_CLEANS) rm -f $(SHARED_LIBS) $(EXTRAS) $(EXTRAS_EXP) $(SHARED_LIBS:%.so=%_sh.o) rm -f extensions/initext.c extensions/initext6.c @find . -name '*.[ao]' -o -name '*.so' | xargs rm -f install: all $(EXTRA_INSTALLS) @if [ -f /usr/local/bin/iptables -a "$(BINDIR)" = "/usr/local/sbin" ];\ then echo 'Erasing iptables from old location (now /usr/local/sbin).';\ rm -f /usr/local/bin/iptables;\ fi install-experimental: $(EXTRA_INSTALLS_EXP) TAGS: @rm -f $@ find . -name '*.[ch]' | xargs etags -a dep: $(DEPFILES) $(EXTRA_DEPENDS) @echo Dependencies will be generated on next make. rm -f $(DEPFILES) $(EXTRA_DEPENDS) .makefirst $(SHARED_LIBS:%.so=%.d): %.d: %.c @-$(CC) -M -MG $(CFLAGS) $< | \ sed -e 's@^.*\.o:@$*.d $*_sh.o:@' > $@ $(SHARED_LIBS): %.so : %_sh.o $(LD) -shared -o $@ $< %_sh.o : %.c $(CC) $(SH_CFLAGS) -o $@ -c $< .makefirst: @echo Making dependencies: please wait... @touch .makefirst # This is useful for when dependencies completely screwed %.h:: @echo Something wrong... deleting dependencies. @-rm -f $(DEPFILES) $(EXTRA_DEPENDS) .makefirst @[ -d $(KERNEL_DIR)/include/linux/netfilter_ipv4 ] || echo -e '\n\n Please try `make KERNEL_DIR=path-to-correct-kernel'\'.'\n\n' @exit 1 -include $(DEPFILES) $(EXTRA_DEPENDS) -include .makefirst