]> git.donarmstrong.com Git - lilypond.git/blobdiff - GNUmakefile.in
Make test generation generic.
[lilypond.git] / GNUmakefile.in
index 28a34a003bb0c528e4884118a47eb69cc9fe0829..b0c8d23b76b4e5e935bef1e5806f2c2ba3598cb0 100644 (file)
@@ -18,7 +18,7 @@ documentation-dir=$(if $(findstring no,$(DOCUMENTATION)),,Documentation)
 
 SCRIPTS = configure autogen.sh 
 README_FILES = COPYING DEDICATION ROADMAP THANKS HACKING
-TOPDOC_FILES = AUTHORS README INSTALL NEWS
+TOPDOC_FILES = AUTHORS INSTALL README NEWS
 TOPDOC_TXT_FILES = $(addprefix $(top-build-dir)/Documentation/topdocs/$(outdir)/,$(addsuffix .txt,$(TOPDOC_FILES)))
 IN_FILES := $(call src-wildcard,*.in)
 
@@ -98,16 +98,20 @@ local-WWW-post:
        $(PYTHON) $(buildscript-dir)/mutopia-index.py -o $(outdir)/examples.html input/
        rm -rf $(outdir)/online-root
        rm -rf $(outdir)/offline-root
-       $(PYTHON) $(buildscript-dir)/www_post.py $(PACKAGE_NAME) $(TOPLEVEL_VERSION) $(buildscript-dir) $(outdir) "$(WEB_TARGETS)"
+       $(PYTHON) $(buildscript-dir)/www_post.py $(PACKAGE_NAME) $(TOPLEVEL_VERSION) $(buildscript-dir) $(top-build-dir)/Documentation/po/$(outdir) $(outdir) "$(WEB_TARGETS)"
+       find $(outdir)/offline-root -type l -delete
+
 
 tree-prefix = $(outdir)
 tree-bin = $(tree-prefix)/bin
 tree-lib = $(tree-prefix)/lib
 tree-share = $(tree-prefix)/share
-tree-share-prefix = $(tree-share)/lilypond/$(TOPLEVEL_VERSION)
-tree-share-prefix-current = $(tree-share)/lilypond/current
-tree-lib-prefix = $(tree-lib)/lilypond/$(TOPLEVEL_VERSION)
-tree-lib-prefix-current = $(tree-lib)/lilypond/current
+
+# Don't put version numbers here. During development
+# they make no sense, and cause EPS files to become invalid.
+
+tree-share-prefix = $(tree-share)/lilypond/current
+tree-lib-prefix = $(tree-lib)/lilypond/current
 
 C_DIRS = flower lily
 c-clean:
@@ -132,9 +136,7 @@ $(tree-share-prefix)/lilypond-force link-tree: GNUmakefile $(outdir)/VERSION
        cd $(top-build-dir)/$(outbase) && rm -rf bin lib share
        mkdir -p $(tree-bin)
        mkdir -p $(tree-share-prefix)
-       ln -s $(TOPLEVEL_VERSION) $(tree-share-prefix-current)
        mkdir -p $(tree-lib-prefix)
-       ln -s $(TOPLEVEL_VERSION) $(tree-lib-prefix-current)
        mkdir -p $(tree-share-prefix)/elisp
        mkdir -p $(tree-share-prefix)/fonts
        mkdir -p $(tree-share-prefix)/fonts/otf
@@ -160,13 +162,12 @@ $(tree-share-prefix)/lilypond-force link-tree: GNUmakefile $(outdir)/VERSION
        cd $(tree-share-prefix)/tex && \
                ln -s $(top-src-dir)/tex source && \
                ln -s ../../../../../tex/$(outconfbase) tex-out && \
-               ln -s ../../../../../mf/$(outconfbase) mf-out
-
+               true
        cd $(tree-share-prefix)/fonts && \
                ln -s $(top-src-dir)/mf source && \
                true
        -cd $(tree-share-prefix)/elisp && \
