]> git.donarmstrong.com Git - lilypond.git/blobdiff - make/Targets.make
release: 0.0.47
[lilypond.git] / make / Targets.make
index 8173b9e079f0187c12994ccefd95556e6825cd4a..964bf1c25753ce256a0da217600cf73a284688cb 100644 (file)
@@ -7,7 +7,7 @@
 #      Jan Nieuwenhuizen <jan@digicash.com>
 #      Han-Wen Nienhuys <hanwen@stack.nl>
 
-.PHONY : all clean config default dist doc doc++ dummy exe help lib TAGS
+.PHONY : all clean config default dist doc doc++ dummy exe help lib TAGS html
 
 # target all:
 #
@@ -29,28 +29,35 @@ include ./$(depth)/make/out/Site.make
 # dependency list of executable:
 #
 EXECUTABLE = $(lily_bindir)/$(NAME)
-$(EXECUTABLE): $(build) $(OFILES) $(CUSTOMLIBES) 
+$(EXECUTABLE): $(build) $(OFILES) $(MODULE_LIBDEPS) 
        $(INCREASE_BUILD)
-       $(MAKE) $(OFILES)  $(SILENT_LOG)
-#      $(STRIPDEBUG) $(STABLEOBS)
+       $(MAKE) -S $(OFILES)  $(SILENT_LOG)
+ifdef STABLEOBS
+       $(DO_STRIP) $(STABLEOBS)
+endif
        $(LD_COMMAND) $(OFILES) $(LOADLIBES)
 
 exe: $(EXECUTABLE)
 #
 
-$(build):
+$(build): $(depth)/.version
        echo 0 > $@
 
 # dependency list of library:
 #
-LIBRARY = $(libdir)/$(LIB_PREFIX)$(NAME)$(LIB_SUFFIX)
-$(LIBRARY): $(build) $(OFILES) $(CUSTOMLIBES)
+LIBRARY = $(outdir)/$(LIB_PREFIX)$(NAME).a
+$(LIBRARY): $(build) $(OFILES) $(MODULE_LIBDEPS)
        $(INCREASE_BUILD)
        $(MAKE) $(OFILES)  $(SILENT_LOG)
        $(AR_COMMAND) $(OFILES)
        $(RANLIB_COMMAND)
 
-
+SHAREDLIBRARY=$(outdir)/$(LIB_PREFIX)$(NAME).so
+$(SHAREDLIBRARY):  $(build) $(OFILES) $(MODULE_LIBDEPS)
+       $(INCREASE_BUILD)
+       $(MAKE) $(OFILES)  $(SILENT_LOG)
+       $(LD_COMMAND) $(OFILES) -o $@
+#      ln -sf $(outdir)/$(LIB_PREFIX)$(NAME).so.$(VERSION) $(outdir)/$(LIB_PREFIX)$(NAME).so
 #
 lib: $(LIBRARY)
 #
@@ -61,8 +68,12 @@ ifdef SUBDIRS
        set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done
 endif
 
-distclean: clean
-       rm -rf  $(lily-version) $(flower-version) $(mi2mu-version) .b $(build) *~ $(allout) $(allgen)
+distclean: localdistclean 
+ifdef SUBDIRS
+       set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i localdistclean; done
+endif
+
+localdistclean:
 
 
 # configure:
@@ -107,11 +118,13 @@ doc:
 
 # doc++ documentation of classes
 doc++: $(progdocs)     
-       doc++ -kp -d $(DOCDIR) $^
+       doc++ -k -p -d $(DOCDIR) $^
 
 dist:
        -mkdir $(distdir)
        $(MAKE) localdist
+       chmod -Rf a+rX $(distdir)
+
        (cd ./$(depth); tar cfz $(DIST_NAME).tar.gz $(DIST_NAME))
        rm -rf $(distdir)/  # should be trapped
 
@@ -119,8 +132,8 @@ localdist: $(DISTFILES)
        if [ -d out ]; then mkdir $(distdir)/$(localdir)/out; fi
        ln $(DISTFILES) $(distdir)/$(localdir)
 ifdef SUBDIRS
-       set -e; for i in $(SUBDIRS); do mkdir $(distdir)/$(localdir)/$$i; done
-       set -e; for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localdist; done
+       set -e; for i in $(SUBDIRS); do mkdir $(distdir)/$(localdir)/$$i; \
+               $(MAKE) localdir=$(localdir)/$$i -C $$i localdist; done
 endif
 
 moduledist:
@@ -136,19 +149,19 @@ ifdef SUBDIRS
        set -e; for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localmoduledist; done
 endif
 
-all-tags: TAGS
+TAGS:$(all-tag-sources)
+ifdef all-tag-sources
+       -etags -CT $(all-tag-sources) /dev/null
+endif
 ifdef SUBDIRS
-       set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i all-tags; done
+       set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i TAGS ; done
 endif
 
-TAGS: $(allcc)
-       etags -CT $(allcc) 
-
 
 # version stuff:
 #
 
-out/version.hh: .version
+$(outdir)/version.hh: .version
        ./$(lily_bindir)/make_version > $@
 
 
@@ -173,3 +186,33 @@ ifdef SUBDIRS
 endif
 
 localuninstall:
+
+# specific stuff:
+#
+$(LIBFLOWER): check-flower-deps
+
+check-flower-deps:
+       $(MAKE)  -C $(depth)/flower/ default
+
+check-lily-deps: check-flower-deps
+       $(MAKE)  -C $(depth)/lib
+
+check-doc-deps:
+       $(MAKE) -C $(depth)/Documentation
+
+$(LIBLILY): dummy
+       $(MAKE) ./$(outdir)/$(@F) -C $(depth)/lib
+#
+
+# RedHat rpm package:
+#
+#rpm:  dist
+#      mv ./$(depth)/lilypond-$(TOPLEVEL_VERSION).tar.gz $(rpm-sources)
+rpm:
+       make -C ./$(depth) dist
+       cp $(depth)/lilypond-$(TOPLEVEL_VERSION).tar.gz $(rpm-sources)
+       cp $(doc-dir)/*.gif $(rpm-sources)
+       $(MAKE) -C $(make-dir) spec
+       rpm -ba $(makeout)/lilypond.spec
+#
+