X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=MakeTargets;h=1004875b112b1679033f8d5d5722a25e5d20a2b8;hb=b774ac267f6492f992b779ea95cb20a1c89b5dca;hp=ec4cf1b7f5fa1eeed0deb203e06469f63926030b;hpb=a257f99826f4783418330dbb3b33bfbdf18ed252;p=libfirm diff --git a/MakeTargets b/MakeTargets index ec4cf1b7f..1004875b1 100644 --- a/MakeTargets +++ b/MakeTargets @@ -11,8 +11,12 @@ all : subdir_all # partial linking of a subdir's $(OFILES) into one file subdir.o: $(OFILES) +ifeq ($(strip $(OFILES)),) + >$@ +else rm -f $@ $(LD) $(LDFLAGS) -r -o $@ $^ +endif clean: subdir_clean local_clean .PHONY: local_clean @@ -20,7 +24,7 @@ local_clean: $(RM) $(OFILES) subdir.o core realclean: subdir_realclean local_clean - $(RM) $(GENFILES) .depend TAGS + $(RM) $(GENFILES) .depend TAGS $(TARDIRNAME) depend: subdir_depend local_depend .PHONY: local_depend @@ -40,6 +44,21 @@ autodoc_html: subdir_autodoc_html local_autodoc_html local_autodoc_html: $(HTMLFILES) +# generate an archive for distribution +distrib: dist + $(MAKE) -C testprograms dist + +dist: subdir_dist local_dist $(TARDIRNAME) +# @echo create archive with $(DISTFILES) +# @echo tar -C $(top_srcdir) -uf libfirm.tar $(ARCHIVEDISTFILES) + $(TAR) $(TARFLAGS) $(ARCHIVEDISTFILES) +.PHONY: local_dist +local_dist: $(DISTFILES) + +$(TARDIRNAME): + $(LN_S) $(top_srcdir) $@ + +# dont know about this # Recurse into $(subdirs) for $(targets) $(addprefix subdir_,$(targets)): $(subdirs) +$(recurse) @@ -55,20 +74,37 @@ local_tags: $(TAGFILES) etags -C $^ # installation -install: subdir_install local_install -local_install: $(INCLUDEDIR) $(LIBDIR) +install: $(INCLUDEDIR) install_headers $(LIBDIR) install_libs + +install_headers: subdir_install_headers local_install_headers +local_install_headers: ifneq ($(strip $(INSTALL_HEADERS)),) $(INSTALL) -m u+rw,a+r $(addprefix $(srcdir)/,$(INSTALL_HEADERS)) $(INCLUDEDIR) endif + +install_libs: subdir_install_libs local_install_libs +local_install_libs: ifneq ($(strip $(INSTALL_LIBS)),) $(INSTALL) -m u+rw,a+r $(addprefix $(topdir)/,$(INSTALL_LIBS)) $(LIBDIR) endif + $(LIBDIR): $(LIBDIR) mkdir -p $@ $(INCLUDEDIR): $(INCLUDEDIR) mkdir -p $@ +# generated the directory where all the generated documentation is +$(AUTODOCDIR): + mkdir $@ + +# print some help +.PHONY: help +help: + @echo "possible targets are:" + @echo "[$(targets)]" + @echo "but not all of them should be used or make sense" + # include dependencies -include .depend