X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2FGNUmakefile;h=3b13b8a6d9dabbbd6be1dee2ef85cde3ebe37910;hb=a74f4a786ff2dd07adb02b16d15095263271801f;hp=04ad56acf4a2dfa80adad517e569933d2576eb2c;hpb=4d8e2cf781aced3c294ccfad7179951f8561f856;p=lilypond.git diff --git a/lily/GNUmakefile b/lily/GNUmakefile index 04ad56acf4..3b13b8a6d9 100644 --- a/lily/GNUmakefile +++ b/lily/GNUmakefile @@ -4,19 +4,20 @@ depth = .. NAME = lilypond SUBDIRS = include -MODULE_LIBS= $(depth)/flower $(depth)/kpath-guile -MODULE_INCLUDES= $(depth)/flower/include +MODULE_LIBS=$(depth)/flower +MODULE_INCLUDES= $(depth)/flower/include # need this to convert between function pointers and member function pointers. -MODULE_CXXFLAGS= -Wno-pmf-conversions +MODULE_CXXFLAGS= -Wno-pmf-conversions HELP2MAN_EXECS = lilypond STEPMAKE_TEMPLATES=c c++ executable po help2man -OUT_DIST_FILES=$(addprefix $(outdir)/,parser.cc parser.hh ) +# list parser.hh first: making parser.hh removes parser.cc +OUT_DIST_FILES=$(addprefix $(outdir)/,parser.hh parser.cc) -include $(depth)/make/stepmake.make +include $(depth)/make/stepmake.make ifeq ($(HAVE_LIBKPATHSEA_SO),no) MODULE_LDFLAGS += $(KPATHSEA_LIBS) @@ -25,11 +26,12 @@ ifeq ($(LINK_GXX_STATICALLY),yes) MODULE_LDFLAGS += -L$(outdir) -static-libgcc endif +CXXFLAGS += -Woverloaded-virtual # for profiling, link guile statically: # -# USER_LDFLAGS += -static -lltdl -ldl +# CONFIG_LDFLAGS += -static -lltdl -ldl # ifeq ($(PLATFORM_WINDOWS),yes) @@ -38,14 +40,16 @@ O_FILES += $(outdir)/lilypond.rc.o $(outdir)/lilypond: $(outdir)/lilypond.rc.o $(outdir)/lilypond.rc.o: $(outdir)/lilypond.ico $(outdir)/ly.ico -$(builddir)/Documentation/pictures/$(outbase)/lilypond.ico: - $(MAKE) -C $(abs-srcdir)/Documentation/pictures -$(outdir)/lilypond.ico: $(builddir)/Documentation/pictures/$(outbase)/lilypond.ico - cp $< $@ -$(builddir)/Documentation/pictures/$(outbase)/ly.ico: - $(MAKE) -C $(abs-srcdir)/Documentation/pictures -$(outdir)/ly.ico: $(builddir)/Documentation/pictures/$(outbase)/ly.ico - cp $< $@ +$(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico: + $(MAKE) -C $(top-build-dir)/Documentation/pictures + +$(outdir)/lilypond.ico: $(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico + cp $< $@ +$(top-build-dir)/Documentation/pictures/$(outbase)/ly.ico: + $(MAKE) -C $(top-build-dir)/Documentation/pictures + +$(outdir)/ly.ico: $(top-build-dir)/Documentation/pictures/$(outbase)/ly.ico + cp $< $@ endif ETAGS_FLAGS += --regex='{c++}/^LY_DEFINE *(\([^,]+\)/\1/' @@ -67,12 +71,13 @@ $(outdir)/lily-parser.o: $(outdir)/parser.hh $(outdir)/lily-lexer.o: $(outdir)/parser.hh $(outdir)/FlexLexer.h $(outdir)/lexer.o: $(outdir)/parser.hh $(outdir)/version.hh -ifneq ($(FLEXLEXER_PATH),) -$(outdir)/FlexLexer.h: $(FLEXLEXER_PATH)/FlexLexer.h - cp $< $@ +ifneq ($(FLEXLEXER_FILE),) +$(outdir)/FlexLexer.h: $(FLEXLEXER_FILE) $(config_h) + cp $< $@ endif - +$(outdir)/lexer.cc: $(config_h) +$(outdir)/parser.cc: $(config_h) $(outdir)/general-scheme.o: $(outdir)/version.hh $(outdir)/kpath.o: $(outdir)/version.hh @@ -83,7 +88,6 @@ local-po: $(outdir)/parser.cc # ugh. For --srcdir builds, these must exist to satisfy their broken # lexer.dep and parser.dep file entries. -ifneq ($(srcdir), .) +ifneq ($(configure-srcdir),.) .PRECIOUS: $(outdir)/lexer.cc $(outdir)/parser.cc endif -