From 39c893ecbd5348154c6bb0de14f59779f7543a8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= Date: Thu, 27 Oct 2005 21:13:29 +0000 Subject: better make-system svn path=/trunk/externals/zexy/; revision=3775 --- src/Makefile | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/Makefile (limited to 'src/Makefile') diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..dd2e799 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,72 @@ +default: all + +Make.config: Make.config.in configure + ./configure + + +configure: configure.ac + autoconf + +include Make.config + +.SUFFIXES: .$(EXT) + +SOURCES=$(sort $(filter %.c, $(wildcard *.c))) + +TARGETS = $(SOURCES:.c=.o) + + +all: $(LIBNAME) + cp $(LIBNAME).$(EXT) .. + +$(LIBNAME): $(TARGETS) + $(LD) $(LFLAGS) -o $(LIBNAME).$(EXT) *.o $(LIBS) + $(STRIP) $(STRIPFLAGS) $(LIBNAME).$(EXT) + +$(TARGETS): %.o : %.c + $(CC) -c -o $@ $(Z_CFLAGS) $*.c + + +clean: + -rm -f *.$(EXT) *.o + +cleaner: clean + -rm -f *~ _* config.* + -rm -f *.d *.d.* + +cleanest: cleaner + -rm -f Makefile ../*.$(EXT) + +distclean: cleanest newmakefile + +install: install-bin install-doc install-abs + +install-bin: + -install -d $(INSTALL_BIN) + -install -m 644 $(LIBNAME).$(EXT) $(INSTALL_BIN) + +install-doc: + -install -d $(INSTALL_DOC) + -install -m 644 ../examples/*.pd $(INSTALL_DOC) + +install-abs: + -install -d $(INSTALL_BIN) + -install -m 644 ../abs/*.pd $(INSTALL_BIN) + +dist: all cleaner + (cd ../..;tar czvf $(TARNAME) $(LIBNAME)) + +everything: clean all install distclean + +newmakefile: + echo "current:">Makefile + echo " ./configure && make">>Makefile + +## dependencies: as proposed by the GNU-make documentation +## see http://www.gnu.org/software/make/manual/html_node/make_47.html#SEC51 +-include $(SOURCES:.c=.d) +%.d: %.c + @set -e; rm -f $@; \ + $(CC) $(MAKEDEP_FLAGS) $(Z_CFLAGS) $< > $@.$$$$; \ + sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \ + rm -f $@.$$$$ -- cgit v1.2.1