+1.3.104.jcn1
+============
+
+* Made some --scrdir build fixes.
+
1.3.103.jcn5
============
backdoc-WWW: $(outdir)/lilypond-internals.html
#ugh. lily/OUT/lilypond hardcoded.
+# when cross-compiling, we don't have lilypond
$(outdir)/lilypond-internals.texi:
- (cd $(outdir); $(topdir)/lily/out/lilypond ../$(srcdir)/../ly/generate-documentation)
-
+ if [ -e $(depth)/$(builddir)/lily/out/lilypond ]; then \
+ cd $(outdir) && ../$(depth)/$(builddir)/lily/out/lilypond ../$(src-depth)/ly/generate-documentation; \
+ else \
+ touch $@; \
+ fi
MAJOR_VERSION=1
MINOR_VERSION=3
PATCH_LEVEL=104
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=jcn1
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
# you do make dist
#
-buildscripts = $(depth)/buildscripts
+# using src-depth iso depth is only necessary for broken rules that do
+# cd $(outdir) && foo $(depth) ...
+buildscript-dir = $(src-depth)/buildscripts
+script-dir = $(src-depth)/scripts
+input-dir = $(src-depth)/input
-flower-dir = $(depth)/flower
-lib-dir = $(depth)/lib
-lily-dir = $(depth)/lily
-mi2mu-dir = $(depth)/mi2mu
-make-dir = $(depth)/make
-include-lib = $(depth)/lib/include
-include-flower = $(depth)/flower/include
+
+flower-dir = $(src-depth)/flower
+lib-dir = $(src-depth)/lib
+lily-dir = $(src-depth)/lily
+mi2mu-dir = $(src-depth)/mi2mu
+make-dir = $(src-depth)/make
+include-lib = $(src-depth)/lib/include
+include-flower = $(src-depth)/flower/include
SUBST_TEXI_DEPS=sed 's! \.\./! !g' < $(basename $@).dep > $(outdir)/temp.dep ; mv $(outdir)/temp.dep $(basename $@).dep
$(outdir)/%.latex: %.doc
- cd $(outdir);LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies --dep-prefix=$(outdir)/ ../$<
+ LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(script-dir)/mudela-book.py --outdir=$(outdir) -I .. -I $(input-dir)/test/ --dependencies --dep-prefix=$(outdir)/ $<
$(SUBST_TEXI_DEPS)
+# don't do ``cd $(outdir)'', and assume that $(outdir)/.. is the src dir.
+# it is not, for --scrdir builds
$(outdir)/%.texi: %.tely
- cd $(outdir); LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(depth)/../scripts/mudela-book.py -I .. -I $(depth)/../input/test/ --dependencies --dep-prefix=$(outdir)/ --format=texi ../$<
+ LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(script-dir)/mudela-book.py --outdir=$(outdir) -I .. -I $(input-dir)/test/ --dependencies --dep-prefix=$(outdir)/ --format=texi $<
$(SUBST_TEXI_DEPS)
# nexi: no-lily texi
# for plain info doco: don't run lily
$(outdir)/%.nexi: %.tely
- cd $(outdir); LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(depth)/../scripts/mudela-book.py --no-lily -I .. -I $(depth)/../input/test/ --dependencies --dep-prefix=$(outdir)/ --format=texi ../$<
+ LILYPONDPREFIX=$(LILYPONDPREFIX)/.. $(PYTHON) $(script-dir)/mudela-book.py --outdir=$(outdir) --no-lily -I .. -I $(input-dir)/test/ --dependencies --dep-prefix=$(outdir)/ --format=texi $<
mv $(@D)/$(*F).texi $@
$(SUBST_TEXI_DEPS)
$(outdir)/%.gif: $(outdir)/%.ps
- sh $(buildscripts)/ps-to-gifs.sh $<
+ sh $(buildscript-dir)/ps-to-gifs.sh $<
-mv $(name-stem)-page*.gif $(outdir)/
touch $@
$(outdir)/%.png: $(outdir)/%.ps
- sh $(buildscripts)/ps-to-pngs.sh $<
+ sh $(buildscript-dir)/ps-to-pngs.sh $<
-mv $(name-stem)-page*.png $(outdir)/
touch $@
ln -f $< $@
$(outdir)/%.ly: %.abc
- $(PYTHON) $(depth)/scripts/abc2ly.py -o $@ $<
+ $(PYTHON) $(script-dir)/abc2ly.py -o $@ $<
$(outdir)/%.dvi: $(outdir)/%.ly
- $(PYTHON) $(depth)/scripts/ly2dvi.py -o $(outdir) $<
+ $(PYTHON) $(script-dir)/ly2dvi.py -o $(outdir) $<
-mv $(basename $(<F))*.midi $(outdir)
# don't junk intermediate .dvi files. They're easier to view than
.PRECIOUS: $(outdir)/%.dvi
$(outdir)/%.dvi: %.ly
- $(PYTHON) $(depth)/scripts/ly2dvi.py -o $(outdir) $<
+ $(PYTHON) $(script-dir)/ly2dvi.py -o $(outdir) $<
-mv $(basename $<)*.midi $(outdir)
$(outdir)/%.dvi: %.fly
- $(PYTHON) $(depth)/scripts/ly2dvi.py -o $(outdir) $<
+ $(PYTHON) $(script-dir)/ly2dvi.py -o $(outdir) $<
-mv $(basename $<)*.midi $(outdir)
all: $(OUT_FILES)
local-WWW: $(ly_examples) $(fly_examples) $(ps_examples) $(png_examples)
-# (cd $(outdir); $(PYTHON) ../$(buildscripts)/mutopia-index.py --prefix=../ --suffix=/$(outdir) $(html_subdirs) $(all_examples))
+# (cd $(outdir); $(PYTHON) ../$(buildscript-dir)/mutopia-index.py --prefix=../ --suffix=/$(outdir) $(html_subdirs) $(all_examples))
# $(footify) $(outdir)/index.html
local-web:
$(LOOP)
local-convert-mudela:
- $(PYTHON) $(depth)/scripts/convert-mudela.py -e *ly
+ $(PYTHON) $(script-dir)/convert-mudela.py -e *ly
# use recursive make like we do everywhere else; leads to bugs that you
# make a specific fix for.
- $(PYTHON) $(buildscripts)/mutopia-index.py -o short-examples.html input/
- $(PYTHON) $(buildscripts)/mutopia-index.py -o long-examples.html mutopia/
+ $(PYTHON) $(buildscript-dir)/mutopia-index.py -o short-examples.html input/
+ $(PYTHON) $(buildscript-dir)/mutopia-index.py -o long-examples.html mutopia/
#$(footify-all-command)
$(footify) --index=./ `$(FIND) . -name '*.html' -print`
tar --exclude='*.dvi' --exclude='*.tex' --exclude='*.ps' --exclude='*.ppm' -czf $(outdir)/examples.tar.gz *-examples.html `find input mutopia -type d -name 'out-www' -print`
endif
local-WWW-clean:
- $(SHELL) $(depth)/buildscripts/clean-fonts.sh
+ $(SHELL) $(buildscript-dir)/clean-fonts.sh
#CM_AFM_FILES = cmr10
$(outdir)/cmr10.afm:
- -$(BASH) $(buildscripts)/tfmtoafm.sh `kpsewhich cmr10.tfm`
+ -$(GUILE) $(buildscript-dir)/tfm2oafm.scm `kpsewhich cmr10.tfm`
-mv $(@F) $@
LOG_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.log))
default: $(ALL_GEN_FILES)
$(outdir)/%.afm $(outdir)/%.tex $(outdir)/%.dep: $(outdir)/%.log
- $(PYTHON) $(buildscripts)/mf-to-table.py --package=$(topdir) --outdir=$(outdir) --dep $(outdir)/$(<F:.log=.dep) --afm $(outdir)/$(<F:.log=.afm) --tex $(outdir)/$(<F:.log=.tex) $<
+ $(PYTHON) $(buildscript-dir)/mf-to-table.py --package=$(topdir) --outdir=$(outdir) --dep $(outdir)/$(<F:.log=.dep) --afm $(outdir)/$(<F:.log=.afm) --tex $(outdir)/$(<F:.log=.tex) $<
localclean:
rm -f mfplain.mem mfplain.log mpout.log
name " can contain \n"
(human-listify (map reffy (map context-name accepts)))))
- "\n\nThis context is built from the following engravers\n"
- (apply string-append
- (map document-engraver-by-name consists)))))
+ "\n\nThis context is built from the following engravers: "
+ (if no-copies
+ (human-listify (map reffy (map engraver-name consists)))
+ (apply string-append
+ (map document-engraver-by-name consists))))))
;; First level Context description
(eval-string (ly-gulp-file "engraver-documentation-lib.scm"))
(eval-string (ly-gulp-file "backend-documentation-lib.scm"))
+
+
+;;(define no-copies #t) ; from 490 to 410K, but doesn't look nice yet
+;;
+;; Also, copies of interfaces use up lots more space, but that's
+;; functional because the default property values of the interfaces
+;; are described...
+(define no-copes #f)
+
(let* ((doc (string-append
(document-paper "LilyPond interpretation contexts")
(document-all-engravers "LilyPond engravers")
(translator-property-description 'keySignature list? "")
)))
+ (cons 'Lyric_engraver
+ (engraver-description
+ "Lyric_engraver"
+ ""
+ '()
+ (list
+ ;; FIXME
+ )))
+
(cons 'Lyric_phrasing_engraver
(engraver-description
"Lyric_phrasing_engraver"
(translator-property-description 'currentCommandColumn ly-element? "")
)))
+ (cons 'Skip_req_swallow_translator
+ (engraver-description
+ "Skip_req_swallow_translator"
+ ""
+ '()
+ (list
+ ;; FIXME
+ )))
+
(cons
'Slur_engraver
(engraver-description
# directory names:
# depth from group-dir
-# not eh, normally used
+# internal, not normally used
DEPTH = $(depth)/$(package-depth)
-# topdir := $(shell cd $(depth); pwd)
ifeq ($(topdir),)
topdir := $(shell cd $(depth); pwd)
endif
pwd := $(shell pwd)
+# $(depth) is deprecated, for most cases you'll want $(src-depth)
+#
+# Well, on second thought.
+# It can do no harm, but using src-depth iso depth is only necessary
+# for broken rules that do
+# cd $(outdir) && foo $(depth) ...
+src-depth = $(depth)/$(srcdir)
+
# derived names
ifeq ($(distdir),)
-# distdir = $(depth)/$(outdir)/$(DIST_NAME)
-# must be absolute for 'make dist' with installed stepmake
distdir = $(topdir)/$(outdir)/$(DIST_NAME)
DIST_NAME = $(package)-$(TOPLEVEL_VERSION)
endif
distname = $(package)-$(TOPLEVEL_VERSION)
# obsolete?
-makeout = $(depth)/make/$(outdir)
-docout = $(depth)/Documentation/$(outdir)
-binout = $(depth)/bin/$(outdir)
+#makeout = $(depth)/make/$(outdir)
+#docout = $(depth)/Documentation/$(outdir)
+#binout = $(depth)/bin/$(outdir)
-doc-dir = $(depth)/Documentation
-po-dir = $(depth)/po
+doc-dir = $(src-depth)/Documentation
+po-dir = $(src-depth)/po
# sort-out which of these are still needed
#
$(package)_bindir = $(depth)/bin
step-bindir = $(stepmake)/bin
-# deprecated
-# abs-step-bindir = $(topdir)/$(stepmake)/bin
-#
+
group-dir = $(shell cd $(DEPTH)/..; pwd)
release-dir = $(group-dir)/releases
patch-dir = $(group-dir)/patches