-               ln -sf ../../../../../../elisp/$(outconfbase)/lilypond-words.el . && \
+               ln -sf ../../../../../elisp/$(outconfbase)/lilypond-words.el . && \
                ln -s $(top-src-dir)/elisp/*.el .
        $(foreach i,$(CATALOGS), \
                (mkdir -p $(tree-share)/locale/$i/LC_MESSAGES && \
@@ -177,10 +178,13 @@ $(tree-share-prefix)/lilypond-force link-tree: GNUmakefile $(outdir)/VERSION
 $(tree-share-prefix)/mf-link-tree link-mf-tree: $(tree-share-prefix)/lilypond-force
        -rm -f $(tree-share-prefix)/fonts/otf/* &&  \
        rm -f $(tree-share-prefix)/fonts/svg/* &&  \
+       rm -f $(tree-share-prefix)/fonts/fonts.conf &&  \
        rm -f $(tree-share-prefix)/fonts/tfm/* &&  \
        rm -f $(tree-share-prefix)/fonts/type1/* &&  \
                cd $(tree-share-prefix)/fonts/otf && \
                ln -s ../../../../../../mf/$(outconfbase)/*.otf .
+       -cd $(tree-share-prefix)/fonts/ && \
+               ln -s ../../../../../mf/$(outconfbase)/fonts.conf .
        -cd $(tree-share-prefix)/fonts/svg && \
                ln -s ../../../../../../mf/$(outconfbase)/*.svg .
        -cd $(tree-share-prefix)/fonts/tfm && \
@@ -205,25 +209,40 @@ $(config_h): config.hh.in
        @false
 
 
+################################################################
+# testing
+
+RESULT_DIR=$(top-build-dir)/out/test-results
+
 
 test:
-       rm -f input/regression/out-test/collated-files.html
-       $(MAKE) -C input/regression/ out=test LILYPOND_BOOK_LILYPOND_FLAGS="--backend=eps --formats=ps $(LILYPOND_JOBS) -dseparate-log-files -dinclude-eps-fonts -dgs-load-fonts --header=texidoc -I $(top-src-dir)/input/manual -ddump-profile -dcheck-internal-types -ddump-signatures -danti-alias-factor=1" LILYPOND_BOOK_VERBOSE= out-test/collated-files.html 
-       @find input ly -name '*.ly' -print |grep -v 'out.*/' | xargs grep '\\version' -L | grep -v "standard input" |sed 's/^/**** Missing version: /g' 
+       @echo -en 'For tracking crashes: use\n\n\t'
+       @echo 'grep sourcefilename `grep -L systems.texi input/regression/out-test/*log|sed s/log/ly/g`'
+       @echo
+       $(MAKE) -C input/regression/ out=test local-test
+       $(MAKE) -C input/regression/musicxml out=test local-test
 
-test-baseline: test
-       rm -rf input/regression/out-test-baseline
-       mv input/regression/out-test input/regression/out-test-baseline
+test-baseline: 
+       @if  test -d .git ; then \
+               $(if $(shell git diff), echo "commit before base lining" && false,true) ; \
+       fi
+       $(MAKE) 
+       $(MAKE) test
+       $(MAKE) -C input/regression/ local-test-baseline
+       $(MAKE) -C input/regression/musicxml local-test-baseline
 
-RESULT_DIR=$(top-build-dir)/out/test-results/
 local-check: test
        rm -rf $(RESULT_DIR)
        mkdir -p $(RESULT_DIR)
        $(PYTHON) $(buildscript-dir)/output-distance.py --create-images --output-dir $(RESULT_DIR) input/regression/out-test-baseline input/regression/out-test/
+       @find input ly -name '*.ly' -print |grep -v 'out.*/' | xargs grep '\\version' -L | grep -v "standard input" |sed 's/^/**** Missing version: /g' 
 
 
 test-redo:
-       $(PYTHON) $(buildscript-dir)/output-distance.py --remove-changed input/regression/out-test-baseline input/regression/out-test/
+       for a in `cat $(RESULT_DIR)/changed.txt` ; do \
+               echo removing $$a* ; \
+               rm -f $$a* ;\
+       done
        $(MAKE) check
 
 test-clean: