From: Han-Wen Nienhuys Date: Tue, 17 Mar 1998 08:53:34 +0000 (+0100) Subject: release: 0.1.49 X-Git-Tag: release/0.1.49 X-Git-Url: https://git.donarmstrong.com/lilypond.git?a=commitdiff_plain;h=refs%2Ftags%2Frelease%2F0.1.49;p=lilypond.git release: 0.1.49 --- diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000000..b749bae57b --- /dev/null +++ b/AUTHORS @@ -0,0 +1,132 @@ + + + +AUTHORS(1) LilyPond documentation AUTHORS(1) + + +NAME + AUTHORS - who did what on GNU LilyPond? + +DESCRIPTION + This file lists authors of GNU LilyPond, and what they + wrote. + +AUTHORS + o Han-Wen Nienhuys , + http://www.stack.nl/~hanwen + Main author. + + o Jan Nieuwenhuizen , + http://www.digicash.com/~jan + Main author + +CONTRIBUTORS + o Mats Bengtsson , + parts of clef-reg.cc, clef-item.cc swedish notenames, + testing, general comments, duration logs/longa/brevis + etc + + o Jan Arne Fagertun , + TeX titling and lytodvi.sh + + o Shay Rojanski + Some mudela source. + + o Werner Lemberg , + misc bugfixes, some Beam and Stem code. + + o Donald Ervin Knuth, http://www.cs.stanford.edu/~? + mf/ital-*.mf (these were taken from the CM fonts) + + o Alexandre Oliva , + http://sunsite.unicamp.br/? + testing + + o Anthony Fok , + debian package: debian/* + + o Franc,ois Pinard , + Documentation/Vocab*, internationalization stuff + + o Neil Jerram . + Documentation/Vocab* + + o David R. Linn , + Mailing list maintenance. + + Your name could be here! If you want to help, then take a + look at the SMALLISH PROJECTS section of in the file TODO. + Some do not involve coding C++ + + + + +11/Mar/98 LilyPond 0.1.48 1 + + + + + +AUTHORS(1) LilyPond documentation AUTHORS(1) + + + [And of course we sincerely thank J.S.Bach, F.Schubert, T. + Merula and W.A.Mozart for their beautiful music] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +11/Mar/98 LilyPond 0.1.48 2 + + diff --git a/AUTHORS.txt b/AUTHORS.txt deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/BUGS b/BUGS index 5f4755d57a..6c32757d6a 100644 --- a/BUGS +++ b/BUGS @@ -16,16 +16,6 @@ lilypond: parser.y:765: int yyparse(void *): Assertion `((My_lily_parser *) my_l Aborted (core dumped) -[gcc 2.8.x/libstdc++ 2.8.x/libg++ 2.8.0] - -The latest gcc release causes lily to crash just after Interpreting -music: - -stacktrace looks something like: - - __DTOR_END__ () - __malloc () - [GNU libc] The GNU extension memmem() is known to be buggy on linux libc 5.0.9 diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000000..e1b28ead74 --- /dev/null +++ b/ChangeLog @@ -0,0 +1 @@ +oeps: no more details than NEWS diff --git a/Documentation/INSTALL.pod b/Documentation/INSTALL.pod index 6aa4226af8..4faa314e9e 100644 --- a/Documentation/INSTALL.pod +++ b/Documentation/INSTALL.pod @@ -32,7 +32,7 @@ work in Windows NT/95, but we don't promise to support it. =item * -GNU C++ v2.7 or better. +GNU C++ version 2.7 or newer (yes, 2.8 is fine). =item * @@ -40,11 +40,11 @@ GNU make. =item * -Flex (2.5.1 or better). +Flex (version 2.5.1 or newer). =item * -Bison. (Version 1.25 or better) +Bison (version 1.25 or newer). =back @@ -321,7 +321,7 @@ installation instructions for those deprecated fonts. [obsolete] I use the MusixTeX fonts those found in MusixTeX T.73. Beware, the clef symbol seems to have changed its position in some versions, (notably Egler's, a.k.a. OpusTeX). The MusixTeX fonts -are included in MusixTeX (T73 or better), which can be had from any +are included in MusixTeX (T73 or newer), which can be had from any CTAN site, e.g. at =over 4 diff --git a/Documentation/Makefile b/Documentation/Makefile deleted file mode 100644 index 412f90fac7..0000000000 --- a/Documentation/Makefile +++ /dev/null @@ -1,80 +0,0 @@ -# Documentation/Makefile - -# subdir level: -# -depth = .. -# - -# identify module: -# -NAME = Documentation - -# - -# generic variables: -# -include ./$(depth)/make/Variables.make -include ./$(depth)/make/Version.make -include ./$(depth)/make/Files.make -include ./Rules.make -# - - -# -DOCFILES = $(wildcard *.doc) -OUTPODFILES = $(addprefix $(outdir)/,$(PODFILES)) -TEXTFILES = $(OUTPODFILES:.pod=.txt) -GROFFFILES = $(OUTPODFILES:.pod=.1) -HTMLFILES = $(OUTPODFILES:.pod=.html) -DVIFILES = $(addprefix $(outdir)/, $(DOCFILES:.doc=.dvi)) - - -default: do-doc -# -# list of distribution files: -# -XPMS=$(wildcard *.xpm) -giffiles=$(XPMS:.xpm=.gif) -outgiffiles=$(addprefix $(outdir)/, $(giffiles)) - - -EXTRA_DISTFILES = $(XPMS) $(DOCFILES) vocabulary-data vocabulary-forms.el - - -# don't do DVI files. They can only be made if lily is installed -do-doc: $(TEXTFILES) - -gifs: $(outgiffiles) - - -html: $(HTMLFILES) - -htmldist: html - $(lily_bindir)/make_website - -dvi: $(DVIFILES) - -# generic targets and rules: -# -include $(depth)/make/Targets.make -include $(depth)/make/Rules.make -# - -localclean: - rm -f `find $(outdir) -type f` - - - -MAN1FILES = lilypond convert-mudela mi2mu mudela-book ly2dvi -MAN1GROFF = $(addprefix $(outdir)/, $(addsuffix .1,$(MAN1FILES))) - -localinstall: $(outdir)/lilypond.1 - $(INSTALL) -d $(mandir)/man1 - $(INSTALL) -m 644 $(MAN1GROFF) $(mandir)/man1 - - -localuninstall: - (cd $(mandir)/man1/; rm -f $(MAN1GROFF)) - - - diff --git a/Documentation/Makefile.am b/Documentation/Makefile.am new file mode 100644 index 0000000000..cfa8e12858 --- /dev/null +++ b/Documentation/Makefile.am @@ -0,0 +1,32 @@ +# Automatically generated from ./lilypond-0.1.49/Documentation/Makefile.am.wild by bin/autowild +# Do not edit +# Documentation/Makefile.am.wild + +DOCFILES = introduction.doc mudela-course.doc mudela-man.doc +PODFILES = AUTHORS.pod CodingStyle.pod INSTALL.pod MANIFESTO.pod PATCHES.pod convert-mudela.pod faq.pod gnu-music.pod index.pod internals.pod language.pod lilypond.pod links.pod literature.pod ly2dvi.pod mi2mu.pod mudela-book.pod mutopia.pod other-packages.pod +OUTPODFILES = $(PODFILES) +TEXTFILES = $(OUTPODFILES:.pod=.txt) +GROFFFILES = $(OUTPODFILES:.pod=.1) +HTMLFILES = $(OUTPODFILES:.pod=.html) +DVIFILES = $(DOCFILES:.doc=.dvi) + +XPMS = lelie_icon.xpm lelie_logo.xpm lelieblond.xpm +giffiles = $(XPMS:.xpm=.gif) + +EXTRA_DIST = Makefile.am.wild Rules.make $(XPMS) $(DOCFILES) $(PODFILES) vocabulary-data vocabulary-forms.el + +MAN1FILES = lilypond convert-mudela mi2mu mudela-book ly2dvi +MAN1GROFF = $(addsuffix .1,$(MAN1FILES)) + +default: all $(TEXTFILES) + +outdir = . + +install-data: $(outdir)/lilypond.1 + $(INSTALL) -d $(mandir)/man1 + $(INSTALL) -m 644 $(MAN1GROFF) $(mandir)/man1 + +uninstall-data: + (cd $(mandir)/man1/; rm -f $(MAN1GROFF)) + +include Rules.make diff --git a/Documentation/Makefile.am.wild b/Documentation/Makefile.am.wild new file mode 100644 index 0000000000..bed4314551 --- /dev/null +++ b/Documentation/Makefile.am.wild @@ -0,0 +1,30 @@ +# Documentation/Makefile.am.wild + +DOCFILES = $(wildcard *.doc) +PODFILES = $(wildcard *.pod) +OUTPODFILES = $(PODFILES) +TEXTFILES = $(OUTPODFILES:.pod=.txt) +GROFFFILES = $(OUTPODFILES:.pod=.1) +HTMLFILES = $(OUTPODFILES:.pod=.html) +DVIFILES = $(DOCFILES:.doc=.dvi) + +XPMS = $(wildcard *.xpm) +giffiles = $(XPMS:.xpm=.gif) + +EXTRA_DIST = Makefile.am.wild Rules.make $(XPMS) $(DOCFILES) $(PODFILES) vocabulary-data vocabulary-forms.el + +MAN1FILES = lilypond convert-mudela mi2mu mudela-book ly2dvi +MAN1GROFF = $(addsuffix .1,$(MAN1FILES)) + +default: all $(TEXTFILES) + +outdir = . + +install-data: $(outdir)/lilypond.1 + $(INSTALL) -d $(mandir)/man1 + $(INSTALL) -m 644 $(MAN1GROFF) $(mandir)/man1 + +uninstall-data: + (cd $(mandir)/man1/; rm -f $(MAN1GROFF)) + +include Rules.make diff --git a/Documentation/Makefile.in b/Documentation/Makefile.in new file mode 100644 index 0000000000..9e8347dcae --- /dev/null +++ b/Documentation/Makefile.in @@ -0,0 +1,206 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./Documentation/Makefile.am.wild by bin/autowild +# Do not edit +# Documentation/Makefile.am.wild + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +DOCFILES = introduction.doc mudela-course.doc mudela-man.doc +PODFILES = AUTHORS.pod CodingStyle.pod INSTALL.pod MANIFESTO.pod PATCHES.pod convert-mudela.pod faq.pod gnu-music.pod index.pod internals.pod language.pod lilypond.pod links.pod literature.pod ly2dvi.pod mi2mu.pod mudela-book.pod mutopia.pod other-packages.pod +OUTPODFILES = $(PODFILES) +TEXTFILES = $(OUTPODFILES:.pod=.txt) +GROFFFILES = $(OUTPODFILES:.pod=.1) +HTMLFILES = $(OUTPODFILES:.pod=.html) +DVIFILES = $(DOCFILES:.doc=.dvi) + +XPMS = lelie_icon.xpm lelie_logo.xpm lelieblond.xpm +giffiles = $(XPMS:.xpm=.gif) + +EXTRA_DIST = Makefile.am.wild Rules.make $(XPMS) $(DOCFILES) $(PODFILES) vocabulary-data vocabulary-forms.el + +MAN1FILES = lilypond convert-mudela mi2mu mudela-book ly2dvi +MAN1GROFF = $(addsuffix .1,$(MAN1FILES)) + +outdir = . +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../lib/config.hh +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Documentation/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = Documentation + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-generic + +clean: clean-generic mostlyclean + +distclean: distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-generic distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +default: all $(TEXTFILES) + +install-data: $(outdir)/lilypond.1 + $(INSTALL) -d $(mandir)/man1 + $(INSTALL) -m 644 $(MAN1GROFF) $(mandir)/man1 + +uninstall-data: + (cd $(mandir)/man1/; rm -f $(MAN1GROFF)) + +include Rules.make + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/Documentation/PATCHES.pod b/Documentation/PATCHES.pod new file mode 100644 index 0000000000..e98860d082 --- /dev/null +++ b/Documentation/PATCHES.pod @@ -0,0 +1,234 @@ +=head1 NAME + +PATCHES - track and distribute your code changes + +=head1 DESCRIPTION + +This page documents how to distribute your changes to GNU LilyPond + +=head1 ABSTRACT + +Distributing a change normally goes like this: + +=over 5 + +=item * + +make your fix/add your code + +=item * + +generate a patch, + +=item * + +e-mail your patch to one of the mailing lists +gnu-music-discuss@gnu.org or bug-gnu-music@gnu.org +(or if you're a bit shy, to the maintainer). + +=back + +=head1 GENERATING A PATCH + +In F, set TOPLEVEL_MY_PATCH_LEVEL: + + VERSION: + ... + TOPLEVEL_MY_PATCH_LEVEL = jcn1 + +In F, enter a summary of changes: + + NEWS: + pl 0.1.48.jcn1 + - added PATCHES.pod + +Then, type something like + + make dist + mv out/lilypond-0.1.48.jcn1.tar.gz ../releases + make-patch + +which leaves your patch as F<./patch-0.1.48.jcn1>. + +or even simpler: + + release + + tar-ball: ../patches/patch-0.1.48.jcn1.gz + patch: ../patches/patch-0.1.48.jcn1.gz + updeet: ../test/updeet + +=head1 PREREQUISITES + +For creating a patch you need + +=over 5 + +=item * + +All items mentioned in F. You're not going to send a patch +that you haven't even built, right? + +=item * + +GNU Diff + +=item * + +Python (version 1.4 or newer). +You can of course make a patch by hand, which would go something like: + + make distclean + cd .. + diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1 + +but there are handy python scripts available. If you're doing development, +you'll need Python for other LilyPond scripts anyway. + +=item * + +The Lily directory structure, which looks like: + + lilypond-0.1.48/ + patches/ + releases/ + test/ + +=back + +=head1 SYNCHRONISE + +If you're not very quick with sending your patch, there's a good chance +that an new release of LilyPond comes available. In such a case (and +sometimes for other unkown reasons :-), the maintainer will probably ask +you to make a new patch against the latest release. +Your best bet is to download the latest release, and apply your patch +against this new source tree: + + cd lilypond-0.1.49 + zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz + +Then, make a patch as shown above. + +=head1 MAINTAINER + +Han-Wen Nienhuys + +Just keep on sending those patches! +=head1 NAME + +PATCHES - track and distribute your code changes + +=head1 DESCRIPTION + +This page documents how to distribute your changes to GNU LilyPond + +=head1 ABSTRACT + +Distributing a change normally goes like this: + +=over 5 + +=item * + +make your fix/add your code + +=item * + +generate a patch, + +=item * + +e-mail your patch to one of the mailing lists +gnu-music-discuss@gnu.org or bug-gnu-music@gnu.org +(or if you're a bit shy, to the maintainer). + +=back + +=head1 GENERATING A PATCH + +In F, set TOPLEVEL_MY_PATCH_LEVEL: + + VERSION: + ... + TOPLEVEL_MY_PATCH_LEVEL = jcn1 + +In F, enter a summary of changes: + + NEWS: + pl 0.1.48.jcn1 + - added PATCHES.pod + +Then, type something like + + make-dist + mv out/lilypond-0.1.48.jcn1.tar.gz ../releases + make-patch + +which leaves your patch as F<./patch-0.1.48.jcn1>. + +or even simpler: + + release + + tar-ball: ../patches/patch-0.1.48.jcn1.gz + patch: ../patches/patch-0.1.48.jcn1.gz + updeet: ../test/updeet + +=head1 PREREQUISITES + +For creating a patch you need + +=over 5 + +=item * + +All items mentioned in F. You're not going to send a patch +that you haven't even built, right? + +=item * + +GNU Diff + +=item * + +Python (version 1.4 or newer). +You can of course make a patch by hand, which would go something like: + + make distclean + cd .. + diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1 + +but there are handy python scripts available. If you're doing development, +you'll need Python for other LilyPond scripts anyway. + +=item * + +The Lily directory structure, which looks like: + + lilypond-0.1.48/ + patches/ + releases/ + test/ + +=back + +=head1 SYNCHRONISE + +If you're not very quick with sending your patch, there's a good chance +that an new release of LilyPond comes available. In such a case (and +sometimes for other unkown reasons :-), the maintainer will probably ask +you to make a new patch against the latest release. +Your best bet is to download the latest release, and apply your patch +against this new source tree: + + cd lilypond-0.1.49 + zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz + +Then, make a patch as shown above. + +=head1 MAINTAINER + +Han-Wen Nienhuys + +Just keep on sending those patches! diff --git a/Documentation/Rules.make b/Documentation/Rules.make index dd04ca3604..37c33b2b34 100644 --- a/Documentation/Rules.make +++ b/Documentation/Rules.make @@ -3,6 +3,9 @@ .SUFFIXES: .pod .txt .1 .html +pod2html=pod2html +pod2groff=pod2man --center="LilyPond documentation" --section="0"\ + --release="LilyPond $(VERSION)" $< > $@ $(outdir)/%.gif: %.xpm xpmtoppm $< | ppmtogif > $@ @@ -24,10 +27,10 @@ $(outdir)/%.txt: $(outdir)/%.1 $(depth)/%.txt: $(outdir)/%.txt cp $< $@ -do_pod2html=$(pod2html) --noindex --infile $< --outfile=$@; sh $(depth)/bin/add-URLs.sh $@ +#do_pod2html=$(POD2HTML) --noindex --infile $< --outfile=$@; sh $(depth)/bin/add-URLs.sh $@ # do this for perl 5.003 -# do_pod2html=$(pod2html) $< -# mv $(notdir $@) $(outdir)/ + +do_pod2html=$(POD2HTML) $< ; mv $(notdir $@) $(outdir)/ # do this for perl 5.004 diff --git a/Documentation/faq.pod b/Documentation/faq.pod index 76ad9e5ddb..1237bf4a36 100644 --- a/Documentation/faq.pod +++ b/Documentation/faq.pod @@ -9,6 +9,14 @@ are meant to be relative to the source directory) =head2 Installing +Q: Wow, the webpages look really neat, but if I install the .exe file +on my windows 3.11 machine, it doesn't work. + +A: The dos port is done with the cygnus W32 port of the GNU utils. It +does I work with windows 3.x; you need NT or w95 (this is not a +recommendation, btw. We recommend you use Unix, in particular, use +GNU/Linux) + Q: I get all kinds of errors while compiling F A: LilyPond uses features of bison version 1.25. Please confirm that diff --git a/Documentation/out/dummy.dep b/Documentation/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/INSTALL b/INSTALL new file mode 100644 index 0000000000..27b5c95138 --- /dev/null +++ b/INSTALL @@ -0,0 +1,396 @@ + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + +NAME + INSTALL - installing GNU LilyPond + +DESCRIPTION + This page documents installation and compilation of GNU + LilyPond + +ABSTRACT + You do something which looks remotely like + + configure + make + make install + + The detailed instructions follow here. + +PREREQUISITES + For compilation you need. + + o A GNU system: GNU LilyPond is known to run on these + GNU systems: Linux (PPC, intel), FreeBSD, AIX, + NeXTStep, IRIX, Digital Unix and Solaris. + + If you have the Cygnus WINDOWS32 port of the GNU + utils, it will even work in Windows NT/95, but we + don't promise to support it. + + o GNU C++ version 2.7 or newer (yes, 2.8 is fine). + + o GNU make. + + o Flex (version 2.5.1 or newer). + + o Bison (version 1.25 or newer). + +RUNNING + GNU LilyPond does use a lot of resources. For operation + you need the following: + + o TeX + + o A PostScript printer and/or viewer (such as + Ghostscript) is strongly recommended. Xdvi will show + all embedded PostScript too if you have Ghostscript + installed. + +RECOMMENDED + Although not strictly necessary, these are recommended to + have. + + o Perl-5. Most documentation was created with the + perl's Plain Old Documentation. (I use 5.003) + + + + + +13/Mar/98 LilyPond 0.1.48 1 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + + o Python. Although perl is nice, python is better. We + will shift towards python for build scripts + + o GNU find + + o A fast computer (a full page of music typically takes + 1 minute on my 486/133, using the --enable-checking + compile. It's lot slower than most MusiXTeX + preprocessors) + +CONFIGURING and COMPILING + to install GNU LilyPond, simply type: + + configure + make install + + This will install the following files: + + /usr/local/man/man1/mi2mu.1 + /usr/local/man/man1/convert-mudela.1 + /usr/local/man/man1/mudela-book.1 + /usr/local/man/man1/lilypond.1 + /usr/local/lib/libflower.{so,a} + /usr/local/bin/lilypond + /usr/local/bin/mi2mu + /usr/local/share/lilypond/* + /usr/lib/texmf/texmf/tex/lilypond/* + + The TeX include directory is detected dynamically, but it + can be adjusted with --enable-tex-prefix and --enable-tex- + dir. The above assumes that you are root and have the GNU + development tools, and your make is GNU make. If this is + not the case, you can adjust your environment variables to + your taste: + + export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" + configure + + CPPFLAGS are the preprocessor flags. + + the configure script is Cygnus configure, and it will + accept --help. If you are not root, you will probably have + to make it with + + configure --prefix=/home/me_myself_and_I/ + + In this case, you will have to set MFINPUTS, and TEXINPUTS + accordingly. + + If you want to install GNU LilyPond in /usr/local, and + your TeX has no default hooks for local stuff (mine is + broken too), you can do: + + configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf + + + +13/Mar/98 LilyPond 0.1.48 2 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + + Since GNU LilyPond currently is beta, you are advised to + also use + + --enable-debugging + --enable-checking + + other options include: + + --enable-shared + Make a shared library (gnu/linux, solaris (?) only ) + + --enable-printing + Enable debugging print routines (lilypond -d option) + + --enable-optimise + Set maximum optimisation: compile with -O2 + + --enable-profiling + Compile with support for profiling + + --enable-tex-prefix + Set the directory where TeX and Metafont live + + --enable-tex-dir + Set then directory TeX input is in (detected as a + subdir of tex-prefix) + + --enable-mf-dir + Set the directory mf input is in (idem) + + --enable-out-dir + Set the directory for machine generated output. + + All options are documented in the configure help The + option --enable-optimise is recommended for Real Life + usage. + + If you do + + make all + + everything will be compiled, but nothing will be + installed. The resulting binaries can be found in the + subdirectories out/ (which contain all files generated + during compilation). + + Building for multiple hosts + + LilyPond does not follow the GNU standards when it comes + to configuring and making Makefiles. In LilyPond, make + generates all output in output directories (called out/, + by default). You can have multiple compiles from the same + source-tree, by overriding the setting for the output + directory. + + + +13/Mar/98 LilyPond 0.1.48 3 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + + Example: on my system, I do debugging and lots compiling. + For this I use the configuration as follows: + + configure --prefix=~ --enable-debugging --enable-printing --enable-checking + make all + + and I want to do profiling. For that I use + + configure --prefix=~ --enable-debugging --disable-printing\ + --disable-checking --enable-profiling --enable-optimise\ + --enable-out-dir=out-profile + + make OUTDIR_NAME=out-profile all + + These two commands build two entirely separate versions of + LilyPond. In Real Life, you would probably also want to + have two different prefixes. On my machine this is no + problem; I never do make install. My prefix dirs are + linked back to my source directory. + +INSTALLING + If you have done a successful make, then a simple + + make install + + should do the trick. + + If you are doing an upgrade, please remember to remove + obsolete .pk and .tfm files of the fonts. A script has + been provided to do the work, see bin/clean-fonts.sh. + +CAVEATS + o The -O2 option to gcc triggers a gcc bug on DEC Alpha + in dstream.cc. You should turn off this flag for this + file. + + o Perl5.003 and Perl5.004 use different syntax for + pod2html. + +EXAMPLE + This is what I type in my xterm: + + lilypond someinput.ly + tex someinput.tex + xdvi someinput& + + This is what the output looks like over here: + + + + + + + + + + +13/Mar/98 LilyPond 0.1.48 4 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + + GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0 + Parsing ... [/home/hw/share/lilypond/init// + <..etc..> + init//performer.ly]]][input/kortjakje.ly] + Creating elements ...[8][16][24][25] + Preprocessing elements... + Calculating column positions ... [14][25] + Postprocessing elements... + TeX output to someinput.tex ... + Creating MIDI elements ...MIDI output to someinput.midi ... + + hw:~/musix/spacer$ xdvi someinput& + [1] 855 + + Check out the input files, some of them have comments + Please refer to the man page for more information. + +REDHAT LINUX + RedHat Linux users should be able to get a RPM. A spec + file is in make/out/lilypond.spec. You should be able to + create an rpm as a normal user. Be sure you have a + ~/.rpmrc, and edit the RPM-dir in Variables.make. (If you + create the RPM as a normal user the permissions will not + be set correctly, unfortunately) + +DEBIAN GNU/LINUX + A Debian package is also available; contact Anthony Fok + . The build scripts are in the + subdirectory debian/ + +WINDOWS NT/95 + So, you're stuck with Windows, eh? Well, don't worry, you + just need (to get) Cygnus' windows32 port of gnu + development stuff; have a look at + http://www.cygnus.com/gnu-win32. + + To make GNU LilyPond under, brr, aargh, shudder... + windows32, well, simply type: + + bash configure + make + + Note If you rely on broken DOS/Windows tools such as + pkzip/WinZIP to unpack the distribution, make sure the + entire source tree is unpacked correctly, in particular + the empty out directories (flower/out, lib/out et. al.) + +MUSIXTEX + Previous versions (before 0.1.39) used fonts from the TeX + macro package "MusixTeX". You can still use these, but + they are not supported. Since LilyPond's Feta font is + much prettier, you'd be seriously misguided if you used + them, but anyway, here are the installation instructions + for those deprecated fonts. + + + +13/Mar/98 LilyPond 0.1.48 5 + + + + + +INSTALL(1) LilyPond documentation INSTALL(1) + + + [obsolete] I use the MusixTeX fonts those found in + MusixTeX T.73. Beware, the clef symbol seems to have + changed its position in some versions, (notably Egler's, + a.k.a. OpusTeX). The MusixTeX fonts are included in + MusixTeX (T73 or newer), which can be had from any CTAN + site, e.g. at + + ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin + + ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin + + ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin + + You only need the contents of the mf/ subdirectory of the + package. The primary site of the Taupin version is + ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip + + Install the musixtex fonts in a directory which TeX and MF + knows (if you are root, look for a directory which + contains the directories with AMS and CM source (*.mf) + files. Create a subdir lilypond or musixtex and copy the + fonts into that). Do not forget to rehash TeX (if + applicable) + + Example: my fonts are in + /usr/local/lib/texfonts/musixtex/, and I have a symlink + pointing to that in + /usr/lib/texmf/texmf/fonts/source/public/. After I copied + the files, I ran "texhash" + + Andreas Egler's version of MusixTeX, now called OpusTeX, + will also work. Andreas moved some characters around in + the fonts, so you have to edit the definitions in + tex/eglerdefs.tex. + +AUTHORS + Han-Wen Nienhuys + + Jan Nieuwenhuizen + + Have fun! + + + + + + + + + + + + + + + + +13/Mar/98 LilyPond 0.1.48 6 + + diff --git a/INSTALL.txt b/INSTALL.txt deleted file mode 100644 index f953bed7f7..0000000000 --- a/INSTALL.txt +++ /dev/null @@ -1,396 +0,0 @@ - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - -NAME - INSTALL - installing GNU LilyPond - -DESCRIPTION - This page documents installation and compilation of GNU - LilyPond - -ABSTRACT - You do something which looks remotely like - - configure - make - make install - - The detailed instructions follow here. - -PREREQUISITES - For compilation you need. - - o A GNU system: GNU LilyPond is known to run on these - GNU systems: Linux (PPC, intel), FreeBSD, AIX, - NeXTStep, IRIX, Digital Unix and Solaris. - - If you have the Cygnus WINDOWS32 port of the GNU - utils, it will even work in Windows NT/95, but we - don't promise to support it. - - o GNU C++ v2.7 or better. - - o GNU make. - - o Flex (2.5.1 or better). - - o Bison. (Version 1.25 or better) - -RUNNING - GNU LilyPond does use a lot of resources. For operation - you need the following: - - o TeX - - o A PostScript printer and/or viewer (such as - Ghostscript) is strongly recommended. Xdvi will show - all embedded PostScript too if you have Ghostscript - installed. - -RECOMMENDED - Although not strictly necessary, these are recommended to - have. - - o Perl-5. Most documentation was created with the - perl's Plain Old Documentation. (I use 5.003) - - - - - -11/Mar/98 LilyPond 0.1.48 1 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - - o Python. Although perl is nice, python is better. We - will shift towards python for build scripts - - o GNU find - - o A fast computer (a full page of music typically takes - 1 minute on my 486/133, using the --enable-checking - compile. It's lot slower than most MusiXTeX - preprocessors) - -CONFIGURING and COMPILING - to install GNU LilyPond, simply type: - - configure - make install - - This will install the following files: - - /usr/local/man/man1/mi2mu.1 - /usr/local/man/man1/convert-mudela.1 - /usr/local/man/man1/mudela-book.1 - /usr/local/man/man1/lilypond.1 - /usr/local/lib/libflower.{so,a} - /usr/local/bin/lilypond - /usr/local/bin/mi2mu - /usr/local/share/lilypond/* - /usr/lib/texmf/texmf/tex/lilypond/* - - The TeX include directory is detected dynamically, but it - can be adjusted with --enable-tex-prefix and --enable-tex- - dir. The above assumes that you are root and have the GNU - development tools, and your make is GNU make. If this is - not the case, you can adjust your environment variables to - your taste: - - export CPPFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" - configure - - CPPFLAGS are the preprocessor flags. - - the configure script is Cygnus configure, and it will - accept --help. If you are not root, you will probably have - to make it with - - configure --prefix=/home/me_myself_and_I/ - - In this case, you will have to set MFINPUTS, and TEXINPUTS - accordingly. - - If you want to install GNU LilyPond in /usr/local, and - your TeX has no default hooks for local stuff (mine is - broken too), you can do: - - configure --prefix=/usr/local --enable-tex-prefix=/usr/lib/texmf - - - -11/Mar/98 LilyPond 0.1.48 2 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - - Since GNU LilyPond currently is beta, you are advised to - also use - - --enable-debugging - --enable-checking - - other options include: - - --enable-shared - Make a shared library (gnu/linux, solaris (?) only ) - - --enable-printing - Enable debugging print routines (lilypond -d option) - - --enable-optimise - Set maximum optimisation: compile with -O2 - - --enable-profiling - Compile with support for profiling - - --enable-tex-prefix - Set the directory where TeX and Metafont live - - --enable-tex-dir - Set then directory TeX input is in (detected as a - subdir of tex-prefix) - - --enable-mf-dir - Set the directory mf input is in (idem) - - --enable-out-dir - Set the directory for machine generated output. - - All options are documented in the configure help The - option --enable-optimise is recommended for Real Life - usage. - - If you do - - make all - - everything will be compiled, but nothing will be - installed. The resulting binaries can be found in the - subdirectories out/ (which contain all files generated - during compilation). - - Building for multiple hosts - - LilyPond does not follow the GNU standards when it comes - to configuring and making Makefiles. In LilyPond, make - generates all output in output directories (called out/, - by default). You can have multiple compiles from the same - source-tree, by overriding the setting for the output - directory. - - - -11/Mar/98 LilyPond 0.1.48 3 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - - Example: on my system, I do debugging and lots compiling. - For this I use the configuration as follows: - - configure --prefix=~ --enable-debugging --enable-printing --enable-checking - make all - - and I want to do profiling. For that I use - - configure --prefix=~ --enable-debugging --disable-printing\ - --disable-checking --enable-profiling --enable-optimise\ - --enable-out-dir=out-profile - - make OUTDIR_NAME=out-profile all - - These two commands build two entirely separate versions of - LilyPond. In Real Life, you would probably also want to - have two different prefixes. On my machine this is no - problem; I never do make install. My prefix dirs are - linked back to my source directory. - -INSTALLING - If you have done a successful make, then a simple - - make install - - should do the trick. - - If you are doing an upgrade, please remember to remove - obsolete .pk and .tfm files of the fonts. A script has - been provided to do the work, see bin/clean-fonts.sh. - -CAVEATS - o The -O2 option to gcc triggers a gcc bug on DEC Alpha - in dstream.cc. You should turn off this flag for this - file. - - o Perl5.003 and Perl5.004 use different syntax for - pod2html. - -EXAMPLE - This is what I type in my xterm: - - lilypond someinput.ly - tex someinput.tex - xdvi someinput& - - This is what the output looks like over here: - - - - - - - - - - -11/Mar/98 LilyPond 0.1.48 4 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - - GNU LilyPond 0.0.78 #4/FlowerLib 1.1.24 #0 - Parsing ... [/home/hw/share/lilypond/init// - <..etc..> - init//performer.ly]]][input/kortjakje.ly] - Creating elements ...[8][16][24][25] - Preprocessing elements... - Calculating column positions ... [14][25] - Postprocessing elements... - TeX output to someinput.tex ... - Creating MIDI elements ...MIDI output to someinput.midi ... - - hw:~/musix/spacer$ xdvi someinput& - [1] 855 - - Check out the input files, some of them have comments - Please refer to the man page for more information. - -REDHAT LINUX - RedHat Linux users should be able to get a RPM. A spec - file is in make/out/lilypond.spec. You should be able to - create an rpm as a normal user. Be sure you have a - ~/.rpmrc, and edit the RPM-dir in Variables.make. (If you - create the RPM as a normal user the permissions will not - be set correctly, unfortunately) - -DEBIAN GNU/LINUX - A Debian package is also available; contact Anthony Fok - . The build scripts are in the - subdirectory debian/ - -WINDOWS NT/95 - So, you're stuck with Windows, eh? Well, don't worry, you - just need (to get) Cygnus' windows32 port of gnu - development stuff; have a look at - http://www.cygnus.com/gnu-win32. - - To make GNU LilyPond under, brr, aargh, shudder... - windows32, well, simply type: - - bash configure - make - - Note If you rely on broken DOS/Windows tools such as - pkzip/WinZIP to unpack the distribution, make sure the - entire source tree is unpacked correctly, in particular - the empty out directories (flower/out, lib/out et. al.) - -MUSIXTEX - Previous versions (before 0.1.39) used fonts from the TeX - macro package "MusixTeX". You can still use these, but - they are not supported. Since LilyPond's Feta font is - much prettier, you'd be seriously misguided if you used - them, but anyway, here are the installation instructions - for those deprecated fonts. - - - -11/Mar/98 LilyPond 0.1.48 5 - - - - - -INSTALL(1) LilyPond documentation INSTALL(1) - - - [obsolete] I use the MusixTeX fonts those found in - MusixTeX T.73. Beware, the clef symbol seems to have - changed its position in some versions, (notably Egler's, - a.k.a. OpusTeX). The MusixTeX fonts are included in - MusixTeX (T73 or better), which can be had from any CTAN - site, e.g. at - - ftp://ftp.shsu.edu/tex-archive/macros/musixtex/taupin - - ftp://ftp.tex.ac.uk/tex-archive/macros/musixtex/taupin - - ftp://ftp.dante.de/tex-archive/macros/musixtex/taupin - - You only need the contents of the mf/ subdirectory of the - package. The primary site of the Taupin version is - ftp://hprib.lps.u-psud.fr/pub/music_zips/musixtex.zip - - Install the musixtex fonts in a directory which TeX and MF - knows (if you are root, look for a directory which - contains the directories with AMS and CM source (*.mf) - files. Create a subdir lilypond or musixtex and copy the - fonts into that). Do not forget to rehash TeX (if - applicable) - - Example: my fonts are in - /usr/local/lib/texfonts/musixtex/, and I have a symlink - pointing to that in - /usr/lib/texmf/texmf/fonts/source/public/. After I copied - the files, I ran "texhash" - - Andreas Egler's version of MusixTeX, now called OpusTeX, - will also work. Andreas moved some characters around in - the fonts, so you have to edit the definitions in - tex/eglerdefs.tex. - -AUTHORS - Han-Wen Nienhuys - - Jan Nieuwenhuizen - - Have fun! - - - - - - - - - - - - - - - - -11/Mar/98 LilyPond 0.1.48 6 - - diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000000..a1d81edeaf --- /dev/null +++ b/Makefile.am @@ -0,0 +1,35 @@ +# Automatically generated from ./lilypond-0.1.49/Makefile.am.wild by bin/autowild +# Do not edit +######################################################## +# project LilyPond -- the musical typesetter +# title top level makefile for LilyPond +# file Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys + +SUBDIRS = bin flower lib lily mf mi2mu debian\ + Documentation init input tex make mutopia + +SCHRIFTEN = configure configure.in install-sh aclocal.m4 +README_FILES = BUGS DEDICATION ANNOUNCE-0.1 ANNOUNCE \ + COPYING ONEWS NEWS README TODO \ + INSTALL AUTHORS PATCHES +EXTRA_DIST = Makefile.am.wild .dstreamrc mudela-mode.el acinclude.m4 VERSION $(README_FILES) $(SCHRIFTEN) + +dist-hook: + bin/autowild + +INSTALL: + rm -f INSTALL + ln `$(FIND) ./ -name INSTALL.txt -print | head -1` $@ + +AUTHORS: + rm -f AUTHORS + ln `$(FIND) ./ -name AUTHORS.txt -print | head -1` $@ + +PATCHES: + rm -f PATCHES + ln `$(FIND) ./ -name PATCHES.txt -print | head -1` $@ + diff --git a/Makefile.am.wild b/Makefile.am.wild new file mode 100644 index 0000000000..abb580c4e9 --- /dev/null +++ b/Makefile.am.wild @@ -0,0 +1,33 @@ +######################################################## +# project LilyPond -- the musical typesetter +# title top level makefile for LilyPond +# file Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys + +SUBDIRS = bin flower lib lily mf mi2mu debian\ + Documentation init input tex make mutopia + +SCHRIFTEN = configure configure.in install-sh aclocal.m4 +README_FILES = BUGS DEDICATION ANNOUNCE-0.1 ANNOUNCE \ + COPYING ONEWS NEWS README TODO \ + INSTALL AUTHORS PATCHES +EXTRA_DIST = Makefile.am.wild .dstreamrc mudela-mode.el acinclude.m4 VERSION $(README_FILES) $(SCHRIFTEN) + +dist-hook: + bin/autowild + +INSTALL: + rm -f INSTALL + ln `$(FIND) ./ -name INSTALL.txt -print | head -1` $@ + +AUTHORS: + rm -f AUTHORS + ln `$(FIND) ./ -name AUTHORS.txt -print | head -1` $@ + +PATCHES: + rm -f PATCHES + ln `$(FIND) ./ -name PATCHES.txt -print | head -1` $@ + diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000000..0827df92a2 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,514 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./flower/Makefile.am.wild by bin/autowild +# Do not edit +# project FlowerSoft C++ library +# title top level makefile for FlowerLib +# file flower/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# ...your sort order here, or how to comment-out a comment + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = . + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +CC = @CC@ +CXX = @CXX@ +LIB_SUFFIX = @LIB_SUFFIX@ +MAKEINFO = @MAKEINFO@ +MODULE_CXXFLAGS = @MODULE_CXXFLAGS@ +MODULE_LDFLAGS = @MODULE_LDFLAGS@ +PACKAGE = @PACKAGE@ +RANLIB = @RANLIB@ +VERSION = @VERSION@ + +SUBDIRS = include test + +lib_LIBRARIES = libflower.a +# lib_LIBRARIES = libflower.la + +README_FILES = ONEWS NEWS README TODO VERSION +EXTRA_DIST = Makefile.am.wild aclocal.m4 configure config.hh.in configure.in $(README_FILES) + +libflower_a_SOURCES = choleski.cc cpu-timer.cc data-file.cc diagonal-storage.cc dictionary.cc directed-graph.cc dstream.cc flower-debug.cc flower-version.cc full-storage.cc interval.cc lgetopt.cc libc-extension.cc matrix-debug.cc matrix-storage.cc matrix.cc nscalar.cc path.cc rational.cc scalar.cc string-convert.cc string.cc stringutil.cc text-db.cc text-stream.cc unionfind.cc vector.cc + +INCLUDES = -Iinclude +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +CONFIG_HEADER = config.hh +CONFIG_CLEAN_FILES = +LIBRARIES = $(lib_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libflower_a_LIBADD = +libflower_a_OBJECTS = choleski.o cpu-timer.o data-file.o \ +diagonal-storage.o dictionary.o directed-graph.o dstream.o \ +flower-debug.o flower-version.o full-storage.o interval.o lgetopt.o \ +libc-extension.o matrix-debug.o matrix-storage.o matrix.o nscalar.o \ +path.o rational.o scalar.o string-convert.o string.o stringutil.o \ +text-db.o text-stream.o unionfind.o vector.o +AR = ar +CXXFLAGS = @CXXFLAGS@ +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS) +CXXLINK = $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ +Makefile.in NEWS TODO aclocal.m4 config.hh.in configure configure.in \ +missing mkinstalldirs stamp-h.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP = --best +SOURCES = $(libflower_a_SOURCES) +OBJECTS = $(libflower_a_OBJECTS) + +default: all + +.SUFFIXES: +.SUFFIXES: .c .cc .o +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) + +config.status: $(srcdir)/configure + $(SHELL) ./config.status --recheck +$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +config.hh: stamp-h +stamp-h: $(srcdir)/config.hh.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES= CONFIG_HEADERS=config.hh:config.hh.in \ + $(SHELL) ./config.status + @echo timestamp > stamp-h +$(srcdir)/config.hh.in: $(srcdir)/stamp-h.in +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + @echo timestamp > $(srcdir)/stamp-h.in + +mostlyclean-hdr: + +clean-hdr: + +distclean-hdr: + rm -f config.hh + +maintainer-clean-hdr: + +mostlyclean-libLIBRARIES: + +clean-libLIBRARIES: + test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) + +distclean-libLIBRARIES: + +maintainer-clean-libLIBRARIES: + +install-libLIBRARIES: $(lib_LIBRARIES) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(libdir) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(libdir)/$$p"; \ + $(INSTALL_DATA) $$p $(libdir)/$$p; \ + else :; fi; \ + done + @$(POST_INSTALL) + @list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(RANLIB) $(libdir)/$$p"; \ + $(RANLIB) $(libdir)/$$p; \ + else :; fi; \ + done + +uninstall-libLIBRARIES: + $(NORMAL_UNINSTALL) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + rm -f $(libdir)/$$p; \ + done + +.c.o: + $(COMPILE) -c $< + +mostlyclean-compile: + rm -f *.o core + +clean-compile: + +distclean-compile: + rm -f *.tab.c + +maintainer-clean-compile: + +libflower.a: $(libflower_a_OBJECTS) $(libflower_a_DEPENDENCIES) + rm -f libflower.a + $(AR) cru libflower.a $(libflower_a_OBJECTS) $(libflower_a_LIBADD) + $(RANLIB) libflower.a +.cc.o: + $(CXXCOMPILE) -c $< + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + for subdir in $(SUBDIRS); do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + rev=''; for subdir in $(SUBDIRS); do rev="$$rev $$subdir"; done; \ + for subdir in $$rev; do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + (cd $$subdir && $(MAKE) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.hh.in $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + done; \ + test -z "$(ETAGS_ARGS)config.hh.in$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.hh.in $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + rm -rf $(distdir) + GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) \ + && $(MAKE) dvi \ + && $(MAKE) check \ + && $(MAKE) install \ + && $(MAKE) installcheck \ + && $(MAKE) dist + rm -rf $(distdir) + @echo "========================"; \ + echo "$(distdir).tar.gz is ready for distribution"; \ + echo "========================" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) + rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) + rm -rf $(distdir) +distdir: $(DISTFILES) + rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done + for subdir in $(SUBDIRS); do \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + done +choleski.o choleski.lo: choleski.cc include/choleski.hh \ + include/matrix.hh include/matrix-storage.hh include/varray.hh \ + include/real.hh include/virtual-methods.hh include/vector.hh +cpu-timer.o cpu-timer.lo: cpu-timer.cc include/cpu-timer.hh \ + include/real.hh +data-file.o data-file.lo: data-file.cc include/international.hh \ + include/data-file.hh include/text-stream.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh include/compare.hh \ + include/varray.hh +diagonal-storage.o diagonal-storage.lo: diagonal-storage.cc \ + include/diagonal-storage.hh include/full-storage.hh \ + include/varray.hh include/matrix-storage.hh include/real.hh \ + include/virtual-methods.hh include/full-storage.icc +dictionary.o dictionary.lo: dictionary.cc +directed-graph.o directed-graph.lo: directed-graph.cc \ + include/directed-graph.hh include/parray.hh include/varray.hh +dstream.o dstream.lo: dstream.cc include/assoc.hh include/varray.hh \ + include/dstream.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/scalar.hh \ + include/text-db.hh include/data-file.hh include/text-stream.hh \ + include/string-convert.hh include/assoc-iter.hh +flower-debug.o flower-debug.lo: flower-debug.cc include/flower-debug.hh \ + include/dstream.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh +flower-version.o flower-version.lo: flower-version.cc config.hh +full-storage.o full-storage.lo: full-storage.cc include/full-storage.hh \ + include/varray.hh include/matrix-storage.hh include/real.hh \ + include/virtual-methods.hh include/full-storage.icc +interval.o interval.lo: interval.cc include/interval.hh \ + include/fproto.hh include/real.hh include/compare.hh \ + include/interval.tcc include/string.hh \ + include/arithmetic-operator.hh include/string-handle.hh \ + include/international.hh include/flower-debug.hh \ + include/dstream.hh +lgetopt.o lgetopt.lo: lgetopt.cc include/lgetopt.hh \ + include/international.hh +libc-extension.o libc-extension.lo: libc-extension.cc \ + include/libc-extension.hh include/fproto.hh include/real.hh \ + config.hh +matrix-debug.o matrix-debug.lo: matrix-debug.cc include/flower-debug.hh \ + include/dstream.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/matrix.hh \ + include/matrix-storage.hh include/varray.hh \ + include/virtual-methods.hh include/vector.hh +matrix-storage.o matrix-storage.lo: matrix-storage.cc \ + include/full-storage.hh include/varray.hh \ + include/matrix-storage.hh include/real.hh \ + include/virtual-methods.hh include/diagonal-storage.hh +matrix.o matrix.lo: matrix.cc include/matrix.hh \ + include/matrix-storage.hh include/varray.hh include/real.hh \ + include/virtual-methods.hh include/vector.hh \ + include/full-storage.hh include/diagonal-storage.hh +nscalar.o nscalar.lo: nscalar.cc +path.o path.lo: path.cc include/path.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/varray.hh \ + include/flower-debug.hh include/dstream.hh +rational.o rational.lo: rational.cc include/rational.hh \ + include/compare.hh include/arithmetic-operator.hh \ + include/fproto.hh include/real.hh include/string.hh \ + include/string-handle.hh include/international.hh \ + include/string-convert.hh include/libc-extension.hh config.hh +scalar.o scalar.lo: scalar.cc include/scalar.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/rational.hh +string-convert.o string-convert.lo: string-convert.cc \ + include/libc-extension.hh include/fproto.hh include/real.hh \ + config.hh include/string.hh include/arithmetic-operator.hh \ + include/string-handle.hh include/international.hh \ + include/compare.hh include/string-convert.hh \ + include/rational.hh +string.o string.lo: string.cc include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh \ + include/libc-extension.hh config.hh include/string-convert.hh +stringutil.o stringutil.lo: stringutil.cc include/string-handle.hh \ + include/fproto.hh include/real.hh include/string-data.hh \ + include/string.hh include/arithmetic-operator.hh \ + include/international.hh include/compare.hh \ + include/string-data.icc include/string-handle.icc \ + include/string.icc +text-db.o text-db.lo: text-db.cc include/text-db.hh include/data-file.hh \ + include/text-stream.hh include/string.hh \ + include/arithmetic-operator.hh include/fproto.hh \ + include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/varray.hh +text-stream.o text-stream.lo: text-stream.cc include/text-stream.hh \ + include/string.hh include/arithmetic-operator.hh \ + include/fproto.hh include/real.hh include/string-handle.hh \ + include/international.hh include/compare.hh include/varray.hh +unionfind.o unionfind.lo: unionfind.cc include/unionfind.hh \ + include/varray.hh +vector.o vector.lo: vector.cc include/vector.hh include/real.hh \ + include/varray.hh + +info: info-recursive +dvi: dvi-recursive +check: all-am + $(MAKE) check-recursive +installcheck: installcheck-recursive +all-recursive-am: config.hh + $(MAKE) all-recursive + +all-am: Makefile $(LIBRARIES) config.hh + +install-exec-am: install-libLIBRARIES + +uninstall-am: uninstall-libLIBRARIES + +install-exec: install-exec-recursive install-exec-am + @$(NORMAL_INSTALL) + +install-data: install-data-recursive + @$(NORMAL_INSTALL) + +install: install-recursive install-exec-am + @: + +uninstall: uninstall-recursive uninstall-am + +all: all-recursive-am all-am + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: installdirs-recursive + $(mkinstalldirs) $(libdir) + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean-am: mostlyclean-hdr mostlyclean-libLIBRARIES \ + mostlyclean-compile mostlyclean-tags \ + mostlyclean-generic + +clean-am: clean-hdr clean-libLIBRARIES clean-compile clean-tags \ + clean-generic mostlyclean-am + +distclean-am: distclean-hdr distclean-libLIBRARIES distclean-compile \ + distclean-tags distclean-generic clean-am + +maintainer-clean-am: maintainer-clean-hdr maintainer-clean-libLIBRARIES \ + maintainer-clean-compile maintainer-clean-tags \ + maintainer-clean-generic distclean-am + +mostlyclean: mostlyclean-recursive mostlyclean-am + +clean: clean-recursive clean-am + +distclean: distclean-recursive distclean-am + rm -f config.status + +maintainer-clean: maintainer-clean-recursive maintainer-clean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f config.status + +.PHONY: default mostlyclean-hdr distclean-hdr clean-hdr \ +maintainer-clean-hdr mostlyclean-libLIBRARIES distclean-libLIBRARIES \ +clean-libLIBRARIES maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \ +install-libLIBRARIES mostlyclean-compile distclean-compile \ +clean-compile maintainer-clean-compile install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info dvi \ +installcheck all-recursive-am all-am install-exec-am uninstall-am \ +install-exec install-data install uninstall all installdirs \ +mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/NEWS b/NEWS index 4ead68b8d3..3c15094815 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,23 @@ +pl 49 + - parser assert changed to warning + - fix stdin reading + - small jcn fix + - changed unbound Spanner from assert to warning + - forced breakpoints + - add a nowildcard: stmt to wild-perl + +pl 48.jcn5 + - ugh: double parser/lexer: + be sure to rm lily/parser.cc lily/lexer.cc or bin/clien + before re-running autowild! + - V.RSION + - bin/clien bin/meek + - bf's: flower/VERSION, flower/config.hh, lily/lexer/VURSION + lib/config.hh bin/convent-mudela + - lost of automake fixes + - automake + +****** pl 48 - Pitch_squash_engraver makes Rhythmic_staff possible. - some fixes to buildscripts for sgi irix diff --git a/PATCHES b/PATCHES new file mode 100644 index 0000000000..286d0c3c47 --- /dev/null +++ b/PATCHES @@ -0,0 +1,132 @@ + + + +PATCHES(1) LilyPond documentation PATCHES(1) + + +NAME + PATCHES - track and distribute your code changes + +DESCRIPTION + This page documents how to distribute your changes to GNU + LilyPond + +ABSTRACT + Distributing a change normally goes like this: + + o make your fix/add your code + + o generate a patch, + + o e-mail your patch to one of the mailing lists gnu- + music-discuss@gnu.org or bug-gnu-music@gnu.org (or if + you're a bit shy, to the maintainer). + +GENERATING A PATCH + In VERSION, set TOPLEVEL_MY_PATCH_LEVEL: + + VERSION: + ... + TOPLEVEL_MY_PATCH_LEVEL = jcn1 + + In NEWS, enter a summary of changes: + + NEWS: + pl 0.1.48.jcn1 + - added PATCHES.pod + + Then, type something like + + make-dist + mv out/lilypond-0.1.48.jcn1.tar.gz ../releases + make-patch + + which leaves your patch as ./patch-0.1.48.jcn1. + + or even simpler: + + release + + tar-ball: ../patches/patch-0.1.48.jcn1.gz + patch: ../patches/patch-0.1.48.jcn1.gz + updeet: ../test/updeet + + +PREREQUISITES + For creating a patch you need + + o All items mentioned in INSTALL. You're not going to + send a patch that you haven't even built, right? + + + + +13/Mar/98 LilyPond 0.1.48 1 + + + + + +PATCHES(1) LilyPond documentation PATCHES(1) + + + o GNU Diff + + o Python (version 1.4 or newer). You can of course + make a patch by hand, which would go something like: + + make distclean + cd .. + diff -urN lilypond-0.1.48 lilypond-0.1.48.jcn1 > patch-0.1.48.jcn1 + + but there are handy python scripts available. If + you're doing development, you'll need Python for + other LilyPond scripts anyway. + + o The Lily directory structure, which looks like: + + lilypond-0.1.48/ + patches/ + releases/ + test/ + + + If you're not very quick with sending your patch, there's + a good chance that an new release of LilyPond comes + available. In such a case (and sometimes for other unkown + reasons :-), the maintainer will probably ask you to make + a new patch against the latest release. Your best bet is + to download the latest release, and apply your patch + against this new source tree: + + cd lilypond-0.1.49 + zpatch -p0 -E < ../patches/patch-0.1.48.jcn1.gz + + Then, make a patch as shown above. + +MAINTAINER + Han-Wen Nienhuys + + Just keep on sending those patches! + + + + + + + + + + + + + + + + + + + +13/Mar/98 LilyPond 0.1.48 2 + + diff --git a/TODO b/TODO index 1950f517bd..b981bc6640 100644 --- a/TODO +++ b/TODO @@ -14,8 +14,6 @@ grep for TODO and ugh/ugr - configure.in - clean-fonts.sh - * forced breakpoints - * nicen examples: - remove all \multi - break-up heavily-nested score blocks @@ -34,8 +32,6 @@ grep for TODO and ugh/ugr * add a screenshot to the website. :) - * fix stdin input - * documentation - introduction? - info? @@ -48,8 +44,6 @@ grep for TODO and ugh/ugr * bf: abbrevs over whole note - * spanner that is not spanned gives assert (). - * the warning about the negative slur/tie length appears twice which is irritating. @@ -109,14 +103,8 @@ STUFF * xdvi: PS in magnifying glass. - * Rational infty(HUGE_VAL) on glibc / w32 - * Fix profiling. gprof bugreport? - * GS: /undefined in draw_beam after XDVI magnification. - - * Rational global static var. - PROJECTS * Unicode support? @@ -136,11 +124,8 @@ PROJECTS * Makefile stuff: - - Use Automake - shared lib on Solaris too. - check libtool - - generate stuff in out/default, out/sun5-irix etc iso out/ - and out-sun5/ * Add mudela-output to Rosegarden. @@ -270,7 +255,6 @@ languages: - allowing users to set them. - penalties - specify number of lines - - set linelength per line * Rhythmic staff. @@ -434,8 +418,6 @@ Mudela. * naming of Voice_group/Voice - * benchmark band_matrices. - * versioning stuff (cvt mudela, mudela, etc.) * a real convert-mudela @@ -444,13 +426,11 @@ Mudela. * use String iso Text_def for lyrics. - * use position 0 for center of staff iso bottom. - * Klavarskribo? * lyrics in chords still fuck up. - - rewire acknowledge_element() logic with a process_acknowledged() + * rewire acknowledge_element() logic with a process_acknowledged() * pushgroup/popgroup diff --git a/VERSION b/VERSION index 7936890dac..0422161a66 100644 --- a/VERSION +++ b/VERSION @@ -1,8 +1,10 @@ -TOPLEVEL_MAJOR_VERSION = 0 -TOPLEVEL_MINOR_VERSION = 1 -TOPLEVEL_PATCH_LEVEL = 48 -TOPLEVEL_MY_PATCH_LEVEL = +MAJOR_VERSION=0 +MINOR_VERSION=1 +PATCH_LEVEL=49 +MY_PATCH_LEVEL= +# now used as shell script in configure too +# leave no spaces around the equal signs! # use the above to send patches, always empty for released version: # please don't move these comments up; the patch should fail if # the previous version was wrong. diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000000..8c45edc944 --- /dev/null +++ b/acinclude.m4 @@ -0,0 +1,86 @@ + +AC_DEFUN(AC_JUNK_ARGS, [ +]) + +AC_DEFUN(AC_LILY_WARN, [ + AC_MSG_WARN($1) + warn_b=yes +]) + +dnl should cache result. +dnl should look in $prefix first. +dnl should probably assume TDS + +AC_DEFUN(AC_TEX_PREFIX, [ + + + AC_MSG_CHECKING(TeX/MF root dir directory) + + find_root_prefix="$prefix" + + + test "x$find_root_prefix" = xNONE && find_root_prefix="$ac_default_prefix" + find_texpostfix=""; + for postfix in "/lib/tex/" "/lib/texmf" "/lib" "/tex" "/texmf"; do + find_texprefix="$find_root_prefix$postfix" + if test -d $find_texprefix; then + find_texpostfix=$postfix + break; + fi + done + + if test "x$find_texpostfix" = x; then + find_texpostfix='/lib/texmf/tex' + AC_LILY_WARN(Cannot determine the TeX-directory. Please use --enable-tex-prefix) + fi + + find_texprefix="$find_root_prefix/$find_texpostfix" + + # only assign if variablename not empty + if test x != "x$1"; then + $1='${prefix}'/"$find_texpostfix" + fi + AC_MSG_RESULT($find_texprefix) + +]) + + +# find a directory inside a prefix, +# $1 the prefix (expanded version) +# $2 variable to assign +# $3 the directory name +# $4 description +AC_DEFUN(AC_FIND_DIR_IN_PREFIX, [ + + AC_MSG_CHECKING($4 directory) + find_dirdir=`(cd $1; + $FIND ./ -type d -a -name $3 -print |sort|head -1|sed 's#^\./##')` + + + if test "x$find_dirdir" = x; then + find_dirdir="/$3"; + AC_LILY_WARN(Cannot determine $4 subdirectory. Please set from command-line) + true + fi + $2=$find_dirdir + AC_MSG_RESULT($1/$find_dirdir) +]) + +AC_DEFUN(AC_TEX_SUBDIR, [ +dnl AC_REQUIRE([AC_TEX_PREFIX]) + AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, tex,TeX input) + $1="$TEXPREFIX/$$1" +]) + +AC_DEFUN(AC_MF_SUBDIR, [ +dnl AC_REQUIRE([AC_TEX_PREFIX]) + AC_FIND_DIR_IN_PREFIX($find_texprefix, $1, source, MF input) + $1="$TEXPREFIX/$$1" +]) + +AC_DEFUN(AC_CHECK_SEARCH_RESULT, [ + if test $1 = "error" + then + AC_LILY_WARN(can't find $2. $3) + fi +]) diff --git a/aclocal.m4 b/aclocal.m4 index 8c45edc944..c4b1fdc5e2 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,3 +1,5 @@ +dnl aclocal.m4 generated automatically by aclocal 1.2 + AC_DEFUN(AC_JUNK_ARGS, [ ]) @@ -84,3 +86,117 @@ AC_DEFUN(AC_CHECK_SEARCH_RESULT, [ AC_LILY_WARN(can't find $2. $3) fi ]) + +# Do all the work for Automake. This macro actually does too much -- +# some checks are only needed if your package does certain things. +# But this isn't really a big deal. + +# serial 1 + +dnl Usage: +dnl AM_INIT_AUTOMAKE(package,version, [no-define]) + +AC_DEFUN(AM_INIT_AUTOMAKE, +[AC_REQUIRE([AM_PROG_INSTALL]) +PACKAGE=[$1] +AC_SUBST(PACKAGE) +VERSION=[$2] +AC_SUBST(VERSION) +dnl test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +fi +ifelse([$3],, +AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") +AC_DEFINE_UNQUOTED(VERSION, "$VERSION")) +AM_SANITY_CHECK +AC_ARG_PROGRAM +dnl FIXME This is truly gross. +missing_dir=`cd $ac_aux_dir && pwd` +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) +AC_PROG_MAKE_SET]) + + +# serial 1 + +AC_DEFUN(AM_PROG_INSTALL, +[AC_REQUIRE([AC_PROG_INSTALL]) +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' +AC_SUBST(INSTALL_SCRIPT)dnl +]) + +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "$@" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + test "[$]2" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Like AC_CONFIG_HEADER, but automatically create stamp file. + +AC_DEFUN(AM_CONFIG_HEADER, +[AC_PREREQ([2.12]) +AC_CONFIG_HEADER([$1]) +dnl When config.status generates a header, we must update the stamp-h file. +dnl This file resides in the same directory as the config header +dnl that is generated. We must strip everything past the first ":", +dnl and everything past the last "/". +AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl +ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, +<>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, +<>; do + case " <<$>>CONFIG_HEADERS " in + *" <<$>>am_file "*<<)>> + echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx + ;; + esac + am_indx=`expr "<<$>>am_indx" + 1` +done<<>>dnl>>) +changequote([,]))]) + diff --git a/bin/Makefile b/bin/Makefile deleted file mode 100644 index c328fef380..0000000000 --- a/bin/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -# bin/Makefile - -depth = .. -include $(depth)/make/Include.make - -# list of distribution files: -PERL_SCRIPTS_IN = $(wildcard *.pl) -PERL_SCRIPTS = $(addprefix $(outdir)/, $(PERL_SCRIPTS_IN:.pl=)) -SH_SCRIPTS_IN = $(wildcard *.sh) -SH_SCRIPTS = $(addprefix $(outdir)/, $(SH_SCRIPTS_IN:.sh=)) -PYTHON_SCRIPTS_IN = $(wildcard *.py) -PYTHON_SCRIPTS = $(addprefix $(outdir)/, $(PYTHON_SCRIPTS_IN:.py=)) -EXTRA_DISTFILES = $(SH_SCRIPTS_IN) $(PERL_SCRIPTS_IN) $(PYTHON_SCRIPTS_IN) - - -all: $(PERL_SCRIPTS) $(PYTHON_SCRIPTS) $(SH_SCRIPTS) - -$(outdir)/%: %.pl - sed 's!@PERL@!$(PERL)!' < $< > $@ - chmod 755 $@ - -#FIXME. Check for bash? -$(outdir)/%: %.sh - sed 's!@SH@!$(SHELL)!' < $< > $@ - chmod 755 $@ - -$(outdir)/%: %.py - sed 's!@PYTHON@!$(PYTHON)!' < $< > $@ - chmod 755 $@ - -EXECUTABLES=convert-mudela mudela-book ly2dvi - -localinstall: all - $(INSTALL) -d $(bindir) - cd $(outdir); \ - for a in $(EXECUTABLES); \ - do $(INSTALL) -m 755 $$a $(bindir); \ - done - -localuninstall: - for a in $(EXECUTABLES); \ - do rm -f $(bindir)/convert-mudela $(bindir)/mudela-book; \ - done diff --git a/bin/Makefile.am b/bin/Makefile.am new file mode 100644 index 0000000000..5b8192bf6c --- /dev/null +++ b/bin/Makefile.am @@ -0,0 +1,10 @@ +# Automatically generated from ./lilypond-0.1.49/bin/Makefile.am.wild by bin/autowild +# Do not edit +# bin/Makefile + +# bin_SCRIPTS = Makefile.in add-URLs.in clean-diaper.in clean-embeds.in clean-fonts.in conflily.in convert-mudela.in cvm.in find-typenames.in foo.in genheader.in ly2dvi.in make-docxx.in make-examples.in make-patch.in make-version.in make-website.in mf-deps.in mf-to-table.in mudela-book.in ps-to-gifs.in release.in show-latest.in + +PAREL_SCHRIFTEN = flower.py lilypython.py +IN_SCHRIFTEN = flower.py lilypython.py +EXTRA_DIST = Makefile.am.wild autowild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) wild-perl + diff --git a/bin/Makefile.am.wild b/bin/Makefile.am.wild new file mode 100644 index 0000000000..ba97f091a2 --- /dev/null +++ b/bin/Makefile.am.wild @@ -0,0 +1,8 @@ +# bin/Makefile + +# bin_SCRIPTS = $(wildcard *.in) + +PAREL_SCHRIFTEN = $(wildcard *.py) +IN_SCHRIFTEN = $(wildcard *.py) +EXTRA_DIST = Makefile.am.wild autowild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) wild-perl + diff --git a/bin/Makefile.in b/bin/Makefile.in new file mode 100644 index 0000000000..edff79e6a3 --- /dev/null +++ b/bin/Makefile.in @@ -0,0 +1,235 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./bin/Makefile.am.wild by bin/autowild +# Do not edit +# bin/Makefile + +# bin_SCRIPTS = Makefile.in add-URLs.in clean-diaper.in clean-embeds.in clean-fonts.in conflily.in convert-mudela.in cvm.in find-typenames.in foo.in genheader.in ly2dvi.in make-docxx.in make-examples.in make-patch.in make-version.in make-website.in mf-deps.in mf-to-table.in mudela-book.in ps-to-gifs.in release.in show-latest.in + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +PAREL_SCHRIFTEN = flower.py lilypython.py +IN_SCHRIFTEN = flower.py lilypython.py +EXTRA_DIST = Makefile.am.wild autowild $(PAREL_SCHRIFTEN) $(IN_SCHRIFTEN) wild-perl +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../lib/config.hh +CONFIG_CLEAN_FILES = add-URLs clean-diaper clean-embeds clean-fonts \ +conflily convert-mudela cvm find-typenames foo genheader ly2dvi \ +make-docxx make-examples make-patch make-version make-website mf-deps \ +mf-to-table mudela-book ps-to-gifs release show-latest +DIST_COMMON = Makefile.am Makefile.in add-URLs.in clean-diaper.in \ +clean-embeds.in clean-fonts.in conflily.in convert-mudela.in cvm.in \ +find-typenames.in foo.in genheader.in ly2dvi.in make-docxx.in \ +make-examples.in make-patch.in make-version.in make-website.in \ +mf-deps.in mf-to-table.in mudela-book.in ps-to-gifs.in release.in \ +show-latest.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps bin/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +add-URLs: $(top_builddir)/config.status add-URLs.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +clean-diaper: $(top_builddir)/config.status clean-diaper.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +clean-embeds: $(top_builddir)/config.status clean-embeds.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +clean-fonts: $(top_builddir)/config.status clean-fonts.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +conflily: $(top_builddir)/config.status conflily.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +convert-mudela: $(top_builddir)/config.status convert-mudela.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +cvm: $(top_builddir)/config.status cvm.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +find-typenames: $(top_builddir)/config.status find-typenames.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +foo: $(top_builddir)/config.status foo.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +genheader: $(top_builddir)/config.status genheader.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +ly2dvi: $(top_builddir)/config.status ly2dvi.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +make-docxx: $(top_builddir)/config.status make-docxx.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +make-examples: $(top_builddir)/config.status make-examples.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +make-patch: $(top_builddir)/config.status make-patch.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +make-version: $(top_builddir)/config.status make-version.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +make-website: $(top_builddir)/config.status make-website.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +mf-deps: $(top_builddir)/config.status mf-deps.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +mf-to-table: $(top_builddir)/config.status mf-to-table.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +mudela-book: $(top_builddir)/config.status mudela-book.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +ps-to-gifs: $(top_builddir)/config.status ps-to-gifs.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +release: $(top_builddir)/config.status release.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +show-latest: $(top_builddir)/config.status show-latest.in + cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = bin + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-generic + +clean: clean-generic mostlyclean + +distclean: distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-generic distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/bin/add-URLs.in b/bin/add-URLs.in new file mode 100644 index 0000000000..a32e6f964b --- /dev/null +++ b/bin/add-URLs.in @@ -0,0 +1,5 @@ +#!/bin/sh + +# add URLs for broken perl 5.004 + +perl -i~ -pe 's! ([a-z]+://[^ \t]+)! $1!g' $* diff --git a/bin/add-URLs.sh b/bin/add-URLs.sh deleted file mode 100644 index a32e6f964b..0000000000 --- a/bin/add-URLs.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -# add URLs for broken perl 5.004 - -perl -i~ -pe 's! ([a-z]+://[^ \t]+)! $1!g' $* diff --git a/bin/autowild b/bin/autowild new file mode 100755 index 0000000000..b3f5404ed9 --- /dev/null +++ b/bin/autowild @@ -0,0 +1,29 @@ +#!/bin/sh +# autowild +# for those of you that have no wild-automake + +# ugh +verbose=true +if test x$1 = x-v; then + verbose=echo +fi + +#ugh +# PERL=@PERL@ +PERL=/usr/bin/perl + +WILD_MAKEFILES=$(find . -name \*.wild) +for i in $WILD_MAKEFILES; do + dir=$(dirname $i) + wild=$(basename $i) + make=$(basename $i .wild) + $verbose "autowild: creating $dir/$make" + TOPDIR=`pwd` + (cd $dir + rm -f $make + echo "# Automatically generated from $i by $0" > $make + echo "# Do not edit" >> $make + cat $wild | $PERL $TOPDIR/bin/wild-perl >> $make + ) +done + diff --git a/bin/clean-diaper.in b/bin/clean-diaper.in new file mode 100644 index 0000000000..06be9040ae --- /dev/null +++ b/bin/clean-diaper.in @@ -0,0 +1,18 @@ +#!/bin/sh + +# unclobber current dir. +rm -vf *.aux *.log *.orig *~ +rm -vf `grep -li "^% Creator: GNU LilyPond" *.out *.tex` +rm -vf `grep -li "Creator: mi2mu" *.midi.ly` +rm -vf `grep -li "%Creator: dvipsk" *.ps` +rm -vf `grep -li "Creator: GNU LilyPond" *.midi` +rm -vf `grep -li "Creator: ly2dvi" *.tex` +rm -vf `find -name 'core'` +rm -vf `find -name '*.orig'` +rm -vf `find -name '*.rej'` + + +# docxx mess +rm -vf *dvi +rm -vf *.class HIER*.html dxxgifs.tex gifs.db icon?.gif logo.gif down.gif \ + aindex.html index.html diff --git a/bin/clean-diaper.sh b/bin/clean-diaper.sh deleted file mode 100644 index 06be9040ae..0000000000 --- a/bin/clean-diaper.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -# unclobber current dir. -rm -vf *.aux *.log *.orig *~ -rm -vf `grep -li "^% Creator: GNU LilyPond" *.out *.tex` -rm -vf `grep -li "Creator: mi2mu" *.midi.ly` -rm -vf `grep -li "%Creator: dvipsk" *.ps` -rm -vf `grep -li "Creator: GNU LilyPond" *.midi` -rm -vf `grep -li "Creator: ly2dvi" *.tex` -rm -vf `find -name 'core'` -rm -vf `find -name '*.orig'` -rm -vf `find -name '*.rej'` - - -# docxx mess -rm -vf *dvi -rm -vf *.class HIER*.html dxxgifs.tex gifs.db icon?.gif logo.gif down.gif \ - aindex.html index.html diff --git a/bin/clean-embeds.in b/bin/clean-embeds.in new file mode 100644 index 0000000000..1b53f85ecb --- /dev/null +++ b/bin/clean-embeds.in @@ -0,0 +1,10 @@ +#!/bin/sh + +rm -f feta-sleur-[0-9x\-]*.mf +rm -f feta-sleur-[0-9x\-]*.log +rm -f feta-beum-[0-9x\-]*.mf +rm -f feta-beum-[0-9x\-]*.log +rm -f feta-embed.aux +rm -f missfont.log +clean-fonts sleur +clean-fonts beum diff --git a/bin/clean-embeds.sh b/bin/clean-embeds.sh deleted file mode 100644 index 1b53f85ecb..0000000000 --- a/bin/clean-embeds.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -rm -f feta-sleur-[0-9x\-]*.mf -rm -f feta-sleur-[0-9x\-]*.log -rm -f feta-beum-[0-9x\-]*.mf -rm -f feta-beum-[0-9x\-]*.log -rm -f feta-embed.aux -rm -f missfont.log -clean-fonts sleur -clean-fonts beum diff --git a/bin/clean-fonts.in b/bin/clean-fonts.in new file mode 100644 index 0000000000..202a873584 --- /dev/null +++ b/bin/clean-fonts.in @@ -0,0 +1,25 @@ +#!/bin/sh + +case $# in +0) + WHAT="" ;; +1) + WHAT=$1;; +esac + +# should use kpsepath + +if [ -d /var/lib/texmf ]; then + TEXDIR=/var/lib/texmf +elif [ -d /var/texfonts ]; then + TEXDIR=/var/texfonts +else + TEXDIR=/var/ +fi + +# remove possibly stale .pk/.tfm files +echo> /tmp/cleaning-font-dummy +FILES=`find $TEXDIR -name "feta*$WHAT*tfm" -or -name "feta*$WHAT*pk"` + +echo removing $FILES +rm $FILES /tmp/cleaning-font-dummy diff --git a/bin/clean-fonts.sh b/bin/clean-fonts.sh deleted file mode 100644 index 202a873584..0000000000 --- a/bin/clean-fonts.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -case $# in -0) - WHAT="" ;; -1) - WHAT=$1;; -esac - -# should use kpsepath - -if [ -d /var/lib/texmf ]; then - TEXDIR=/var/lib/texmf -elif [ -d /var/texfonts ]; then - TEXDIR=/var/texfonts -else - TEXDIR=/var/ -fi - -# remove possibly stale .pk/.tfm files -echo> /tmp/cleaning-font-dummy -FILES=`find $TEXDIR -name "feta*$WHAT*tfm" -or -name "feta*$WHAT*pk"` - -echo removing $FILES -rm $FILES /tmp/cleaning-font-dummy diff --git a/bin/conflily.in b/bin/conflily.in new file mode 100644 index 0000000000..a89f9e7711 --- /dev/null +++ b/bin/conflily.in @@ -0,0 +1,36 @@ +#!/bin/sh +# conflily +# ugh: must be executed from lilypond-x.x.x (bin/conflily) + +# the lilypond root dir looks like this: +# current -> ./lilypond-x.x.x symlink to current source +# lilypond-x.x.x the lilypond source +# patches gzipped patches +# releases gzipped releases + +# the lily root dir +# +lelie=$HOME/music/lily +# + +if [ ! -e $HOME/lelie ]; then + ln -s $lelie $HOME/lelie +fi + +rm $lelie/current 2>&1 > /dev/null +current=`basename \`pwd\`` +echo ln -s $lelie/$current $lelie/current +ln -s $lelie/$current $lelie/current + +ln -sf $lelie/current/lily/out/lilypond bin/out/lilypond +ln -sf $lelie/current/mi2mu/out/mi2mu bin/out/mi2mu + +if [ "x$LILYINCLUDE" = "x" ]; then + echo you should make add the following to your login script + echo "export LILYINCLUDE=$lelie/current/init:$lelie/current/input:$lelie/current/mutopia:$lelie/current/mutopia/out:$lelie/current/input:$lelie/current/mutopia/J.S.Bach:$lelie/current/mutopia/J.S.Bach/out" + echo "export PATH=$PATH:$lelie/current/bin/out/" + echo "export MFINPUTS=$MFINPUTS:$lelie/current/mf" +fi + +configure --prefix=/usr --enable-debugging --enable-printing --enable-checking + diff --git a/bin/conflily.sh b/bin/conflily.sh deleted file mode 100644 index a89f9e7711..0000000000 --- a/bin/conflily.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/sh -# conflily -# ugh: must be executed from lilypond-x.x.x (bin/conflily) - -# the lilypond root dir looks like this: -# current -> ./lilypond-x.x.x symlink to current source -# lilypond-x.x.x the lilypond source -# patches gzipped patches -# releases gzipped releases - -# the lily root dir -# -lelie=$HOME/music/lily -# - -if [ ! -e $HOME/lelie ]; then - ln -s $lelie $HOME/lelie -fi - -rm $lelie/current 2>&1 > /dev/null -current=`basename \`pwd\`` -echo ln -s $lelie/$current $lelie/current -ln -s $lelie/$current $lelie/current - -ln -sf $lelie/current/lily/out/lilypond bin/out/lilypond -ln -sf $lelie/current/mi2mu/out/mi2mu bin/out/mi2mu - -if [ "x$LILYINCLUDE" = "x" ]; then - echo you should make add the following to your login script - echo "export LILYINCLUDE=$lelie/current/init:$lelie/current/input:$lelie/current/mutopia:$lelie/current/mutopia/out:$lelie/current/input:$lelie/current/mutopia/J.S.Bach:$lelie/current/mutopia/J.S.Bach/out" - echo "export PATH=$PATH:$lelie/current/bin/out/" - echo "export MFINPUTS=$MFINPUTS:$lelie/current/mf" -fi - -configure --prefix=/usr --enable-debugging --enable-printing --enable-checking - diff --git a/bin/convert-mudela.in b/bin/convert-mudela.in new file mode 100644 index 0000000000..3be80d97da --- /dev/null +++ b/bin/convert-mudela.in @@ -0,0 +1,363 @@ +#!@PERL@ -w +# -*-perl-*- + +=head1 TODO + + detect \lyrics and \melodic, and do substitution accordingly. + count <> and {} ? + +Ugh . Perl sux. Anybody for Python? + +=cut + + + +# +# version of "supporting" engine, not mudela conversions. +# + + + + +$convert_mudela_version = "0.1.2"; + +use Getopt::Long; + + +sub version_compare +{ + local ($a,$b)=@_; + return &cmpver; +} + + +sub cmpver +{ + my(@a)= split /\./,$a; + my(@b)= split /\./,$b; + + for $i (0,1,2) { + return $a[$i] <=> $b[$i] if ($a[$i] != $b[$i]); + } + return $a cmp $b; +} + +sub version_string_conv +{ + my ($from_version, $to_version) = @_; + s/\version \"$from_version\"/\version \"$to_version\"/g; +} + +################################################################ + +sub no_conv +{ +} + +sub convert_0_0_52_to_0_0_53 +{ + + s/include \"/$1\\include \"/g; +} + + +sub convert_0_0_54_to_0_0_55 +{ + s/%{/% {/g; +} + + +sub convert_0_0_53_to_0_0_54 +{ + print STDERR "Not smart enough to convert \\transpose\n" if (/\\transpose/) ; +} + +# we-re not at 58 yet, but this is at least one of the rules +sub convert_0_0_55_to_0_0_56 +{ + s/\"\|\|\"/\"|.\"/g; +} + +sub convert_0_0_56_to_0_0_57 +{ + s/\(([ \]\[|\t-\.>]|\\[a-z]+)*\)/\~ $1/g; +} + +sub convert_0_0_57_to_0_0_58 +{ + s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g; +} + +sub convert_0_0_58_to_0_0_59 +{ + die "Not smart enough to convert 0.0.58 to 0.0.59\n"; +} + +sub convert_0_0_59_to_0_0_60 +{ + s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g; + s/(\\output \"[^\"]+\")/$1;/; + s/(\\tempo [0-9: ]+)/$1;/; +} + +sub convert_0_0_60_to_0_0_61 +{ + s/(\\unitspace|\\geometric|\\width)/$1=/g; + +} + +sub convert_0_1_0_to_0_1_1 +{ + s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g +} + +sub convert_0_1_2_to_0_1_3 +{ + s/\\stem *(\\up|1) *;/\\stemup/g; + s/\\stem *(\\down|-1) *;/\\stemdown/g; + s/\\stem *0 *;/\\stemboth/g; + s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g; +} + +my $header_b = 0; + +sub generic_conversion_scan +{ + if (/\\header *\{/) + { + $header_b = 1; + } + if ($header_b && /^ *\}/) + { + $header_b = 0; + } +} +sub convert_0_1_4_to_0_1_5 +{ + s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/; + s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/; +} + + +sub convert_0_1_5_to_0_1_6 +{ + s/< *\\multi (.*);/\\multi $1 \&no_conv, + "0.0.52" => \&convert_0_0_50_to_0_0_52, + "0.0.53" => \&convert_0_0_52_to_0_0_53, + "0.0.54" => \&convert_0_0_53_to_0_0_54, + "0.0.55" => \&convert_0_0_54_to_0_0_55, + "0.0.56" => \&convert_0_0_55_to_0_0_56, + "0.0.57" => \&convert_0_0_56_to_0_0_57, + "0.0.58" => \&convert_0_0_57_to_0_0_58, + "0.0.59" => \&convert_0_0_58_to_0_0_59, + "0.0.60" => \&convert_0_0_59_to_0_0_60, + "0.0.61" => \&convert_0_0_60_to_0_0_61, + "0.1.1" => \&convert_0_1_0_to_0_1_1, + "0.1.2" => \&no_conv, + "0.1.3" => \&convert_0_1_2_to_0_1_3, + "0.1.4" => \&no_conv, + "0.1.5" => \&convert_0_1_4_to_0_1_5, + "0.1.6" => \&convert_0_1_5_to_0_1_6 + ,"0.1.7" => \&convert_0_1_6_to_0_1_7 + ,"0.1.8" => \&convert_0_1_7_to_0_1_8 + ,"0.1.9" => \&convert_0_1_8_to_0_1_9 + ); + + + +sub versions +{ + return (sort { cmpver; } (keys %minor_conversions)); +} + + +sub show_rules +{ + my (@v) = versions; + + print "Rules: ", join(", ", @v), "\n"; + +} + +sub do_conversion +{ + my ($from,$to) = @_; + + my @applicable_conversion; + my @mudela_levels; + + my @v = versions; + foreach $ver (@v) { + if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ + push @applicable_conversion, $minor_conversions{$ver}; + push @mudela_levels, $ver; + } + } + + print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n"; + + while () { + generic_conversion_scan; + foreach $subroutine (@applicable_conversion) { + + &$subroutine; + + } + version_string_conv $from, $to; + print OUTLY; + } +} + +sub get_auto_from +{ + my ($fn)=@_; + my ($ver); + open INLY, $fn || die "Can't open"; + + while () { + s/^.*\\version \"([^\"]*)\".*$//; + if (defined ($1)) { + print STDERR "Guessing version: ", $1, ".. "; + $ver = $1; + last; + } + } + if (!defined($ver)){ + print STDERR "can't determine mudela version in $fn.\n"; + my $u; + return $u; + } + close INLY; + return $ver; +} + +sub set_files +{ + $infile = "-"; + $outfile = "-"; + $outfile = $opt_output if (defined($opt_output)); + + if ($ARGV [0]) { + $infile = $ARGV[0]; + } + if (!(-f $infile) && !($infile =~ /\.ly$/s)) { + $infile .= ".ly"; + } + if ($opt_edit && $infile ne "-") { + $opt_edit = 1; + $outfile = "$infile.NEW"; + $infile = "$infile"; + } + print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. "; + +} + +sub do_one_arg +{ + set_files; + + local ($from_version, $to_version); + $from_version = $opt_from; + $to_version = $opt_to; + + ($from_version = get_auto_from $infile) unless defined($opt_from); + return if (!defined($from_version)); + + ($to_version = last_conversion) unless (defined($opt_to)); + + die "can't open \`$infile\'" unless open INLY,$infile ; + die "can't open \`$outfile\'" unless open OUTLY, ">$outfile"; + + do_conversion $from_version, $to_version; + close INLY; + close OUTLY; + + if ($opt_edit) { + rename $infile, "$infile~"; + rename $outfile, "$infile"; + } +} + +## "main" + +identify; + + +GetOptions ("help", "output=s", "from=s", "to=s", "minor=i", "edit", "show-rules"); + +if ($opt_help) { + usage(); + $opt_help = 0; # to extinguish typo check. + exit 0; +} + +if ($opt_show_rules) { + show_rules ; + $opt_show_rules = 0; # to extinguish typo check. + exit 0; +} + +local ( $infile,$outfile); +my $processed_one=0; + +while (defined($ARGV[0])) { + do_one_arg; + shift @ARGV; + $processed_one = 1; +} +do_one_arg unless ($processed_one); + + diff --git a/bin/convert-mudela.pl b/bin/convert-mudela.pl deleted file mode 100644 index 3be80d97da..0000000000 --- a/bin/convert-mudela.pl +++ /dev/null @@ -1,363 +0,0 @@ -#!@PERL@ -w -# -*-perl-*- - -=head1 TODO - - detect \lyrics and \melodic, and do substitution accordingly. - count <> and {} ? - -Ugh . Perl sux. Anybody for Python? - -=cut - - - -# -# version of "supporting" engine, not mudela conversions. -# - - - - -$convert_mudela_version = "0.1.2"; - -use Getopt::Long; - - -sub version_compare -{ - local ($a,$b)=@_; - return &cmpver; -} - - -sub cmpver -{ - my(@a)= split /\./,$a; - my(@b)= split /\./,$b; - - for $i (0,1,2) { - return $a[$i] <=> $b[$i] if ($a[$i] != $b[$i]); - } - return $a cmp $b; -} - -sub version_string_conv -{ - my ($from_version, $to_version) = @_; - s/\version \"$from_version\"/\version \"$to_version\"/g; -} - -################################################################ - -sub no_conv -{ -} - -sub convert_0_0_52_to_0_0_53 -{ - - s/include \"/$1\\include \"/g; -} - - -sub convert_0_0_54_to_0_0_55 -{ - s/%{/% {/g; -} - - -sub convert_0_0_53_to_0_0_54 -{ - print STDERR "Not smart enough to convert \\transpose\n" if (/\\transpose/) ; -} - -# we-re not at 58 yet, but this is at least one of the rules -sub convert_0_0_55_to_0_0_56 -{ - s/\"\|\|\"/\"|.\"/g; -} - -sub convert_0_0_56_to_0_0_57 -{ - s/\(([ \]\[|\t-\.>]|\\[a-z]+)*\)/\~ $1/g; -} - -sub convert_0_0_57_to_0_0_58 -{ - s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g; -} - -sub convert_0_0_58_to_0_0_59 -{ - die "Not smart enough to convert 0.0.58 to 0.0.59\n"; -} - -sub convert_0_0_59_to_0_0_60 -{ - s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g; - s/(\\output \"[^\"]+\")/$1;/; - s/(\\tempo [0-9: ]+)/$1;/; -} - -sub convert_0_0_60_to_0_0_61 -{ - s/(\\unitspace|\\geometric|\\width)/$1=/g; - -} - -sub convert_0_1_0_to_0_1_1 -{ - s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g -} - -sub convert_0_1_2_to_0_1_3 -{ - s/\\stem *(\\up|1) *;/\\stemup/g; - s/\\stem *(\\down|-1) *;/\\stemdown/g; - s/\\stem *0 *;/\\stemboth/g; - s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g; -} - -my $header_b = 0; - -sub generic_conversion_scan -{ - if (/\\header *\{/) - { - $header_b = 1; - } - if ($header_b && /^ *\}/) - { - $header_b = 0; - } -} -sub convert_0_1_4_to_0_1_5 -{ - s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/; - s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/; -} - - -sub convert_0_1_5_to_0_1_6 -{ - s/< *\\multi (.*);/\\multi $1 \&no_conv, - "0.0.52" => \&convert_0_0_50_to_0_0_52, - "0.0.53" => \&convert_0_0_52_to_0_0_53, - "0.0.54" => \&convert_0_0_53_to_0_0_54, - "0.0.55" => \&convert_0_0_54_to_0_0_55, - "0.0.56" => \&convert_0_0_55_to_0_0_56, - "0.0.57" => \&convert_0_0_56_to_0_0_57, - "0.0.58" => \&convert_0_0_57_to_0_0_58, - "0.0.59" => \&convert_0_0_58_to_0_0_59, - "0.0.60" => \&convert_0_0_59_to_0_0_60, - "0.0.61" => \&convert_0_0_60_to_0_0_61, - "0.1.1" => \&convert_0_1_0_to_0_1_1, - "0.1.2" => \&no_conv, - "0.1.3" => \&convert_0_1_2_to_0_1_3, - "0.1.4" => \&no_conv, - "0.1.5" => \&convert_0_1_4_to_0_1_5, - "0.1.6" => \&convert_0_1_5_to_0_1_6 - ,"0.1.7" => \&convert_0_1_6_to_0_1_7 - ,"0.1.8" => \&convert_0_1_7_to_0_1_8 - ,"0.1.9" => \&convert_0_1_8_to_0_1_9 - ); - - - -sub versions -{ - return (sort { cmpver; } (keys %minor_conversions)); -} - - -sub show_rules -{ - my (@v) = versions; - - print "Rules: ", join(", ", @v), "\n"; - -} - -sub do_conversion -{ - my ($from,$to) = @_; - - my @applicable_conversion; - my @mudela_levels; - - my @v = versions; - foreach $ver (@v) { - if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ - push @applicable_conversion, $minor_conversions{$ver}; - push @mudela_levels, $ver; - } - } - - print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n"; - - while () { - generic_conversion_scan; - foreach $subroutine (@applicable_conversion) { - - &$subroutine; - - } - version_string_conv $from, $to; - print OUTLY; - } -} - -sub get_auto_from -{ - my ($fn)=@_; - my ($ver); - open INLY, $fn || die "Can't open"; - - while () { - s/^.*\\version \"([^\"]*)\".*$//; - if (defined ($1)) { - print STDERR "Guessing version: ", $1, ".. "; - $ver = $1; - last; - } - } - if (!defined($ver)){ - print STDERR "can't determine mudela version in $fn.\n"; - my $u; - return $u; - } - close INLY; - return $ver; -} - -sub set_files -{ - $infile = "-"; - $outfile = "-"; - $outfile = $opt_output if (defined($opt_output)); - - if ($ARGV [0]) { - $infile = $ARGV[0]; - } - if (!(-f $infile) && !($infile =~ /\.ly$/s)) { - $infile .= ".ly"; - } - if ($opt_edit && $infile ne "-") { - $opt_edit = 1; - $outfile = "$infile.NEW"; - $infile = "$infile"; - } - print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. "; - -} - -sub do_one_arg -{ - set_files; - - local ($from_version, $to_version); - $from_version = $opt_from; - $to_version = $opt_to; - - ($from_version = get_auto_from $infile) unless defined($opt_from); - return if (!defined($from_version)); - - ($to_version = last_conversion) unless (defined($opt_to)); - - die "can't open \`$infile\'" unless open INLY,$infile ; - die "can't open \`$outfile\'" unless open OUTLY, ">$outfile"; - - do_conversion $from_version, $to_version; - close INLY; - close OUTLY; - - if ($opt_edit) { - rename $infile, "$infile~"; - rename $outfile, "$infile"; - } -} - -## "main" - -identify; - - -GetOptions ("help", "output=s", "from=s", "to=s", "minor=i", "edit", "show-rules"); - -if ($opt_help) { - usage(); - $opt_help = 0; # to extinguish typo check. - exit 0; -} - -if ($opt_show_rules) { - show_rules ; - $opt_show_rules = 0; # to extinguish typo check. - exit 0; -} - -local ( $infile,$outfile); -my $processed_one=0; - -while (defined($ARGV[0])) { - do_one_arg; - shift @ARGV; - $processed_one = 1; -} -do_one_arg unless ($processed_one); - - diff --git a/bin/convert-mudela.py b/bin/convert-mudela.py deleted file mode 100644 index 9654db9377..0000000000 --- a/bin/convert-mudela.py +++ /dev/null @@ -1,318 +0,0 @@ -#!@PYTHON@ -w -# -*-perl-*- - -version = "0.2"; - -################################################################ - -sub no_conv -{ -} - -sub convert_0_0_52_to_0_0_53 -{ - - s/include \"/$1\\include \"/g; -} - - -sub convert_0_0_54_to_0_0_55 -{ - s/%{/% {/g; -} - - -sub convert_0_0_53_to_0_0_54 -{ - print STDERR "Not smart enough to convert \\transpose\n" if (/\\transpose/) ; -} - -# we-re not at 58 yet, but this is at least one of the rules -sub convert_0_0_55_to_0_0_56 -{ - s/\"\|\|\"/\"|.\"/g; -} - -sub convert_0_0_56_to_0_0_57 -{ - s/\(([ \]\[|\t-\.>]|\\[a-z]+)*\)/\~ $1/g; -} - -sub convert_0_0_57_to_0_0_58 -{ - s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g; -} - -sub convert_0_0_58_to_0_0_59 -{ - die "Not smart enough to convert 0.0.58 to 0.0.59\n"; -} - -sub convert_0_0_59_to_0_0_60 -{ - s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g; - s/(\\output \"[^\"]+\")/$1;/; - s/(\\tempo [0-9: ]+)/$1;/; -} - -sub convert_0_0_60_to_0_0_61 -{ - s/(\\unitspace|\\geometric|\\width)/$1=/g; - -} - -sub convert_0_1_0_to_0_1_1 -{ - s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g -} - -sub convert_0_1_2_to_0_1_3 -{ - s/\\stem *(\\up|1) *;/\\stemup/g; - s/\\stem *(\\down|-1) *;/\\stemdown/g; - s/\\stem *0 *;/\\stemboth/g; - s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g; -} - -my $header_b = 0; - -sub generic_conversion_scan -{ - if (/\\header *\{/) - { - $header_b = 1; - } - if ($header_b && /^ *\}/) - { - $header_b = 0; - } -} -sub convert_0_1_4_to_0_1_5 -{ - s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/; - s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/; -} - - -sub convert_0_1_5_to_0_1_6 -{ - s/< *\\multi (.*);/\\multi $1 \&no_conv, - "0.0.52" => \&convert_0_0_50_to_0_0_52, - "0.0.53" => \&convert_0_0_52_to_0_0_53, - "0.0.54" => \&convert_0_0_53_to_0_0_54, - "0.0.55" => \&convert_0_0_54_to_0_0_55, - "0.0.56" => \&convert_0_0_55_to_0_0_56, - "0.0.57" => \&convert_0_0_56_to_0_0_57, - "0.0.58" => \&convert_0_0_57_to_0_0_58, - "0.0.59" => \&convert_0_0_58_to_0_0_59, - "0.0.60" => \&convert_0_0_59_to_0_0_60, - "0.0.61" => \&convert_0_0_60_to_0_0_61, - "0.1.1" => \&convert_0_1_0_to_0_1_1, - "0.1.2" => \&no_conv, - "0.1.3" => \&convert_0_1_2_to_0_1_3, - "0.1.4" => \&no_conv, - "0.1.5" => \&convert_0_1_4_to_0_1_5, - "0.1.6" => \&convert_0_1_5_to_0_1_6 - ,"0.1.7" => \&convert_0_1_6_to_0_1_7 - ,"0.1.8" => \&convert_0_1_7_to_0_1_8 - ,"0.1.9" => \&convert_0_1_8_to_0_1_9 - ); - - - -sub versions -{ - return (sort { cmpver; } (keys %minor_conversions)); -} - - -sub show_rules -{ - my (@v) = versions; - - print "Rules: ", join(", ", @v), "\n"; - -} - -sub do_conversion -{ - my ($from,$to) = @_; - - my @applicable_conversion; - my @mudela_levels; - - my @v = versions; - foreach $ver (@v) { - if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ - push @applicable_conversion, $minor_conversions{$ver}; - push @mudela_levels, $ver; - } - } - - print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n"; - - while () { - generic_conversion_scan; - foreach $subroutine (@applicable_conversion) { - - &$subroutine; - - } - version_string_conv $from, $to; - print OUTLY; - } -} - -sub get_auto_from -{ - my ($fn)=@_; - my ($ver); - open INLY, $fn || die "Can't open"; - - while () { - s/^.*\\version \"([^\"]*)\".*$//; - if (defined ($1)) { - print STDERR "Guessing version: ", $1, ".. "; - $ver = $1; - last; - } - } - if (!defined($ver)){ - print STDERR "can't determine mudela version in $fn.\n"; - my $u; - return $u; - } - close INLY; - return $ver; -} - -sub set_files -{ - $infile = "-"; - $outfile = "-"; - $outfile = $opt_output if (defined($opt_output)); - - if ($ARGV [0]) { - $infile = $ARGV[0]; - } - if (!(-f $infile) && !($infile =~ /\.ly$/s)) { - $infile .= ".ly"; - } - if ($opt_edit && $infile ne "-") { - $opt_edit = 1; - $outfile = "$infile.NEW"; - $infile = "$infile"; - } - print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. "; - -} - -sub do_one_arg -{ - set_files; - - local ($from_version, $to_version); - $from_version = $opt_from; - $to_version = $opt_to; - - ($from_version = get_auto_from $infile) unless defined($opt_from); - return if (!defined($from_version)); - - ($to_version = last_conversion) unless (defined($opt_to)); - - die "can't open \`$infile\'" unless open INLY,$infile ; - die "can't open \`$outfile\'" unless open OUTLY, ">$outfile"; - - do_conversion $from_version, $to_version; - close INLY; - close OUTLY; - - if ($opt_edit) { - rename $infile, "$infile~"; - rename $outfile, "$infile"; - } -} - -## "main" - -identify; - - -GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules"); - -if ($opt_help) { - usage(); - $opt_help = 0; # to extinguish typo check. - exit 0; -} - -if ($opt_show_rules) { - show_rules ; - $opt_show_rules = 0; # to extinguish typo check. - exit 0; -} - -local ( $infile,$outfile); -my $processed_one=0; - -while (defined($ARGV[0])) { - do_one_arg; - shift @ARGV; - $processed_one = 1; -} -do_one_arg unless ($processed_one); - - diff --git a/bin/cvm.in b/bin/cvm.in new file mode 100644 index 0000000000..9654db9377 --- /dev/null +++ b/bin/cvm.in @@ -0,0 +1,318 @@ +#!@PYTHON@ -w +# -*-perl-*- + +version = "0.2"; + +################################################################ + +sub no_conv +{ +} + +sub convert_0_0_52_to_0_0_53 +{ + + s/include \"/$1\\include \"/g; +} + + +sub convert_0_0_54_to_0_0_55 +{ + s/%{/% {/g; +} + + +sub convert_0_0_53_to_0_0_54 +{ + print STDERR "Not smart enough to convert \\transpose\n" if (/\\transpose/) ; +} + +# we-re not at 58 yet, but this is at least one of the rules +sub convert_0_0_55_to_0_0_56 +{ + s/\"\|\|\"/\"|.\"/g; +} + +sub convert_0_0_56_to_0_0_57 +{ + s/\(([ \]\[|\t-\.>]|\\[a-z]+)*\)/\~ $1/g; +} + +sub convert_0_0_57_to_0_0_58 +{ + s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g; +} + +sub convert_0_0_58_to_0_0_59 +{ + die "Not smart enough to convert 0.0.58 to 0.0.59\n"; +} + +sub convert_0_0_59_to_0_0_60 +{ + s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g; + s/(\\output \"[^\"]+\")/$1;/; + s/(\\tempo [0-9: ]+)/$1;/; +} + +sub convert_0_0_60_to_0_0_61 +{ + s/(\\unitspace|\\geometric|\\width)/$1=/g; + +} + +sub convert_0_1_0_to_0_1_1 +{ + s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g +} + +sub convert_0_1_2_to_0_1_3 +{ + s/\\stem *(\\up|1) *;/\\stemup/g; + s/\\stem *(\\down|-1) *;/\\stemdown/g; + s/\\stem *0 *;/\\stemboth/g; + s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g; +} + +my $header_b = 0; + +sub generic_conversion_scan +{ + if (/\\header *\{/) + { + $header_b = 1; + } + if ($header_b && /^ *\}/) + { + $header_b = 0; + } +} +sub convert_0_1_4_to_0_1_5 +{ + s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/; + s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/; +} + + +sub convert_0_1_5_to_0_1_6 +{ + s/< *\\multi (.*);/\\multi $1 \&no_conv, + "0.0.52" => \&convert_0_0_50_to_0_0_52, + "0.0.53" => \&convert_0_0_52_to_0_0_53, + "0.0.54" => \&convert_0_0_53_to_0_0_54, + "0.0.55" => \&convert_0_0_54_to_0_0_55, + "0.0.56" => \&convert_0_0_55_to_0_0_56, + "0.0.57" => \&convert_0_0_56_to_0_0_57, + "0.0.58" => \&convert_0_0_57_to_0_0_58, + "0.0.59" => \&convert_0_0_58_to_0_0_59, + "0.0.60" => \&convert_0_0_59_to_0_0_60, + "0.0.61" => \&convert_0_0_60_to_0_0_61, + "0.1.1" => \&convert_0_1_0_to_0_1_1, + "0.1.2" => \&no_conv, + "0.1.3" => \&convert_0_1_2_to_0_1_3, + "0.1.4" => \&no_conv, + "0.1.5" => \&convert_0_1_4_to_0_1_5, + "0.1.6" => \&convert_0_1_5_to_0_1_6 + ,"0.1.7" => \&convert_0_1_6_to_0_1_7 + ,"0.1.8" => \&convert_0_1_7_to_0_1_8 + ,"0.1.9" => \&convert_0_1_8_to_0_1_9 + ); + + + +sub versions +{ + return (sort { cmpver; } (keys %minor_conversions)); +} + + +sub show_rules +{ + my (@v) = versions; + + print "Rules: ", join(", ", @v), "\n"; + +} + +sub do_conversion +{ + my ($from,$to) = @_; + + my @applicable_conversion; + my @mudela_levels; + + my @v = versions; + foreach $ver (@v) { + if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ + push @applicable_conversion, $minor_conversions{$ver}; + push @mudela_levels, $ver; + } + } + + print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n"; + + while () { + generic_conversion_scan; + foreach $subroutine (@applicable_conversion) { + + &$subroutine; + + } + version_string_conv $from, $to; + print OUTLY; + } +} + +sub get_auto_from +{ + my ($fn)=@_; + my ($ver); + open INLY, $fn || die "Can't open"; + + while () { + s/^.*\\version \"([^\"]*)\".*$//; + if (defined ($1)) { + print STDERR "Guessing version: ", $1, ".. "; + $ver = $1; + last; + } + } + if (!defined($ver)){ + print STDERR "can't determine mudela version in $fn.\n"; + my $u; + return $u; + } + close INLY; + return $ver; +} + +sub set_files +{ + $infile = "-"; + $outfile = "-"; + $outfile = $opt_output if (defined($opt_output)); + + if ($ARGV [0]) { + $infile = $ARGV[0]; + } + if (!(-f $infile) && !($infile =~ /\.ly$/s)) { + $infile .= ".ly"; + } + if ($opt_edit && $infile ne "-") { + $opt_edit = 1; + $outfile = "$infile.NEW"; + $infile = "$infile"; + } + print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. "; + +} + +sub do_one_arg +{ + set_files; + + local ($from_version, $to_version); + $from_version = $opt_from; + $to_version = $opt_to; + + ($from_version = get_auto_from $infile) unless defined($opt_from); + return if (!defined($from_version)); + + ($to_version = last_conversion) unless (defined($opt_to)); + + die "can't open \`$infile\'" unless open INLY,$infile ; + die "can't open \`$outfile\'" unless open OUTLY, ">$outfile"; + + do_conversion $from_version, $to_version; + close INLY; + close OUTLY; + + if ($opt_edit) { + rename $infile, "$infile~"; + rename $outfile, "$infile"; + } +} + +## "main" + +identify; + + +GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules"); + +if ($opt_help) { + usage(); + $opt_help = 0; # to extinguish typo check. + exit 0; +} + +if ($opt_show_rules) { + show_rules ; + $opt_show_rules = 0; # to extinguish typo check. + exit 0; +} + +local ( $infile,$outfile); +my $processed_one=0; + +while (defined($ARGV[0])) { + do_one_arg; + shift @ARGV; + $processed_one = 1; +} +do_one_arg unless ($processed_one); + + diff --git a/bin/cvm.py b/bin/cvm.py deleted file mode 100644 index 9654db9377..0000000000 --- a/bin/cvm.py +++ /dev/null @@ -1,318 +0,0 @@ -#!@PYTHON@ -w -# -*-perl-*- - -version = "0.2"; - -################################################################ - -sub no_conv -{ -} - -sub convert_0_0_52_to_0_0_53 -{ - - s/include \"/$1\\include \"/g; -} - - -sub convert_0_0_54_to_0_0_55 -{ - s/%{/% {/g; -} - - -sub convert_0_0_53_to_0_0_54 -{ - print STDERR "Not smart enough to convert \\transpose\n" if (/\\transpose/) ; -} - -# we-re not at 58 yet, but this is at least one of the rules -sub convert_0_0_55_to_0_0_56 -{ - s/\"\|\|\"/\"|.\"/g; -} - -sub convert_0_0_56_to_0_0_57 -{ - s/\(([ \]\[|\t-\.>]|\\[a-z]+)*\)/\~ $1/g; -} - -sub convert_0_0_57_to_0_0_58 -{ - s/\[ *([^\[\]]*)\] *([1-9]*) *\/ *([1-9]*)/[$2\/$3 $1]1\/1/g; -} - -sub convert_0_0_58_to_0_0_59 -{ - die "Not smart enough to convert 0.0.58 to 0.0.59\n"; -} - -sub convert_0_0_59_to_0_0_60 -{ - s/(\\unitspace [0-9.mcptin\\ ]+|\\geometric [0-9.]+|\\width [0-9.mcp\\tin]+)/$1;/g; - s/(\\output \"[^\"]+\")/$1;/; - s/(\\tempo [0-9: ]+)/$1;/; -} - -sub convert_0_0_60_to_0_0_61 -{ - s/(\\unitspace|\\geometric|\\width)/$1=/g; - -} - -sub convert_0_1_0_to_0_1_1 -{ - s/\\tempo (.*):(.*);/\\tempo $1 = $2;/g -} - -sub convert_0_1_2_to_0_1_3 -{ - s/\\stem *(\\up|1) *;/\\stemup/g; - s/\\stem *(\\down|-1) *;/\\stemdown/g; - s/\\stem *0 *;/\\stemboth/g; - s/\\hshift ([^;]+) *;/\\property Voice.hshift = $1/g; -} - -my $header_b = 0; - -sub generic_conversion_scan -{ - if (/\\header *\{/) - { - $header_b = 1; - } - if ($header_b && /^ *\}/) - { - $header_b = 0; - } -} -sub convert_0_1_4_to_0_1_5 -{ - s/([<{]) *\\id "Piano" (.+);/\\type Grandstaff = $3 $1/; - s/([<{]) *\\id (.+) (.+);/\\type $2 = $3 $1/; -} - - -sub convert_0_1_5_to_0_1_6 -{ - s/< *\\multi (.*);/\\multi $1 \&no_conv, - "0.0.52" => \&convert_0_0_50_to_0_0_52, - "0.0.53" => \&convert_0_0_52_to_0_0_53, - "0.0.54" => \&convert_0_0_53_to_0_0_54, - "0.0.55" => \&convert_0_0_54_to_0_0_55, - "0.0.56" => \&convert_0_0_55_to_0_0_56, - "0.0.57" => \&convert_0_0_56_to_0_0_57, - "0.0.58" => \&convert_0_0_57_to_0_0_58, - "0.0.59" => \&convert_0_0_58_to_0_0_59, - "0.0.60" => \&convert_0_0_59_to_0_0_60, - "0.0.61" => \&convert_0_0_60_to_0_0_61, - "0.1.1" => \&convert_0_1_0_to_0_1_1, - "0.1.2" => \&no_conv, - "0.1.3" => \&convert_0_1_2_to_0_1_3, - "0.1.4" => \&no_conv, - "0.1.5" => \&convert_0_1_4_to_0_1_5, - "0.1.6" => \&convert_0_1_5_to_0_1_6 - ,"0.1.7" => \&convert_0_1_6_to_0_1_7 - ,"0.1.8" => \&convert_0_1_7_to_0_1_8 - ,"0.1.9" => \&convert_0_1_8_to_0_1_9 - ); - - - -sub versions -{ - return (sort { cmpver; } (keys %minor_conversions)); -} - - -sub show_rules -{ - my (@v) = versions; - - print "Rules: ", join(", ", @v), "\n"; - -} - -sub do_conversion -{ - my ($from,$to) = @_; - - my @applicable_conversion; - my @mudela_levels; - - my @v = versions; - foreach $ver (@v) { - if (version_compare($ver, $from) > 0 && version_compare($ver,$to) <= 0 ){ - push @applicable_conversion, $minor_conversions{$ver}; - push @mudela_levels, $ver; - } - } - - print STDERR "Applying following rules: ", join(", ", @mudela_levels) , "\n"; - - while () { - generic_conversion_scan; - foreach $subroutine (@applicable_conversion) { - - &$subroutine; - - } - version_string_conv $from, $to; - print OUTLY; - } -} - -sub get_auto_from -{ - my ($fn)=@_; - my ($ver); - open INLY, $fn || die "Can't open"; - - while () { - s/^.*\\version \"([^\"]*)\".*$//; - if (defined ($1)) { - print STDERR "Guessing version: ", $1, ".. "; - $ver = $1; - last; - } - } - if (!defined($ver)){ - print STDERR "can't determine mudela version in $fn.\n"; - my $u; - return $u; - } - close INLY; - return $ver; -} - -sub set_files -{ - $infile = "-"; - $outfile = "-"; - $outfile = $opt_output if (defined($opt_output)); - - if ($ARGV [0]) { - $infile = $ARGV[0]; - } - if (!(-f $infile) && !($infile =~ /\.ly$/s)) { - $infile .= ".ly"; - } - if ($opt_edit && $infile ne "-") { - $opt_edit = 1; - $outfile = "$infile.NEW"; - $infile = "$infile"; - } - print STDERR "Input ", (($infile eq "-") ?"STDIN" : $infile), " .. "; - -} - -sub do_one_arg -{ - set_files; - - local ($from_version, $to_version); - $from_version = $opt_from; - $to_version = $opt_to; - - ($from_version = get_auto_from $infile) unless defined($opt_from); - return if (!defined($from_version)); - - ($to_version = last_conversion) unless (defined($opt_to)); - - die "can't open \`$infile\'" unless open INLY,$infile ; - die "can't open \`$outfile\'" unless open OUTLY, ">$outfile"; - - do_conversion $from_version, $to_version; - close INLY; - close OUTLY; - - if ($opt_edit) { - rename $infile, "$infile~"; - rename $outfile, "$infile"; - } -} - -## "main" - -identify; - - -GetOptions ("help", "output=s", "from=i", "to=i", "minor=i", "edit", "show-rules"); - -if ($opt_help) { - usage(); - $opt_help = 0; # to extinguish typo check. - exit 0; -} - -if ($opt_show_rules) { - show_rules ; - $opt_show_rules = 0; # to extinguish typo check. - exit 0; -} - -local ( $infile,$outfile); -my $processed_one=0; - -while (defined($ARGV[0])) { - do_one_arg; - shift @ARGV; - $processed_one = 1; -} -do_one_arg unless ($processed_one); - - diff --git a/bin/find-typenames.in b/bin/find-typenames.in new file mode 100644 index 0000000000..890f9cabd0 --- /dev/null +++ b/bin/find-typenames.in @@ -0,0 +1,20 @@ +#!@PERL@ + +open GREP, "egrep -h '^struct|^class' *.hh *.cc|"; +open OUT, "|sort | uniq"; +while () { + + s/^struct/class/; + if (! /; *$/) { + s/:[^{]+{.*$//; + s/ *{.*$/;/; + } + if (! /; *$/) { + chop; + $_ .= ";\n"; + + } + print OUT; +} +close OUT; +close GREP; diff --git a/bin/find-typenames.pl b/bin/find-typenames.pl deleted file mode 100644 index 890f9cabd0..0000000000 --- a/bin/find-typenames.pl +++ /dev/null @@ -1,20 +0,0 @@ -#!@PERL@ - -open GREP, "egrep -h '^struct|^class' *.hh *.cc|"; -open OUT, "|sort | uniq"; -while () { - - s/^struct/class/; - if (! /; *$/) { - s/:[^{]+{.*$//; - s/ *{.*$/;/; - } - if (! /; *$/) { - chop; - $_ .= ";\n"; - - } - print OUT; -} -close OUT; -close GREP; diff --git a/bin/foo.in b/bin/foo.in new file mode 100755 index 0000000000..36ac3689b1 --- /dev/null +++ b/bin/foo.in @@ -0,0 +1 @@ +#! /bin/bash diff --git a/bin/foo.sh b/bin/foo.sh deleted file mode 100755 index 36ac3689b1..0000000000 --- a/bin/foo.sh +++ /dev/null @@ -1 +0,0 @@ -#! /bin/bash diff --git a/bin/genheader.in b/bin/genheader.in new file mode 100644 index 0000000000..57f0e9fb8f --- /dev/null +++ b/bin/genheader.in @@ -0,0 +1,135 @@ +#!@PYTHON@ + +# +# genheader.py -- do headers (like these) +# +# source file of the GNU LilyPond music typesetter +# +# (c) 1997 Han-Wen Nienhuys +# + + + +import posix +import pwd +import regex +import regsub +import string +import sys +import os +import getopt + +class My_options: + def __init__(self): + self.commentify = None + self.add_hdr_def = 0 + self.classname = '' + +my_options = My_options() + +def mail(): + return os.environ['MAILADDRESS'] + +def name(): + return pwd.getpwuid(posix.getuid())[4] + +def c_commentify(str): + return '/* ' + regsub.gsub('^',' ', str) + '\n */'; + +def sh_commentify(str): + return regsub.gsub('^', '# ', str) + +def tex_commentify(str): + return regsub.gsub('^', '% ', str) + +def project_str(): + cwd = posix.getcwd() + if regex.search('flower', cwd) <> -1: + PROJECT = "the Flower Library" + elif regex.search('mf$', cwd) <> -1: + PROJECT = "the Feta (defintively not an abbreviation for Font-En-Tja) music font" + else: + PROJECT = "the GNU LilyPond music typesetter" + return PROJECT + +def head_str(filename): + if my_options.add_hdr_def: + what = "declare " + else: + what=" implement " + + + headstr = '\n%s -- %s\n\nsource file of %s\n\n(c) 1997 %s <%s>\n' \ + %(filename, what, project_str(), name(), mail()) + return headstr + + +def c_include(filename): + startdef= filename; + trans = string.maketrans( string.lowercase + '-.', string.uppercase + '__') + startdef = string.translate(filename, trans) + + + headstr = "\n\n#ifndef %s\n#define %s\n" % (startdef, startdef) + terminatestr = "#endif /* %s */\n" % (startdef); + + return headstr+ '\n\n'+ terminatestr; + + + + + +(options, files) = getopt.getopt(sys.argv[1:], 'tcsh', ['class']) + +for opt in options: + o = opt[0] + a = opt[1] + if o == '-c': + my_options.commentify = c_commentify + elif o == '-t': + my_options.commentify = tex_commentify + elif o == '-s': + my_options.commentify = sh_commentify + elif o == '-h': + my_options.add_hdr_def = 1 + elif o == '--class': + my_options.classname = a + + + +# +# FIXME: should create xxx.cc and include/xxx.hh, with implement/declare Xxx +# in one run +if my_options.classname: + pass + +def do_file(nm): + s = my_options.commentify(head_str(nm)) + if my_options.add_hdr_def: + s = s + c_include(nm) + return s + + +def extension(ext,nm): + ext = '\\.' + ext + return regex.search(ext, nm) <> -1 + +def c_extension(nm): + return extension('hh',nm) or extension('cc',nm) \ + or extension('icc', nm) or extension('tcc',nm) +def select_commentification(nm): + if c_extension (nm): + return c_commentify + elif extension('py',nm) or extension('pl',nm) or extension('sh',nm): + return sh_commentify + elif extension('mf',nm) or extension('tex',nm) or extension('ly',nm): + return tex_commentify + else: + raise 'help' + +for nm in files: + if extension('hh', nm) or extension('icc', nm) or extension('tcc', nm): + my_options.add_hdr_def = 1 + if my_options.commentify == None: + my_options.commentify = select_commentification(nm) + print do_file(nm) diff --git a/bin/genheader.py b/bin/genheader.py deleted file mode 100644 index 57f0e9fb8f..0000000000 --- a/bin/genheader.py +++ /dev/null @@ -1,135 +0,0 @@ -#!@PYTHON@ - -# -# genheader.py -- do headers (like these) -# -# source file of the GNU LilyPond music typesetter -# -# (c) 1997 Han-Wen Nienhuys -# - - - -import posix -import pwd -import regex -import regsub -import string -import sys -import os -import getopt - -class My_options: - def __init__(self): - self.commentify = None - self.add_hdr_def = 0 - self.classname = '' - -my_options = My_options() - -def mail(): - return os.environ['MAILADDRESS'] - -def name(): - return pwd.getpwuid(posix.getuid())[4] - -def c_commentify(str): - return '/* ' + regsub.gsub('^',' ', str) + '\n */'; - -def sh_commentify(str): - return regsub.gsub('^', '# ', str) - -def tex_commentify(str): - return regsub.gsub('^', '% ', str) - -def project_str(): - cwd = posix.getcwd() - if regex.search('flower', cwd) <> -1: - PROJECT = "the Flower Library" - elif regex.search('mf$', cwd) <> -1: - PROJECT = "the Feta (defintively not an abbreviation for Font-En-Tja) music font" - else: - PROJECT = "the GNU LilyPond music typesetter" - return PROJECT - -def head_str(filename): - if my_options.add_hdr_def: - what = "declare " - else: - what=" implement " - - - headstr = '\n%s -- %s\n\nsource file of %s\n\n(c) 1997 %s <%s>\n' \ - %(filename, what, project_str(), name(), mail()) - return headstr - - -def c_include(filename): - startdef= filename; - trans = string.maketrans( string.lowercase + '-.', string.uppercase + '__') - startdef = string.translate(filename, trans) - - - headstr = "\n\n#ifndef %s\n#define %s\n" % (startdef, startdef) - terminatestr = "#endif /* %s */\n" % (startdef); - - return headstr+ '\n\n'+ terminatestr; - - - - - -(options, files) = getopt.getopt(sys.argv[1:], 'tcsh', ['class']) - -for opt in options: - o = opt[0] - a = opt[1] - if o == '-c': - my_options.commentify = c_commentify - elif o == '-t': - my_options.commentify = tex_commentify - elif o == '-s': - my_options.commentify = sh_commentify - elif o == '-h': - my_options.add_hdr_def = 1 - elif o == '--class': - my_options.classname = a - - - -# -# FIXME: should create xxx.cc and include/xxx.hh, with implement/declare Xxx -# in one run -if my_options.classname: - pass - -def do_file(nm): - s = my_options.commentify(head_str(nm)) - if my_options.add_hdr_def: - s = s + c_include(nm) - return s - - -def extension(ext,nm): - ext = '\\.' + ext - return regex.search(ext, nm) <> -1 - -def c_extension(nm): - return extension('hh',nm) or extension('cc',nm) \ - or extension('icc', nm) or extension('tcc',nm) -def select_commentification(nm): - if c_extension (nm): - return c_commentify - elif extension('py',nm) or extension('pl',nm) or extension('sh',nm): - return sh_commentify - elif extension('mf',nm) or extension('tex',nm) or extension('ly',nm): - return tex_commentify - else: - raise 'help' - -for nm in files: - if extension('hh', nm) or extension('icc', nm) or extension('tcc', nm): - my_options.add_hdr_def = 1 - if my_options.commentify == None: - my_options.commentify = select_commentification(nm) - print do_file(nm) diff --git a/bin/lilypython.py b/bin/lilypython.py index 6f329a8614..06ad6459d5 100644 --- a/bin/lilypython.py +++ b/bin/lilypython.py @@ -1,4 +1,4 @@ -#!@PYTHON@ +#!/usr/bin/python # # lily-python.py -- implement general LilyPond-wide python stuff @@ -22,7 +22,9 @@ import getopt version_re = regex.compile('\\version *\"\(.*\)\"') -make_assign_re = regex.compile('^\([A-Z_]*\) *= *\(.*\)$') +# now used as shell script in configure too! +# make_assign_re = regex.compile('^\([A-Z_]*\) *= *\(.*\)$') +make_assign_re = regex.compile('^\([A-Z_]*\)=\(.*\)$') def version_tuple(file): lines = file.readlines() @@ -34,13 +36,17 @@ def version_tuple(file): if make_assign_re.search(l) <> -1: nm = make_assign_re.group(1) val = make_assign_re.group(2) - if nm == 'TOPLEVEL_MAJOR_VERSION': +# if nm == 'TOPLEVEL_MAJOR_VERSION': + if nm == 'MAJOR_VERSION': mj = atoi(val) - elif nm == 'TOPLEVEL_MINOR_VERSION': +# elif nm == 'TOPLEVEL_MINOR_VERSION': + elif nm == 'MINOR_VERSION': mi = atoi(val) - elif nm == 'TOPLEVEL_PATCH_LEVEL': +# elif nm == 'TOPLEVEL_PATCH_LEVEL': + elif nm == 'PATCH_LEVEL': pa = atoi(val) - elif nm == 'TOPLEVEL_MY_PATCH_LEVEL': +# elif nm == 'TOPLEVEL_MY_PATCH_LEVEL': + elif nm == 'MY_PATCH_LEVEL': mp = val return (mj,mi,pa,mp) diff --git a/bin/ly2dvi.in b/bin/ly2dvi.in new file mode 100644 index 0000000000..e20f85aa11 --- /dev/null +++ b/bin/ly2dvi.in @@ -0,0 +1,594 @@ +#!/bin/sh +# +# Script to make a LaTeX file for Lilypond +# +# Written by Jan Arne Fagertun +# Sat Nov 22 22:26:43 CET 1997 +# +# Original LaTeX file made by Mats Bengtsson, 17/8 1997 +# + +VERSION="0.7" +NAME=ly2dvi.sh +IDENTIFICATION="$NAME $VERSION" +NOW=`date` +echo "$IDENTIFICATION" 1>&2 + +# TODO + +# 0.7 +# - Improved Lilypond error checking +# - Output orientation (landscape...). Overrides mudela file +# variable orientation="landscape"; +# - Paper width and heigth put into variables (only A4!) +# - Adjusted top margin to default..... +# +#TODO +# - Include more papersizes. +# - Manual page....... +# - should detect crashing lilypond + + +# NEWS + +# 0.6.hwn1.jaf +# - LILYINCLUDE update +# +# 0.6.hwn1 +# - handle LILYINCLUDE +# - --output +# +# 0.6 +# - Source rc-files, if present. Files are: +# /usr/local/share/lilyrc /etc/lilyrc $HOME/.lilyrc ./.lilyrc +# - tee output from Lilypond +# - Handles margins for A4 paper (equal on both sides) +# - new option -s (--separate) for one LaTeX run per file, +# else all files are run together + +# 0.5 +# - More useful ("two-level") debug. +# - The Q&D hack to find file names and not handling \include +# is replaced by grabbing output file names from Lilypond. +# = Detects multiple output files - adds them when running +# LaTeX. +# - Works with multiple input files - no matter if they are +# (a mix of) input to or output from Lilypond. +# +#TODO +# - Still no margins handling. +# - We have to discuss how to handle multiple output files +# from Lilypond - 'ly2dvi standchen' gives a rather odd +# result.... + +# 0.4.1 +# - Always exit after printing help info +# 0.4 +# - Changes to ensure for more strict grep'ing of parameters +# Thanks to from G.B.Stott@bolton.ac.uk +# - More efficient use of sed -e 's///' -e 's///' +# Thanks to Johan Vromans and GBS +# - Ask tex for location of titledefs.tex (Thanks to JV) +# - Accept only exact match of "\def\mudelacomposer{" +# (or whatever mudela* defined in titledefs.tex) +# - Even more efficient use of sed (Thanks to JV) +# - Default file name for single output file implemented. +# - Moved help into function - finally included from 0.1.jcn1 +# +#TODO +# - Still doesn't handle \include +# - The Q&D for finding output file name from the sequence of +# \paper \output \midi \output really needs to be looked at. +# I have improved it a lot, but it's only capable of finding +# one (the last) file name. +# Well, I have to rewrite this entirely to handle \include, +# then I can fix it. +# - Still no margins handling. +# +#WARNING +# - Some lines of output from lilypond do NOT start +# at first character position, therefore I have removed "^" +# in sed'ing and grep'ing. + +# 0.3.hwn1 +# - add "Creator: " line to output +# +# 0.3 +# - multiple input files to make score from several files +# (extra files assumed to be Lilypond output) +# - cp dvi-file instead of mv, to allow for xdvi reload +# - check for illegal long options +# - put in pt in text width, if not given +# - put in \nonstopmode in LaTeX file +# - restored LaTeX exit value check + +# 0.2.1 +# - temporarily omit LaTeX exit value check +# - remove ALL temporary files + +# 0.2 +# - fix for solaris - included from 0.1.jcn1 +# - long option hack - included from 0.1.jcn1 - modified +# - moved help into function - NOT included from 0.1.jcn1 yet +# - various improvements - included from 0.1.jcn1 +# - find mudela definitions from titledefs.tex +# - find papersize from lilypond output file (mudelapapersize), +# overridden by option '-p size' or '--papersize=size' +# - option -l lang or --language=lang overrides +# lilypond output file definition (mudelalanguage) +# - textwidth from lilypond output file (mudelapaperlinewidth) + +# 0.1.jcn1 +# - fix for solaris +# - long option hack +# - moved help into function + +# +# print usage +# +help() { + cat << EOF +Generate dvi file from mudela or lilypond output +Usage: $0 [options] file[s] + +Options: + -D, --debug set debug mode + -O, --orientation= set orientation (landscape or portrait (default)) + -o, --output= set output directory + -h, --help this help text + -k, --keep keep LaTeX file + -l, --language= give LaTeX language (babel) + -p, --papersize= give LaTeX papersize (eg. a4paper) + -s, --separate run all files separately through LaTeX + + files may be (a mix of) input to or output from lilypond(1) +EOF +} + +PWIDTH=600; # Width of A4 paper! +PHEIGTH=830; # Heigth of A4 paper! +# +# RC-files ? +# +for D in /usr/local/share/ /etc/ $HOME/. ./. +do + RCfile=$D"lilyrc" + [ -f $RCfile ] && . $RCfile +done + +# +# Keywords defined in titledefs.tex +# +TF=`kpsewhich -n tex tex titledefs.tex` +if [ -n $TF ] +then + TF=/usr/lib/texmf/tex/lilypond/titledefs.tex +fi +MU_DEF="" +if [ -f $TF ] +then + MU_DEF=`egrep "^.newcommand...mudela" $TF | \\ + sed -e 's/^.newcommand...//' -e 's/\\}.*$//'` +fi + +if [ -z "$MU_DEF" ] +then + MU_DEF="mudelatitle mudelasubtitle mudelacomposer \ + mudelaarranger mudelainstrument" +fi + +# +# debugging +# +debug_echo=true +# +# All files in one LaTeX run +# +SEPFILE=N +# +# Find command line options and switches +# +# "x:" x takes argument +# +switches="DO:hkl:o:p:s\?" +options="" +# +# ugh, "\-" is a hack to support long options +# while getopts \-:$options$switches O +# must be in double quotes for bash-2.0 +while getopts "\-:$options$switches" O +do + $debug_echo "O: \`$O'" + $debug_echo "arg: \`$OPTARG'" + case $O in + D ) + if [ $debug_echo = echo ] + then + set -x + fi + debug_echo=echo + ;; + O ) + ORI=$OPTARG + ;; + h ) + help; + exit 0 + ;; + k ) + KEEP=Y + ;; + l ) + LNG=$OPTARG + ;; + o ) + OUTPUTDIR=$OPTARG + ;; + p ) + PSZ=$OPTARG + ;; + s ) + SEPFILE=Y + ;; + \? ) + help; + exit -1 + ;; + # a long option! + -) + $debug_echo "long option: \`$OPTARG'" + case "$OPTARG" in + D*|-D*) + if [ $debug_echo = echo ] + then + set -x + fi + debug_echo=echo + ;; + h*|-h*) + help; + exit 0 + ;; + k*|-k*) + KEEP=Y + ;; + l*|-l*) + LNG=`echo $OPTARG | sed -e s/"^.*="//` + ;; + p*|-p*) + PSZ=`echo $OPTARG | sed -e s/"^.*="//` + ;; + or*|-or*) + ORI=`echo $OPTARG | sed -e s/"^.*="//` + ;; + ou*|-ou*) + OUTPUTDIR=`echo $OPTARG | sed -e s/"^.*="//` + ;; + s*|-s*) + SEPFILE=Y + ;; + *|-*) + echo $0": illegal option -- "$OPTARG; + help; + exit -1 + ;; + esac + esac +done +shift `expr $OPTIND - 1` +# +# Input file name +# +if [ "$1" = "" ] +then + help + $debug_echo $IDENTIFICATION": No input file name given" + exit 1 +fi +# +startFile(){ +# +# LaTeX file name +# +if [ "$KEEP" != "Y" ] +then + if [ "$TMP" = "" ] + then + TMP=/tmp + fi + if [ ! -d $TMP ] + then + $debug_echo $IDENTIFICATION": temporary directory "$TMP" not found, set to /tmp" + TMP=/tmp + fi +# + BN=`basename $File .tex` + FN=$BN.$$ + LF=$TMP/$FN.tex +else + BN=`basename $File .tex` + FN=$BN.$$ + LF=$FN.tex +fi +# +# Find: +# paper size (PSZ, overridden by command line option -p) +# paper orientation (ORI, overridden by command line option -o) +# language (LNG, overridden by command line option -l) +# textwidth +# +eval `sed -n \\ + -e 's/\\\\def\\\\mudelapapersize{\([^}]*\).*$/fPSZ=\1;/p' \\ + -e 's/\\\\def\\\\mudelaorientation{\([^}]*\).*$/fORI=\1;/p' \\ + -e 's/\\\\def\\\\mudelalanguage{\([^}]*\).*$/fLNG=\1;/p' \\ + -e 's/\\\\def\\\\mudelapaperlinewidth{\([^}]*\).*$/TWN=\1;/p' \\ + $File` +if [ -z "$PSZ" ] +then + PSZ=$fPSZ +fi +if [ ! -z "$PSZ" ] +then + PAPEROPT=$PSZ +fi +# +if [ -z "$ORI" ] +then + ORI=$fORI +fi +if [ ! -z "$ORI" ] +then + if [ -z "$PAPEROPT" ] + then + PAPEROPT=$ORI + else + PAPEROPT=$PAPEROPT,$ORI + fi +fi +# +if [ ! -z "$PAPEROPT" ] +then + PAPER="["$PAPEROPT"]" +fi +# +if [ -z "$LNG" ] +then + LNG=$fLNG +fi +if [ ! -z "$LNG" ] +then + LLNG="\usepackage["$LNG"]{babel}" +else + LLNG="%" +fi + +# +# Find textwidth +# +if [ ! -z "$TWN" ] +then + TW=$TWN + case $TW in + *mm) + ;; + *cm) + ;; + *pt) + ;; + *) + TW=$TW"pt" + ;; + esac + $debug_echo "Text width = "$TW +fi +TWp=`echo $TW | sed -e 's/\..*$//'` +PWp=$PWIDTH +if [ "$ORI" = "landscape" ] +then + PWp=$PHEIGTH +fi +MARG=`expr $PWp - $TWp` +MARG=`expr $MARG / 2`"pt" +# +# Geometry: /var/lib/texmf/latex/geometry/geometry.dvi +# +# +# Write LaTeX file +# +cat << EOF > $LF +% Creator: $IDENTIFICATION +% Automatically generated from $IF, $NOW + +\documentclass$PAPER{article} +\nonstopmode +$LLNG +\usepackage{geometry} +\usepackage[T1]{fontenc} +%\addtolength{\oddsidemargin}{-1cm} +%\addtolength{\topmargin}{-1cm} +\setlength{\textwidth}{$TW} +%\geometry{width=$TW, left=$MARG, top=1cm} +\geometry{width=$TW, left=$MARG} +\input lilyponddefs +\input titledefs +\begin{document} +EOF +# +# Include \def\mudela-definitions +# +for L in $MU_DEF +do + LL=`egrep '^\\\\def.'$L'{' $OF` + if [ "$LL" != "" ] + then + LLL=`echo $LL | sed -e 's/}.*$//' -e 's/.*{//'` + if [ "$LLL" != "" ] + then + echo '\'$L'{'$LLL'}%' >> $LF + fi + fi +done +# +cat << EOF >> $LF +\makelilytitle +EOF +} +# +# Conclusion +# +endFile(){ +cat << EOF >> $LF +\vfill\hfill{(\LilyIdString)} +\end{document} +EOF +# +# Run LaTeX +# +latex $LF || exit 5 +# +# Rename dvi file +# +if [ -f $FN.dvi ] +then + RESULT=$BN.dvi + if [ x$OUTPUTDIR != x ]; then + RESULT="$OUTPUTDIR/$RESULT" + fi + cp $FN.dvi $RESULT +fi +# +# Clean up +# +if [ "$KEEP" != "Y" ] +then + rm $LF $FN.* +fi +# +# Output some info +# +cat << EOF + +$IDENTIFICATION: dvi file name is $RESULT + +EOF +} + +# ugh. GF is side-effect. +findInput() { +# should check for LILYINCLUDE + for lypath in "." `echo $LILYINCLUDE| sed 's/:/ /g'` + do + if [ -f "$lypath/$1" ] + then + GF="$lypath/$1" + return + fi + + if [ -f "$lypath/$1.ly" ] + then + GF="$lypath/$1.ly" + return + fi + done + $debug_echo $IDENTIFICATION": Input file "$GF" not found" + echo $NAME": Input file "$GF" not found" 1>&2 + exit 2 +} +# +# Loop through all files +# +for GF in $* +do + findInput $GF + + # + # Check whether the file is input to or output from lilypond + # + L1=`head -1 $GF` + OP=`echo $L1 | grep "^% Creator: GNU LilyPond"` + if [ -n "$OP" ] + then + # + # OK - it's the output from lilypond. + # + # Get lilypond source file name + # + OF=$GF + IFL=`grep mudelafilename $OF` + if [ "$IFL" != "" ] + then + IF=`echo $IFL | sed -e 's/.*{//' -e 's/}*.$//'` + # + # Check if source file exists + # + if [ ! -f $IF ] + then + $debug_echo $IDENTIFICATION": Mudela file not found." + TW=15.5cm + fi + else + $debug_echo $IDENTIFICATION": Mudela file name not found." + TW=15.5cm + fi + else + # + # I have to assume this is the lilypond input file + # Find output file name, if defined + # + IF=$GF + # + # Run lilypond + # Grab output file names + # + $debug_echo "lilypond "$IF + + lilypond $IF 2>&1 | tee /tmp/lilylog.$$ + OF=`egrep '^TeX output to ' /tmp/lilylog.$$ | \\ + sed -e 's/TeX output to//' -e 's/\.\.\.//'` + $debug_echo "==> "$OF + STATUS=`grep -i error /tmp/lilylog.$$` + rm /tmp/lilylog.$$ + if [ ! -z "$STATUS" ] + then + exit 10 + fi + fi + # + # "Spin through" all the files + # + for File in $OF + do + $debug_echo "--- "$File + # + # Check if output file is generated + # + if [ ! -f $File ] + then + $debug_echo $IDENTIFICATION": hmm, I could not find the output file "$File + exit 4 + fi + # + # Is this the first file? + # + if [ -z "$FFile" ] + then + FFile=$File + startFile + fi + cat << EOF >> $LF +\input{$File} +EOF + if [ $SEPFILE = Y ] + then + FFile="" + endFile + fi + done +done +if [ $SEPFILE = N ] +then + endFile +fi +# +# OK - finished +# diff --git a/bin/ly2dvi.sh b/bin/ly2dvi.sh deleted file mode 100644 index e20f85aa11..0000000000 --- a/bin/ly2dvi.sh +++ /dev/null @@ -1,594 +0,0 @@ -#!/bin/sh -# -# Script to make a LaTeX file for Lilypond -# -# Written by Jan Arne Fagertun -# Sat Nov 22 22:26:43 CET 1997 -# -# Original LaTeX file made by Mats Bengtsson, 17/8 1997 -# - -VERSION="0.7" -NAME=ly2dvi.sh -IDENTIFICATION="$NAME $VERSION" -NOW=`date` -echo "$IDENTIFICATION" 1>&2 - -# TODO - -# 0.7 -# - Improved Lilypond error checking -# - Output orientation (landscape...). Overrides mudela file -# variable orientation="landscape"; -# - Paper width and heigth put into variables (only A4!) -# - Adjusted top margin to default..... -# -#TODO -# - Include more papersizes. -# - Manual page....... -# - should detect crashing lilypond - - -# NEWS - -# 0.6.hwn1.jaf -# - LILYINCLUDE update -# -# 0.6.hwn1 -# - handle LILYINCLUDE -# - --output -# -# 0.6 -# - Source rc-files, if present. Files are: -# /usr/local/share/lilyrc /etc/lilyrc $HOME/.lilyrc ./.lilyrc -# - tee output from Lilypond -# - Handles margins for A4 paper (equal on both sides) -# - new option -s (--separate) for one LaTeX run per file, -# else all files are run together - -# 0.5 -# - More useful ("two-level") debug. -# - The Q&D hack to find file names and not handling \include -# is replaced by grabbing output file names from Lilypond. -# = Detects multiple output files - adds them when running -# LaTeX. -# - Works with multiple input files - no matter if they are -# (a mix of) input to or output from Lilypond. -# -#TODO -# - Still no margins handling. -# - We have to discuss how to handle multiple output files -# from Lilypond - 'ly2dvi standchen' gives a rather odd -# result.... - -# 0.4.1 -# - Always exit after printing help info -# 0.4 -# - Changes to ensure for more strict grep'ing of parameters -# Thanks to from G.B.Stott@bolton.ac.uk -# - More efficient use of sed -e 's///' -e 's///' -# Thanks to Johan Vromans and GBS -# - Ask tex for location of titledefs.tex (Thanks to JV) -# - Accept only exact match of "\def\mudelacomposer{" -# (or whatever mudela* defined in titledefs.tex) -# - Even more efficient use of sed (Thanks to JV) -# - Default file name for single output file implemented. -# - Moved help into function - finally included from 0.1.jcn1 -# -#TODO -# - Still doesn't handle \include -# - The Q&D for finding output file name from the sequence of -# \paper \output \midi \output really needs to be looked at. -# I have improved it a lot, but it's only capable of finding -# one (the last) file name. -# Well, I have to rewrite this entirely to handle \include, -# then I can fix it. -# - Still no margins handling. -# -#WARNING -# - Some lines of output from lilypond do NOT start -# at first character position, therefore I have removed "^" -# in sed'ing and grep'ing. - -# 0.3.hwn1 -# - add "Creator: " line to output -# -# 0.3 -# - multiple input files to make score from several files -# (extra files assumed to be Lilypond output) -# - cp dvi-file instead of mv, to allow for xdvi reload -# - check for illegal long options -# - put in pt in text width, if not given -# - put in \nonstopmode in LaTeX file -# - restored LaTeX exit value check - -# 0.2.1 -# - temporarily omit LaTeX exit value check -# - remove ALL temporary files - -# 0.2 -# - fix for solaris - included from 0.1.jcn1 -# - long option hack - included from 0.1.jcn1 - modified -# - moved help into function - NOT included from 0.1.jcn1 yet -# - various improvements - included from 0.1.jcn1 -# - find mudela definitions from titledefs.tex -# - find papersize from lilypond output file (mudelapapersize), -# overridden by option '-p size' or '--papersize=size' -# - option -l lang or --language=lang overrides -# lilypond output file definition (mudelalanguage) -# - textwidth from lilypond output file (mudelapaperlinewidth) - -# 0.1.jcn1 -# - fix for solaris -# - long option hack -# - moved help into function - -# -# print usage -# -help() { - cat << EOF -Generate dvi file from mudela or lilypond output -Usage: $0 [options] file[s] - -Options: - -D, --debug set debug mode - -O, --orientation= set orientation (landscape or portrait (default)) - -o, --output= set output directory - -h, --help this help text - -k, --keep keep LaTeX file - -l, --language= give LaTeX language (babel) - -p, --papersize= give LaTeX papersize (eg. a4paper) - -s, --separate run all files separately through LaTeX - - files may be (a mix of) input to or output from lilypond(1) -EOF -} - -PWIDTH=600; # Width of A4 paper! -PHEIGTH=830; # Heigth of A4 paper! -# -# RC-files ? -# -for D in /usr/local/share/ /etc/ $HOME/. ./. -do - RCfile=$D"lilyrc" - [ -f $RCfile ] && . $RCfile -done - -# -# Keywords defined in titledefs.tex -# -TF=`kpsewhich -n tex tex titledefs.tex` -if [ -n $TF ] -then - TF=/usr/lib/texmf/tex/lilypond/titledefs.tex -fi -MU_DEF="" -if [ -f $TF ] -then - MU_DEF=`egrep "^.newcommand...mudela" $TF | \\ - sed -e 's/^.newcommand...//' -e 's/\\}.*$//'` -fi - -if [ -z "$MU_DEF" ] -then - MU_DEF="mudelatitle mudelasubtitle mudelacomposer \ - mudelaarranger mudelainstrument" -fi - -# -# debugging -# -debug_echo=true -# -# All files in one LaTeX run -# -SEPFILE=N -# -# Find command line options and switches -# -# "x:" x takes argument -# -switches="DO:hkl:o:p:s\?" -options="" -# -# ugh, "\-" is a hack to support long options -# while getopts \-:$options$switches O -# must be in double quotes for bash-2.0 -while getopts "\-:$options$switches" O -do - $debug_echo "O: \`$O'" - $debug_echo "arg: \`$OPTARG'" - case $O in - D ) - if [ $debug_echo = echo ] - then - set -x - fi - debug_echo=echo - ;; - O ) - ORI=$OPTARG - ;; - h ) - help; - exit 0 - ;; - k ) - KEEP=Y - ;; - l ) - LNG=$OPTARG - ;; - o ) - OUTPUTDIR=$OPTARG - ;; - p ) - PSZ=$OPTARG - ;; - s ) - SEPFILE=Y - ;; - \? ) - help; - exit -1 - ;; - # a long option! - -) - $debug_echo "long option: \`$OPTARG'" - case "$OPTARG" in - D*|-D*) - if [ $debug_echo = echo ] - then - set -x - fi - debug_echo=echo - ;; - h*|-h*) - help; - exit 0 - ;; - k*|-k*) - KEEP=Y - ;; - l*|-l*) - LNG=`echo $OPTARG | sed -e s/"^.*="//` - ;; - p*|-p*) - PSZ=`echo $OPTARG | sed -e s/"^.*="//` - ;; - or*|-or*) - ORI=`echo $OPTARG | sed -e s/"^.*="//` - ;; - ou*|-ou*) - OUTPUTDIR=`echo $OPTARG | sed -e s/"^.*="//` - ;; - s*|-s*) - SEPFILE=Y - ;; - *|-*) - echo $0": illegal option -- "$OPTARG; - help; - exit -1 - ;; - esac - esac -done -shift `expr $OPTIND - 1` -# -# Input file name -# -if [ "$1" = "" ] -then - help - $debug_echo $IDENTIFICATION": No input file name given" - exit 1 -fi -# -startFile(){ -# -# LaTeX file name -# -if [ "$KEEP" != "Y" ] -then - if [ "$TMP" = "" ] - then - TMP=/tmp - fi - if [ ! -d $TMP ] - then - $debug_echo $IDENTIFICATION": temporary directory "$TMP" not found, set to /tmp" - TMP=/tmp - fi -# - BN=`basename $File .tex` - FN=$BN.$$ - LF=$TMP/$FN.tex -else - BN=`basename $File .tex` - FN=$BN.$$ - LF=$FN.tex -fi -# -# Find: -# paper size (PSZ, overridden by command line option -p) -# paper orientation (ORI, overridden by command line option -o) -# language (LNG, overridden by command line option -l) -# textwidth -# -eval `sed -n \\ - -e 's/\\\\def\\\\mudelapapersize{\([^}]*\).*$/fPSZ=\1;/p' \\ - -e 's/\\\\def\\\\mudelaorientation{\([^}]*\).*$/fORI=\1;/p' \\ - -e 's/\\\\def\\\\mudelalanguage{\([^}]*\).*$/fLNG=\1;/p' \\ - -e 's/\\\\def\\\\mudelapaperlinewidth{\([^}]*\).*$/TWN=\1;/p' \\ - $File` -if [ -z "$PSZ" ] -then - PSZ=$fPSZ -fi -if [ ! -z "$PSZ" ] -then - PAPEROPT=$PSZ -fi -# -if [ -z "$ORI" ] -then - ORI=$fORI -fi -if [ ! -z "$ORI" ] -then - if [ -z "$PAPEROPT" ] - then - PAPEROPT=$ORI - else - PAPEROPT=$PAPEROPT,$ORI - fi -fi -# -if [ ! -z "$PAPEROPT" ] -then - PAPER="["$PAPEROPT"]" -fi -# -if [ -z "$LNG" ] -then - LNG=$fLNG -fi -if [ ! -z "$LNG" ] -then - LLNG="\usepackage["$LNG"]{babel}" -else - LLNG="%" -fi - -# -# Find textwidth -# -if [ ! -z "$TWN" ] -then - TW=$TWN - case $TW in - *mm) - ;; - *cm) - ;; - *pt) - ;; - *) - TW=$TW"pt" - ;; - esac - $debug_echo "Text width = "$TW -fi -TWp=`echo $TW | sed -e 's/\..*$//'` -PWp=$PWIDTH -if [ "$ORI" = "landscape" ] -then - PWp=$PHEIGTH -fi -MARG=`expr $PWp - $TWp` -MARG=`expr $MARG / 2`"pt" -# -# Geometry: /var/lib/texmf/latex/geometry/geometry.dvi -# -# -# Write LaTeX file -# -cat << EOF > $LF -% Creator: $IDENTIFICATION -% Automatically generated from $IF, $NOW - -\documentclass$PAPER{article} -\nonstopmode -$LLNG -\usepackage{geometry} -\usepackage[T1]{fontenc} -%\addtolength{\oddsidemargin}{-1cm} -%\addtolength{\topmargin}{-1cm} -\setlength{\textwidth}{$TW} -%\geometry{width=$TW, left=$MARG, top=1cm} -\geometry{width=$TW, left=$MARG} -\input lilyponddefs -\input titledefs -\begin{document} -EOF -# -# Include \def\mudela-definitions -# -for L in $MU_DEF -do - LL=`egrep '^\\\\def.'$L'{' $OF` - if [ "$LL" != "" ] - then - LLL=`echo $LL | sed -e 's/}.*$//' -e 's/.*{//'` - if [ "$LLL" != "" ] - then - echo '\'$L'{'$LLL'}%' >> $LF - fi - fi -done -# -cat << EOF >> $LF -\makelilytitle -EOF -} -# -# Conclusion -# -endFile(){ -cat << EOF >> $LF -\vfill\hfill{(\LilyIdString)} -\end{document} -EOF -# -# Run LaTeX -# -latex $LF || exit 5 -# -# Rename dvi file -# -if [ -f $FN.dvi ] -then - RESULT=$BN.dvi - if [ x$OUTPUTDIR != x ]; then - RESULT="$OUTPUTDIR/$RESULT" - fi - cp $FN.dvi $RESULT -fi -# -# Clean up -# -if [ "$KEEP" != "Y" ] -then - rm $LF $FN.* -fi -# -# Output some info -# -cat << EOF - -$IDENTIFICATION: dvi file name is $RESULT - -EOF -} - -# ugh. GF is side-effect. -findInput() { -# should check for LILYINCLUDE - for lypath in "." `echo $LILYINCLUDE| sed 's/:/ /g'` - do - if [ -f "$lypath/$1" ] - then - GF="$lypath/$1" - return - fi - - if [ -f "$lypath/$1.ly" ] - then - GF="$lypath/$1.ly" - return - fi - done - $debug_echo $IDENTIFICATION": Input file "$GF" not found" - echo $NAME": Input file "$GF" not found" 1>&2 - exit 2 -} -# -# Loop through all files -# -for GF in $* -do - findInput $GF - - # - # Check whether the file is input to or output from lilypond - # - L1=`head -1 $GF` - OP=`echo $L1 | grep "^% Creator: GNU LilyPond"` - if [ -n "$OP" ] - then - # - # OK - it's the output from lilypond. - # - # Get lilypond source file name - # - OF=$GF - IFL=`grep mudelafilename $OF` - if [ "$IFL" != "" ] - then - IF=`echo $IFL | sed -e 's/.*{//' -e 's/}*.$//'` - # - # Check if source file exists - # - if [ ! -f $IF ] - then - $debug_echo $IDENTIFICATION": Mudela file not found." - TW=15.5cm - fi - else - $debug_echo $IDENTIFICATION": Mudela file name not found." - TW=15.5cm - fi - else - # - # I have to assume this is the lilypond input file - # Find output file name, if defined - # - IF=$GF - # - # Run lilypond - # Grab output file names - # - $debug_echo "lilypond "$IF - - lilypond $IF 2>&1 | tee /tmp/lilylog.$$ - OF=`egrep '^TeX output to ' /tmp/lilylog.$$ | \\ - sed -e 's/TeX output to//' -e 's/\.\.\.//'` - $debug_echo "==> "$OF - STATUS=`grep -i error /tmp/lilylog.$$` - rm /tmp/lilylog.$$ - if [ ! -z "$STATUS" ] - then - exit 10 - fi - fi - # - # "Spin through" all the files - # - for File in $OF - do - $debug_echo "--- "$File - # - # Check if output file is generated - # - if [ ! -f $File ] - then - $debug_echo $IDENTIFICATION": hmm, I could not find the output file "$File - exit 4 - fi - # - # Is this the first file? - # - if [ -z "$FFile" ] - then - FFile=$File - startFile - fi - cat << EOF >> $LF -\input{$File} -EOF - if [ $SEPFILE = Y ] - then - FFile="" - endFile - fi - done -done -if [ $SEPFILE = N ] -then - endFile -fi -# -# OK - finished -# diff --git a/bin/make-docxx.in b/bin/make-docxx.in new file mode 100644 index 0000000000..b274731309 --- /dev/null +++ b/bin/make-docxx.in @@ -0,0 +1,8 @@ +#!/bin/sh +if [ x$LILYTOP = x ]; +then + LILYTOP = . +fi +p1=`find $LILYTOP -name '*.hh' |egrep -v out/` +p2=`find $LILYTOP -name '*.cc' |egrep -v out/` +doc++ -f -d docxx/ -S -k -p $BANNEROPT $p1 $p2 diff --git a/bin/make-docxx.sh b/bin/make-docxx.sh deleted file mode 100644 index b274731309..0000000000 --- a/bin/make-docxx.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh -if [ x$LILYTOP = x ]; -then - LILYTOP = . -fi -p1=`find $LILYTOP -name '*.hh' |egrep -v out/` -p2=`find $LILYTOP -name '*.cc' |egrep -v out/` -doc++ -f -d docxx/ -S -k -p $BANNEROPT $p1 $p2 diff --git a/bin/make-examples.in b/bin/make-examples.in new file mode 100644 index 0000000000..620a28a7dd --- /dev/null +++ b/bin/make-examples.in @@ -0,0 +1,9 @@ +#!/bin/sh +# make-examples + +examples="twinkle-pop wtk1-fugue2 standchen-16 standchen-20 wtk1-prelude1 toccata-fuga-E scsii-menuetto cadenza gallina twinkle collisions font font20 scales rhythm multi spacing beams stem" +pss=$(echo $examples | sed "s/[^ ][^ ]*/out\\/&.ps/g") + +# cd ~/lelie/current/Documentation/out +cd ~/lelie/current/input +make -C ../Documentation $pss diff --git a/bin/make-examples.sh b/bin/make-examples.sh deleted file mode 100644 index 620a28a7dd..0000000000 --- a/bin/make-examples.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -# make-examples - -examples="twinkle-pop wtk1-fugue2 standchen-16 standchen-20 wtk1-prelude1 toccata-fuga-E scsii-menuetto cadenza gallina twinkle collisions font font20 scales rhythm multi spacing beams stem" -pss=$(echo $examples | sed "s/[^ ][^ ]*/out\\/&.ps/g") - -# cd ~/lelie/current/Documentation/out -cd ~/lelie/current/input -make -C ../Documentation $pss diff --git a/bin/make-patch.in b/bin/make-patch.in new file mode 100644 index 0000000000..0f5ee3057d --- /dev/null +++ b/bin/make-patch.in @@ -0,0 +1,136 @@ +#!@PYTHON@ + +import sys +import os + +lilypath ='' +try: + lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' +except KeyError: + print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' + sys.exit(1) + +lilypath = lilypath + '/bin/' +sys.path.append(lilypath) + + +from lilypython import * +import getopt +import pipes + + +mp_version = '0.3' + +class Options: + def __init__(self): + self.to_version = lilydirs.version_tuple() + self.from_version = prev_version(self.to_version) + +options = Options() + + +def help(): + sys.stdout.write( + 'Generate a patch to go to this version.\n' + ' --from=FROM, -f FROM old is FROM\n' + ' --to=TO, -t TO to version TO\n' + + ) + + + +def untar(fn): + # os.system('pwd'); + sys.stderr.write('untarring ' + fn + '\n') +# can't seem to fix errors: +# gzip: stdout: Broken pipe +# tar: Child returned status 1 +# os.system ('tar xzf ' + fn) +# sys.stderr.write('\n') +# ugh, even this does not work, but one error message less :-) + os.system ('gzip --quiet -dc ' + fn + '| tar xf - ') +# so print soothing message: +# sys.stderr.write('make-patch:ugh: Please ignore error: gzip: stdout: Broken pipe\n'); + sys.stderr.flush() + + +header = 'Generated by make-patch, old = %s, new = %s\n\ +\n\ +usage \n\ +\n\ + cd lilypond-source-dir; patch -E -p0 < %s\n\ +\n\ +Patches do not contain automatically generated files, \n\ +i.e. you should rerun configure\n\n' + +pats = ['*.lsm', 'configure', '*.txt', 'lilypond.spec'] +def remove_automatic(dirnames): + files = [] + files = files + multiple_find(pats, dirnames) + + for f in files: + os.remove(f) + +def makepatch(fv, tv, patfile_nm): + import tempfile + prev_cwd = os.getcwd(); + try: + os.mkdir ('/tmp/make-patch'); + except: + pass + + os.chdir ('/tmp/make-patch'); + untar(released_tarball(fv)) + untar(released_tarball(tv)) + remove_automatic([dirname(fv), dirname(tv)]) + + os.chdir(dirname(tv)) + + if not patfile_nm: + patfile_nm = '../patch-%s' % version_tuple_to_str(tv) + + f = open(patfile_nm, 'w') + f.write(header %\ + (version_tuple_to_str(fv), version_tuple_to_str(tv), \ + os.path.basename(patfile_nm))) + f.close() + + sys.stderr.write('diffing to %s... ' % patfile_nm) + os.system('diff -urN ../%s . >> %s' % (dirname(fv), patfile_nm)) + #os.system('gzip -9f %s' % patfile_nm) + os.chdir('/tmp/make-patch') + + sys.stderr.write('cleaning ... ') + os.system('rm -fr %s %s' % (dirname(tv), dirname(fv))) + sys.stderr.write('\n') + os.chdir(prev_cwd) + +def main(): + os.environ['GZIP'] = '-q' + sys.stderr.write('This is make-patch version %s\n' % mp_version) + (cl_options, files) = getopt.getopt(sys.argv[1:], + 'hf:o:t:', ['output=', 'help', 'from=', 'to=']) + outfn = '' + for opt in cl_options: + o = opt[0] + a = opt[1] + if o == '--from' or o == '-f': + options.from_version = version_str_to_tuple(a) + elif o == '--to' or o == '-t': + options.to_version = version_str_to_tuple(a) + elif o== '--help' or o == '-h': + help() + return 0; + elif o == '--output' or o == '-o': + outfn = os.path.join(os.getcwd(), a) + else: + raise getopt.error + + if not outfn: + pn = 'patch-%s' % version_tuple_to_str(options.to_version) + outfn = os.path.join(os.getcwd(), pn) + + makepatch(options.from_version, options.to_version, outfn) + +if __name__ == '__main__': + main() diff --git a/bin/make-patch.py b/bin/make-patch.py deleted file mode 100644 index 0f5ee3057d..0000000000 --- a/bin/make-patch.py +++ /dev/null @@ -1,136 +0,0 @@ -#!@PYTHON@ - -import sys -import os - -lilypath ='' -try: - lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' -except KeyError: - print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' - sys.exit(1) - -lilypath = lilypath + '/bin/' -sys.path.append(lilypath) - - -from lilypython import * -import getopt -import pipes - - -mp_version = '0.3' - -class Options: - def __init__(self): - self.to_version = lilydirs.version_tuple() - self.from_version = prev_version(self.to_version) - -options = Options() - - -def help(): - sys.stdout.write( - 'Generate a patch to go to this version.\n' - ' --from=FROM, -f FROM old is FROM\n' - ' --to=TO, -t TO to version TO\n' - - ) - - - -def untar(fn): - # os.system('pwd'); - sys.stderr.write('untarring ' + fn + '\n') -# can't seem to fix errors: -# gzip: stdout: Broken pipe -# tar: Child returned status 1 -# os.system ('tar xzf ' + fn) -# sys.stderr.write('\n') -# ugh, even this does not work, but one error message less :-) - os.system ('gzip --quiet -dc ' + fn + '| tar xf - ') -# so print soothing message: -# sys.stderr.write('make-patch:ugh: Please ignore error: gzip: stdout: Broken pipe\n'); - sys.stderr.flush() - - -header = 'Generated by make-patch, old = %s, new = %s\n\ -\n\ -usage \n\ -\n\ - cd lilypond-source-dir; patch -E -p0 < %s\n\ -\n\ -Patches do not contain automatically generated files, \n\ -i.e. you should rerun configure\n\n' - -pats = ['*.lsm', 'configure', '*.txt', 'lilypond.spec'] -def remove_automatic(dirnames): - files = [] - files = files + multiple_find(pats, dirnames) - - for f in files: - os.remove(f) - -def makepatch(fv, tv, patfile_nm): - import tempfile - prev_cwd = os.getcwd(); - try: - os.mkdir ('/tmp/make-patch'); - except: - pass - - os.chdir ('/tmp/make-patch'); - untar(released_tarball(fv)) - untar(released_tarball(tv)) - remove_automatic([dirname(fv), dirname(tv)]) - - os.chdir(dirname(tv)) - - if not patfile_nm: - patfile_nm = '../patch-%s' % version_tuple_to_str(tv) - - f = open(patfile_nm, 'w') - f.write(header %\ - (version_tuple_to_str(fv), version_tuple_to_str(tv), \ - os.path.basename(patfile_nm))) - f.close() - - sys.stderr.write('diffing to %s... ' % patfile_nm) - os.system('diff -urN ../%s . >> %s' % (dirname(fv), patfile_nm)) - #os.system('gzip -9f %s' % patfile_nm) - os.chdir('/tmp/make-patch') - - sys.stderr.write('cleaning ... ') - os.system('rm -fr %s %s' % (dirname(tv), dirname(fv))) - sys.stderr.write('\n') - os.chdir(prev_cwd) - -def main(): - os.environ['GZIP'] = '-q' - sys.stderr.write('This is make-patch version %s\n' % mp_version) - (cl_options, files) = getopt.getopt(sys.argv[1:], - 'hf:o:t:', ['output=', 'help', 'from=', 'to=']) - outfn = '' - for opt in cl_options: - o = opt[0] - a = opt[1] - if o == '--from' or o == '-f': - options.from_version = version_str_to_tuple(a) - elif o == '--to' or o == '-t': - options.to_version = version_str_to_tuple(a) - elif o== '--help' or o == '-h': - help() - return 0; - elif o == '--output' or o == '-o': - outfn = os.path.join(os.getcwd(), a) - else: - raise getopt.error - - if not outfn: - pn = 'patch-%s' % version_tuple_to_str(options.to_version) - outfn = os.path.join(os.getcwd(), pn) - - makepatch(options.from_version, options.to_version, outfn) - -if __name__ == '__main__': - main() diff --git a/bin/make-version.in b/bin/make-version.in new file mode 100644 index 0000000000..3be14353cb --- /dev/null +++ b/bin/make-version.in @@ -0,0 +1,13 @@ +#!/bin/sh + +#shift; +if test "x$1" = x; +then + versionfile="VERSION" +else + versionfile=$1; +fi + +cat $versionfile| sed 's/#.*$//g'|sed 's/\([^ ]*\)[\t ]*=[ \t]*\([^ ]*\)$/#define \1 \"\2\"/g' +echo + diff --git a/bin/make-version.sh b/bin/make-version.sh deleted file mode 100644 index 3be14353cb..0000000000 --- a/bin/make-version.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh - -#shift; -if test "x$1" = x; -then - versionfile="VERSION" -else - versionfile=$1; -fi - -cat $versionfile| sed 's/#.*$//g'|sed 's/\([^ ]*\)[\t ]*=[ \t]*\([^ ]*\)$/#define \1 \"\2\"/g' -echo - diff --git a/bin/make-website.in b/bin/make-website.in new file mode 100644 index 0000000000..40420fb1d7 --- /dev/null +++ b/bin/make-website.in @@ -0,0 +1,312 @@ +#!@PYTHON@ +# +# make-website.py -- implement The lilypond WWW site +# +# source file of the GNU LilyPond music typesetter +# +# (c) 1997, 1998 Han-Wen Nienhuys +# + +""" + stupid script to generate WWW site. + + The WWW site is my test-suite for LilyPond, I usually don't + distribute versions that fail to complete this script + +You should set the following environment vars: + +LILYPOND_SOURCEDIR +TEXINPUTS +MAILADDRESS + + + """ + +import sys +import os + +lilypath ='' +try: + lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' +except KeyError: + print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' + sys.exit(1) + +lilypath = lilypath + '/bin/' +sys.path.append(lilypath) + +from lilypython import * +import __main__ +import glob + +depth = '' +makewebsite_id = ""; +id_str = "make-website 0.8"; +tar = "tar"; +make = "make -f OLD-Makefile"; +mailaddress = "unknown" +fullname = "unknown" +footstr = "" +lilyversion= '' + +include_path=[ 'input', 'mutopia' , 'mutopia/J.S.Bach', + 'mutopia/J.S.Bach/out' ] + +def set_vars(): + __main__.lilyversion = version_tuple_to_str(lilydirs.version_tuple()) + os.environ["TEXINPUTS"] = os.environ["TEXINPUTS"] + ":%s/input/:" % depth; + + os.environ["LILYINCLUDE"] = join (':', __main__.include_path) + os.environ["LILYTOP"] = depth; + __main__.mailaddress= os.environ['MAILADDRESS'] + pw = pwd.getpwuid (os.getuid()); + + __main__.fullname= pw[4]; + +backstr = '\n
Please take me back to the index\n\ +of LilyPond -- The GNU Project Music typesetter\n\ +
\n\ +This page was built using %s from lilypond-%s by

\n\ +


%s <%s>
\n\ +

' + + +def footstr(index): + return backstr % (index, id_str, lilyversion, fullname, mailaddress, mailaddress) + + + +# do something, check return status +def my_system(cmds): + for cmd in cmds: + ignoreret=0; + if cmd[0] == '-': + ignoreret = 1 + cmd = cmd[1:] + + ret = os.system (cmd) + if ret: + if ignoreret: + sys.stderr.write( "ignoring failed command \`%s\' (status %d)\n" % (cmd, ret)) + else: + sys.stderr.write( 'make-website: failed on command %s (status %d)\n' % (cmd, ret)) + sys.exit (2) + +base="lilypond/"; + +examples=["twinkle-pop", + "praeludium-fuga-E", + "cadenza", + "twinkle", + "collisions", + "font16", + "font20", + #"scales", + "rhythm", + "multi"] + +mutopia_examples = [ "wtk1-fugue2", + "standje", + "preludes-1", + "preludes-2", + "wtk1-prelude1", + "gallina", + "scsii-menuetto"] + + +def gen_html(): + print 'generating HTML' + my_system (["make -f OLD-Makefile -kC .. html"]); + + +def gen_examples(inputs): + print 'generating examples:\n' + outputs = [] + for i in inputs: + try: + located = multiple_find ([i + '.ly'], include_path) [0] + except IndexError: + print 'continuing dazed & confused (%s) ' % i + continue + outputs.append (located) + if not file_exist_b(i + '.dvi'): + my_system (['ly2dvi %s' % located]) + if not file_exist_b(i + '.ly.txt'): + os.link (located, i + ".ly.txt") + list = map(lambda x: 'out/%s.ps.gz out/%s.gif' % (x,x), inputs) + my_system (['make -C .. ' + join(' ', list)]) + + return outputs + +def gen_list(inputs, filename): + print "generating HTML list %s\n" % filename; + list = open(filename, 'w') + list.write ('Rendered Examples\n' + 'These example files are taken from the LilyPond distribution.\n' + 'LilyPond currently only outputs TeX and MIDI. The pictures and\n' + 'PostScript files were generated using TeX, Ghostscript and some\n' + 'graphics tools. The papersize used for these examples is A4. The GIF\n' + 'files have been scaled to eliminate aliasing.\n'); + + for ex in inputs: + print '%s, ' % ex + header = read_mudela_header(ex + '.ly.txt') + + def read_dict(s, default, h =header): + try: + ret = h[s] + except KeyError: + ret = default + return ret + head = read_dict('title', ex) + composer = read_dict('composer', '') + desc = read_dict('description', '') + list.write('


') + list.write('

example file: %s

' % head); + if composer <> '': + list.write('

%s

\n' % composer) + if desc <> '': + list.write('%s

' % desc) + list.write ('

    ') + def list_item(filename, desc, l = list): + if file_exist_b(filename): + l.write ('
  • %s\n' % (filename, desc)) + + list_item(ex + '.ly.txt', 'The input') + for pageno in range(1,10): + f = ex + '-page%d.gif' % pageno + if not file_exist_b (f): + break + list_item(f, 'The output (picture, page %d)' % pageno) + list_item(ex + '.ps.gz', 'The output (gzipped PostScript)') + list_item(ex + '.midi', 'The output (MIDI)') + list.write ("
"); + + list.write( ""); + list.close() + +texstuff = ["mudela-man", "mudela-course"] + +def gen_manuals(): + print 'generating TeX doco manuals' + list = open('tex_manuals.html', 'w') + list.write( "PostScript Manuals\n" + "

LilyPond manuals (in PostScript)

" + "
    \n") + todo='' + for stuff in texstuff: + todo = todo + ' out/' + stuff + '.ps.gz' + list.write("
  • %s.ps.gz" % (stuff, stuff)) + list.write('
') + list.close () + + my_system (['make -C .. ' + todo]) + +def file_exist_b(name): + try: + f = open(name) + except IOError: + return 0 + f.close () + return 1 +def copy_files(): + print "copying files\n" + +# my_system ("ln -s depth/out ./docxx" ) + my_system([ "cp %s/TODO ./TODO.txt" % depth, + "cp %s/ANNOUNCE-0.1 ./ANNOUNCE.txt" % depth, + "cp %s/NEWS ./NEWS.txt" % depth, + "cp %s/DEDICATION ./DEDICATION.txt" % depth]); + my_system([ "make -C .. gifs"]); + +def docxx_update(): + print 'docxx.. \n' + banner= open('/tmp/lilybanner.html', 'w'); + banner.write (footstr('../index.html')) + banner.close () + my_system(['BANNEROPT=\"-B /tmp/lilybanner.html\" %s/bin/out/make-docxx' % depth]); +# os.unlink( "/tmp/lilybanner.html"); + +def get_glob(exts): + result = [] + for a in exts: + result = result + glob.glob1('./', '*.' + a) + + return result + +def join(inter, list): + return reduce (lambda x,y, i=inter: x + i + y, list) + +def do_tar(): + print "tarring.\n"; + list = get_glob( ['html', 'gif', 'ps.gz' , 'txt', 'midi']) + files = join (' ', list) + print files + my_system( ['-tar zvhcf website.tar.gz ' + files + ' docxx/*']) + + +def identify(): + print 'This is %s\n' % id_str + +def clean_tmp(): + my_system(['rm -f /tmp/gs*']) + +def get_top_of_NEWS(): + i = open('NEWS.txt') + lines = i.readlines() + i.close () + s = '' + for l in lines: + if regex.search('^\*\*\*\*\*\*', l) <> -1: + return s; + s = s + l + return s + +def edit_index(): + s = gulp_file('index.html') + s = regsub.sub ('top_of_NEWS', '\n' + get_top_of_NEWS () + '\n', s) + dump_file ('index.html', s) + +def edit_html(): + files = get_glob(['html']) + for f in files: + + s = gulp_file(f) + if regex.search(makewebsite_id, s) <> -1: + continue; + + s = regsub.sub ('', footstr('index.html') + makewebsite_id + '', s) + s = regsub.sub('\(.*\)$', + 'LilyPond WWW: \\1', s) + + dump_file (f,s) + + +def do_examples (examples, filename): + located_files = gen_examples (examples) + gen_list (examples, filename) +def main(): + identify(); + + os.chdir (lilydirs.topdir + 'Documentation/out') + __main__.depth = "../../"; + __main__.include_path = map(lambda p: __main__.depth + '/' + + p, __main__.include_path) + + set_vars(); + gen_html(); + copy_files(); + do_examples (examples, 'examples_output.html'); + do_examples (mutopia_examples, 'mutopiaexamples_output.html'); + gen_manuals(); + #set_images(); + edit_html(); + edit_index(); + docxx_update() + do_tar() + clean_tmp(); + + +main() + + diff --git a/bin/make-website.py b/bin/make-website.py deleted file mode 100644 index a2243a78f9..0000000000 --- a/bin/make-website.py +++ /dev/null @@ -1,312 +0,0 @@ -#!@PYTHON@ -# -# make-website.py -- implement The lilypond WWW site -# -# source file of the GNU LilyPond music typesetter -# -# (c) 1997, 1998 Han-Wen Nienhuys -# - -""" - stupid script to generate WWW site. - - The WWW site is my test-suite for LilyPond, I usually don't - distribute versions that fail to complete this script - -You should set the following environment vars: - -LILYPOND_SOURCEDIR -TEXINPUTS -MAILADDRESS - - - """ - -import sys -import os - -lilypath ='' -try: - lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' -except KeyError: - print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' - sys.exit(1) - -lilypath = lilypath + '/bin/' -sys.path.append(lilypath) - -from lilypython import * -import __main__ -import glob - -depth = '' -makewebsite_id = ""; -id_str = "make-website 0.8"; -tar = "tar"; -make = "make"; -mailaddress = "unknown" -fullname = "unknown" -footstr = "" -lilyversion= '' - -include_path=[ 'input', 'mutopia' , 'mutopia/J.S.Bach', - 'mutopia/J.S.Bach/out' ] - -def set_vars(): - __main__.lilyversion = version_tuple_to_str(lilydirs.version_tuple()) - os.environ["TEXINPUTS"] = os.environ["TEXINPUTS"] + ":%s/input/:" % depth; - - os.environ["LILYINCLUDE"] = join (':', __main__.include_path) - os.environ["LILYTOP"] = depth; - __main__.mailaddress= os.environ['MAILADDRESS'] - pw = pwd.getpwuid (os.getuid()); - - __main__.fullname= pw[4]; - -backstr = '\n
Please take me back to the index\n\ -of LilyPond -- The GNU Project Music typesetter\n\ -
\n\ -This page was built using %s from lilypond-%s by

\n\ -


%s <%s>
\n\ -

' - - -def footstr(index): - return backstr % (index, id_str, lilyversion, fullname, mailaddress, mailaddress) - - - -# do something, check return status -def my_system(cmds): - for cmd in cmds: - ignoreret=0; - if cmd[0] == '-': - ignoreret = 1 - cmd = cmd[1:] - - ret = os.system (cmd) - if ret: - if ignoreret: - sys.stderr.write( "ignoring failed command \`%s\' (status %d)\n" % (cmd, ret)) - else: - sys.stderr.write( 'make-website: failed on command %s (status %d)\n' % (cmd, ret)) - sys.exit (2) - -base="lilypond/"; - -examples=["twinkle-pop", - "praeludium-fuga-E", - "cadenza", - "twinkle", - "collisions", - "font16", - "font20", - #"scales", - "rhythm", - "multi"] - -mutopia_examples = [ "wtk1-fugue2", - "standje", - "preludes-1", - "preludes-2", - "wtk1-prelude1", - "gallina", - "scsii-menuetto"] - - -def gen_html(): - print 'generating HTML' - my_system (["make -kC .. html"]); - - -def gen_examples(inputs): - print 'generating examples:\n' - outputs = [] - for i in inputs: - try: - located = multiple_find ([i + '.ly'], include_path) [0] - except IndexError: - print 'continuing dazed & confused (%s) ' % i - continue - outputs.append (located) - if not file_exist_b(i + '.dvi'): - my_system (['ly2dvi %s' % located]) - if not file_exist_b(i + '.ly.txt'): - os.link (located, i + ".ly.txt") - list = map(lambda x: 'out/%s.ps.gz out/%s.gif' % (x,x), inputs) - my_system (['make -C .. ' + join(' ', list)]) - - return outputs - -def gen_list(inputs, filename): - print "generating HTML list %s\n" % filename; - list = open(filename, 'w') - list.write ('Rendered Examples\n' - 'These example files are taken from the LilyPond distribution.\n' - 'LilyPond currently only outputs TeX and MIDI. The pictures and\n' - 'PostScript files were generated using TeX, Ghostscript and some\n' - 'graphics tools. The papersize used for these examples is A4. The GIF\n' - 'files have been scaled to eliminate aliasing.\n'); - - for ex in inputs: - print '%s, ' % ex - header = read_mudela_header(ex + '.ly.txt') - - def read_dict(s, default, h =header): - try: - ret = h[s] - except KeyError: - ret = default - return ret - head = read_dict('title', ex) - composer = read_dict('composer', '') - desc = read_dict('description', '') - list.write('


') - list.write('

example file: %s

' % head); - if composer <> '': - list.write('

%s

\n' % composer) - if desc <> '': - list.write('%s

' % desc) - list.write ('

    ') - def list_item(filename, desc, l = list): - if file_exist_b(filename): - l.write ('
  • %s\n' % (filename, desc)) - - list_item(ex + '.ly.txt', 'The input') - for pageno in range(1,10): - f = ex + '-page%d.gif' % pageno - if not file_exist_b (f): - break - list_item(f, 'The output (picture, page %d)' % pageno) - list_item(ex + '.ps.gz', 'The output (gzipped PostScript)') - list_item(ex + '.midi', 'The output (MIDI)') - list.write ("
"); - - list.write( ""); - list.close() - -texstuff = ["mudela-man", "mudela-course"] - -def gen_manuals(): - print 'generating TeX doco manuals' - list = open('tex_manuals.html', 'w') - list.write( "PostScript Manuals\n" - "

LilyPond manuals (in PostScript)

" - "
    \n") - todo='' - for stuff in texstuff: - todo = todo + ' out/' + stuff + '.ps.gz' - list.write("
  • %s.ps.gz" % (stuff, stuff)) - list.write('
') - list.close () - - my_system (['make -C .. ' + todo]) - -def file_exist_b(name): - try: - f = open(name) - except IOError: - return 0 - f.close () - return 1 -def copy_files(): - print "copying files\n" - -# my_system ("ln -s depth/out ./docxx" ) - my_system([ "cp %s/TODO ./TODO.txt" % depth, - "cp %s/ANNOUNCE-0.1 ./ANNOUNCE.txt" % depth, - "cp %s/NEWS ./NEWS.txt" % depth, - "cp %s/DEDICATION ./DEDICATION.txt" % depth]); - my_system([ "make -C .. gifs"]); - -def docxx_update(): - print 'docxx.. \n' - banner= open('/tmp/lilybanner.html', 'w'); - banner.write (footstr('../index.html')) - banner.close () - my_system(['BANNEROPT=\"-B /tmp/lilybanner.html\" %s/bin/out/make-docxx' % depth]); -# os.unlink( "/tmp/lilybanner.html"); - -def get_glob(exts): - result = [] - for a in exts: - result = result + glob.glob1('./', '*.' + a) - - return result - -def join(inter, list): - return reduce (lambda x,y, i=inter: x + i + y, list) - -def do_tar(): - print "tarring.\n"; - list = get_glob( ['html', 'gif', 'ps.gz' , 'txt', 'midi']) - files = join (' ', list) - print files - my_system( ['-tar zvhcf website.tar.gz ' + files + ' docxx/*']) - - -def identify(): - print 'This is %s\n' % id_str - -def clean_tmp(): - my_system(['rm -f /tmp/gs*']) - -def get_top_of_NEWS(): - i = open('NEWS.txt') - lines = i.readlines() - i.close () - s = '' - for l in lines: - if regex.search('^\*\*\*\*\*\*', l) <> -1: - return s; - s = s + l - return s - -def edit_index(): - s = gulp_file('index.html') - s = regsub.sub ('top_of_NEWS', '\n' + get_top_of_NEWS () + '\n', s) - dump_file ('index.html', s) - -def edit_html(): - files = get_glob(['html']) - for f in files: - - s = gulp_file(f) - if regex.search(makewebsite_id, s) <> -1: - continue; - - s = regsub.sub ('', footstr('index.html') + makewebsite_id + '', s) - s = regsub.sub('\(.*\)$', - 'LilyPond WWW: \\1', s) - - dump_file (f,s) - - -def do_examples (examples, filename): - located_files = gen_examples (examples) - gen_list (examples, filename) -def main(): - identify(); - - os.chdir (lilydirs.topdir + 'Documentation/out') - __main__.depth = "../../"; - __main__.include_path = map(lambda p: __main__.depth + '/' + - p, __main__.include_path) - - set_vars(); - gen_html(); - copy_files(); - do_examples (examples, 'examples_output.html'); - do_examples (mutopia_examples, 'mutopiaexamples_output.html'); - gen_manuals(); - #set_images(); - edit_html(); - edit_index(); - docxx_update() - do_tar() - clean_tmp(); - - -main() - - diff --git a/bin/makepatch.py b/bin/makepatch.py deleted file mode 100644 index 0d7ecfc082..0000000000 --- a/bin/makepatch.py +++ /dev/null @@ -1,145 +0,0 @@ -#!@PYTHON@ -from lilypython import * -import getopt -import pipes - - -mp_version = '2' - -class Options: - def __init__(self): - self.to_version = lilydirs.version_tuple() - self.from_version = prev_version(self.to_version) - -options = Options() - - -def help(): - sys.stdout.write( - 'Generate a patch to go to this version.\n' - ' --from=FROM, -f FROM old is FROM\n' - ' --to=TO, -t TO to version TO\n' - - ) - sys.exit(); - - - -def untar(fn): - sys.stderr.write('untarring ' + fn) - os.system ('tar xzf ' + fn) - sys.stderr.write('\n') - sys.stderr.flush() - - -header = 'Generated by make-patch, old = %s, new = %s\n\ -\n\ -usage \n\ -\n\ - cd lilypond-source-dir; patch -E -p0 < %s\n\ -\n\ -Patches do not contain automatically generated files, \n\ -i.e. you should rerun configure\n\n' - -import fnmatch -import os - -_debug = 0 - -_prune = ['(*)'] - - -def my_find(patterns, dir = os.curdir): - list = [] - names = os.listdir(dir) - names.sort() - for name in names: - if name in (os.curdir, os.pardir): - continue - fullname = os.path.join(dir, name) - for pat in patterns: - if fnmatch.fnmatch(name, pat): - list.append(fullname) - if os.path.isdir(fullname) and not os.path.islink(fullname): - for p in _prune: - if fnmatch.fnmatch(name, p): - if _debug: print "skip", `fullname` - break - else: - if _debug: print "descend into", `fullname` - found = my_find(patterns, fullname) - if found: - list = list + found - return list - -def multiple_find(pats, dirnames): - from find import find - l = [] - for d in dirnames: - l = l + my_find(pats, d) - return l - -pats = ['*.lsm', 'configure', '*.text', 'lilypond.spec'] -def remove_automatic(dirnames): - files = [] - files = files + multiple_find(pats, dirnames) - - for f in files: - os.remove(f) - -def makepatch(fv, tv, patfile_nm): - import tempfile - prev_cwd = os.getcwd(); - os.chdir ('/tmp') - untar(released_tarball(fv)) - untar(released_tarball(tv)) - remove_automatic([dirname(fv), dirname(tv)]) - - os.chdir(dirname(tv)) - - if not patfile_nm: - patfile_nm = '../patch-%s' % version_tuple_to_str(tv) - - f = open(patfile_nm, 'w') - f.write(header %\ - (version_tuple_to_str(fv), version_tuple_to_str(tv), \ - os.path.basename(patfile_nm))) - f.close() - - sys.stderr.write('diffing to %s... ' % patfile_nm) - os.system('diff -urN ../%s . >> %s' % (dirname(fv), patfile_nm)) - #os.system('gzip -9f %s' % patfile_nm) - os.chdir('/tmp') - - sys.stderr.write('cleaning ... ') - os.system('rm -fr %s %s' % (dirname(tv), dirname(fv))) - sys.stderr.write('\n') - os.chdir(prev_cwd) - -def main(): - sys.stderr.write('This is make-patch version %s\n' % mp_version) - (cl_options, files) = getopt.getopt(sys.argv[1:], - 'hf:o:t:', ['output=', 'help', 'from=', 'to=']) - outfn = '' - for opt in cl_options: - o = opt[0] - a = opt[1] - if o == '--from' or o == '-f': - options.from_version = version_str_to_tuple(a) - elif o == '--to' or o == '-t': - options.to_version = version_str_to_tuple(a) - elif o== '--help' or o == '-h': - help() - elif o == '--output' or o == '-o': - outfn = os.path.join(os.getcwd(), a) - else: - raise getopt.error - - if not outfn: - pn = 'patch-%s' % version_tuple_to_str(options.to_version) - outfn = os.path.join(os.getcwd(), pn) - - makepatch(options.from_version, options.to_version, outfn) - -if __name__ == '__main__': - main() diff --git a/bin/mf-deps.in b/bin/mf-deps.in new file mode 100644 index 0000000000..6d022fff45 --- /dev/null +++ b/bin/mf-deps.in @@ -0,0 +1,88 @@ +#!@PYTHON@ + +# +# mf-deps.py -- dependencies for metafont +# +# source file of the GNU LilyPond music typesetter +# +# (c) 1997 Han-Wen Nienhuys +# + + +"""look into metafont source for dependencies. + + fixme: python path + fixme: error reporting + fixem: python sucks slightly: why doesn't it have closures? + +""" + +from regex import * ; +from regsub import * ; +import sys; +import os; + + +version = "0.2" +input_re = compile('^[ \t]*input *\([^;]+\);') +postfixes = ['log', 'dvi', '2602gf', 'tfm'] + +def identify (): + return "mf-deps.py %s" % version + + + +def print_one(x): + print x + +def line_concat(x,y): + return x + '\n' + y + +class Targetdeps: + """Dependencies for one toplevel sourcefile + + """ + + def __init__(self,nm): + split = os.path.splitext(nm) + self.basename=split[0]; + self.depfiles = [] + self.checkdep(nm) + + def checkdep(self, name): + split = os.path.splitext(name) + name = split[0] + '.mf'; + + if name not in self.depfiles: + self.get_filedeps(name) + + def get_filedeps(self,filename): +# print sys.stderr.write( 'checking ' + filename + '\n'); + try: + file = open(filename) + except IOError: +# print sys.stderr.write( 'can\'t open ' + filename + '\n') + return + + self.depfiles.append(filename) + lines = file.readlines() + file.close() + for line in lines: + if input_re.search (line) <> -1: + self.checkdep( input_re.group(1)) + + def target_string(self): + # ugh. Closures, anyone? + targets = map (lambda x,y = self.basename: 'out/' + y + '.' + x, postfixes) + depstring = reduce(lambda x,y: x + ' ' + y, self.depfiles) + dependencies = map (lambda x, y=depstring: x + ': ' + y, targets) + + return reduce(line_concat, dependencies) + +print "# Automatically generated by %s\n" % identify () + +for file in sys.argv[1:]: # skip programname + t = Targetdeps(file) + print t.target_string() + + diff --git a/bin/mf-deps.py b/bin/mf-deps.py deleted file mode 100644 index 6d022fff45..0000000000 --- a/bin/mf-deps.py +++ /dev/null @@ -1,88 +0,0 @@ -#!@PYTHON@ - -# -# mf-deps.py -- dependencies for metafont -# -# source file of the GNU LilyPond music typesetter -# -# (c) 1997 Han-Wen Nienhuys -# - - -"""look into metafont source for dependencies. - - fixme: python path - fixme: error reporting - fixem: python sucks slightly: why doesn't it have closures? - -""" - -from regex import * ; -from regsub import * ; -import sys; -import os; - - -version = "0.2" -input_re = compile('^[ \t]*input *\([^;]+\);') -postfixes = ['log', 'dvi', '2602gf', 'tfm'] - -def identify (): - return "mf-deps.py %s" % version - - - -def print_one(x): - print x - -def line_concat(x,y): - return x + '\n' + y - -class Targetdeps: - """Dependencies for one toplevel sourcefile - - """ - - def __init__(self,nm): - split = os.path.splitext(nm) - self.basename=split[0]; - self.depfiles = [] - self.checkdep(nm) - - def checkdep(self, name): - split = os.path.splitext(name) - name = split[0] + '.mf'; - - if name not in self.depfiles: - self.get_filedeps(name) - - def get_filedeps(self,filename): -# print sys.stderr.write( 'checking ' + filename + '\n'); - try: - file = open(filename) - except IOError: -# print sys.stderr.write( 'can\'t open ' + filename + '\n') - return - - self.depfiles.append(filename) - lines = file.readlines() - file.close() - for line in lines: - if input_re.search (line) <> -1: - self.checkdep( input_re.group(1)) - - def target_string(self): - # ugh. Closures, anyone? - targets = map (lambda x,y = self.basename: 'out/' + y + '.' + x, postfixes) - depstring = reduce(lambda x,y: x + ' ' + y, self.depfiles) - dependencies = map (lambda x, y=depstring: x + ': ' + y, targets) - - return reduce(line_concat, dependencies) - -print "# Automatically generated by %s\n" % identify () - -for file in sys.argv[1:]: # skip programname - t = Targetdeps(file) - print t.target_string() - - diff --git a/bin/mf-to-table.in b/bin/mf-to-table.in new file mode 100644 index 0000000000..58c96c384b --- /dev/null +++ b/bin/mf-to-table.in @@ -0,0 +1,222 @@ +#!@PYTHON@ + +# +# mf-to-table.py -- convert spacing info in MF logs .ly and .tex +# +# source file of the GNU LilyPond music typesetter +# +# (c) 1997 Han-Wen Nienhuys +# + +import getopt +from string import * +import regex +import regsub +import os +import sys +import time +from flower import * + +begin_autometric_re = regex.compile('@{') +end_autometric_re = regex.compile('@}') +autometric_re = regex.compile('@{\(.*\)@}') +version = '0.5' + +class Feta_file(File): + """Read Feta metrics from a metafont log-file.""" + def read_autometricline(self): + line = '' + while end_autometric_re.search(line) == -1 and not self.eof(): + suf = File.readline(self) + if begin_autometric_re.search(line) == -1: + line = '' + line = line + regsub.sub('\n','', suf) + + if self.eof(): + return '' + + return line; + def readline(self): + """return what is enclosed in one @{ @} pair""" + line = ''; + while autometric_re.search(line) == -1 and not self.eof(): + line = self.read_autometricline() + + if self.eof(): + return ''; + + return autometric_re.group(1); + def __init__(self, nm): + File.__init__(self, nm) + def do_file(infile_nm): + infile = readline(); + +# +# FIXME: should parse output for {} to do indenting. +# +class Indentable_file(File): + """Output file with support for indentation""" + def __init__(self,nm, mode): + File.__init__(self,nm,mode) + self.current_indent_ = 0 + self.delta_indent_ = 4 + def writeline (self, str): + File.write(self, str) + def writeeol(self): + File.write(self, '\n') + File.write(self, ' '* self.current_indent_) + + def indent(self): + self.current_indent_ = self.delta_indent_ + self.current_indent_; + def dedent(self): + self.current_indent_ = self.current_indent_ - self.delta_indent_; + if self.current_indent_ < 0: + raise 'Nesting!' + + def write(self, str): + lines = split(str, '\n') + for l in lines[:-1]: + self.writeline(l) + self.writeeol() + self.writeline (lines[-1]) + +class Ly_file(Indentable_file): + """extra provisions for mozarella quirks""" + def print_lit(self, str): + self.write('\"%s\"\t' % str) + + def print_f_dimen(self, f): + dimstr = '%.2f' % f + + # try to mask rounding errors + if (dimstr == '-0.00'): + dimstr = '0.00' + self.write( dimstr +'\\pt\t'); + + def print_dimen(self, str): + self.print_f_dimen(atof(str)) + + def neg_print_dimen(self, str): + self.print_f_dimen(-atof(str)); + + def def_symbol(self, lily_id, tex_id, dims): + self.print_lit(lily_id) + self.print_lit('\\\\' + tex_id) + + self.neg_print_dimen(dims [0]) + self.print_dimen(dims [1]) + self.neg_print_dimen(dims [2]) + self.print_dimen(dims [3]) + self.write('\n') + + +class Log_reader: + """Read logs, destill info, and put into output files""" + def output_label(self, line): + + if not line: + return; + tags = split(line, '@:') + label = tags[0] + name = tags[1] + ly = self.lyfile + if tags[0] == 'font': + ly.indent() + ly.write("% name=\\symboltables {\n") + self.texfile.write("% name\n") + elif label == "group": + ly.indent() + ly.print_lit(name) + ly.write(' = \\table {\n') + self.texfile.write("% " + name + "\n") + elif label == "puorg": + ly.dedent() + ly.write("}\n") + self.texfile.write("\n") + elif label == "tnof": + ly.dedent() + ly.write("% } % $name\n") + elif label == "char": + code = tags[2] + id = tags [7] + texstr = tags [8] + + ly.def_symbol(id, texstr, tags[3:7]) + + self.texfile.write("\\fetdef\\%s{%s}\n" % (texstr, code)) + else: + raise 'unknown label: ' + label + + + def do_file(self,filenm): + self.lyfile.write('\n% input from ' + filenm + '\n') + self.texfile.write('\n% input from ' + filenm + '\n') + feta = Feta_file(filenm) + while not feta.eof(): + line = feta.readline() + self.output_label(line) + feta.close() + + def __init__(self, lyfile_nm, texfile_nm): + self.lyfile = Ly_file(lyfile_nm, 'w') + self.texfile = Indentable_file(texfile_nm, 'w') + + + headerstr = '%% Creator: %s\n%% Automatically generated on\n%% Do not edit' % \ + (program_id() ) + + self.lyfile.write(headerstr) + self.texfile.write(headerstr) + + def close(self): + self.lyfile.close() + self.texfile.close() + + def __del__(self): + self.close() + +def today_str(): + return time.asctime(time.localtime(time.time())) + +def program_id(): + return 'mf-to-table.py version ' + version; + +def identify(): + sys.stdout.write(program_id() + '\n') + +def help(): + sys.stdout.write("Usage: mf-to-table [options] LOGFILEs\n" + + "Generate mozarella metrics table from preparated feta log\n\n" + + "Options:\n" + + " -h, --help print this help\n" + + " -l, --ly=FILE name output table\n" + + " -t, --tex=FILE name output tex chardefs\n") + + +def main(): + identify() + (options, files) = getopt.getopt( + sys.argv[1:], 'hl:t:', ['ly=', 'tex=', 'debug', 'help']) + + lyfile_nm = texfile_nm = ''; + for opt in options: + o = opt[0] + a = opt[1] + if o == '--ly' or o == '-l': + lyfile_nm = a + elif o == '--tex' or o == '-t': + texfile_nm = a + elif o== '--help' or o == '-h': + help() + elif o == '--debug': + debug_b = 1 + else: + raise getopt.error + + log_reader = Log_reader(lyfile_nm, texfile_nm) + for filenm in files: + log_reader.do_file(filenm) + log_reader.close() + + +main() diff --git a/bin/mf-to-table.py b/bin/mf-to-table.py deleted file mode 100644 index 58c96c384b..0000000000 --- a/bin/mf-to-table.py +++ /dev/null @@ -1,222 +0,0 @@ -#!@PYTHON@ - -# -# mf-to-table.py -- convert spacing info in MF logs .ly and .tex -# -# source file of the GNU LilyPond music typesetter -# -# (c) 1997 Han-Wen Nienhuys -# - -import getopt -from string import * -import regex -import regsub -import os -import sys -import time -from flower import * - -begin_autometric_re = regex.compile('@{') -end_autometric_re = regex.compile('@}') -autometric_re = regex.compile('@{\(.*\)@}') -version = '0.5' - -class Feta_file(File): - """Read Feta metrics from a metafont log-file.""" - def read_autometricline(self): - line = '' - while end_autometric_re.search(line) == -1 and not self.eof(): - suf = File.readline(self) - if begin_autometric_re.search(line) == -1: - line = '' - line = line + regsub.sub('\n','', suf) - - if self.eof(): - return '' - - return line; - def readline(self): - """return what is enclosed in one @{ @} pair""" - line = ''; - while autometric_re.search(line) == -1 and not self.eof(): - line = self.read_autometricline() - - if self.eof(): - return ''; - - return autometric_re.group(1); - def __init__(self, nm): - File.__init__(self, nm) - def do_file(infile_nm): - infile = readline(); - -# -# FIXME: should parse output for {} to do indenting. -# -class Indentable_file(File): - """Output file with support for indentation""" - def __init__(self,nm, mode): - File.__init__(self,nm,mode) - self.current_indent_ = 0 - self.delta_indent_ = 4 - def writeline (self, str): - File.write(self, str) - def writeeol(self): - File.write(self, '\n') - File.write(self, ' '* self.current_indent_) - - def indent(self): - self.current_indent_ = self.delta_indent_ + self.current_indent_; - def dedent(self): - self.current_indent_ = self.current_indent_ - self.delta_indent_; - if self.current_indent_ < 0: - raise 'Nesting!' - - def write(self, str): - lines = split(str, '\n') - for l in lines[:-1]: - self.writeline(l) - self.writeeol() - self.writeline (lines[-1]) - -class Ly_file(Indentable_file): - """extra provisions for mozarella quirks""" - def print_lit(self, str): - self.write('\"%s\"\t' % str) - - def print_f_dimen(self, f): - dimstr = '%.2f' % f - - # try to mask rounding errors - if (dimstr == '-0.00'): - dimstr = '0.00' - self.write( dimstr +'\\pt\t'); - - def print_dimen(self, str): - self.print_f_dimen(atof(str)) - - def neg_print_dimen(self, str): - self.print_f_dimen(-atof(str)); - - def def_symbol(self, lily_id, tex_id, dims): - self.print_lit(lily_id) - self.print_lit('\\\\' + tex_id) - - self.neg_print_dimen(dims [0]) - self.print_dimen(dims [1]) - self.neg_print_dimen(dims [2]) - self.print_dimen(dims [3]) - self.write('\n') - - -class Log_reader: - """Read logs, destill info, and put into output files""" - def output_label(self, line): - - if not line: - return; - tags = split(line, '@:') - label = tags[0] - name = tags[1] - ly = self.lyfile - if tags[0] == 'font': - ly.indent() - ly.write("% name=\\symboltables {\n") - self.texfile.write("% name\n") - elif label == "group": - ly.indent() - ly.print_lit(name) - ly.write(' = \\table {\n') - self.texfile.write("% " + name + "\n") - elif label == "puorg": - ly.dedent() - ly.write("}\n") - self.texfile.write("\n") - elif label == "tnof": - ly.dedent() - ly.write("% } % $name\n") - elif label == "char": - code = tags[2] - id = tags [7] - texstr = tags [8] - - ly.def_symbol(id, texstr, tags[3:7]) - - self.texfile.write("\\fetdef\\%s{%s}\n" % (texstr, code)) - else: - raise 'unknown label: ' + label - - - def do_file(self,filenm): - self.lyfile.write('\n% input from ' + filenm + '\n') - self.texfile.write('\n% input from ' + filenm + '\n') - feta = Feta_file(filenm) - while not feta.eof(): - line = feta.readline() - self.output_label(line) - feta.close() - - def __init__(self, lyfile_nm, texfile_nm): - self.lyfile = Ly_file(lyfile_nm, 'w') - self.texfile = Indentable_file(texfile_nm, 'w') - - - headerstr = '%% Creator: %s\n%% Automatically generated on\n%% Do not edit' % \ - (program_id() ) - - self.lyfile.write(headerstr) - self.texfile.write(headerstr) - - def close(self): - self.lyfile.close() - self.texfile.close() - - def __del__(self): - self.close() - -def today_str(): - return time.asctime(time.localtime(time.time())) - -def program_id(): - return 'mf-to-table.py version ' + version; - -def identify(): - sys.stdout.write(program_id() + '\n') - -def help(): - sys.stdout.write("Usage: mf-to-table [options] LOGFILEs\n" - + "Generate mozarella metrics table from preparated feta log\n\n" - + "Options:\n" - + " -h, --help print this help\n" - + " -l, --ly=FILE name output table\n" - + " -t, --tex=FILE name output tex chardefs\n") - - -def main(): - identify() - (options, files) = getopt.getopt( - sys.argv[1:], 'hl:t:', ['ly=', 'tex=', 'debug', 'help']) - - lyfile_nm = texfile_nm = ''; - for opt in options: - o = opt[0] - a = opt[1] - if o == '--ly' or o == '-l': - lyfile_nm = a - elif o == '--tex' or o == '-t': - texfile_nm = a - elif o== '--help' or o == '-h': - help() - elif o == '--debug': - debug_b = 1 - else: - raise getopt.error - - log_reader = Log_reader(lyfile_nm, texfile_nm) - for filenm in files: - log_reader.do_file(filenm) - log_reader.close() - - -main() diff --git a/bin/mudela-book.in b/bin/mudela-book.in new file mode 100644 index 0000000000..f23b428b52 --- /dev/null +++ b/bin/mudela-book.in @@ -0,0 +1,208 @@ +#!@PERL@ -w +# -*-Perl-*- +my $mudcount = 0; +my $mudela_b = 0; +my $outname = "-"; +my $outdir; +use Getopt::Long; + + +# do something, check return status +sub my_system +{ + my (@cmds) = @_; + foreach $cmd (@cmds) { + my ($ignoreret)=0; + if ( $cmd =~ /^-/ ) { + $ignoreret = 1; + $cmd = substr ($cmd, 1); + } + + my $ret = ( system ($cmd)); + if ($ret) { + if ($ignoreret) { + print STDERR "ignoring failed command \`$cmd\' (status $ret)\n"; + }else { + print STDERR "\nmudela-book: failed on command \`$cmd\' (status $ret)\n"; + exit 2; + } + } + } +} +sub gen_mufile +{ + return "$outdir/$outname$mudcount.ly"; +} + +sub gen_texbase +{ + return "$outname$mudcount.tex"; +} +sub gen_texfile +{ + return "$outdir/" . gen_texbase; +} + +sub close_mudela +{ + $mudela_b = 0; + if ($fragment_b) { + print MUDELA "}\n \\paper { linewidth = -1.0\\cm;"; + print MUDELA "castingalgorithm = \\Wordwrap; } }\n"; + $fragment_b =0; + } + if ($verbatim_b) { + print BOOK "\\end{verbatim}"; + } + if ($center_b) { + print BOOK "\\end{minipage}"; + } + if ($verbatim_b) { + print BOOK "\\interexample"; + $verbatim_b = 0; + } + close MUDELA; + my $status =0; + if ( -f gen_mufile ) { + $status = system "diff -q $outdir/book-mudela.ly " . gen_mufile; + } else { + $status = 1; + } + if ( $status ) { + rename "$outdir/book-mudela.ly", gen_mufile; + unlink gen_texfile; + } + + if ( ! -f gen_texfile) { + my_system "lilypond ". gen_mufile; + rename gen_texbase, gen_texfile; + } + + if ($center_b) { + print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n"; + } + print BOOK "\\input " . gen_texfile . "%\n"; + if ($center_b) { + print BOOK "\\end{minipage}"; + $center_b = 0; + } + print BOOK "\\postexample%\n"; +} + +sub open_mudela +{ + $mudcount++; + $mudela_b = 1 ; + open MUDELA, ">$outdir/book-mudela.ly"; + print BOOK "\\preexample%\n"; + if ($center_b) { + print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n"; + } + if ($verbatim_b) { + print BOOK "\\begin{verbatim}\n"; + } + if ($fragment_b) { + print MUDELA "\\score { \\melodic {\\octave c';"; + } else { + print MUDELA "default_paper = \\paper { \\paper_sixteen "; + print MUDELA "linewidth = 7.\\cm;}"; + } + +} + +sub begin_b +{ + my ($s) = @_; + return (/^\\begin{$s}/) ; +} + +sub end_b +{ + my ($s) = @_; + return (/^\\end{$s}/) ; +} +sub parse_mudela_opts +{ + my ($s) = @_; + $s =~ s/[\[\]]//g; + + $verbatim_b =1 if ($s =~ /verbatim/ ); + $fragment_b = 1 if ($s =~ /fragment/ ); + $center_b = 1 if ($s =~ /center/ ); +} + +sub help +{ + print "usage: convert-mudela [options] [file] +options: +--help +--outdir=DIRECTORY write all files in directory DIRECTORY +--outname=NAME use NAME as base for the output +"; + exit; +} + +sub main +{ + GetOptions( 'outdir=s', 'outname=s', 'help'); + if ( $opt_help ) { + help(); + $opt_help = 0; # to extinguish typo check. brr, what a language + } + + if (defined ($opt_outdir)) { + $outdir = $opt_outdir . "/"; + } else { + $outdir = "."; + } + + if (defined ($ARGV[0])) { + $infile = $ARGV[0] ; + } else { + $infile = "-"; + } + if (defined ($opt_outname)) { + $outname = $opt_outname ; + } else { + die "Need to have an output name, use --outname" if ( $infile eq "-"); + $outname = "$infile.tex"; + } + + my $openout ="$outdir$outname"; + if ( $infile eq $openout ) { + die "The input can't be the output\n"; + } + + open INFILE, "<$infile"; + open BOOK, ">$openout"; + while () { + if ($mudela_b) { + if (end_b "mudela") { + close_mudela; + next; + } + print MUDELA; + if ( $verbatim_b ) { + my $s = $_; + $s =~ s/\t/ /g; #shit + print BOOK $s; + } + + } else { + if (/^\\begin(\[.*\])?{mudela}/ ) { + my $opts =""; + $opts = $1 if ( defined ($1)); + + parse_mudela_opts($opts); + open_mudela; + next; + } + print BOOK; + } + } + close INFILE; + close BOOK; +} + + +main; diff --git a/bin/mudela-book.pl b/bin/mudela-book.pl deleted file mode 100644 index f23b428b52..0000000000 --- a/bin/mudela-book.pl +++ /dev/null @@ -1,208 +0,0 @@ -#!@PERL@ -w -# -*-Perl-*- -my $mudcount = 0; -my $mudela_b = 0; -my $outname = "-"; -my $outdir; -use Getopt::Long; - - -# do something, check return status -sub my_system -{ - my (@cmds) = @_; - foreach $cmd (@cmds) { - my ($ignoreret)=0; - if ( $cmd =~ /^-/ ) { - $ignoreret = 1; - $cmd = substr ($cmd, 1); - } - - my $ret = ( system ($cmd)); - if ($ret) { - if ($ignoreret) { - print STDERR "ignoring failed command \`$cmd\' (status $ret)\n"; - }else { - print STDERR "\nmudela-book: failed on command \`$cmd\' (status $ret)\n"; - exit 2; - } - } - } -} -sub gen_mufile -{ - return "$outdir/$outname$mudcount.ly"; -} - -sub gen_texbase -{ - return "$outname$mudcount.tex"; -} -sub gen_texfile -{ - return "$outdir/" . gen_texbase; -} - -sub close_mudela -{ - $mudela_b = 0; - if ($fragment_b) { - print MUDELA "}\n \\paper { linewidth = -1.0\\cm;"; - print MUDELA "castingalgorithm = \\Wordwrap; } }\n"; - $fragment_b =0; - } - if ($verbatim_b) { - print BOOK "\\end{verbatim}"; - } - if ($center_b) { - print BOOK "\\end{minipage}"; - } - if ($verbatim_b) { - print BOOK "\\interexample"; - $verbatim_b = 0; - } - close MUDELA; - my $status =0; - if ( -f gen_mufile ) { - $status = system "diff -q $outdir/book-mudela.ly " . gen_mufile; - } else { - $status = 1; - } - if ( $status ) { - rename "$outdir/book-mudela.ly", gen_mufile; - unlink gen_texfile; - } - - if ( ! -f gen_texfile) { - my_system "lilypond ". gen_mufile; - rename gen_texbase, gen_texfile; - } - - if ($center_b) { - print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n"; - } - print BOOK "\\input " . gen_texfile . "%\n"; - if ($center_b) { - print BOOK "\\end{minipage}"; - $center_b = 0; - } - print BOOK "\\postexample%\n"; -} - -sub open_mudela -{ - $mudcount++; - $mudela_b = 1 ; - open MUDELA, ">$outdir/book-mudela.ly"; - print BOOK "\\preexample%\n"; - if ($center_b) { - print BOOK "\\begin{minipage}[c]{.5\\textwidth}\n"; - } - if ($verbatim_b) { - print BOOK "\\begin{verbatim}\n"; - } - if ($fragment_b) { - print MUDELA "\\score { \\melodic {\\octave c';"; - } else { - print MUDELA "default_paper = \\paper { \\paper_sixteen "; - print MUDELA "linewidth = 7.\\cm;}"; - } - -} - -sub begin_b -{ - my ($s) = @_; - return (/^\\begin{$s}/) ; -} - -sub end_b -{ - my ($s) = @_; - return (/^\\end{$s}/) ; -} -sub parse_mudela_opts -{ - my ($s) = @_; - $s =~ s/[\[\]]//g; - - $verbatim_b =1 if ($s =~ /verbatim/ ); - $fragment_b = 1 if ($s =~ /fragment/ ); - $center_b = 1 if ($s =~ /center/ ); -} - -sub help -{ - print "usage: convert-mudela [options] [file] -options: ---help ---outdir=DIRECTORY write all files in directory DIRECTORY ---outname=NAME use NAME as base for the output -"; - exit; -} - -sub main -{ - GetOptions( 'outdir=s', 'outname=s', 'help'); - if ( $opt_help ) { - help(); - $opt_help = 0; # to extinguish typo check. brr, what a language - } - - if (defined ($opt_outdir)) { - $outdir = $opt_outdir . "/"; - } else { - $outdir = "."; - } - - if (defined ($ARGV[0])) { - $infile = $ARGV[0] ; - } else { - $infile = "-"; - } - if (defined ($opt_outname)) { - $outname = $opt_outname ; - } else { - die "Need to have an output name, use --outname" if ( $infile eq "-"); - $outname = "$infile.tex"; - } - - my $openout ="$outdir$outname"; - if ( $infile eq $openout ) { - die "The input can't be the output\n"; - } - - open INFILE, "<$infile"; - open BOOK, ">$openout"; - while () { - if ($mudela_b) { - if (end_b "mudela") { - close_mudela; - next; - } - print MUDELA; - if ( $verbatim_b ) { - my $s = $_; - $s =~ s/\t/ /g; #shit - print BOOK $s; - } - - } else { - if (/^\\begin(\[.*\])?{mudela}/ ) { - my $opts =""; - $opts = $1 if ( defined ($1)); - - parse_mudela_opts($opts); - open_mudela; - next; - } - print BOOK; - } - } - close INFILE; - close BOOK; -} - - -main; diff --git a/bin/out/dummy.dep b/bin/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/bin/ps-to-gifs.in b/bin/ps-to-gifs.in new file mode 100755 index 0000000000..dc51988675 --- /dev/null +++ b/bin/ps-to-gifs.in @@ -0,0 +1,24 @@ +#!/bin/bash + +usage() +{ + echo 'ps-to-gifs.sh FILE.ps' + exit 2; +} + +case $# in +1) + FILE=`basename $1 .ps` + ;; +*) + usage + ;; +esac + +# generate the pixmap at twice the size, then rescale (for antialiasing) +cat $1 | gs -q -sDEVICE=ppmraw \ + -sOutputFile="|pnmscale 0.5|ppmtogif > $FILE-page%d.gif" \ + -r200 -dNOPAUSE - -c quit + + + diff --git a/bin/ps-to-gifs.sh b/bin/ps-to-gifs.sh deleted file mode 100755 index dc51988675..0000000000 --- a/bin/ps-to-gifs.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -usage() -{ - echo 'ps-to-gifs.sh FILE.ps' - exit 2; -} - -case $# in -1) - FILE=`basename $1 .ps` - ;; -*) - usage - ;; -esac - -# generate the pixmap at twice the size, then rescale (for antialiasing) -cat $1 | gs -q -sDEVICE=ppmraw \ - -sOutputFile="|pnmscale 0.5|ppmtogif > $FILE-page%d.gif" \ - -r200 -dNOPAUSE - -c quit - - - diff --git a/bin/release.in b/bin/release.in new file mode 100644 index 0000000000..1ba3c6c87c --- /dev/null +++ b/bin/release.in @@ -0,0 +1,56 @@ +#!@PYTHON@ + +import sys +import os + +lilypath ='' +try: + lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' +except KeyError: + print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' + sys.exit(1) + +lilypath = lilypath + '/bin/' +sys.path.append(lilypath) + +from lilypython import * + +os.chdir(lilydirs.topdir) +os.system('make dist') +cur_ver = lilydirs.version_tuple() +print tarball(cur_ver) +try: + os.rename('out/' + tarball(cur_ver), released_tarball(cur_ver)) +except posix.error: + os.system('cp out/' + tarball(cur_ver) + ' ' + released_tarball(cur_ver)) + os.unlink('out/' + tarball (cur_ver)) + +os.chdir(lilydirs.groupdir + '/test') +os.system('pwd') +os.system('rm ../test/*gz') + +#huh? +#os.symlink(released_tarball(cur_ver), tarball(cur_ver)) + +try: + os.link(released_tarball(cur_ver), tarball(cur_ver)) +except posix.error: + os.system('cp ' + released_tarball(cur_ver) + ' '+ tarball(cur_ver)) + +# not a module, but a script (JCN) +# makepatch.main() + +# Module wherefore aren't thou Script +# A Rose by any other name would be as blonde. --HWN + +os.system('python ' + lilydirs.topdir + '/bin/make-patch.py'); + +pn = 'patch-%s' % version_tuple_to_str(cur_ver) +os.system('gzip -9 ' + pn) +pn = pn + '.gz' +rel_pn = lilydirs.release_dir + '../patches/' + pn; + +os.rename(pn, rel_pn); +os.link(rel_pn, pn); + +os.system('tar cf updeet *gz') diff --git a/bin/release.py b/bin/release.py deleted file mode 100644 index 1ba3c6c87c..0000000000 --- a/bin/release.py +++ /dev/null @@ -1,56 +0,0 @@ -#!@PYTHON@ - -import sys -import os - -lilypath ='' -try: - lilypath = os.environ['LILYPOND_SOURCEDIR'] + '/' -except KeyError: - print 'Please set LILYPOND_SOURCEDIR to the toplevel source, eg LILYPOND_SOURCEDIR=/home/foobar/lilypond-1.2.3/' - sys.exit(1) - -lilypath = lilypath + '/bin/' -sys.path.append(lilypath) - -from lilypython import * - -os.chdir(lilydirs.topdir) -os.system('make dist') -cur_ver = lilydirs.version_tuple() -print tarball(cur_ver) -try: - os.rename('out/' + tarball(cur_ver), released_tarball(cur_ver)) -except posix.error: - os.system('cp out/' + tarball(cur_ver) + ' ' + released_tarball(cur_ver)) - os.unlink('out/' + tarball (cur_ver)) - -os.chdir(lilydirs.groupdir + '/test') -os.system('pwd') -os.system('rm ../test/*gz') - -#huh? -#os.symlink(released_tarball(cur_ver), tarball(cur_ver)) - -try: - os.link(released_tarball(cur_ver), tarball(cur_ver)) -except posix.error: - os.system('cp ' + released_tarball(cur_ver) + ' '+ tarball(cur_ver)) - -# not a module, but a script (JCN) -# makepatch.main() - -# Module wherefore aren't thou Script -# A Rose by any other name would be as blonde. --HWN - -os.system('python ' + lilydirs.topdir + '/bin/make-patch.py'); - -pn = 'patch-%s' % version_tuple_to_str(cur_ver) -os.system('gzip -9 ' + pn) -pn = pn + '.gz' -rel_pn = lilydirs.release_dir + '../patches/' + pn; - -os.rename(pn, rel_pn); -os.link(rel_pn, pn); - -os.system('tar cf updeet *gz') diff --git a/bin/show-latest.in b/bin/show-latest.in new file mode 100644 index 0000000000..1c3d14dd0e --- /dev/null +++ b/bin/show-latest.in @@ -0,0 +1,53 @@ +#!@PERL@ +# -*-Perl-*- + + +$reldir="/home/hanwen/musix/releases"; + +use FileHandle; +use Getopt::Long; + +sub cmpver +{ + my(@a)= split( /\./, $a); + my(@b)= split( /\./, $b); + + for $i (0,1,2) { + return $a[$i] <=> $b[$i] if ($a[$i] != $b[$i]); + } + return $a cmp $b; +} + +my @versions; +open LS, "ls -1 $reldir|"; + +GetOptions( 'print', 'news', 'latest'); + + +while () { + $_ =~ /lilypond-([^.]+\.[^.]+\.[^.]+).tar.gz/; + push @versions, $1; +} + + +@versions = sort cmpver @versions; +my $last= (pop @versions); + + +if ( $opt_print ) { + print $last; +} + +if ( $opt_latest) { + system "rm $reldir/zZ*"; + system "> $reldir/zZ_LATEST_IS_$last"; +} +if ( $opt_news ) { + open NEWS, "tar --to-stdout -zxf $reldir/lilypond-$last.tar.gz lilypond-$last/NEWS |"; + input_record_separator NEWS "****"; + $desc = ; + chop ($desc); + close NEWS; + + print $desc; +} diff --git a/bin/show-latest.pl b/bin/show-latest.pl deleted file mode 100644 index 1c3d14dd0e..0000000000 --- a/bin/show-latest.pl +++ /dev/null @@ -1,53 +0,0 @@ -#!@PERL@ -# -*-Perl-*- - - -$reldir="/home/hanwen/musix/releases"; - -use FileHandle; -use Getopt::Long; - -sub cmpver -{ - my(@a)= split( /\./, $a); - my(@b)= split( /\./, $b); - - for $i (0,1,2) { - return $a[$i] <=> $b[$i] if ($a[$i] != $b[$i]); - } - return $a cmp $b; -} - -my @versions; -open LS, "ls -1 $reldir|"; - -GetOptions( 'print', 'news', 'latest'); - - -while () { - $_ =~ /lilypond-([^.]+\.[^.]+\.[^.]+).tar.gz/; - push @versions, $1; -} - - -@versions = sort cmpver @versions; -my $last= (pop @versions); - - -if ( $opt_print ) { - print $last; -} - -if ( $opt_latest) { - system "rm $reldir/zZ*"; - system "> $reldir/zZ_LATEST_IS_$last"; -} -if ( $opt_news ) { - open NEWS, "tar --to-stdout -zxf $reldir/lilypond-$last.tar.gz lilypond-$last/NEWS |"; - input_record_separator NEWS "****"; - $desc = ; - chop ($desc); - close NEWS; - - print $desc; -} diff --git a/bin/wild-perl b/bin/wild-perl new file mode 100644 index 0000000000..83c2c82966 --- /dev/null +++ b/bin/wild-perl @@ -0,0 +1,34 @@ +# -*- perl -*- +##! @PERL@ + +@ignorestuff = (); + +sub ignore_query +{ + my ($testfile) = @_; + return !grep(/$testfile/, @ignorestuff); +} + +while (<>) { + $line = $_; + if ($line =~ /^ *nowildcard: *(.*)$/) { + $ignore = $1; + @ignorelist = split (/ +/, $ignore); + foreach $i (@ignorelist) { + print "# ignoring wildcards for \`$i\'\n"; + push @ignorestuff, $i; # concat ? uh? + } + + + } elsif ($line =~ /(.*)\$\(wildcard(.*)\)(.*)/) { + $wild = $2; + + @expanded = glob ($wild); + + @expanded = grep {ignore_query($_);} @expanded; + + print $1 . join (' ', @expanded) . $3 . "\n"; + } else { + print $line; + } +} diff --git a/configure b/configure index 3cd69740dd..30e3032d68 100755 --- a/configure +++ b/configure @@ -29,8 +29,6 @@ ac_help="$ac_help enable-tex-dir=DIR set the directory to put LilyPond TeX files in. " ac_help="$ac_help enable-mf-dir=DIR set the directory to put LilyPond MetaFont files in. " -ac_help="$ac_help - enable-out-dir set the directory for machine generated files. Default out or out-HOST" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -463,81 +461,964 @@ if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo > confdefs.h + +# A filename unique to this package, relative to the directory that +# configure is in, which we can look for to find out if srcdir is correct. +ac_unique_file=flower/choleski.cc + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then its parent. + ac_prog=$0 + ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` + test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + srcdir=$ac_confdir + if test ! -r $srcdir/$ac_unique_file; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r $srcdir/$ac_unique_file; then + if test "$ac_srcdir_defaulted" = yes; then + { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + else + { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + fi +fi +srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` + +# Prefer explicitly selected file to automatically selected ones. +if test -z "$CONFIG_SITE"; then + if test "x$prefix" != xNONE; then + CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" + else + CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" + fi +fi +for ac_site_file in $CONFIG_SITE; do + if test -r "$ac_site_file"; then + echo "loading site script $ac_site_file" + . "$ac_site_file" + fi +done + +if test -r "$cache_file"; then + echo "loading cache $cache_file" + . $cache_file +else + echo "creating cache $cache_file" + > $cache_file +fi + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then + # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. + if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then + ac_n= ac_c=' +' ac_t=' ' + else + ac_n=-n ac_c= ac_t= + fi +else + ac_n= ac_c='\c' ac_t= +fi + + + +. ./VERSION +FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL +if test x$MY_PATCH_LEVEL != x; then + FULL_VERSION=$FULL_VERSION.$MY_PATCH_LEVEL +fi +ac_aux_dir= +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:576: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + for ac_prog in ginstall installbsd scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + # OSF/1 installbsd also uses dspmsg, but is usable. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL="$ac_cv_path_install" + else + # As a last resort, use the slow shell script. We don't cache a + # path for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the path is relative. + INSTALL="$ac_install_sh" + fi +fi +echo "$ac_t""$INSTALL" 1>&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' + + +PACKAGE=lilypond + +VERSION=$FULL_VERSION + +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } +fi +cat >> confdefs.h <> confdefs.h <&6 +echo "configure:645: checking whether build environment is sane" >&5 +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + test "$2" = conftestfile + ) +then + # Ok. + : +else + { echo "configure: error: newly created file is older than distributed files! +Check your system clock" 1>&2; exit 1; } +fi +rm -f conftest* +echo "$ac_t""yes" 1>&6 +if test "$program_transform_name" = s,x,x,; then + program_transform_name= +else + # Double any \ or $. echo might interpret backslashes. + cat <<\EOF_SED > conftestsed +s,\\,\\\\,g; s,\$,$$,g +EOF_SED + program_transform_name="`echo $program_transform_name|sed -f conftestsed`" + rm -f conftestsed +fi +test "$program_prefix" != NONE && + program_transform_name="s,^,${program_prefix},; $program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" + +# sed with no file args requires a program. +test "$program_transform_name" = "" && program_transform_name="s,x,x," + +missing_dir=`cd $ac_aux_dir && pwd` +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:692: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:705: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:718: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:731: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:744: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 +echo "configure:757: checking whether ${MAKE-make} sets \${MAKE}" >&5 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftestmake <<\EOF +all: + @echo 'ac_maketemp="${MAKE}"' +EOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` +if test -n "$ac_maketemp"; then + eval ac_cv_prog_make_${ac_make}_set=yes +else + eval ac_cv_prog_make_${ac_make}_set=no +fi +rm -f conftestmake +fi +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then + echo "$ac_t""yes" 1>&6 + SET_MAKE= +else + echo "$ac_t""no" 1>&6 + SET_MAKE="MAKE=${MAKE-make}" +fi + + +# Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:787: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:816: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + ac_prog_rejected=no + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + break + fi + done + IFS="$ac_save_ifs" +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# -gt 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + set dummy "$ac_dir/$ac_word" "$@" + shift + ac_cv_prog_CC="$@" + fi +fi +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } +fi + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:864: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:898: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:903: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:927: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-O2" + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + +for ac_prog in $CCC c++ g++ gcc CC cxx cc++ +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:959: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CXX="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CXX="$ac_cv_prog_CXX" +if test -n "$CXX"; then + echo "$ac_t""$CXX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CXX" && break +done +test -n "$CXX" || CXX="gcc" + + +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:990: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cxx_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cxx_cross=no + else + ac_cv_prog_cxx_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cxx_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6 +if test $ac_cv_prog_cxx_works = no; then + { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1030: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 +cross_compiling=$ac_cv_prog_cxx_cross + +echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 +echo "configure:1035: checking whether we are using GNU C++" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.C <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gxx=yes +else + ac_cv_prog_gxx=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gxx" 1>&6 + +if test $ac_cv_prog_gxx = yes; then + GXX=yes + ac_test_CXXFLAGS="${CXXFLAGS+set}" + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS= + echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 +echo "configure:1059: checking whether ${CXX-g++} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.cc +if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes +else + ac_cv_prog_cxx_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6 + if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" + elif test $ac_cv_prog_cxx_g = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-O2" + fi +else + GXX= + test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" +fi + +# Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1089: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +# ugh, automake: we want (and check for) bison +for ac_prog in 'bison -y' byacc +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1122: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$YACC"; then + ac_cv_prog_YACC="$YACC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_YACC="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +YACC="$ac_cv_prog_YACC" +if test -n "$YACC"; then + echo "$ac_t""$YACC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$YACC" && break +done +test -n "$YACC" || YACC="yacc" + + +# ugh, automake: we want (and check for) flex +# Extract the first word of "flex", so it can be a program name with args. +set dummy flex; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1156: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$LEX"; then + ac_cv_prog_LEX="$LEX" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_LEX="flex" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_LEX" && ac_cv_prog_LEX="lex" +fi +fi +LEX="$ac_cv_prog_LEX" +if test -n "$LEX"; then + echo "$ac_t""$LEX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$LEXLIB" +then + case "$LEX" in + flex*) ac_lib=fl ;; + *) ac_lib=l ;; + esac + echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6 +echo "configure:1189: checking for yywrap in -l$ac_lib" >&5 +ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-l$ac_lib $LIBS" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + LEXLIB="-l$ac_lib" +else + echo "$ac_t""no" 1>&6 +fi -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=flower/choleski.cc +fi -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi + +echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 +echo "configure:1232: checking how to run the C preprocessor" >&5 +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then +if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 else - ac_srcdir_defaulted=no + # This must be in double quotes, not single quotes, because CPP may get + # substituted into the Makefile and "${CC-cc}" will confuse make. + CPP="${CC-cc} -E" + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. + cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:1253: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP="${CC-cc} -E -traditional-cpp" + cat > conftest.$ac_ext < +Syntax Error +EOF +ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" +{ (eval echo configure:1270: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_err=`grep -v '^ *+' conftest.out` +if test -z "$ac_err"; then + : +else + echo "$ac_err" >&5 + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + CPP=/lib/cpp fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } - else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } - fi +rm -f conftest* fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi +rm -f conftest* + ac_cv_prog_CPP="$CPP" fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" - . "$ac_site_file" - fi -done + CPP="$ac_cv_prog_CPP" +else + ac_cv_prog_CPP="$CPP" +fi +echo "$ac_t""$CPP" 1>&6 -if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file +echo $ac_n "checking lex output file root""... $ac_c" 1>&6 +echo "configure:1293: checking lex output file root" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_lex_root'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 else - echo "creating cache $cache_file" - > $cache_file + # The minimal lex program is just a single line: %%. But some broken lexes +# (Solaris, I think it was) want two %% lines, so accommodate them. +echo '%% +%%' | $LEX +if test -f lex.yy.c; then + ac_cv_prog_lex_root=lex.yy +elif test -f lexyy.c; then + ac_cv_prog_lex_root=lexyy +else + { echo "configure: error: cannot find output from $LEX; giving up" 1>&2; exit 1; } +fi fi -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross +echo "$ac_t""$ac_cv_prog_lex_root" 1>&6 +LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi +echo $ac_n "checking whether yytext is a pointer""... $ac_c" 1>&6 +echo "configure:1314: checking whether yytext is a pointer" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_lex_yytext_pointer'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 else - ac_n= ac_c='\c' ac_t= + # POSIX says lex can declare yytext either as a pointer or an array; the +# default is implementation-dependent. Figure out which it is, since +# not all implementations provide the %pointer and %array declarations. +ac_cv_prog_lex_yytext_pointer=no +echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c +ac_save_LIBS="$LIBS" +LIBS="$LIBS $LEXLIB" +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + rm -rf conftest* + ac_cv_prog_lex_yytext_pointer=yes +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 fi +rm -f conftest* +LIBS="$ac_save_LIBS" +rm -f "${LEX_OUTPUT_ROOT}.c" + +fi + +echo "$ac_t""$ac_cv_prog_lex_yytext_pointer" 1>&6 +if test $ac_cv_prog_lex_yytext_pointer = yes; then + cat >> confdefs.h <<\EOF +#define YYTEXT_POINTER 1 +EOF + +fi + +# ugh, ugh +ac_cv_prog_lex_root=lex.yy +missing_dir=`cd $ac_aux_dir && pwd` +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:1360: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:1373: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:1386: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:1399: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:1412: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi if test x$srcdir != x.; then @@ -550,13 +1431,6 @@ if test x$srcdir != x.; then fi -# if given here, these vars are initted at the checking point. -if test x$host = xNONE; then - OUTDIR_NAME=${OUTDIR_NAME-"out"} -else - OUTDIR_NAME=${OUTDIR_NAME-"out-$host"} -fi - printing_b=no checking_b=yes debug_b=yes @@ -643,14 +1517,6 @@ else fi -# Check whether --enable-out-dir or --disable-out-dir was given. -if test "${enable_out_dir+set}" = set; then - enableval="$enable_out_dir" - OUTDIR_NAME=$enableval - -fi - - if test $profile_b = yes; then EXTRA_LIBES="-pg" DEFINES="$DEFINES -pg" @@ -694,7 +1560,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:698: checking for $ac_word" >&5 +echo "configure:1564: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -725,7 +1591,7 @@ test -n "$CXX" || CXX="gcc" echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:729: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 +echo "configure:1595: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -735,11 +1601,11 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then ac_cv_prog_cxx_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -759,12 +1625,12 @@ if test $ac_cv_prog_cxx_works = no; then { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:763: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1629: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 cross_compiling=$ac_cv_prog_cxx_cross echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 -echo "configure:768: checking whether we are using GNU C++" >&5 +echo "configure:1634: checking whether we are using GNU C++" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -773,7 +1639,7 @@ else yes; #endif EOF -if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:777: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1643: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gxx=yes else ac_cv_prog_gxx=no @@ -788,7 +1654,7 @@ if test $ac_cv_prog_gxx = yes; then ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS= echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 -echo "configure:792: checking whether ${CXX-g++} accepts -g" >&5 +echo "configure:1658: checking whether ${CXX-g++} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -818,7 +1684,7 @@ fi # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:822: checking for $ac_word" >&5 +echo "configure:1688: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -844,25 +1710,6 @@ else echo "$ac_t""no" 1>&6 fi -ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/install-sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f $ac_dir/install.sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } -fi -ac_config_guess=$ac_aux_dir/config.guess -ac_config_sub=$ac_aux_dir/config.sub -ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: @@ -874,7 +1721,7 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:878: checking for a BSD compatible install" >&5 +echo "configure:1725: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -928,7 +1775,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:932: checking for $ac_word" >&5 +echo "configure:1779: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_TAR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -962,7 +1809,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:966: checking for $ac_word" >&5 +echo "configure:1813: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1021,7 +1868,6 @@ test -n "$FIND" || FIND="error" - for ac_prog in bison @@ -1029,7 +1875,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1033: checking for $ac_word" >&5 +echo "configure:1879: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1063,7 +1909,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1067: checking for $ac_word" >&5 +echo "configure:1913: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1097,7 +1943,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1101: checking for $ac_word" >&5 +echo "configure:1947: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1129,7 +1975,7 @@ test -n "$MAKE" || MAKE="error" # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1133: checking for $ac_word" >&5 +echo "configure:1979: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1161,7 +2007,7 @@ fi # Extract the first word of "python", so it can be a program name with args. set dummy python; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1165: checking for $ac_word" >&5 +echo "configure:2011: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_PYTHON'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1190,39 +2036,73 @@ else echo "$ac_t""no" 1>&6 fi +for ac_prog in pod2html +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:2045: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_POD2HTML'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$POD2HTML"; then + ac_cv_prog_POD2HTML="$POD2HTML" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_POD2HTML="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +POD2HTML="$ac_cv_prog_POD2HTML" +if test -n "$POD2HTML"; then + echo "$ac_t""$POD2HTML" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$POD2HTML" && break +done +test -n "$POD2HTML" || POD2HTML="error" + for ac_prog in pod2man do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1199: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_PODMAN'+set}'`\" = set"; then +echo "configure:2079: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_POD2MAN'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else - if test -n "$PODMAN"; then - ac_cv_prog_PODMAN="$PODMAN" # Let the user override the test. + if test -n "$POD2MAN"; then + ac_cv_prog_POD2MAN="$POD2MAN" # Let the user override the test. else IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f $ac_dir/$ac_word; then - ac_cv_prog_PODMAN="$ac_prog" + ac_cv_prog_POD2MAN="$ac_prog" break fi done IFS="$ac_save_ifs" fi fi -PODMAN="$ac_cv_prog_PODMAN" -if test -n "$PODMAN"; then - echo "$ac_t""$PODMAN" 1>&6 +POD2MAN="$ac_cv_prog_POD2MAN" +if test -n "$POD2MAN"; then + echo "$ac_t""$POD2MAN" 1>&6 else echo "$ac_t""no" 1>&6 fi -test -n "$PODMAN" && break +test -n "$POD2MAN" && break done -test -n "$PODMAN" || PODMAN="error" +test -n "$POD2MAN" || POD2MAN="error" @@ -1231,7 +2111,7 @@ if test "x$TEXPREFIX" = xauto ; then echo $ac_n "checking TeX/MF root dir directory""... $ac_c" 1>&6 -echo "configure:1235: checking TeX/MF root dir directory" >&5 +echo "configure:2115: checking TeX/MF root dir directory" >&5 find_root_prefix="$prefix" @@ -1267,37 +2147,16 @@ else find_texprefix=$TEXPREFIX fi -if test "x$MFDIR" = xauto; then - - - - echo $ac_n "checking MF input directory""... $ac_c" 1>&6 -echo "configure:1276: checking MF input directory" >&5 - find_dirdir=`(cd $find_texprefix; - $FIND ./ -type d -a -name source -print |sort|head -1|sed 's#^\./##')` - - - if test "x$find_dirdir" = x; then - find_dirdir="/source"; - - echo "configure: warning: Cannot determine MF input subdirectory. Please set from command-line" 1>&2 - warn_b=yes - - true - fi - MFDIR=$find_dirdir - echo "$ac_t""$find_texprefix/$find_dirdir" 1>&6 - - MFDIR="$TEXPREFIX/$MFDIR" - -fi +# if test "x$MFDIR" = xauto; then +# AC_MF_SUBDIR(MFDIR) +# fi if test "x$TEXDIR" = xauto ; then echo $ac_n "checking TeX input directory""... $ac_c" 1>&6 -echo "configure:1301: checking TeX input directory" >&5 +echo "configure:2160: checking TeX input directory" >&5 find_dirdir=`(cd $find_texprefix; $FIND ./ -type d -a -name tex -print |sort|head -1|sed 's#^\./##')` @@ -1318,8 +2177,10 @@ echo "configure:1301: checking TeX input directory" >&5 fi - - +# AC_JUNK_ARGS( [if test "x$MFDIR" = xauto; then +# AC_MF_SUBDIR(MFDIR) +# fi] +# ) if test $MAKE = "error" @@ -1398,18 +2259,20 @@ if test $BISON != "error"; then fi fi -if $CXX --version | grep '2\.7' > /dev/null + +# ugh autoconf +if $CXX --version | grep '2\.[78]' > /dev/null then true else - echo "configure: warning: can't find g++ 2.7" 1>&2 + echo "configure: warning: can't find g++ 2.7 or 2.8" 1>&2 warn_b=yes fi echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6 -echo "configure:1413: checking how to run the C++ preprocessor" >&5 +echo "configure:2276: checking how to run the C++ preprocessor" >&5 if test -z "$CXXCPP"; then if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1422,12 +2285,12 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L cross_compiling=$ac_cv_prog_cxx_cross CXXCPP="${CXX-g++} -E" cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2294: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then : @@ -1447,17 +2310,17 @@ echo "$ac_t""$CXXCPP" 1>&6 ac_safe=`echo "FlexLexer.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for FlexLexer.h""... $ac_c" 1>&6 -echo "configure:1451: checking for FlexLexer.h" >&5 +echo "configure:2314: checking for FlexLexer.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1461: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2324: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out` if test -z "$ac_err"; then rm -rf conftest* @@ -1483,15 +2346,19 @@ else fi -for a in `find . -type d -and -not -name 'out*' -print`; do - if test ! -d $a/$OUTDIR_NAME; then - mkdir $a/$OUTDIR_NAME - fi -done - subdirs="flower" +cat >> confdefs.h <> lib/config.hh trap '' 1 2 15 cat > confcache <<\EOF @@ -1556,19 +2423,7 @@ fi trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -cat > conftest.defs <<\EOF -s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g -s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g -s%\[%\\&%g -s%\]%\\&%g -s%\$%$$%g -EOF -DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` -rm -f conftest.defs - +DEFS=-DHAVE_CONFIG_H # Without the "./", some shells look in PATH for config.status. : ${CONFIG_STATUS=./config.status} @@ -1606,8 +2461,7 @@ done ac_given_srcdir=$srcdir ac_given_INSTALL="$INSTALL" -trap 'rm -fr `echo "make/$OUTDIR_NAME/Configure_variables.make:make/Configure_variables.make.in - Makefile:make/Toplevel.make.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +trap 'rm -fr `echo "bin/Makefile lib/include/Makefile lib/Makefile lily/include/Makefile lily/Makefile mf/Makefile mi2mu/include/Makefile mi2mu/Makefile debian/Makefile Documentation/Makefile init/Makefile input/Makefile tex/Makefile make/Makefile mutopia/J.S.Bach/Makefile mutopia/Makefile Makefile bin/add-URLs bin/clean-diaper bin/clean-embeds bin/clean-fonts bin/conflily bin/convert-mudela bin/cvm bin/find-typenames bin/foo bin/genheader bin/ly2dvi bin/make-docxx bin/make-examples bin/make-patch bin/make-version bin/make-website bin/mf-deps bin/mf-to-table bin/mudela-book bin/ps-to-gifs bin/release bin/show-latest lib/config.hh:lib/config.hh.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then @@ -1765,11 +2632,120 @@ s%@INSTALL@%$INSTALL%g fi; done rm -f conftest.s* +# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where +# NAME is the cpp macro being defined and VALUE is the value it is being given. +# +# ac_d sets the value in "#define NAME VALUE" lines. +ac_dA='s%^\([ ]*\)#\([ ]*define[ ][ ]*\)' +ac_dB='\([ ][ ]*\)[^ ]*%\1#\2' +ac_dC='\3' +ac_dD='%g' +# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE". +ac_uA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_uB='\([ ]\)%\1#\2define\3' +ac_uC=' ' +ac_uD='\4%g' +# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE". +ac_eA='s%^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' +ac_eB='$%\1#\2define\3' +ac_eC=' ' +ac_eD='%g' + +if test "${CONFIG_HEADERS+set}" != set; then +EOF +cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +fi +for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then + # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". + case "$ac_file" in + *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` + ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + *) ac_file_in="${ac_file}.in" ;; + esac + + echo creating $ac_file + + rm -f conftest.frag conftest.in conftest.out + ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + cat $ac_file_inputs > conftest.in + +EOF + +# Transform confdefs.h into a sed script conftest.vals that substitutes +# the proper values into config.h.in to produce config.h. And first: +# Protect against being on the right side of a sed subst in config.status. +# Protect against being in an unquoted here document in config.status. +rm -f conftest.vals +cat > conftest.hdr <<\EOF +s/[\\&%]/\\&/g +s%[\\$`]%\\&%g +s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp +s%ac_d%ac_u%gp +s%ac_u%ac_e%gp +EOF +sed -n -f conftest.hdr confdefs.h > conftest.vals +rm -f conftest.hdr + +# This sed command replaces #undef with comments. This is necessary, for +# example, in the case of _POSIX_SOURCE, which is predefined and required +# on some systems where configure will not decide to define it. +cat >> conftest.vals <<\EOF +s%^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */% +EOF + +# Break up conftest.vals because some shells have a limit on +# the size of here documents, and old seds have small limits too. + +rm -f conftest.tail +while : +do + ac_lines=`grep -c . conftest.vals` + # grep -c gives empty output for an empty file on some AIX systems. + if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi + # Write a limited-size here document to conftest.frag. + echo ' cat > conftest.frag <> $CONFIG_STATUS + sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS + echo 'CEOF + sed -f conftest.frag conftest.in > conftest.out + rm -f conftest.in + mv conftest.out conftest.in +' >> $CONFIG_STATUS + sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail + rm -f conftest.vals + mv conftest.tail conftest.vals +done +rm -f conftest.vals + +cat >> $CONFIG_STATUS <<\EOF + rm -f conftest.frag conftest.h + echo "/* $ac_file. Generated automatically by configure. */" > conftest.h + cat conftest.in >> conftest.h + rm -f conftest.in + if cmp -s $ac_file conftest.h 2>/dev/null; then + echo "$ac_file is unchanged" + rm -f conftest.h + else + # Remove last slash and all that follows it. Not all systems have dirname. + ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` + if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then + # The file is in a subdirectory. + test ! -d "$ac_dir" && mkdir "$ac_dir" + fi + rm -f $ac_file + mv conftest.h $ac_file + fi +fi; done + EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +test -z "$CONFIG_HEADERS" || echo timestamp > lib/stamp-h exit 0 EOF @@ -1875,34 +2851,6 @@ if test "$no_recursion" != yes; then fi -touch make/$OUTDIR_NAME/Site.make - -cat << END -For making everything, do: - - make # GNU make - -or if you used --outdir=blabla +# ugh +chmod 755 bin/add-URLs bin/clean-diaper bin/clean-embeds bin/clean-fonts bin/conflily bin/convert-mudela bin/cvm bin/find-typenames bin/foo bin/genheader bin/ly2dvi bin/make-docxx bin/make-examples bin/make-patch bin/make-version bin/make-website bin/mf-deps bin/mf-to-table bin/mudela-book bin/ps-to-gifs bin/release bin/show-latest - make OUTDIR_NAME=blabla - -If you want to make site-wide extensions to the makefiles, please use - - make/$OUTDIR_NAME/Site.make - -END - -if test x$warn_b = "xyes" ; then -cat < /dev/null + +# ugh autoconf +changequote(<<, >>)dnl +if $CXX --version | grep '2\.[78]' > /dev/null +changequote([, ])dnl then true else - AC_LILY_WARN(can't find g++ 2.7) + AC_LILY_WARN(can't find g++ 2.7 or 2.8) fi AC_CHECK_HEADER(FlexLexer.h, true, AC_LILY_WARN(can't find flex header. Please install Flex headers correctly)) -for a in `find . -type d -and -not -name 'out*' -print`; do - if test ! -d $a/$OUTDIR_NAME; then - mkdir $a/$OUTDIR_NAME - fi -done - AC_CONFIG_SUBDIRS(flower) - -AC_OUTPUT(make/$OUTDIR_NAME/Configure_variables.make:make/Configure_variables.make.in - Makefile:make/Toplevel.make.in) - -touch make/$OUTDIR_NAME/Site.make - -cat << END -For making everything, do: +AC_DEFINE_UNQUOTED(TOPLEVEL_VERSION, "${FULL_VERSION}") - make # GNU make - -or if you used --outdir=blabla - - make OUTDIR_NAME=blabla +touch lib/stamp-h.in +AM_CONFIG_HEADER(lib/config.hh:lib/config.hh.in) +echo \#define TOPLEVEL_VERSION \"$FULL_VERSION\" >> lib/config.hh -If you want to make site-wide extensions to the makefiles, please use +AC_OUTPUT(bin/Makefile lib/include/Makefile lib/Makefile lily/include/Makefile lily/Makefile mf/Makefile mi2mu/include/Makefile mi2mu/Makefile debian/Makefile Documentation/Makefile init/Makefile input/Makefile tex/Makefile make/Makefile mutopia/J.S.Bach/Makefile mutopia/Makefile Makefile bin/add-URLs bin/clean-diaper bin/clean-embeds bin/clean-fonts bin/conflily bin/convert-mudela bin/cvm bin/find-typenames bin/foo bin/genheader bin/ly2dvi bin/make-docxx bin/make-examples bin/make-patch bin/make-version bin/make-website bin/mf-deps bin/mf-to-table bin/mudela-book bin/ps-to-gifs bin/release bin/show-latest) - make/$OUTDIR_NAME/Site.make - -END +# ugh +chmod 755 bin/add-URLs bin/clean-diaper bin/clean-embeds bin/clean-fonts bin/conflily bin/convert-mudela bin/cvm bin/find-typenames bin/foo bin/genheader bin/ly2dvi bin/make-docxx bin/make-examples bin/make-patch bin/make-version bin/make-website bin/mf-deps bin/mf-to-table bin/mudela-book bin/ps-to-gifs bin/release bin/show-latest -if test x$warn_b = "xyes" ; then -cat < /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-generic + +clean: clean-generic mostlyclean + +distclean: distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-generic distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/debian/out/dummy.dep b/debian/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/flower/AUTHORS b/flower/AUTHORS new file mode 100644 index 0000000000..9d9d19a2d8 --- /dev/null +++ b/flower/AUTHORS @@ -0,0 +1 @@ +see ../AUTHORS diff --git a/flower/COPYING b/flower/COPYING new file mode 100644 index 0000000000..a2a0122637 --- /dev/null +++ b/flower/COPYING @@ -0,0 +1 @@ +see ../COPYING diff --git a/flower/ChangeLog b/flower/ChangeLog new file mode 100644 index 0000000000..e1b28ead74 --- /dev/null +++ b/flower/ChangeLog @@ -0,0 +1 @@ +oeps: no more details than NEWS diff --git a/flower/Flower-flags.make.in b/flower/Flower-flags.make.in deleted file mode 100644 index adf1536750..0000000000 --- a/flower/Flower-flags.make.in +++ /dev/null @@ -1,3 +0,0 @@ -MODULE_CXXFLAGS = @MODULE_CXXFLAGS@ -MODULE_LDFLAGS = @MODULE_LDFLAGS@ -LIB_SUFFIX = @LIB_SUFFIX@ diff --git a/flower/INSTALL b/flower/INSTALL new file mode 100644 index 0000000000..28d72f900e --- /dev/null +++ b/flower/INSTALL @@ -0,0 +1 @@ +see ../INSTALL diff --git a/flower/Makefile b/flower/Makefile deleted file mode 100644 index c46fed65eb..0000000000 --- a/flower/Makefile +++ /dev/null @@ -1,81 +0,0 @@ -# -# project FlowerSoft C++ library -# title top level makefile for FlowerLib -# file flower/Makefile -# -# Copyright (c) 1997 by -# Jan Nieuwenhuizen -# Han-Wen Nienhuys -# ...your sort order here, or how to comment-out a comment - -# subdir level: -# -depth = .. -# - -# identify module: -# -NAME = flower -MODULE_NAME = flower -# -# edit VERSION only -include ./$(depth)/VERSION -include ./$(depth)/flower/VERSION - -# generic variables: -# -include ./$(depth)/make/Variables.make -include ./$(depth)/make/Files.make - -include $(flowerout)/Flower-flags.make - - -# -# descent order into subdirectories: -# -SUBDIRS = include test -# - -# list of distribution files: -# -SCRIPTS = -README_FILES = ONEWS NEWS README TODO -EXTRA_DISTFILES= aclocal.m4 configure config.hh.in configure.in VERSION $(README_FILES) $(SCRIPTS) Flower-flags.make.in -# - - -# generic targets and rules: -# -include ./$(depth)/make/Targets.make -include ./$(depth)/make/Rules.make -# - -default: the-lib - -THE_LIB=$(outdir)/$(LIB_PREFIX)flower$(LIB_SUFFIX) -the-lib: $(THE_LIB) - -# version: -# - -localdist: configure - --include /dev/null $(DEPFILES) -# - -localdistclean: - rm -f config.cache config.status config.log - -localinstall: $(LIBFLOWER) -ifeq ($(LIB_SUFFIX),.so) - $(INSTALL) -d $(libdir) - $(INSTALL) $(LIBFLOWER).$(VERSION) $(libdir) - ln -sf $(LIB_PREFIX)flower$(LIB_SUFFIX).$(VERSION) $(libdir)/$(LIB_PREFIX)flower$(LIB_SUFFIX).$(MAJOR_VERSION) - ln -sf $(LIB_PREFIX)flower$(LIB_SUFFIX).$(VERSION) $(libdir)/$(LIB_PREFIX)flower$(LIB_SUFFIX) -endif - -localuninstall: - rm -f $(libdir)/libflower.{so*,a} - - -$(outdir)/flower-version.o: $(outdir)/version.hh diff --git a/flower/Makefile.am b/flower/Makefile.am new file mode 100644 index 0000000000..e0446e0081 --- /dev/null +++ b/flower/Makefile.am @@ -0,0 +1,23 @@ +# Automatically generated from ./lilypond-0.1.49/flower/Makefile.am.wild by bin/autowild +# Do not edit +# project FlowerSoft C++ library +# title top level makefile for FlowerLib +# file flower/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# ...your sort order here, or how to comment-out a comment + +SUBDIRS = include test + +lib_LIBRARIES = libflower.a +# lib_LIBRARIES = libflower.la + +README_FILES = ONEWS NEWS README TODO VERSION +EXTRA_DIST = Makefile.am.wild aclocal.m4 configure config.hh.in configure.in $(README_FILES) + +libflower_a_SOURCES = choleski.cc cpu-timer.cc data-file.cc diagonal-storage.cc dictionary.cc directed-graph.cc dstream.cc flower-debug.cc flower-version.cc full-storage.cc interval.cc lgetopt.cc libc-extension.cc matrix-debug.cc matrix-storage.cc matrix.cc nscalar.cc path.cc rational.cc scalar.cc string-convert.cc string.cc stringutil.cc text-db.cc text-stream.cc unionfind.cc vector.cc + +INCLUDES = -Iinclude + diff --git a/flower/Makefile.am.wild b/flower/Makefile.am.wild new file mode 100644 index 0000000000..f19c6ab501 --- /dev/null +++ b/flower/Makefile.am.wild @@ -0,0 +1,21 @@ +# project FlowerSoft C++ library +# title top level makefile for FlowerLib +# file flower/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# ...your sort order here, or how to comment-out a comment + +SUBDIRS = include test + +lib_LIBRARIES = libflower.a +# lib_LIBRARIES = libflower.la + +README_FILES = ONEWS NEWS README TODO VERSION +EXTRA_DIST = Makefile.am.wild aclocal.m4 configure config.hh.in configure.in $(README_FILES) + +libflower_a_SOURCES = $(wildcard *.cc) + +INCLUDES = -Iinclude + diff --git a/flower/Makefile.in b/flower/Makefile.in new file mode 100644 index 0000000000..4d725bd520 --- /dev/null +++ b/flower/Makefile.in @@ -0,0 +1,459 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./flower/Makefile.am.wild by bin/autowild +# Do not edit +# project FlowerSoft C++ library +# title top level makefile for FlowerLib +# file flower/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# ...your sort order here, or how to comment-out a comment + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = . + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +CC = @CC@ +CXX = @CXX@ +LIB_SUFFIX = @LIB_SUFFIX@ +MAKEINFO = @MAKEINFO@ +MODULE_CXXFLAGS = @MODULE_CXXFLAGS@ +MODULE_LDFLAGS = @MODULE_LDFLAGS@ +PACKAGE = @PACKAGE@ +RANLIB = @RANLIB@ +VERSION = @VERSION@ + +SUBDIRS = include test + +lib_LIBRARIES = libflower.a +# lib_LIBRARIES = libflower.la + +README_FILES = ONEWS NEWS README TODO VERSION +EXTRA_DIST = Makefile.am.wild aclocal.m4 configure config.hh.in configure.in $(README_FILES) + +libflower_a_SOURCES = choleski.cc cpu-timer.cc data-file.cc diagonal-storage.cc dictionary.cc directed-graph.cc dstream.cc flower-debug.cc flower-version.cc full-storage.cc interval.cc lgetopt.cc libc-extension.cc matrix-debug.cc matrix-storage.cc matrix.cc nscalar.cc path.cc rational.cc scalar.cc string-convert.cc string.cc stringutil.cc text-db.cc text-stream.cc unionfind.cc vector.cc + +INCLUDES = -Iinclude +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +CONFIG_HEADER = config.hh +CONFIG_CLEAN_FILES = +LIBRARIES = $(lib_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I. +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +libflower_a_LIBADD = +libflower_a_OBJECTS = choleski.o cpu-timer.o data-file.o \ +diagonal-storage.o dictionary.o directed-graph.o dstream.o \ +flower-debug.o flower-version.o full-storage.o interval.o lgetopt.o \ +libc-extension.o matrix-debug.o matrix-storage.o matrix.o nscalar.o \ +path.o rational.o scalar.o string-convert.o string.o stringutil.o \ +text-db.o text-stream.o unionfind.o vector.o +AR = ar +CXXFLAGS = @CXXFLAGS@ +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS) +CXXLINK = $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = README AUTHORS COPYING ChangeLog INSTALL Makefile.am \ +Makefile.in NEWS TODO aclocal.m4 config.hh.in configure configure.in \ +missing mkinstalldirs stamp-h.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP = --best +DEP_FILES = .deps/choleski.P .deps/cpu-timer.P .deps/data-file.P \ +.deps/diagonal-storage.P .deps/dictionary.P .deps/directed-graph.P \ +.deps/dstream.P .deps/flower-debug.P .deps/flower-version.P \ +.deps/full-storage.P .deps/interval.P .deps/lgetopt.P \ +.deps/libc-extension.P .deps/matrix-debug.P .deps/matrix-storage.P \ +.deps/matrix.P .deps/nscalar.P .deps/path.P .deps/rational.P \ +.deps/scalar.P .deps/string-convert.P .deps/string.P .deps/stringutil.P \ +.deps/text-db.P .deps/text-stream.P .deps/unionfind.P .deps/vector.P +CXXMKDEP = $(CXX) -M $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS) +SOURCES = $(libflower_a_SOURCES) +OBJECTS = $(libflower_a_OBJECTS) + +default: all + +.SUFFIXES: +.SUFFIXES: .c .cc .o +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + +$(ACLOCAL_M4): configure.in + cd $(srcdir) && $(ACLOCAL) + +config.status: $(srcdir)/configure + $(SHELL) ./config.status --recheck +$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) + cd $(srcdir) && $(AUTOCONF) + +config.hh: stamp-h +stamp-h: $(srcdir)/config.hh.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES= CONFIG_HEADERS=config.hh:config.hh.in \ + $(SHELL) ./config.status + @echo timestamp > stamp-h +$(srcdir)/config.hh.in: $(srcdir)/stamp-h.in +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + @echo timestamp > $(srcdir)/stamp-h.in + +mostlyclean-hdr: + +clean-hdr: + +distclean-hdr: + rm -f config.hh + +maintainer-clean-hdr: + +mostlyclean-libLIBRARIES: + +clean-libLIBRARIES: + test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) + +distclean-libLIBRARIES: + +maintainer-clean-libLIBRARIES: + +install-libLIBRARIES: $(lib_LIBRARIES) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(libdir) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(libdir)/$$p"; \ + $(INSTALL_DATA) $$p $(libdir)/$$p; \ + else :; fi; \ + done + @$(POST_INSTALL) + @list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(RANLIB) $(libdir)/$$p"; \ + $(RANLIB) $(libdir)/$$p; \ + else :; fi; \ + done + +uninstall-libLIBRARIES: + $(NORMAL_UNINSTALL) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + rm -f $(libdir)/$$p; \ + done + +.c.o: + $(COMPILE) -c $< + +mostlyclean-compile: + rm -f *.o core + +clean-compile: + +distclean-compile: + rm -f *.tab.c + +maintainer-clean-compile: + +libflower.a: $(libflower_a_OBJECTS) $(libflower_a_DEPENDENCIES) + rm -f libflower.a + $(AR) cru libflower.a $(libflower_a_OBJECTS) $(libflower_a_LIBADD) + $(RANLIB) libflower.a +.cc.o: + $(CXXCOMPILE) -c $< + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + for subdir in $(SUBDIRS); do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + rev=''; for subdir in $(SUBDIRS); do rev="$$rev $$subdir"; done; \ + for subdir in $$rev; do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + (cd $$subdir && $(MAKE) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.hh.in $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + done; \ + test -z "$(ETAGS_ARGS)config.hh.in$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.hh.in $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + rm -rf $(distdir) + GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz + mkdir $(distdir)/=build + mkdir $(distdir)/=inst + dc_install_base=`cd $(distdir)/=inst && pwd`; \ + cd $(distdir)/=build \ + && ../configure --srcdir=.. --prefix=$$dc_install_base \ + && $(MAKE) \ + && $(MAKE) dvi \ + && $(MAKE) check \ + && $(MAKE) install \ + && $(MAKE) installcheck \ + && $(MAKE) dist + rm -rf $(distdir) + @echo "========================"; \ + echo "$(distdir).tar.gz is ready for distribution"; \ + echo "========================" +dist: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) + rm -rf $(distdir) +dist-all: distdir + -chmod -R a+r $(distdir) + GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) + rm -rf $(distdir) +distdir: $(DISTFILES) + rm -rf $(distdir) + mkdir $(distdir) + -chmod 777 $(distdir) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done + for subdir in $(SUBDIRS); do \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + done + +MKDEP = gcc -M $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) + +DEPS_MAGIC := $(shell mkdir .deps > /dev/null 2>&1 || :) +-include .deps/.P +.deps/.P: $(BUILT_SOURCES) + echo > $@ + +-include $(DEP_FILES) + +mostlyclean-depend: + +clean-depend: + +distclean-depend: + +maintainer-clean-depend: + rm -rf .deps + +.deps/%.P: %.c + @echo "Computing dependencies for $<..." + @o='o'; \ + test -n "$o" && o='$$o'; \ + $(MKDEP) $< >$@.tmp \ + && sed "s,^\(.*\)\.o:,\1.$$o \1.l$$o $@:," < $@.tmp > $@ \ + && rm -f $@.tmp + +.deps/%.P: %.cc + @echo "Computing dependencies for $<..." + @o='o'; \ + $(CXXMKDEP) $< >$@.tmp \ + && sed "s,^\(.*\)\.o:,\1.$$o \1.l$$o $@:," < $@.tmp > $@ \ + && rm -f $@.tmp +info: info-recursive +dvi: dvi-recursive +check: all-am + $(MAKE) check-recursive +installcheck: installcheck-recursive +all-recursive-am: config.hh + $(MAKE) all-recursive + +all-am: Makefile $(LIBRARIES) config.hh + +install-exec-am: install-libLIBRARIES + +uninstall-am: uninstall-libLIBRARIES + +install-exec: install-exec-recursive install-exec-am + @$(NORMAL_INSTALL) + +install-data: install-data-recursive + @$(NORMAL_INSTALL) + +install: install-recursive install-exec-am + @: + +uninstall: uninstall-recursive uninstall-am + +all: all-recursive-am all-am + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: installdirs-recursive + $(mkinstalldirs) $(libdir) + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean-am: mostlyclean-hdr mostlyclean-libLIBRARIES \ + mostlyclean-compile mostlyclean-tags mostlyclean-depend \ + mostlyclean-generic + +clean-am: clean-hdr clean-libLIBRARIES clean-compile clean-tags \ + clean-depend clean-generic mostlyclean-am + +distclean-am: distclean-hdr distclean-libLIBRARIES distclean-compile \ + distclean-tags distclean-depend distclean-generic \ + clean-am + +maintainer-clean-am: maintainer-clean-hdr maintainer-clean-libLIBRARIES \ + maintainer-clean-compile maintainer-clean-tags \ + maintainer-clean-depend maintainer-clean-generic \ + distclean-am + +mostlyclean: mostlyclean-recursive mostlyclean-am + +clean: clean-recursive clean-am + +distclean: distclean-recursive distclean-am + rm -f config.status + +maintainer-clean: maintainer-clean-recursive maintainer-clean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f config.status + +.PHONY: default mostlyclean-hdr distclean-hdr clean-hdr \ +maintainer-clean-hdr mostlyclean-libLIBRARIES distclean-libLIBRARIES \ +clean-libLIBRARIES maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \ +install-libLIBRARIES mostlyclean-compile distclean-compile \ +clean-compile maintainer-clean-compile install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir \ +mostlyclean-depend distclean-depend clean-depend \ +maintainer-clean-depend info dvi installcheck all-recursive-am all-am \ +install-exec-am uninstall-am install-exec install-data install \ +uninstall all installdirs mostlyclean-generic distclean-generic \ +clean-generic maintainer-clean-generic clean mostlyclean distclean \ +maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/flower/NEWS b/flower/NEWS index d749b00308..13485d6a14 100644 --- a/flower/NEWS +++ b/flower/NEWS @@ -1,3 +1,8 @@ + +pl 39 + - fixes to Array + + pl 38 - Rational - Real.hh fixes diff --git a/flower/VERSION b/flower/VERSION index 35f9cba6c9..d2435e2970 100644 --- a/flower/VERSION +++ b/flower/VERSION @@ -1,6 +1,6 @@ -MAJOR_VERSION = 1 -MINOR_VERSION = 1 -PATCH_LEVEL = 38 +MAJOR_VERSION=1 +MINOR_VERSION=1 +PATCH_LEVEL=38 # use to send patches, always empty for released version: -MY_PATCH_LEVEL = # include separator: "-1" or ".a" +MY_PATCH_LEVEL=# include separator: "-1" or ".a" # diff --git a/flower/aclocal.m4 b/flower/aclocal.m4 index 57ac6967aa..6984d2990f 100644 --- a/flower/aclocal.m4 +++ b/flower/aclocal.m4 @@ -1,2 +1,115 @@ +dnl aclocal.m4 generated automatically by aclocal 1.2 + +# Do all the work for Automake. This macro actually does too much -- +# some checks are only needed if your package does certain things. +# But this isn't really a big deal. + +# serial 1 + +dnl Usage: +dnl AM_INIT_AUTOMAKE(package,version, [no-define]) + +AC_DEFUN(AM_INIT_AUTOMAKE, +[AC_REQUIRE([AM_PROG_INSTALL]) +PACKAGE=[$1] +AC_SUBST(PACKAGE) +VERSION=[$2] +AC_SUBST(VERSION) +dnl test to see if srcdir already configured +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) +fi +ifelse([$3],, +AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") +AC_DEFINE_UNQUOTED(VERSION, "$VERSION")) +AM_SANITY_CHECK +AC_ARG_PROGRAM +dnl FIXME This is truly gross. +missing_dir=`cd $ac_aux_dir && pwd` +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) +AC_PROG_MAKE_SET]) + + +# serial 1 + +AC_DEFUN(AM_PROG_INSTALL, +[AC_REQUIRE([AC_PROG_INSTALL]) +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' +AC_SUBST(INSTALL_SCRIPT)dnl +]) + +# +# Check to make sure that the build environment is sane. +# + +AC_DEFUN(AM_SANITY_CHECK, +[AC_MSG_CHECKING([whether build environment is sane]) +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "$@" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + test "[$]2" = conftestfile + ) +then + # Ok. + : +else + AC_MSG_ERROR([newly created file is older than distributed files! +Check your system clock]) +fi +rm -f conftest* +AC_MSG_RESULT(yes)]) + +dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) +dnl The program must properly implement --version. +AC_DEFUN(AM_MISSING_PROG, +[AC_MSG_CHECKING(for working $2) +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if ($2 --version) < /dev/null > /dev/null 2>&1; then + $1=$2 + AC_MSG_RESULT(found) +else + $1="$3/missing $2" + AC_MSG_RESULT(missing) +fi +AC_SUBST($1)]) + +# Like AC_CONFIG_HEADER, but automatically create stamp file. + +AC_DEFUN(AM_CONFIG_HEADER, +[AC_PREREQ([2.12]) +AC_CONFIG_HEADER([$1]) +dnl When config.status generates a header, we must update the stamp-h file. +dnl This file resides in the same directory as the config header +dnl that is generated. We must strip everything past the first ":", +dnl and everything past the last "/". +AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl +ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>, +<>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>, +<>; do + case " <<$>>CONFIG_HEADERS " in + *" <<$>>am_file "*<<)>> + echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx + ;; + esac + am_indx=`expr "<<$>>am_indx" + 1` +done<<>>dnl>>) +changequote([,]))]) -dnl this file intentionally left blank :) diff --git a/flower/config.hh.in b/flower/config.hh.in index 9f3b982114..80c688b06b 100644 --- a/flower/config.hh.in +++ b/flower/config.hh.in @@ -3,3 +3,7 @@ /* define if you have snprintf */ #define HAVE_SNPRINTF 0 + +/* the version string of the flower lib */ +#define MODULE_VERSION "0.0.0" + diff --git a/flower/configure b/flower/configure index 68844fd368..405582ccbf 100755 --- a/flower/configure +++ b/flower/configure @@ -15,8 +15,6 @@ ac_help="$ac_help enable-shared shared flower library" ac_help="$ac_help disable-optimise optimisations off" -ac_help="$ac_help - out-dir set the directory for machine generated files. Default out or out-HOST" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -524,6 +522,629 @@ else fi + +. ./VERSION +FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL +if test x$MY_PATCH_LEVEL != x; then + FULL_VERSION=$FULL_VERSION.$MY_PATCH_LEVEL +fi +ac_aux_dir= +for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do + if test -f $ac_dir/install-sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f $ac_dir/install.sh; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + fi +done +if test -z "$ac_aux_dir"; then + { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } +fi +ac_config_guess=$ac_aux_dir/config.guess +ac_config_sub=$ac_aux_dir/config.sub +ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# ./install, which can be erroneously created by make from ./install.sh. +echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 +echo "configure:562: checking for a BSD compatible install" >&5 +if test -z "$INSTALL"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + # Account for people who put trailing slashes in PATH elements. + case "$ac_dir/" in + /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + for ac_prog in ginstall installbsd scoinst install; do + if test -f $ac_dir/$ac_prog; then + if test $ac_prog = install && + grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + # OSF/1 installbsd also uses dspmsg, but is usable. + : + else + ac_cv_path_install="$ac_dir/$ac_prog -c" + break 2 + fi + fi + done + ;; + esac + done + IFS="$ac_save_IFS" + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL="$ac_cv_path_install" + else + # As a last resort, use the slow shell script. We don't cache a + # path for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the path is relative. + INSTALL="$ac_install_sh" + fi +fi +echo "$ac_t""$INSTALL" 1>&6 + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' + + +PACKAGE=flower + +VERSION=$FULL_VERSION + +if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then + { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } +fi +cat >> confdefs.h <> confdefs.h <&6 +echo "configure:631: checking whether build environment is sane" >&5 +# Just in case +sleep 1 +echo timestamp > conftestfile +# Do `set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` + if test "" = "X"; then + # -L didn't work. + set X `ls -t $srcdir/configure conftestfile` + fi + test "$2" = conftestfile + ) +then + # Ok. + : +else + { echo "configure: error: newly created file is older than distributed files! +Check your system clock" 1>&2; exit 1; } +fi +rm -f conftest* +echo "$ac_t""yes" 1>&6 +if test "$program_transform_name" = s,x,x,; then + program_transform_name= +else + # Double any \ or $. echo might interpret backslashes. + cat <<\EOF_SED > conftestsed +s,\\,\\\\,g; s,\$,$$,g +EOF_SED + program_transform_name="`echo $program_transform_name|sed -f conftestsed`" + rm -f conftestsed +fi +test "$program_prefix" != NONE && + program_transform_name="s,^,${program_prefix},; $program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" + +# sed with no file args requires a program. +test "$program_transform_name" = "" && program_transform_name="s,x,x," + +missing_dir=`cd $ac_aux_dir && pwd` +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:678: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:691: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:704: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:717: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 +echo "configure:730: checking for working makeinfo" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (makeinfo --version) < /dev/null > /dev/null 2>&1; then + MAKEINFO=makeinfo + echo "$ac_t""found" 1>&6 +else + MAKEINFO="$missing_dir/missing makeinfo" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 +echo "configure:743: checking whether ${MAKE-make} sets \${MAKE}" >&5 +set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftestmake <<\EOF +all: + @echo 'ac_maketemp="${MAKE}"' +EOF +# GNU make sometimes prints "make[1]: Entering...", which would confuse us. +eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` +if test -n "$ac_maketemp"; then + eval ac_cv_prog_make_${ac_make}_set=yes +else + eval ac_cv_prog_make_${ac_make}_set=no +fi +rm -f conftestmake +fi +if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then + echo "$ac_t""yes" 1>&6 + SET_MAKE= +else + echo "$ac_t""no" 1>&6 + SET_MAKE="MAKE=${MAKE-make}" +fi + + +# Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:773: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:802: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + ac_prog_rejected=no + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + break + fi + done + IFS="$ac_save_ifs" +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# -gt 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + set dummy "$ac_dir/$ac_word" "$@" + shift + ac_cv_prog_CC="$@" + fi +fi +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } +fi + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:850: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:884: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:889: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:913: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-O2" + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + + +# Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:944: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CC="gcc" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:973: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + ac_prog_rejected=no + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + break + fi + done + IFS="$ac_save_ifs" +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# -gt 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + set dummy "$ac_dir/$ac_word" "$@" + shift + ac_cv_prog_CC="$@" + fi +fi +fi +fi +CC="$ac_cv_prog_CC" +if test -n "$CC"; then + echo "$ac_t""$CC" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } +fi + +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1021: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 + +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross + +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cc_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cc_cross=no + else + ac_cv_prog_cc_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cc_works=no +fi +rm -fr conftest* + +echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 +if test $ac_cv_prog_cc_works = no; then + { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1055: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 +cross_compiling=$ac_cv_prog_cc_cross + +echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 +echo "configure:1060: checking whether we are using GNU C" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gcc=yes +else + ac_cv_prog_gcc=no +fi +fi + +echo "$ac_t""$ac_cv_prog_gcc" 1>&6 + +if test $ac_cv_prog_gcc = yes; then + GCC=yes + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS= + echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 +echo "configure:1084: checking whether ${CC-cc} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.c +if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then + ac_cv_prog_cc_g=yes +else + ac_cv_prog_cc_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + elif test $ac_cv_prog_cc_g = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-O2" + fi +else + GCC= + test "${CFLAGS+set}" = set || CFLAGS="-g" +fi + +for ac_prog in $CCC c++ g++ gcc CC cxx cc++ +do +# Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1116: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_CXX="$ac_prog" + break + fi + done + IFS="$ac_save_ifs" +fi +fi +CXX="$ac_cv_prog_CXX" +if test -n "$CXX"; then + echo "$ac_t""$CXX" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + +test -n "$CXX" && break +done +test -n "$CXX" || CXX="gcc" + + +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 +echo "configure:1147: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 + ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ac_cpp='$CXXCPP $CPPFLAGS' @@ -531,25 +1152,192 @@ ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' cross_compiling=$ac_cv_prog_cxx_cross +cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then + ac_cv_prog_cxx_works=yes + # If we can't run a trivial program, we are probably using a cross compiler. + if (./conftest; exit) 2>/dev/null; then + ac_cv_prog_cxx_cross=no + else + ac_cv_prog_cxx_cross=yes + fi +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + ac_cv_prog_cxx_works=no +fi +rm -fr conftest* +ac_ext=c +# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CPP $CPPFLAGS' +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cc_cross -optimise_b=yes -shared_b=no -LIB_SUFFIX=.a -MODULE_CXXFLAGS="$MODULE_CXXFLAGS -D_REENTRANT" +echo "$ac_t""$ac_cv_prog_cxx_works" 1>&6 +if test $ac_cv_prog_cxx_works = no; then + { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } +fi +echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 +echo "configure:1187: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 +cross_compiling=$ac_cv_prog_cxx_cross -if test x$host = xNONE; then - OUTDIR_NAME=${OUTDIR_NAME-"out"} +echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 +echo "configure:1192: checking whether we are using GNU C++" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 else - OUTDIR_NAME=${OUTDIR_NAME-"out-$host"} + cat > conftest.C <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then + ac_cv_prog_gxx=yes +else + ac_cv_prog_gxx=no +fi fi -for a in `find -type d -and -not -name 'out'`; do - if test ! -d $a/$OUTDIR_NAME; then - mkdir $a/$OUTDIR_NAME; - fi -done +echo "$ac_t""$ac_cv_prog_gxx" 1>&6 + +if test $ac_cv_prog_gxx = yes; then + GXX=yes + ac_test_CXXFLAGS="${CXXFLAGS+set}" + ac_save_CXXFLAGS="$CXXFLAGS" + CXXFLAGS= + echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 +echo "configure:1216: checking whether ${CXX-g++} accepts -g" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo 'void f(){}' > conftest.cc +if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then + ac_cv_prog_cxx_g=yes +else + ac_cv_prog_cxx_g=no +fi +rm -f conftest* + +fi + +echo "$ac_t""$ac_cv_prog_cxx_g" 1>&6 + if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS="$ac_save_CXXFLAGS" + elif test $ac_cv_prog_cxx_g = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-O2" + fi +else + GXX= + test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" +fi + +# Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 +echo "configure:1246: checking for $ac_word" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f $ac_dir/$ac_word; then + ac_cv_prog_RANLIB="ranlib" + break + fi + done + IFS="$ac_save_ifs" + test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" +fi +fi +RANLIB="$ac_cv_prog_RANLIB" +if test -n "$RANLIB"; then + echo "$ac_t""$RANLIB" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + + +missing_dir=`cd $ac_aux_dir && pwd` + +echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 +echo "configure:1276: checking for working aclocal" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (aclocal --version) < /dev/null > /dev/null 2>&1; then + ACLOCAL=aclocal + echo "$ac_t""found" 1>&6 +else + ACLOCAL="$missing_dir/missing aclocal" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 +echo "configure:1289: checking for working autoconf" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoconf --version) < /dev/null > /dev/null 2>&1; then + AUTOCONF=autoconf + echo "$ac_t""found" 1>&6 +else + AUTOCONF="$missing_dir/missing autoconf" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working automake""... $ac_c" 1>&6 +echo "configure:1302: checking for working automake" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (automake --version) < /dev/null > /dev/null 2>&1; then + AUTOMAKE=automake + echo "$ac_t""found" 1>&6 +else + AUTOMAKE="$missing_dir/missing automake" + echo "$ac_t""missing" 1>&6 +fi + +echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 +echo "configure:1315: checking for working autoheader" >&5 +# Run test in a subshell; some versions of sh will print an error if +# an executable is not found, even if stderr is redirected. +# Redirect stdin to placate older versions of autoconf. Sigh. +if (autoheader --version) < /dev/null > /dev/null 2>&1; then + AUTOHEADER=autoheader + echo "$ac_t""found" 1>&6 +else + AUTOHEADER="$missing_dir/missing autoheader" + echo "$ac_t""missing" 1>&6 +fi + +# AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) + +ac_ext=C +# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='${CXX-g++} -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +cross_compiling=$ac_cv_prog_cxx_cross + + +optimise_b=yes +shared_b=no +LIB_SUFFIX=.a +MODULE_CXXFLAGS="$MODULE_CXXFLAGS -D_REENTRANT" - # Check whether --enable-shared or --disable-shared was given. if test "${enable_shared+set}" = set; then enableval="$enable_shared" @@ -564,14 +1352,6 @@ if test "${enable_optimise+set}" = set; then fi -# Check whether --enable-out-dir or --disable-out-dir was given. -if test "${enable_out_dir+set}" = set; then - enableval="$enable_out_dir" - OUTDIR_NAME=$enableval - -fi - - if test $shared_b = yes; then MODULE_CXXFLAGS="$MODULE_CXXFLAGS -fPIC -DPIC" MODULE_LDFLAGS="-shared -Wl,-soname,libflower.so.\$(VERSION) " @@ -591,7 +1371,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:595: checking for $ac_word" >&5 +echo "configure:1375: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -622,7 +1402,7 @@ test -n "$CXX" || CXX="gcc" echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:626: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 +echo "configure:1406: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -632,11 +1412,11 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then ac_cv_prog_cxx_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -656,12 +1436,12 @@ if test $ac_cv_prog_cxx_works = no; then { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:660: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1440: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 cross_compiling=$ac_cv_prog_cxx_cross echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 -echo "configure:665: checking whether we are using GNU C++" >&5 +echo "configure:1445: checking whether we are using GNU C++" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -670,7 +1450,7 @@ else yes; #endif EOF -if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:674: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1454: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gxx=yes else ac_cv_prog_gxx=no @@ -685,7 +1465,7 @@ if test $ac_cv_prog_gxx = yes; then ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS= echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 -echo "configure:689: checking whether ${CXX-g++} accepts -g" >&5 +echo "configure:1469: checking whether ${CXX-g++} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -713,7 +1493,7 @@ else fi echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6 -echo "configure:717: checking for 8-bit clean memcmp" >&5 +echo "configure:1497: checking for 8-bit clean memcmp" >&5 if eval "test \"`echo '$''{'ac_cv_func_memcmp_clean'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -721,7 +1501,7 @@ else ac_cv_func_memcmp_clean=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then ac_cv_func_memcmp_clean=yes else @@ -752,12 +1532,12 @@ echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.o" echo $ac_n "checking for vprintf""... $ac_c" 1>&6 -echo "configure:756: checking for vprintf" >&5 +echo "configure:1536: checking for vprintf" >&5 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1567: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_vprintf=yes" else @@ -807,12 +1587,12 @@ fi if test "$ac_cv_func_vprintf" != yes; then echo $ac_n "checking for _doprnt""... $ac_c" 1>&6 -echo "configure:811: checking for _doprnt" >&5 +echo "configure:1591: checking for _doprnt" >&5 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func__doprnt=yes" else @@ -865,12 +1645,12 @@ fi for ac_func in memmem snprintf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:869: checking for $ac_func" >&5 +echo "configure:1649: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:1680: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -921,9 +1701,13 @@ fi done -if test ! -d $OUTDIR_NAME ; then - mkdir $OUTDIR_NAME -fi +cat >> confdefs.h <> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then @@ -1137,6 +1935,10 @@ for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then top_srcdir="$ac_dots$ac_given_srcdir" ;; esac + case "$ac_given_INSTALL" in + [/$]*) INSTALL="$ac_given_INSTALL" ;; + *) INSTALL="$ac_dots$ac_given_INSTALL" ;; + esac echo creating "$ac_file" rm -f "$ac_file" @@ -1152,6 +1954,7 @@ for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then s%@configure_input@%$configure_input%g s%@srcdir@%$srcdir%g s%@top_srcdir@%$top_srcdir%g +s%@INSTALL@%$INSTALL%g " $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file fi; done rm -f conftest.s* @@ -1178,7 +1981,7 @@ ac_eD='%g' if test "${CONFIG_HEADERS+set}" != set; then EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF fi @@ -1266,8 +2069,10 @@ fi; done EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF +test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h exit 0 EOF diff --git a/flower/configure.in b/flower/configure.in index d0bd09bbc2..4c28402072 100644 --- a/flower/configure.in +++ b/flower/configure.in @@ -1,6 +1,29 @@ dnl -*-shell-script-*- dnl Process this file with autoconf to produce a configure script.- + AC_INIT(choleski.cc) + +. ./VERSION +FULL_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$PATCH_LEVEL +if test x$MY_PATCH_LEVEL != x; then + FULL_VERSION=$FULL_VERSION.$MY_PATCH_LEVEL +fi +AM_INIT_AUTOMAKE(flower, $FULL_VERSION) + +AC_PROG_CC + +AC_PROG_CC +AC_PROG_CXX +AC_PROG_RANLIB + +missing_dir=`cd $ac_aux_dir && pwd` + +AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) +AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) +AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) +AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) +# AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) + AC_LANG_CPLUSPLUS optimise_b=yes @@ -8,19 +31,6 @@ shared_b=no LIB_SUFFIX=.a MODULE_CXXFLAGS="$MODULE_CXXFLAGS -D_REENTRANT" -if test x$host = xNONE; then - OUTDIR_NAME=${OUTDIR_NAME-"out"} -else - OUTDIR_NAME=${OUTDIR_NAME-"out-$host"} -fi - -for a in `find -type d -and -not -name 'out'`; do - if test ! -d $a/$OUTDIR_NAME; then - mkdir $a/$OUTDIR_NAME; - fi -done - - AC_ARG_ENABLE(shared, [ enable-shared shared flower library], [shared_b=$enableval]) @@ -29,11 +39,6 @@ AC_ARG_ENABLE(optimise, [ disable-optimise optimisations off], [optimise_b=$enableval]) -AC_ARG_ENABLE(out-dir, - [ out-dir set the directory for machine generated files. Default out or out-HOST], - [OUTDIR_NAME=$enableval] - []) - if test $shared_b = yes; then MODULE_CXXFLAGS="$MODULE_CXXFLAGS -fPIC -DPIC" MODULE_LDFLAGS="-shared -Wl,-soname,libflower.so.\$(VERSION) " @@ -53,10 +58,9 @@ AC_FUNC_MEMCMP AC_FUNC_VPRINTF AC_CHECK_FUNCS(memmem snprintf ) -if test ! -d $OUTDIR_NAME ; then - mkdir $OUTDIR_NAME -fi +AC_DEFINE_UNQUOTED(MODULE_VERSION, "${FULL_VERSION}") -AC_CONFIG_HEADER($OUTDIR_NAME/config.hh:config.hh.in) -AC_OUTPUT($OUTDIR_NAME/Flower-flags.make:Flower-flags.make.in) +touch stamp-h.in +AM_CONFIG_HEADER(config.hh:config.hh.in) +AC_OUTPUT(Makefile include/Makefile test/Makefile) diff --git a/flower/flower-version.cc b/flower/flower-version.cc index 6372f50277..6216111d27 100644 --- a/flower/flower-version.cc +++ b/flower/flower-version.cc @@ -1,10 +1,13 @@ -#include "version.hh" // urg #include -static char *s = "FlowerLib " MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL " #%d"; +#include "config.hh" + +// static char *s = "FlowerLib " MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL " #%d"; +static char *s = "FlowerLib " MODULE_VERSION " #%d"; static const int build= -#include ".build" +//#include ".build" +0 ; char const * diff --git a/flower/include/Makefile b/flower/include/Makefile deleted file mode 100644 index b7716f2676..0000000000 --- a/flower/include/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -# flower/lib/include/Makefile - -# subdir level: -# -depth = ../.. -# - -# generic stuff/Makefile -# -include ./$(depth)/make/Include.make -include ./$(depth)/flower/VERSION - -# identify module: -# -MODULE_NAME = flower - - -# - diff --git a/flower/include/Makefile.am b/flower/include/Makefile.am new file mode 100644 index 0000000000..294e4f9f6c --- /dev/null +++ b/flower/include/Makefile.am @@ -0,0 +1,8 @@ +# Automatically generated from ./lilypond-0.1.49/flower/include/Makefile.am.wild by bin/autowild +# Do not edit +# flower/lib/include/Makefile.am.wild + +noinst_HEADERS = acursor.hh arithmetic-operator.hh assoc-iter.hh assoc.hh choleski.hh compare.hh cpu-timer.hh cursor.hh data-file.hh diagonal-storage.hh dictionary-iter.hh dictionary.hh directed-graph.hh dstream.hh flower-debug.hh fproto.hh full-storage.hh handle.hh international.hh interval.hh iterate.hh lgetopt.hh libc-extension.hh link.hh list.hh matrix-storage.hh matrix.hh nscalar.hh parray.hh path.hh pcursor.hh plist.hh pointer.hh pqueue.hh priorities.hh rational.hh real.hh scalar.hh string-convert.hh string-data.hh string-handle.hh string.hh text-db.hh text-stream.hh timer.hh unionfind.hh varray.hh vector.hh virtual-methods.hh cursor.icc full-storage.icc link.icc list.icc plist.icc string-data.icc string-handle.icc string.icc cursor.tcc interval.tcc list.tcc pcursor.tcc plist.tcc pointer.tcc + +EXTRA_DIST = Makefile.am.wild + diff --git a/flower/include/Makefile.am.wild b/flower/include/Makefile.am.wild new file mode 100644 index 0000000000..ac36bc76ef --- /dev/null +++ b/flower/include/Makefile.am.wild @@ -0,0 +1,6 @@ +# flower/lib/include/Makefile.am.wild + +noinst_HEADERS = $(wildcard *.hh *.icc *.tcc) + +EXTRA_DIST = Makefile.am.wild + diff --git a/flower/include/Makefile.in b/flower/include/Makefile.in new file mode 100644 index 0000000000..c6b3898e80 --- /dev/null +++ b/flower/include/Makefile.in @@ -0,0 +1,185 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./flower/include/Makefile.am.wild by bin/autowild +# Do not edit +# flower/lib/include/Makefile.am.wild + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +CC = @CC@ +CXX = @CXX@ +LIB_SUFFIX = @LIB_SUFFIX@ +MAKEINFO = @MAKEINFO@ +MODULE_CXXFLAGS = @MODULE_CXXFLAGS@ +MODULE_LDFLAGS = @MODULE_LDFLAGS@ +PACKAGE = @PACKAGE@ +RANLIB = @RANLIB@ +VERSION = @VERSION@ + +noinst_HEADERS = acursor.hh arithmetic-operator.hh assoc-iter.hh assoc.hh choleski.hh compare.hh cpu-timer.hh cursor.hh data-file.hh diagonal-storage.hh dictionary-iter.hh dictionary.hh directed-graph.hh dstream.hh flower-debug.hh fproto.hh full-storage.hh handle.hh international.hh interval.hh iterate.hh lgetopt.hh libc-extension.hh link.hh list.hh matrix-storage.hh matrix.hh nscalar.hh parray.hh path.hh pcursor.hh plist.hh pointer.hh pqueue.hh priorities.hh rational.hh real.hh scalar.hh string-convert.hh string-data.hh string-handle.hh string.hh text-db.hh text-stream.hh timer.hh unionfind.hh varray.hh vector.hh virtual-methods.hh cursor.icc full-storage.icc link.icc list.icc plist.icc string-data.icc string-handle.icc string.icc cursor.tcc interval.tcc list.tcc pcursor.tcc plist.tcc pointer.tcc + +EXTRA_DIST = Makefile.am.wild +mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +CONFIG_HEADER = ../config.hh +CONFIG_CLEAN_FILES = +HEADERS = $(noinst_HEADERS) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + test -z "$(ETAGS_ARGS)$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = include + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu include/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile $(HEADERS) + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-tags mostlyclean-generic + +clean: clean-tags clean-generic mostlyclean + +distclean: distclean-tags distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-tags maintainer-clean-generic \ + distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/flower/include/libc-extension.hh b/flower/include/libc-extension.hh index 975950d4bb..270d07aefb 100644 --- a/flower/include/libc-extension.hh +++ b/flower/include/libc-extension.hh @@ -10,6 +10,7 @@ #ifndef LIBC_EXTENSION_HH #define LIBC_EXTENSION_HH #include "fproto.hh" + #include "config.hh" char* strnlwr (char* start_l ,int n); diff --git a/flower/include/out/dummy.dep b/flower/include/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/flower/include/rational.hh b/flower/include/rational.hh index 587a7f63f1..4160af814d 100644 --- a/flower/include/rational.hh +++ b/flower/include/rational.hh @@ -34,8 +34,6 @@ public: Rational truncated () const; void negate (); operator bool () const; - operator int () const; - operator double () const; operator String () const; Rational operator - () const; Rational (); diff --git a/flower/include/varray.hh b/flower/include/varray.hh index 8386c20a8c..4333bfa6e4 100644 --- a/flower/include/varray.hh +++ b/flower/include/varray.hh @@ -11,8 +11,8 @@ /// copy a bare (C-)array from #src# to #dest# sized #count# template inline void arrcpy (T*dest, T*src, int count) { - for (int i_shadows_local=0; i_shadows_local < count ; i_shadows_local++) - *dest++ = *src++; + for (int i_shadows_local=0; i_shadows_local < count ; i_shadows_local++) + *dest++ = *src++; } @@ -33,182 +33,222 @@ inline void arrcpy (T*dest, T*src, int count) { */ template -class Array { +class Array +{ protected: - /// maximum length of array. - int max; - - /// the data itself - T *thearray; - - /// stretch or shrink array. - void remax (int newmax) { - T* newarr = new T[newmax]; - size_ = (newmax < size_) ? newmax : size_; - arrcpy (newarr, thearray, size_); + /// maximum length of array. + int max_; + + /// the data itself + T *array_p_; + + /// stretch or shrink array. + void remax (int newmax) + { + T* newarr = new T[newmax]; + size_ = (newmax < size_) ? newmax : size_; + arrcpy (newarr, array_p_, size_); - delete[] thearray; - thearray = newarr; - max = newmax; + delete[] array_p_; + array_p_ = newarr; + max_ = newmax; } - int size_; + int size_; public: - /// check invariants - void OK() const { - assert (max >= size_ && size_ >=0); - if (max) assert (thearray); - } - /** report the size_. - @see {setsize_} - */ - int size() const { return size_; } + /// check invariants + void OK() const + { + assert (max_ >= size_ && size_ >=0); + if (max_) assert (array_p_); + } + /** report the size_. + @see + {setsize_} + */ + int size() const + { return size_; } - /// POST: size() == 0 - void clear() { size_ = 0; } + /// POST: size() == 0 + void clear() + { size_ = 0; } - Array() { thearray = 0; max =0; size_ =0; } + Array() + { array_p_ = 0; max_ =0; size_ =0; } - /** set the size_ to #s#. + /** set the size_ to #s#. POST: size() == s. - Warning: contents are unspecified */ - void set_size (int s) { - if (s >= max) remax (s); - size_ = s; + Warning: contents are unspecified */ + void set_size (int s) + { + if (s >= max_) remax (s); + size_ = s; } - ~Array() { delete[] thearray; } + ~Array() + { delete[] array_p_; } - /// return a "new"ed copy of array - T* copy_array() const { - T* Tarray = new T[size_]; - arrcpy (Tarray, thearray, size_); - return Tarray; + /// return a "new"ed copy of array + T* copy_array() const + { + T* Tarray = new T[size_]; + arrcpy (Tarray, array_p_, size_); + return Tarray; } - // depracated - operator T*() const { - return copy_array(); + // depracated + operator T*() const + { + return copy_array(); } - void operator=(Array const & src) { - set_size (src.size_); - arrcpy (thearray,src.thearray, size_); + void operator=(Array const & src) + { + set_size (src.size_); + arrcpy (array_p_,src.array_p_, size_); } - Array (Array const & src) { - thearray = src.copy_array(); - max = size_ = src.size_; + Array (Array const & src) + { + array_p_ = src.copy_array(); + max_ = size_ = src.size_; } - /// tighten array size_. - void precompute() { remax (size_); } + /// tighten array size_. + void precompute() { + remax (size_); + } + T * remove_array_p () { + T * p = array_p_; + size_ = 0; + max_ = 0; + array_p_ =0; + return p; + } + + /// access element + T &operator[] (int i) + { + return elem (i); + } + /// access element + T const & operator[] (int i) const + { + return elem (i); + } + /// access element + T &elem (int i) const + { + assert (i >=0&&i=0&&i=0 && j<= size_); - set_size (size_+1); - for (int i=size_-1; i > j; i--) - thearray[i] = thearray[i-1]; - thearray[j] = k; - } - /** - remove i-th element, and return it. - */ - T get (int i) { - T t = elem (i); - del (i); - return t; - } - void unordered_del (int i) - { - elem (i) = top(); - set_size (size() -1); - } - void del (int i) { - assert (i >=0&& i < size_); - arrcpy (thearray+i, thearray+i+1, size_-i-1); - size_--; - } - // quicksort. - void sort (int (*compare)(T const&,T const&), - int lower = -1, int upper = -1) { - if (lower < 0) { - lower = 0 ; - upper = size()-1; + void swap (int i,int j) + { + T t ((*this)[i]); + (*this)[i]=(*this)[j]; + (*this)[j]=t; + } + bool empty() const + { return !size_; } + void insert (T k, int j) + { + assert (j >=0 && j<= size_); + set_size (size_+1); + for (int i=size_-1; i > j; i--) + array_p_[i] = array_p_[i-1]; + array_p_[j] = k; + } + /** + remove i-th element, and return it. + */ + T get (int i) + { + T t = elem (i); + del (i); + return t; + } + void unordered_del (int i) + + { + elem (i) = top(); + set_size (size() -1); + } + void del (int i) + { + assert (i >=0&& i < size_); + arrcpy (array_p_+i, array_p_+i+1, size_-i-1); + size_--; + } + // quicksort. + void sort (int (*compare)(T const&,T const&), + int lower = -1, int upper = -1) + { + if (lower < 0) + { + lower = 0 ; + upper = size()-1; } - if (lower >= upper) - return; - swap (lower, (lower+upper)/2); - int last = lower; - for (int i= lower +1; i <= upper; i++) - if (compare (thearray[i], thearray[lower]) < 0) - swap (++last,i); - swap (lower, last); - sort (compare, lower, last-1); - sort (compare, last+1, upper); - } - void concat (Array const &src) { - int s = size_; - set_size (size_ + src.size_); - arrcpy (thearray+s,src.thearray, src.size_); - } - Array slice (int lower, int upper) { - assert (lower >= 0 && lower <=upper&& upper <= size_); - Array r; - int s =upper-lower; - r.set_size (s); - arrcpy (r.thearray, thearray + lower, s); - return r; - } - void reverse() { - int h = size_/2; - for (int i =0,j = size_-1; i < h; i++,j--) - swap (i,j); + if (lower >= upper) + return; + swap (lower, (lower+upper)/2); + int last = lower; + for (int i= lower +1; i <= upper; i++) + if (compare (array_p_[i], array_p_[lower]) < 0) + swap (++last,i); + swap (lower, last); + sort (compare, lower, last-1); + sort (compare, last+1, upper); + } + void concat (Array const &src) + { + int s = size_; + set_size (size_ + src.size_); + arrcpy (array_p_+s,src.array_p_, src.size_); + } + Array slice (int lower, int upper) + { + assert (lower >= 0 && lower <=upper&& upper <= size_); + Array r; + int s =upper-lower; + r.set_size (s); + arrcpy (r.array_p_, array_p_ + lower, s); + return r; + } + void reverse() + { + int h = size_/2; + for (int i =0,j = size_-1; i < h; i++,j--) + swap (i,j); } }; diff --git a/flower/missing b/flower/missing new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/flower/missing @@ -0,0 +1 @@ + diff --git a/flower/mkinstalldirs b/flower/mkinstalldirs new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/flower/mkinstalldirs @@ -0,0 +1 @@ + diff --git a/flower/out/dummy.dep b/flower/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/flower/rational.cc b/flower/rational.cc index df18b4cbcd..202dd9f0e7 100644 --- a/flower/rational.cc +++ b/flower/rational.cc @@ -11,21 +11,12 @@ #include "string-convert.hh" #include "libc-extension.hh" + Rational::operator bool () const { return sign_; } -Rational::operator int () const -{ - return sign_ * num_ / den_; -} - -Rational::operator double () const -{ - return (double)sign_ * num_ / den_; -} - ostream & operator << (ostream &o, Rational r) { diff --git a/flower/stamp-h.in b/flower/stamp-h.in new file mode 100644 index 0000000000..e69de29bb2 diff --git a/flower/test/Makefile b/flower/test/Makefile deleted file mode 100644 index eccb972ad3..0000000000 --- a/flower/test/Makefile +++ /dev/null @@ -1,69 +0,0 @@ -# -# project LilyPond -- the musical typesetter -# title makefile for flowertest -# file test/Makefile -# -# Copyright (c) 1997 by -# Jan Nieuwenhuizen -# Han-Wen Nienhuys -# - -# subdir level: -# -depth = ../.. -# - -# identify module: -# -NAME =flower-test -# include ./$(depth)/$(NAME)/VERSION -MODULE_NAME = flower -include ./$(depth)/flower/VERSION - -# - -# generic variables: -# -include ./$(depth)/make/Variables.make -include ./$(depth)/make/Files.make -# - -# list of distribution files: -# -EXTRA_DISTFILES = result - -# list of custom libraries: -# - -MODULE_LIBDEPS=check-flower-deps -MODULE_LIBES = -lflower -# - - -# main target of this module: -# -BUILDSTRINGTEST=$(MAINTARGET) -EXECSTRINGTEST=$(EXECUTABLE) - -# don't do the exec, as this might fail if flowerlib isn't installed yet. -default: $(BUILDSTRINGTEST) - -test: $(EXECUTABLE) - $(EXECSTRINGTEST) > $(outdir)/result - cmp $(outdir)/result result - -dummy: - -# generic targets and rules: -# -include ./$(depth)/make/Targets.make -include ./$(depth)/make/Rules.make - - -# auto dependencies: -# -ifdef DEPFILES -include $(DEPFILES) -endif -# - diff --git a/flower/test/Makefile.am b/flower/test/Makefile.am new file mode 100644 index 0000000000..6424e8496e --- /dev/null +++ b/flower/test/Makefile.am @@ -0,0 +1,27 @@ +# Automatically generated from ./lilypond-0.1.49/flower/test/Makefile.am.wild by bin/autowild +# Do not edit +# +# project LilyPond -- the musical typesetter +# title makefile for flowertest +# file flower/test/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +# bin_PROGRAMS = test + +# TEST = test + +# can't link to libflower: has not been created yet... +# test_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc + +EXTRA_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc + +EXTRA_DIST = result Makefile.am.wild $(EXTRA_SOURCES) + +noinst_HEADERS = flower-test.hh + +INCLUDES = -I../include + diff --git a/flower/test/Makefile.am.wild b/flower/test/Makefile.am.wild new file mode 100644 index 0000000000..2346878f80 --- /dev/null +++ b/flower/test/Makefile.am.wild @@ -0,0 +1,25 @@ +# +# project LilyPond -- the musical typesetter +# title makefile for flowertest +# file flower/test/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +# bin_PROGRAMS = test + +# TEST = test + +# can't link to libflower: has not been created yet... +# test_SOURCES = $(wildcard *.cc) + +EXTRA_SOURCES = $(wildcard *.cc) + +EXTRA_DIST = result Makefile.am.wild $(EXTRA_SOURCES) + +noinst_HEADERS = $(wildcard *.hh) + +INCLUDES = -I../include + diff --git a/flower/test/Makefile.in b/flower/test/Makefile.in new file mode 100644 index 0000000000..006babd155 --- /dev/null +++ b/flower/test/Makefile.in @@ -0,0 +1,204 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./flower/test/Makefile.am.wild by bin/autowild +# Do not edit +# +# project LilyPond -- the musical typesetter +# title makefile for flowertest +# file flower/test/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +# bin_PROGRAMS = test + +# TEST = test + +# can't link to libflower: has not been created yet... +# test_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +CC = @CC@ +CXX = @CXX@ +LIB_SUFFIX = @LIB_SUFFIX@ +MAKEINFO = @MAKEINFO@ +MODULE_CXXFLAGS = @MODULE_CXXFLAGS@ +MODULE_LDFLAGS = @MODULE_LDFLAGS@ +PACKAGE = @PACKAGE@ +RANLIB = @RANLIB@ +VERSION = @VERSION@ + +EXTRA_SOURCES = main.cc mat-test.cc pqtest.cc rattest.cc stringtest.cc + +EXTRA_DIST = result Makefile.am.wild $(EXTRA_SOURCES) + +noinst_HEADERS = flower-test.hh + +INCLUDES = -I../include +mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +CONFIG_HEADER = ../config.hh +CONFIG_CLEAN_FILES = +HEADERS = $(noinst_HEADERS) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +TAR = tar +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu test/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + test -z "$(ETAGS_ARGS)$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = test + +distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu test/Makefile + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile $(HEADERS) + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-tags mostlyclean-generic + +clean: clean-tags clean-generic mostlyclean + +distclean: distclean-tags distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-tags maintainer-clean-generic \ + distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/flower/test/out/dummy.dep b/flower/test/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/flower/test/rattest.cc b/flower/test/rattest.cc index d2de9b2c12..64cc51e5f4 100644 --- a/flower/test/rattest.cc +++ b/flower/test/rattest.cc @@ -23,13 +23,13 @@ rattest () cout << EXP_PRINT(i >? -i) << EXP_PRINT(i >? r); cout << EXP_PRINT(i /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile $(HEADERS) + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-tags mostlyclean-generic + +clean: clean-tags clean-generic mostlyclean + +distclean: distclean-tags distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-tags maintainer-clean-generic \ + distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/init/Makefile b/init/Makefile deleted file mode 100644 index a04eed6775..0000000000 --- a/init/Makefile +++ /dev/null @@ -1,44 +0,0 @@ -# init/Makefile - - -# subdir level: -# -depth = .. -# - -build = ./$(depth)/lily/$(outdir)/.build - -# generic stuff/Makefile -# -include ./$(depth)/make/Include.make - -# list of distribution files: -# -INIFILES = $(wildcard *.ly) -DISTFILES = Makefile $(INIFILES) - -## we probably can make tex/*defs.tex and init/*.ly in one go... -## moved to mf/Makefile -FONT_FILES = $(wildcard $(depth)/mf/*[0-9].mf) -TABLES = $(patsubst $(depth)/mf/%.mf,%.ly,$(FONT_FILES)) -## -## all: $(TABLES) -## -## $(outdir)/%.log: $(depth)/mf/%.mf -## mf $< -## mv $(@F) $@ -## rm $(shell basename $< .mf).*gf -## -## %.ly: $(outdir)/%.log -## mf-to-table -o $@ $< -## -localclean: - rm -f $(TABLES) - -localinstall: - $(INSTALL) -d $(datadir)/lilypond/init - $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init - -localuninstall: - for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done - -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/ diff --git a/init/Makefile.am b/init/Makefile.am new file mode 100644 index 0000000000..9a5e11f136 --- /dev/null +++ b/init/Makefile.am @@ -0,0 +1,22 @@ +# Automatically generated from ./lilypond-0.1.49/init/Makefile.am.wild by bin/autowild +# Do not edit +# init/Makefile.am.wild + +INIFILES = dutch.ly dynamic.ly engraver.ly feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly german.ly italian.ly lily-init.ly midi.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly swedish.ly table11.ly table13.ly table16.ly table20.ly table26.ly +EXTRA_DIST = Makefile.am.wild $(INIFILES) + +CLEANFILES = feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly + +FONT_FILES = ../mf/feta-beams16.mf ../mf/feta-beams20.mf ../mf/feta-beams26.mf ../mf/feta-black16.mf ../mf/feta-braces16.mf ../mf/feta-braces20.mf ../mf/feta-din10.mf ../mf/feta-nummer10.mf ../mf/feta-nummer12.mf ../mf/feta-nummer3.mf ../mf/feta-nummer4.mf ../mf/feta-nummer5.mf ../mf/feta-nummer6.mf ../mf/feta-nummer7.mf ../mf/feta-nummer8.mf ../mf/feta-test16.mf ../mf/feta-test20.mf ../mf/feta11.mf ../mf/feta13.mf ../mf/feta16.mf ../mf/feta19.mf ../mf/feta20.mf ../mf/feta23.mf ../mf/feta26.mf +TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES)) + +# localclean: +# rm -f $(TABLES) + +install-data: + $(INSTALL) -d $(datadir)/lilypond/init + $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init + +uninstall-data: + for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done + -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/ diff --git a/init/Makefile.am.wild b/init/Makefile.am.wild new file mode 100644 index 0000000000..8589be49c8 --- /dev/null +++ b/init/Makefile.am.wild @@ -0,0 +1,20 @@ +# init/Makefile.am.wild + +INIFILES = $(wildcard *.ly) +EXTRA_DIST = Makefile.am.wild $(INIFILES) + +CLEANFILES = $(wildcard feta*.ly) + +FONT_FILES = $(wildcard ../mf/*[0-9].mf) +TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES)) + +# localclean: +# rm -f $(TABLES) + +install-data: + $(INSTALL) -d $(datadir)/lilypond/init + $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init + +uninstall-data: + for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done + -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/ diff --git a/init/Makefile.in b/init/Makefile.in new file mode 100644 index 0000000000..f99b968029 --- /dev/null +++ b/init/Makefile.in @@ -0,0 +1,196 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./init/Makefile.am.wild by bin/autowild +# Do not edit +# init/Makefile.am.wild + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +INIFILES = dutch.ly dynamic.ly engraver.ly feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly german.ly italian.ly lily-init.ly midi.ly paper11.ly paper13.ly paper16.ly paper20.ly paper26.ly performer.ly property.ly script.ly simple-init.ly swedish.ly table11.ly table13.ly table16.ly table20.ly table26.ly +EXTRA_DIST = Makefile.am.wild $(INIFILES) + +CLEANFILES = feta11.ly feta13.ly feta16.ly feta19.ly feta20.ly feta23.ly feta26.ly + +FONT_FILES = ../mf/feta-beams16.mf ../mf/feta-beams20.mf ../mf/feta-beams26.mf ../mf/feta-black16.mf ../mf/feta-braces16.mf ../mf/feta-braces20.mf ../mf/feta-din10.mf ../mf/feta-nummer10.mf ../mf/feta-nummer12.mf ../mf/feta-nummer3.mf ../mf/feta-nummer4.mf ../mf/feta-nummer5.mf ../mf/feta-nummer6.mf ../mf/feta-nummer7.mf ../mf/feta-nummer8.mf ../mf/feta-test16.mf ../mf/feta-test20.mf ../mf/feta11.mf ../mf/feta13.mf ../mf/feta16.mf ../mf/feta19.mf ../mf/feta20.mf ../mf/feta23.mf ../mf/feta26.mf +TABLES = $(patsubst ../mf/%.mf,%.ly,$(FONT_FILES)) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../lib/config.hh +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps init/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = init + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-generic + +clean: clean-generic mostlyclean + +distclean: distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-generic distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# localclean: +# rm -f $(TABLES) + +install-data: + $(INSTALL) -d $(datadir)/lilypond/init + $(INSTALL) -m 644 $(INIFILES) $(datadir)/lilypond/init + +uninstall-data: + for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done + -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/ + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/init/feta11.ly b/init/feta11.ly index 373d35af73..bb43ba9adc 100644 --- a/init/feta11.ly +++ b/init/feta11.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta11.log +% input from feta11.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 4.12\pt -1.72\pt 0.00\pt diff --git a/init/feta13.ly b/init/feta13.ly index 1042f1b70e..cc78398e91 100644 --- a/init/feta13.ly +++ b/init/feta13.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta13.log +% input from feta13.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 4.88\pt -2.03\pt 0.00\pt diff --git a/init/feta16.ly b/init/feta16.ly index 5017ebf420..8f9e9a849c 100644 --- a/init/feta16.ly +++ b/init/feta16.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta16.log +% input from feta16.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 6.00\pt -2.50\pt 0.00\pt diff --git a/init/feta19.ly b/init/feta19.ly index 79a0dcd0e1..be4cac0d8e 100644 --- a/init/feta19.ly +++ b/init/feta19.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta19.log +% input from feta19.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 7.12\pt -2.97\pt 0.00\pt diff --git a/init/feta20.ly b/init/feta20.ly index 4651cf1f0b..4b83db0235 100644 --- a/init/feta20.ly +++ b/init/feta20.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta20.log +% input from feta20.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 7.50\pt -3.12\pt 0.00\pt diff --git a/init/feta23.ly b/init/feta23.ly index a1800ec469..e0771ff065 100644 --- a/init/feta23.ly +++ b/init/feta23.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta23.log +% input from feta23.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 8.44\pt -3.52\pt 0.00\pt diff --git a/init/feta26.ly b/init/feta26.ly index 024c623b31..0ffe381d52 100644 --- a/init/feta26.ly +++ b/init/feta26.ly @@ -1,7 +1,7 @@ % Creator: mf-to-table.py version 0.5 % Automatically generated on % Do not edit -% input from out/feta26.log +% input from feta26.log % name=\symboltables { "rests" = \table { "0" "\\wholerest" 0.00\pt 9.75\pt -4.06\pt 0.00\pt diff --git a/init/out/dummy.dep b/init/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/input/Makefile b/input/Makefile deleted file mode 100644 index 45c1320de0..0000000000 --- a/input/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# input/Makefile - -# subdir level: -# -depth = .. -# - -build = ./$(depth)/lily/$(outdir)/.build - -# generic stuff/Makefile -# -include ./$(depth)/make/Include.make -# - -# list of distribution files: -# -LYFILES = $(wildcard *.ly) -TEXFILES = $(wildcard *.tex) -M4FILES = $(wildcard *.m4) -DISTFILES = Makefile TODO $(LYFILES) $(TEXFILES) $(wildcard *.m4) -# - -OUTFILES = $(addprefix $(outdir)/,$(M4FILES:%.m4=%)) - -all: $(OUTFILES) diff --git a/input/Makefile.am b/input/Makefile.am new file mode 100644 index 0000000000..d1df230855 --- /dev/null +++ b/input/Makefile.am @@ -0,0 +1,13 @@ +# Automatically generated from ./lilypond-0.1.49/input/Makefile.am.wild by bin/autowild +# Do not edit +# input/Makefile.am.wild + +LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly twinkle-pop.ly twinkle.ly +TEXFILES = dummy.tex +M4FILES = dummy.m4 +EXTRA_DIST = Makefile.am.wild TODO $(LYFILES) $(TEXFILES) $(M4FILES) + +OUTFILES = $(M4FILES:%.m4=%) + +default: all $(OUTFILES) + diff --git a/input/Makefile.am.wild b/input/Makefile.am.wild new file mode 100644 index 0000000000..aad06e0335 --- /dev/null +++ b/input/Makefile.am.wild @@ -0,0 +1,11 @@ +# input/Makefile.am.wild + +LYFILES = $(wildcard *.ly) +TEXFILES = $(wildcard *.tex) +M4FILES = $(wildcard *.m4) +EXTRA_DIST = Makefile.am.wild TODO $(LYFILES) $(TEXFILES) $(M4FILES) + +OUTFILES = $(M4FILES:%.m4=%) + +default: all $(OUTFILES) + diff --git a/input/Makefile.in b/input/Makefile.in new file mode 100644 index 0000000000..e0786fd3c1 --- /dev/null +++ b/input/Makefile.in @@ -0,0 +1,186 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./input/Makefile.am.wild by bin/autowild +# Do not edit +# input/Makefile.am.wild + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +LYFILES = beam-bug.ly beams.ly cadenza.ly collisions.ly coriolan-alto.ly denneboom.ly font-body.ly font.ly font11.ly font13.ly font16.ly font20.ly font26.ly gourlay.ly keys.ly kortjakje.ly multi.ly pedal.ly praeludium-fuga-E.ly rhythm.ly scales.ly scripts.ly sleur.ly slurs.ly spacing.ly stem.ly twinkle-pop.ly twinkle.ly +TEXFILES = dummy.tex +M4FILES = dummy.m4 +EXTRA_DIST = Makefile.am.wild TODO $(LYFILES) $(TEXFILES) $(M4FILES) + +OUTFILES = $(M4FILES:%.m4=%) +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../lib/config.hh +CONFIG_CLEAN_FILES = +DIST_COMMON = Makefile.am Makefile.in TODO + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps input/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +tags: TAGS +TAGS: + + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = input + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-generic + +clean: clean-generic mostlyclean + +distclean: distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-generic distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +default: all $(OUTFILES) + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/input/dummy.m4 b/input/dummy.m4 new file mode 100644 index 0000000000..e69de29bb2 diff --git a/input/dummy.tex b/input/dummy.tex new file mode 100644 index 0000000000..e69de29bb2 diff --git a/input/gourlay.ly b/input/gourlay.ly index 4d66ace0dd..4e55085818 100644 --- a/input/gourlay.ly +++ b/input/gourlay.ly @@ -14,12 +14,12 @@ This is taken from [Gourlay]'s paper on breaking lines \score{ \melodic \multi 2 < \octave c''; - { \stemup; d2 d | d d | d4 d2. | } + { \stemup; d2 d | d d | d4 d2. | \break; c1 } \octave c'; - { \stemdown; g4 g g g | \[2/3 g2 g2 g2 \] | g4. g8 g2 | } + { \stemdown; g4 g g g | \[2/3 g2 g2 g2 \] | g4. g8 g2 | c1 } > \paper{ - linewidth = 4.\cm; + linewidth = 8.\cm; } } diff --git a/input/out/dummy.dep b/input/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/lib/Makefile b/lib/Makefile deleted file mode 100644 index 83dfc51d4f..0000000000 --- a/lib/Makefile +++ /dev/null @@ -1,79 +0,0 @@ -# -# project LilyPond -- the musical typesetter -# title makefile for micro-lily-lib -# file lib/Makefile -# -# Copyright (c) 1997 by -# Jan Nieuwenhuizen -# Han-Wen Nienhuys -# - -# subdir level: -# -depth = .. -# - -# generic variables: -# -include ./$(depth)/make/Variables.make -include ./$(depth)/make/Files.make -include ./$(depth)/make/Version.make -# - -# identify module: -# -NAME = lily -# - -# descent order into subdirectories: -# -SUBDIRS = include -# - -# to be remade each build: -# -VERSION_DEPENDENCY =# -# - -# list of distribution files: -# -EXTRA_DISTFILES = config.hh.in -# - -MODULE_CXXFLAGS += -D_REENTRANT - -# list of custom libraries: - -LOADLIBES += -# - -# main target of this module: -# -# MAINTARGET = $(EXECUTABLE) -# MAINTARGET = $(LIBRARY) -# MAINTARGET = $(bindir)/$(EXECUTABLE)# huh? -MAINTARGET = $(outdir)/$(LIBRARY)# huh? - -default: configheader $(MAINTARGET) -# - -localclean: - rm -f $(MAINTARGET) - -# generic targets and rules: -# -include ./$(depth)/make/Targets.make -include ./$(depth)/make/Rules.make - -# auto dependencies: -# --include $(DEPFILES) -# - -.PHONY: configheader - -configheader: $(outdir)/config.hh - -# Ugh ugh -$(outdir)/config.hh: config.hh.in - sed 's!@datadir@!$(datadir)!'< $< > $@ diff --git a/lib/Makefile.am b/lib/Makefile.am new file mode 100644 index 0000000000..3db06b1b22 --- /dev/null +++ b/lib/Makefile.am @@ -0,0 +1,24 @@ +# Automatically generated from ./lilypond-0.1.49/lib/Makefile.am.wild by bin/autowild +# Do not edit +# project LilyPond -- the musical typesetter +# title makefile for micro-lily-lib +# file lib/Makefile +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +SUBDIRS = include + +lib_LIBRARIES = liblily.a +# lib_LIBRARIES = liblily.la + +EXTRA_DIST = Makefile.am.wild config.hh.in + +MODULE_CXXFLAGS += -D_REENTRANT + +liblily_a_SOURCES = binary-source-file.cc duration-convert.cc duration.cc includable-lexer.cc input.cc mapped-file-storage.cc moment.cc plet.cc simple-file-storage.cc source-file.cc source.cc template.cc warn.cc windhoos-suck-suck-suck-thank-you-cygnus.cc + +INCLUDES = -Iinclude -I../flower/include + diff --git a/lib/Makefile.am.wild b/lib/Makefile.am.wild new file mode 100644 index 0000000000..a4a486cc81 --- /dev/null +++ b/lib/Makefile.am.wild @@ -0,0 +1,22 @@ +# project LilyPond -- the musical typesetter +# title makefile for micro-lily-lib +# file lib/Makefile +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +SUBDIRS = include + +lib_LIBRARIES = liblily.a +# lib_LIBRARIES = liblily.la + +EXTRA_DIST = Makefile.am.wild config.hh.in + +MODULE_CXXFLAGS += -D_REENTRANT + +liblily_a_SOURCES = $(wildcard *.cc) + +INCLUDES = -Iinclude -I../flower/include + diff --git a/lib/Makefile.in b/lib/Makefile.in new file mode 100644 index 0000000000..07200c8b05 --- /dev/null +++ b/lib/Makefile.in @@ -0,0 +1,517 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./lib/Makefile.am.wild by bin/autowild +# Do not edit +# project LilyPond -- the musical typesetter +# title makefile for micro-lily-lib +# file lib/Makefile +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +SUBDIRS = include + +lib_LIBRARIES = liblily.a +# lib_LIBRARIES = liblily.la + +EXTRA_DIST = Makefile.am.wild config.hh.in + +liblily_a_SOURCES = binary-source-file.cc duration-convert.cc duration.cc includable-lexer.cc input.cc mapped-file-storage.cc moment.cc plet.cc simple-file-storage.cc source-file.cc source.cc template.cc warn.cc windhoos-suck-suck-suck-thank-you-cygnus.cc + +INCLUDES = -Iinclude -I../flower/include +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = config.hh +CONFIG_CLEAN_FILES = +LIBRARIES = $(lib_LIBRARIES) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I. +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +liblily_a_LIBADD = +liblily_a_OBJECTS = binary-source-file.o duration-convert.o duration.o \ +includable-lexer.o input.o mapped-file-storage.o moment.o plet.o \ +simple-file-storage.o source-file.o source.o template.o warn.o \ +windhoos-suck-suck-suck-thank-you-cygnus.o +AR = ar +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS) +CXXLINK = $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ +DIST_COMMON = Makefile.am Makefile.in config.hh.in stamp-h.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +SOURCES = $(liblily_a_SOURCES) +OBJECTS = $(liblily_a_OBJECTS) + +default: all + +.SUFFIXES: +.SUFFIXES: .c .cc .o +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps lib/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +config.hh: stamp-h +stamp-h: $(srcdir)/config.hh.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES= CONFIG_HEADERS=lib/config.hh:lib/config.hh.in \ + $(SHELL) ./config.status + @echo timestamp > stamp-h +$(srcdir)/config.hh.in: $(srcdir)/stamp-h.in +$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOHEADER) + @echo timestamp > $(srcdir)/stamp-h.in + +mostlyclean-hdr: + +clean-hdr: + +distclean-hdr: + rm -f config.hh + +maintainer-clean-hdr: + +mostlyclean-libLIBRARIES: + +clean-libLIBRARIES: + test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) + +distclean-libLIBRARIES: + +maintainer-clean-libLIBRARIES: + +install-libLIBRARIES: $(lib_LIBRARIES) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(libdir) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(INSTALL_DATA) $$p $(libdir)/$$p"; \ + $(INSTALL_DATA) $$p $(libdir)/$$p; \ + else :; fi; \ + done + @$(POST_INSTALL) + @list='$(lib_LIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(RANLIB) $(libdir)/$$p"; \ + $(RANLIB) $(libdir)/$$p; \ + else :; fi; \ + done + +uninstall-libLIBRARIES: + $(NORMAL_UNINSTALL) + list='$(lib_LIBRARIES)'; for p in $$list; do \ + rm -f $(libdir)/$$p; \ + done + +.c.o: + $(COMPILE) -c $< + +mostlyclean-compile: + rm -f *.o core + +clean-compile: + +distclean-compile: + rm -f *.tab.c + +maintainer-clean-compile: + +liblily.a: $(liblily_a_OBJECTS) $(liblily_a_DEPENDENCIES) + rm -f liblily.a + $(AR) cru liblily.a $(liblily_a_OBJECTS) $(liblily_a_LIBADD) + $(RANLIB) liblily.a +.cc.o: + $(CXXCOMPILE) -c $< + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + for subdir in $(SUBDIRS); do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + rev=''; for subdir in $(SUBDIRS); do rev="$$rev $$subdir"; done; \ + for subdir in $$rev; do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + (cd $$subdir && $(MAKE) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) config.hh.in $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + done; \ + test -z "$(ETAGS_ARGS)config.hh.in$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.hh.in $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = lib + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done + for subdir in $(SUBDIRS); do \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + done +binary-source-file.o binary-source-file.lo: binary-source-file.cc \ + include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/source-file.hh \ + include/binary-source-file.hh \ + ../flower/include/string-convert.hh +duration-convert.o duration-convert.lo: duration-convert.cc \ + include/duration-convert.hh include/duration.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh include/plet.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/varray.hh \ + include/warn.hh +duration.o duration.lo: duration.cc include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/source-file.hh \ + include/source.hh include/moment.hh \ + ../flower/include/rational.hh include/duration.hh \ + include/plet.hh include/duration-convert.hh \ + ../flower/include/varray.hh +includable-lexer.o includable-lexer.lo: includable-lexer.cc \ + include/includable-lexer.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/varray.hh include/proto.hh \ + include/source-file.hh include/source.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc +input.o input.lo: input.cc include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/input.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/source.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/source-file.hh +mapped-file-storage.o mapped-file-storage.lo: mapped-file-storage.cc +moment.o moment.lo: moment.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/moment.hh ../flower/include/rational.hh +plet.o plet.lo: plet.cc include/plet.hh include/moment.hh \ + ../flower/include/rational.hh ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh +simple-file-storage.o simple-file-storage.lo: simple-file-storage.cc \ + include/simple-file-storage.hh include/file-storage.hh \ + include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/warn.hh +source-file.o source-file.lo: source-file.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/proto.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/warn.hh \ + include/windhoos-suck-suck-suck-thank-you-cygnus.hh \ + include/source-file.hh include/simple-file-storage.hh \ + include/file-storage.hh +source.o source.lo: source.cc include/binary-source-file.hh \ + include/source-file.hh include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/source.hh ../flower/include/path.hh \ + ../flower/include/varray.hh +template.o template.lo: template.cc include/source-file.hh \ + include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/plist.tcc ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/pcursor.tcc \ + ../flower/include/cursor.tcc ../flower/include/list.tcc +warn.o warn.lo: warn.cc include/warn.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh +windhoos-suck-suck-suck-thank-you-cygnus.o windhoos-suck-suck-suck-thank-you-cygnus.lo: \ + windhoos-suck-suck-suck-thank-you-cygnus.cc + +info: info-recursive +dvi: dvi-recursive +check: all-am + $(MAKE) check-recursive +installcheck: installcheck-recursive +all-recursive-am: config.hh + $(MAKE) all-recursive + +all-am: Makefile $(LIBRARIES) config.hh + +install-exec-am: install-libLIBRARIES + +uninstall-am: uninstall-libLIBRARIES + +install-exec: install-exec-recursive install-exec-am + @$(NORMAL_INSTALL) + +install-data: install-data-recursive + @$(NORMAL_INSTALL) + +install: install-recursive install-exec-am + @: + +uninstall: uninstall-recursive uninstall-am + +all: all-recursive-am all-am + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: installdirs-recursive + $(mkinstalldirs) $(libdir) + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean-am: mostlyclean-hdr mostlyclean-libLIBRARIES \ + mostlyclean-compile mostlyclean-tags \ + mostlyclean-generic + +clean-am: clean-hdr clean-libLIBRARIES clean-compile clean-tags \ + clean-generic mostlyclean-am + +distclean-am: distclean-hdr distclean-libLIBRARIES distclean-compile \ + distclean-tags distclean-generic clean-am + +maintainer-clean-am: maintainer-clean-hdr maintainer-clean-libLIBRARIES \ + maintainer-clean-compile maintainer-clean-tags \ + maintainer-clean-generic distclean-am + +mostlyclean: mostlyclean-recursive mostlyclean-am + +clean: clean-recursive clean-am + +distclean: distclean-recursive distclean-am + rm -f config.status + +maintainer-clean: maintainer-clean-recursive maintainer-clean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default mostlyclean-hdr distclean-hdr clean-hdr \ +maintainer-clean-hdr mostlyclean-libLIBRARIES distclean-libLIBRARIES \ +clean-libLIBRARIES maintainer-clean-libLIBRARIES uninstall-libLIBRARIES \ +install-libLIBRARIES mostlyclean-compile distclean-compile \ +clean-compile maintainer-clean-compile install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info dvi \ +installcheck all-recursive-am all-am install-exec-am uninstall-am \ +install-exec install-data install uninstall all installdirs \ +mostlyclean-generic distclean-generic clean-generic \ +maintainer-clean-generic clean mostlyclean distclean maintainer-clean + + +MODULE_CXXFLAGS += -D_REENTRANT + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/lib/config.hh.in b/lib/config.hh.in index 1e7112e2c9..b10c27a7c1 100644 --- a/lib/config.hh.in +++ b/lib/config.hh.in @@ -1,6 +1,11 @@ /* @configure_input@ */ #ifndef CONFIG_HH #define CONFIG_HH + +/* default lilypond init and input dir */ #define DIR_DATADIR "@datadir@/lilypond" +/* the toplevel version string */ +#define TOPLEVEL_VERSION "0" + #endif diff --git a/lib/include/Makefile b/lib/include/Makefile deleted file mode 100644 index 43a98084f3..0000000000 --- a/lib/include/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -# lib/include/Makefile - -# subdir level: -# -depth = ../.. -# - -# identify module: -# -MODULE_NAME = lilypond - -# generic stuff/Makefile -# - -include ./$(depth)/make/Include.make - - diff --git a/lib/include/Makefile.am b/lib/include/Makefile.am new file mode 100644 index 0000000000..4e1e02f8bb --- /dev/null +++ b/lib/include/Makefile.am @@ -0,0 +1,8 @@ +# Automatically generated from ./lilypond-0.1.49/lib/include/Makefile.am.wild by bin/autowild +# Do not edit +# lib/include/Makefile + +noinst_HEADERS = binary-source-file.hh duration-convert.hh duration.hh file-storage.hh includable-lexer.hh input.hh mapped-file-storage.hh moment.hh plet.hh proto.hh simple-file-storage.hh source-file.hh source.hh warn.hh windhoos-suck-suck-suck-thank-you-cygnus.hh + +EXTRA_DIST = Makefile.am.wild + diff --git a/lib/include/Makefile.am.wild b/lib/include/Makefile.am.wild new file mode 100644 index 0000000000..3d8f060700 --- /dev/null +++ b/lib/include/Makefile.am.wild @@ -0,0 +1,6 @@ +# lib/include/Makefile + +noinst_HEADERS = $(wildcard *.hh) + +EXTRA_DIST = Makefile.am.wild + diff --git a/lib/include/Makefile.in b/lib/include/Makefile.in new file mode 100644 index 0000000000..c933326bc1 --- /dev/null +++ b/lib/include/Makefile.in @@ -0,0 +1,202 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./lib/include/Makefile.am.wild by bin/autowild +# Do not edit +# lib/include/Makefile + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +noinst_HEADERS = binary-source-file.hh duration-convert.hh duration.hh file-storage.hh includable-lexer.hh input.hh mapped-file-storage.hh moment.hh plet.hh proto.hh simple-file-storage.hh source-file.hh source.hh warn.hh windhoos-suck-suck-suck-thank-you-cygnus.hh + +EXTRA_DIST = Makefile.am.wild +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../../lib/config.hh +CONFIG_CLEAN_FILES = +HEADERS = $(noinst_HEADERS) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps lib/include/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + test -z "$(ETAGS_ARGS)$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = lib/include + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile $(HEADERS) + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-tags mostlyclean-generic + +clean: clean-tags clean-generic mostlyclean + +distclean: distclean-tags distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-tags maintainer-clean-generic \ + distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/lib/include/out/dummy.dep b/lib/include/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/lib/include/simple-file-storage.hh b/lib/include/simple-file-storage.hh index 78a00d8651..4deb0969ff 100644 --- a/lib/include/simple-file-storage.hh +++ b/lib/include/simple-file-storage.hh @@ -19,6 +19,9 @@ class Simple_file_storage : public File_storage { char * data_p_; int len_i_; + + void load_stdin (); + void load_file (String); protected: virtual char const*ch_C () const; virtual int length_i () const; diff --git a/lib/out/dummy.dep b/lib/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/lib/simple-file-storage.cc b/lib/simple-file-storage.cc index b80724d987..e7c9240b00 100644 --- a/lib/simple-file-storage.cc +++ b/lib/simple-file-storage.cc @@ -13,28 +13,28 @@ #include "string.hh" #include "warn.hh" -/** - Stupid but foolproof way of opening files. - - TODO - Should check IO status - - This is of course a build it yourself version of mmap, so we should - have been using that... (see Mapped_file_storage) But we noticed - some problems with this (unexplained lexer crashes) - - [Some versions later] The crashes aren't caused by the mmap - code. But no reason to take it out, is there? */ - -Simple_file_storage::Simple_file_storage (String s) +void +Simple_file_storage::load_stdin () { - data_p_ =0; + int data_len = 0; + len_i_ = 0; + + int c; + Array ch_arr; + while ((c = fgetc (stdin)) != EOF) + ch_arr.push (c); + len_i_ = ch_arr.size (); + data_p_ = ch_arr.remove_array_p (); +} +void +Simple_file_storage::load_file (String s) +{ /* let's hope that "b" opens anything binary, and does not apply CR/LF translation */ - FILE * f = (s.length_i ()) ? fopen (s.ch_C (), "rb") : stdin; + FILE * f = fopen (s.ch_C (), "rb"); if (!f) { @@ -49,13 +49,37 @@ Simple_file_storage::Simple_file_storage (String s) data_p_[len_i_] = 0; ret = fread (data_p_, sizeof (char), len_i_, f); - if (ret!=len_i_) warning (_ ("Huh? got ") + String (ret) + _ (", expected ") + String (len_i_) + _ (" characters")); - if (f != stdin) - fclose (f); + fclose (f); +} + +/** + Stupid but foolproof way of opening files. + + TODO + Should check IO status + + This is of course a build it yourself version of mmap, so we should + have been using that... (see Mapped_file_storage) But we noticed + some problems with this (unexplained lexer crashes) + + [Some versions later] The crashes aren't caused by the mmap + code. But no reason to take it out, is there? mmap () + +*/ + +Simple_file_storage::Simple_file_storage (String s) +{ + data_p_ = 0; + len_i_ = 0; + + if (!s.length_i ()) + load_stdin (); + else + load_file (s); } char const* diff --git a/lib/stamp-h.in b/lib/stamp-h.in new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lily/Makefile b/lily/Makefile deleted file mode 100644 index 936d4c31a7..0000000000 --- a/lily/Makefile +++ /dev/null @@ -1,80 +0,0 @@ -# project LilyPond -- the musical typesetter -# title makefile for lilypond -# file lily/Makefile -# -# Copyright (c) 1997 by -# Jan Nieuwenhuizen -# Han-Wen Nienhuys -# - -# subdir level: -# -depth = .. -# - -# identify module: -# -NAME = lilypond -# - -# generic variables: -# -include Stable.make -include ./$(depth)/make/Variables.make -include VERSION -# - -# descent order into subdirectories: -# -SUBDIRS = include -# - - -# list of distribution files: -# -EXTRA_DISTFILES = VERSION -# - -# list of custom libraries: -# -MODULE_LIBDEPS= check-flower-deps check-lib-deps -MODULE_LIBES= -llily -lflower - -# - -# main target of this module: -# - -default: $(EXECUTABLE) - -out/engraver.o: include/engraver.hh -# -include ./$(depth)/make/Files.make - -# generic targets and rules: -# -include ./$(depth)/make/Targets.make -include ./$(depth)/make/Rules.make -# - -# force these: Make can't know these have to be generated in advance -my-lily-lexer.cc: $(outdir)/parser.hh -$(outdir)/lexer.cc: $(outdir)/parser.hh - -# - - -localclean: - rm -f $(outdir)/parser.* $(outdir)/lexer.cc - -#should merge with mi2mu rule -localinstall: installexe - -localuninstall: uninstallexe - -$(outdir)/lily-version.o: $(outdir)/version.hh - -# make config.hh. Ugh -$(outdir)/main.o: $(libout)/config.hh - -$(libout)/config.hh: check-lib-deps diff --git a/lily/Makefile.am b/lily/Makefile.am new file mode 100644 index 0000000000..4a4a0ca225 --- /dev/null +++ b/lily/Makefile.am @@ -0,0 +1,53 @@ +# Automatically generated from ./lilypond-0.1.49/lily/Makefile.am.wild by bin/autowild +# Do not edit +# project LilyPond -- the musical typesetter # title makefile for lilypond +# file lily/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +SUBDIRS = include + +bin_PROGRAMS = lilypond + +# ignoring wildcards for `lexer.cc' +# ignoring wildcards for `parser.cc' + +lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc elem-group.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-item.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy +noinst_HEADERS = parser.hh + +lilypond_LDADD = -llily -lflower @LEXLIB@ + +lilypond_LDFLAGS = -L../lib -L../flower + +INCLUDES = -I. -Iinclude -I../lib/include -I../flower/include + +EXTRA_DIST = Makefile.am.wild Stable.make VERSION + +# force these: Make can't know these have to be generated in advance +my-lily-lexer.cc: parser.hh +lexer.cc: parser.hh + +# ugh, autoconf assumes to get $(LEX_OUTPUT_ROOT).c ... +.ll.cc: + @echo "must override autoconf; ignore warning" + $(LEX) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).cc $@ +#.yy.hh: +parser.hh: parser.yy + $(BISON) -d $< + mv $<.tab.h $@ + mv $<.tab.c $(shell basename $@ .hh).cc +# .ll.cc: +# ugh, stupid automake +# now set output root by hand... +# touch lex.yy.cc + +# .yy.cc: +# $(BISON) $< +# mv $(shell basename $@ .cc ).tab.c $@ +# $(FLEX) -Cfe -p -p -t $< > $@ +# # could be faster: +# # $(FLEX) -8 -Cf -t $< > $@ + diff --git a/lily/Makefile.am.wild b/lily/Makefile.am.wild new file mode 100644 index 0000000000..cfee24cd3d --- /dev/null +++ b/lily/Makefile.am.wild @@ -0,0 +1,50 @@ +# project LilyPond -- the musical typesetter # title makefile for lilypond +# file lily/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + +SUBDIRS = include + +bin_PROGRAMS = lilypond + +nowildcard: lexer.cc parser.cc + +lilypond_SOURCES = $(wildcard *.cc *.ll *.yy) +noinst_HEADERS = parser.hh + +lilypond_LDADD = -llily -lflower @LEXLIB@ + +lilypond_LDFLAGS = -L../lib -L../flower + +INCLUDES = -I. -Iinclude -I../lib/include -I../flower/include + +EXTRA_DIST = Makefile.am.wild Stable.make VERSION + +# force these: Make can't know these have to be generated in advance +my-lily-lexer.cc: parser.hh +lexer.cc: parser.hh + +# ugh, autoconf assumes to get $(LEX_OUTPUT_ROOT).c ... +.ll.cc: + @echo "must override autoconf; ignore warning" + $(LEX) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).cc $@ +#.yy.hh: +parser.hh: parser.yy + $(BISON) -d $< + mv $<.tab.h $@ + mv $<.tab.c $(shell basename $@ .hh).cc +# .ll.cc: +# ugh, stupid automake +# now set output root by hand... +# touch lex.yy.cc + +# .yy.cc: +# $(BISON) $< +# mv $(shell basename $@ .cc ).tab.c $@ +# $(FLEX) -Cfe -p -p -t $< > $@ +# # could be faster: +# # $(FLEX) -8 -Cf -t $< > $@ + diff --git a/lily/Makefile.in b/lily/Makefile.in new file mode 100644 index 0000000000..9bec8d02f8 --- /dev/null +++ b/lily/Makefile.in @@ -0,0 +1,4509 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./lily/Makefile.am.wild by bin/autowild +# Do not edit +# project LilyPond -- the musical typesetter # title makefile for lilypond +# file lily/Makefile.am.wild +# +# Copyright (c) 1997 by +# Jan Nieuwenhuizen +# Han-Wen Nienhuys +# + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = .. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +SUBDIRS = include + +bin_PROGRAMS = lilypond + +lilypond_SOURCES = abbrev.cc abbreviation-beam-engraver.cc abbreviation-beam.cc atom.cc audio-column.cc audio-element.cc audio-item.cc audio-staff.cc axis-group-administration.cc axis-group-element.cc axis-group-item.cc axis-group-spanner.cc axis.cc bar-column-grav.cc bar-column.cc bar-grav.cc bar-number-grav.cc bar.cc beam-grav.cc beam-swallow-trans.cc beam.cc bow.cc boxes.cc break-align-item.cc break.cc change-iterator.cc change-translator.cc chord-iterator.cc clef-grav.cc clef-item.cc col-info.cc colhpos.cc collision-grav.cc collision.cc command-request.cc crescendo.cc debug.cc dimen.cc directional-spanner.cc dot-column-grav.cc dot-column.cc dots.cc dynamic-grav.cc elem-group.cc engraver-group.cc engraver.cc general-script-def.cc global-translator.cc gourlay-breaking.cc graphical-element.cc grouping.cc head-grav.cc header.cc horizontal-align-item.cc horizontal-group-item.cc horizontal-vertical-group-item.cc idealspacing.cc identifier.cc ineq-constrained-qp.cc item.cc key-grav.cc key-item.cc key-performer.cc key.cc keyword.cc leastsquares.cc lexerinit.cc lily-version.cc line-group-grav.cc line-spacer.cc local-key-grav.cc local-key-item.cc lookup.cc lyric-grav.cc lyric-performer.cc main.cc meter-grav.cc meter-performer.cc meter.cc midi-def.cc midi-item.cc midi-stream.cc midi-walker.cc misc.cc molecule.cc music-iterator.cc music-list.cc music-output-def.cc music.cc musical-request.cc my-lily-lexer.cc my-lily-parser.cc note-column.cc note-head.cc note-performer.cc note.cc notename-table.cc offset.cc outputter.cc p-col.cc p-score.cc paper-def.cc performance.cc performer-group-performer.cc performer.cc pitch-squash-grav.cc plet-engraver.cc plet-spanner.cc plet-swallow-engraver.cc priority-halign-grav.cc property-iterator.cc ps-plet.cc qlp.cc qlpsolve.cc request-iterator.cc request.cc rest-collision-grav.cc rest-collision.cc rest-grav.cc rest.cc rhythmic-column-grav.cc rhythmic-head.cc score-bar.cc score-column.cc score-elem-info.cc score-elem.cc score-grav.cc score-performer.cc score-priority-grav.cc score.cc scoreline.cc scores.cc script-column.cc script-def.cc script-grav.cc script.cc slur-grav.cc slur.cc span-bar-grav.cc span-bar.cc span-score-bar-grav.cc span-score-bar.cc spanner.cc spring-spacer.cc staff-info.cc staff-performer.cc staff-side.cc staff-sym-grav.cc staff-sym.cc stem-grav.cc stem-info.cc stem.cc super-elem.cc swallow-grav.cc swallow-perf.cc symtable.cc template1.cc template2.cc template3.cc template4.cc template5.cc template6.cc template7.cc template8.cc tex-beam.cc tex-slur.cc tex-stream.cc tex.cc text-def.cc text-item.cc text-spanner.cc tie-grav.cc tie.cc time-description.cc timing-grav.cc timing-translator.cc translation-property.cc translator-ctors.cc translator-group.cc translator.cc type-swallow-trans.cc version.cc vertical-align-elem.cc vertical-align-grav.cc vertical-align-spanner.cc vertical-group-spanner.cc voice-iterator.cc warn.cc word-wrap.cc lexer.ll parser.yy +noinst_HEADERS = parser.hh + +lilypond_LDADD = -llily -lflower @LEXLIB@ + +lilypond_LDFLAGS = -L../lib -L../flower + +INCLUDES = -I. -Iinclude -I../lib/include -I../flower/include + +EXTRA_DIST = Makefile.am.wild Stable.make VERSION +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../lib/config.hh +CONFIG_CLEAN_FILES = +PROGRAMS = $(bin_PROGRAMS) + + +DEFS = @DEFS@ -I. -I$(srcdir) -I../lib +LDFLAGS = @LDFLAGS@ +LIBS = @LIBS@ +lilypond_OBJECTS = abbrev.o abbreviation-beam-engraver.o \ +abbreviation-beam.o atom.o audio-column.o audio-element.o audio-item.o \ +audio-staff.o axis-group-administration.o axis-group-element.o \ +axis-group-item.o axis-group-spanner.o axis.o bar-column-grav.o \ +bar-column.o bar-grav.o bar-number-grav.o bar.o beam-grav.o \ +beam-swallow-trans.o beam.o bow.o boxes.o break-align-item.o break.o \ +change-iterator.o change-translator.o chord-iterator.o clef-grav.o \ +clef-item.o col-info.o colhpos.o collision-grav.o collision.o \ +command-request.o crescendo.o debug.o dimen.o directional-spanner.o \ +dot-column-grav.o dot-column.o dots.o dynamic-grav.o elem-group.o \ +engraver-group.o engraver.o general-script-def.o global-translator.o \ +gourlay-breaking.o graphical-element.o grouping.o head-grav.o header.o \ +horizontal-align-item.o horizontal-group-item.o \ +horizontal-vertical-group-item.o idealspacing.o identifier.o \ +ineq-constrained-qp.o item.o key-grav.o key-item.o key-performer.o \ +key.o keyword.o leastsquares.o lexerinit.o lily-version.o \ +line-group-grav.o line-spacer.o local-key-grav.o local-key-item.o \ +lookup.o lyric-grav.o lyric-performer.o main.o meter-grav.o \ +meter-performer.o meter.o midi-def.o midi-item.o midi-stream.o \ +midi-walker.o misc.o molecule.o music-iterator.o music-list.o \ +music-output-def.o music.o musical-request.o my-lily-lexer.o \ +my-lily-parser.o note-column.o note-head.o note-performer.o note.o \ +notename-table.o offset.o outputter.o p-col.o p-score.o paper-def.o \ +performance.o performer-group-performer.o performer.o \ +pitch-squash-grav.o plet-engraver.o plet-spanner.o \ +plet-swallow-engraver.o priority-halign-grav.o property-iterator.o \ +ps-plet.o qlp.o qlpsolve.o request-iterator.o request.o \ +rest-collision-grav.o rest-collision.o rest-grav.o rest.o \ +rhythmic-column-grav.o rhythmic-head.o score-bar.o score-column.o \ +score-elem-info.o score-elem.o score-grav.o score-performer.o \ +score-priority-grav.o score.o scoreline.o scores.o script-column.o \ +script-def.o script-grav.o script.o slur-grav.o slur.o span-bar-grav.o \ +span-bar.o span-score-bar-grav.o span-score-bar.o spanner.o \ +spring-spacer.o staff-info.o staff-performer.o staff-side.o \ +staff-sym-grav.o staff-sym.o stem-grav.o stem-info.o stem.o \ +super-elem.o swallow-grav.o swallow-perf.o symtable.o template1.o \ +template2.o template3.o template4.o template5.o template6.o template7.o \ +template8.o tex-beam.o tex-slur.o tex-stream.o tex.o text-def.o \ +text-item.o text-spanner.o tie-grav.o tie.o time-description.o \ +timing-grav.o timing-translator.o translation-property.o \ +translator-ctors.o translator-group.o translator.o type-swallow-trans.o \ +version.o vertical-align-elem.o vertical-align-grav.o \ +vertical-align-spanner.o vertical-group-spanner.o voice-iterator.o \ +warn.o word-wrap.o lexer.o parser.o +lilypond_DEPENDENCIES = +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ +LEXLIB = @LEXLIB@ +CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS) +CXXLINK = $(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ +HEADERS = $(noinst_HEADERS) + +DIST_COMMON = Makefile.am Makefile.in lexer.cc parser.cc + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +SOURCES = $(lilypond_SOURCES) +OBJECTS = $(lilypond_OBJECTS) + +default: all + +.SUFFIXES: +.SUFFIXES: .c .cc .h .ll .o .yy +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps lily/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +mostlyclean-binPROGRAMS: + +clean-binPROGRAMS: + test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + +distclean-binPROGRAMS: + +maintainer-clean-binPROGRAMS: + +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + $(mkinstalldirs) $(bindir) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + if test -f $$p; then \ + echo " $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`"; \ + $(INSTALL_PROGRAM) $$p $(bindir)/`echo $$p|sed '$(transform)'`; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + $(NORMAL_UNINSTALL) + list='$(bin_PROGRAMS)'; for p in $$list; do \ + rm -f $(bindir)/`echo $$p|sed '$(transform)'`; \ + done + +.c.o: + $(COMPILE) -c $< + +mostlyclean-compile: + rm -f *.o core + +clean-compile: + +distclean-compile: + rm -f *.tab.c + +maintainer-clean-compile: + +lilypond: $(lilypond_OBJECTS) $(lilypond_DEPENDENCIES) + @rm -f lilypond + $(CXXLINK) $(lilypond_LDFLAGS) $(lilypond_OBJECTS) $(lilypond_LDADD) $(LIBS) +.yy.cc: + $(YACC) $(YFLAGS) $< && mv y.tab.c $@ + if test -f y.tab.h; then \ + if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \ + else :; fi +.yy.h: + $(YACC) $(YFLAGS) $< && mv y.tab.c $@ + if test -f y.tab.h; then \ + if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \ + else :; fi +.ll.cc: + $(LEX) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).c $@ +.cc.o: + $(CXXCOMPILE) -c $< + +# This directory's subdirectories are mostly independent; you can cd +# into them and run `make' without going through this Makefile. +# To change the values of `make' variables: instead of editing Makefiles, +# (1) if the variable is set in `config.status', edit `config.status' +# (which will cause the Makefiles to be regenerated when you run `make'); +# (2) otherwise, pass the desired values on the `make' command line. + +@SET_MAKE@ + +all-recursive install-data-recursive install-exec-recursive \ +installdirs-recursive install-recursive uninstall-recursive \ +check-recursive installcheck-recursive info-recursive dvi-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + for subdir in $(SUBDIRS); do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" + +mostlyclean-recursive clean-recursive distclean-recursive \ +maintainer-clean-recursive: + @set fnord $(MAKEFLAGS); amf=$$2; \ + rev=''; for subdir in $(SUBDIRS); do rev="$$rev $$subdir"; done; \ + for subdir in $$rev; do \ + target=`echo $@ | sed s/-recursive//`; \ + echo "Making $$target in $$subdir"; \ + (cd $$subdir && $(MAKE) $$target) \ + || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \ + done && test -z "$$fail" +tags-recursive: + list='$(SUBDIRS)'; for subdir in $$list; do \ + (cd $$subdir && $(MAKE) tags); \ + done + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \ + done; \ + test -z "$(ETAGS_ARGS)$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = lily + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done + for subdir in $(SUBDIRS); do \ + test -d $(distdir)/$$subdir \ + || mkdir $(distdir)/$$subdir \ + || exit 1; \ + chmod 777 $(distdir)/$$subdir; \ + (cd $$subdir && $(MAKE) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \ + || exit 1; \ + done +abbrev.o abbrev.lo: abbrev.cc include/abbrev.hh include/item.hh \ + include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/beam.hh include/directional-spanner.hh \ + include/spanner.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/lookup.hh include/atom.hh \ + ../flower/include/scalar.hh include/stem.hh include/molecule.hh \ + include/dimen.hh +abbreviation-beam-engraver.o abbreviation-beam-engraver.lo: \ + abbreviation-beam-engraver.cc \ + ../lib/include/duration-convert.hh ../lib/include/duration.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh ../lib/include/plet.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/varray.hh \ + include/time-description.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/abbreviation-beam-engraver.hh \ + include/engraver.hh include/request.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/drul-array.hh \ + include/stem.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/abbreviation-beam.hh include/beam.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/musical-request.hh include/misc.hh include/grouping.hh +abbreviation-beam.o abbreviation-beam.lo: abbreviation-beam.cc \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/dimen.hh \ + include/abbreviation-beam.hh include/beam.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/misc.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/scalar.hh \ + include/grouping.hh include/minterval.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/atom.hh include/molecule.hh include/leastsquares.hh \ + include/stem.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/lookup.hh \ + include/stem-info.hh +atom.o atom.lo: atom.cc include/atom.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/tex.hh \ + ../flower/include/scalar.hh include/dimen.hh \ + ../flower/include/varray.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +audio-column.o audio-column.lo: audio-column.cc include/audio-column.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/lily-proto.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/audio-item.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/audio-element.hh \ + ../flower/include/virtual-methods.hh include/performance.hh \ + include/music-output.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +audio-element.o audio-element.lo: audio-element.cc \ + include/audio-element.hh ../flower/include/virtual-methods.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh +audio-item.o audio-item.lo: audio-item.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/audio-item.hh \ + include/audio-element.hh ../flower/include/virtual-methods.hh \ + include/midi-item.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../lib/include/moment.hh \ + ../flower/include/rational.hh include/request.hh \ + ../lib/include/input.hh include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/audio-column.hh +audio-staff.o audio-staff.lo: audio-staff.cc include/audio-staff.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/lily-proto.hh include/audio-element.hh \ + ../flower/include/virtual-methods.hh include/audio-item.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/midi-item.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/midi-stream.hh include/midi-walker.hh \ + ../flower/include/pqueue.hh ../flower/include/varray.hh +axis-group-administration.o axis-group-administration.lo: \ + axis-group-administration.cc ../flower/include/interval.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/compare.hh \ + include/axis-group-administration.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +axis-group-element.o axis-group-element.lo: axis-group-element.cc \ + include/axis-group-element.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh \ + include/axis-group-administration.hh +axis-group-item.o axis-group-item.lo: axis-group-item.cc \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +axis-group-spanner.o axis-group-spanner.lo: axis-group-spanner.cc \ + include/axis-group-spanner.hh include/spanner.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-item.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +axis.o axis.lo: axis.cc include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh +bar-column-grav.o bar-column-grav.lo: bar-column-grav.cc \ + include/bar-column-grav.hh include/engraver.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/bar-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/elem-group.hh \ + include/script.hh include/staff-side.hh include/bar.hh +bar-column.o bar-column.lo: bar-column.cc include/bar.hh include/item.hh \ + include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/bar-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh +bar-grav.o bar-grav.lo: bar-grav.cc include/bar-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/bar.hh include/item.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/command-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/time-description.hh \ + include/engraver-group.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/translator-group.hh +bar-number-grav.o bar-number-grav.lo: bar-number-grav.cc \ + include/bar-number-grav.hh include/engraver.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/script.hh \ + include/staff-side.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/text-def.hh include/general-script-def.hh \ + include/command-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/bar.hh \ + include/time-description.hh +bar.o bar.lo: bar.cc include/bar.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +beam-grav.o beam-grav.lo: beam-grav.cc \ + ../lib/include/duration-convert.hh ../lib/include/duration.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh ../lib/include/plet.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/varray.hh \ + include/time-description.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/beam-grav.hh \ + include/engraver.hh include/request.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/drul-array.hh \ + include/stem.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/beam.hh include/directional-spanner.hh \ + include/spanner.hh include/musical-request.hh \ + include/grouping.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh +beam-swallow-trans.o beam-swallow-trans.lo: beam-swallow-trans.cc \ + include/type-swallow-trans.hh include/translator.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/musical-request.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh +beam.o beam.lo: beam.cc include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/dimen.hh include/beam.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/abbreviation-beam.hh include/misc.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/scalar.hh include/grouping.hh \ + include/minterval.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/atom.hh include/molecule.hh include/leastsquares.hh \ + include/stem.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/lookup.hh \ + include/stem-info.hh include/main.hh +bow.o bow.lo: bow.cc include/bow.hh include/directional-spanner.hh \ + include/spanner.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/molecule.hh include/boxes.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh +boxes.o boxes.lo: boxes.cc include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/varray.hh +break-align-item.o break-align-item.lo: break-align-item.cc \ + include/break-align-item.hh include/horizontal-align-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh +break.o break.lo: break.cc include/score-column.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/break.hh include/colhpos.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/line-spacer.hh ../flower/include/vector.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/scoreline.hh include/spanner.hh \ + include/p-score.hh include/music-output.hh \ + ../flower/include/cpu-timer.hh +change-iterator.o change-iterator.lo: change-iterator.cc \ + include/change-iterator.hh include/music-iterator.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/varray.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/virtual-methods.hh \ + include/translator-group.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/parray.hh \ + ../lib/include/input.hh include/change-translator.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +change-translator.o change-translator.lo: change-translator.cc \ + include/change-translator.hh include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +chord-iterator.o chord-iterator.lo: chord-iterator.cc \ + include/translator-group.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/chord-iterator.hh \ + include/music-iterator.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-list.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh +clef-grav.o clef-grav.lo: clef-grav.cc include/bar.hh include/item.hh \ + include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/clef-grav.hh \ + ../flower/include/scalar.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh include/staff-info.hh \ + include/translator.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/clef-item.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/command-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/time-description.hh +clef-item.o clef-item.lo: clef-item.cc include/clef-item.hh \ + include/item.hh include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh \ + include/clef-grav.hh include/engraver.hh include/request.hh \ + ../lib/include/input.hh include/music.hh include/minterval.hh \ + include/score-elem-info.hh include/staff-info.hh \ + include/translator.hh +col-info.o col-info.lo: col-info.cc include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/col-info.hh \ + ../flower/include/pointer.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +colhpos.o colhpos.lo: colhpos.cc include/colhpos.hh \ + ../flower/include/varray.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/warn.hh ../flower/include/vector.hh \ + include/line-spacer.hh ../flower/include/interval.hh +collision-grav.o collision-grav.lo: collision-grav.cc \ + include/note-column.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/collision-grav.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/collision.hh +collision.o collision.lo: collision.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/collision.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/interval.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/elem-group.hh include/note-column.hh \ + include/script-column.hh include/note-head.hh \ + include/rhythmic-head.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh +command-request.o command-request.lo: command-request.cc \ + include/command-request.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/lily-proto.hh \ + include/direction.hh ../flower/include/varray.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/musical-request.hh +crescendo.o crescendo.lo: crescendo.cc include/molecule.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/direction.hh \ + include/dimen.hh include/crescendo.hh include/staff-side.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/spanner.hh \ + include/drul-array.hh include/lookup.hh include/atom.hh \ + ../flower/include/scalar.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/score-column.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh +debug.o debug.lo: debug.cc include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh ../flower/include/flower-debug.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/main.hh +dimen.o dimen.lo: dimen.cc include/dimen.hh ../flower/include/real.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/debug.hh ../flower/include/dstream.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh +directional-spanner.o directional-spanner.lo: directional-spanner.cc \ + include/directional-spanner.hh include/spanner.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh +dot-column-grav.o dot-column-grav.lo: dot-column-grav.cc +dot-column.o dot-column.lo: dot-column.cc include/dots.hh \ + include/item.hh include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/dot-column.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/rhythmic-head.hh +dots.o dots.lo: dots.cc include/dots.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh +dynamic-grav.o dynamic-grav.lo: dynamic-grav.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/crescendo.hh \ + include/staff-side.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/spanner.hh include/drul-array.hh \ + include/dynamic-grav.hh include/engraver.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../lib/include/input.hh include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/musical-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/text-item.hh include/text-def.hh \ + include/general-script-def.hh include/item.hh include/boxes.hh \ + include/lookup.hh include/atom.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/score-column.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/staff-sym.hh include/note-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh +elem-group.o elem-group.lo: elem-group.cc include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +engraver-group.o engraver-group.lo: engraver-group.cc \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/engraver-group.hh include/lily-proto.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/p-score.hh include/colhpos.hh include/music-output.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh +engraver.o engraver.lo: engraver.cc include/music-list.hh \ + include/music.hh ../flower/include/virtual-methods.hh \ + ../lib/include/input.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/musical-request.hh \ + include/request.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/engraver.hh ../flower/include/varray.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/engraver-group.hh \ + include/translator-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +general-script-def.o general-script-def.lo: general-script-def.cc \ + include/general-script-def.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../lib/include/input.hh \ + ../flower/include/virtual-methods.hh include/direction.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/warn.hh include/atom.hh include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh +global-translator.o global-translator.lo: global-translator.cc \ + include/global-translator.hh include/translator-group.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/rational.hh ../flower/include/pqueue.hh +gourlay-breaking.o gourlay-breaking.lo: gourlay-breaking.cc \ + include/gourlay-breaking.hh include/break.hh \ + ../flower/include/varray.hh ../flower/include/interval.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/compare.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/colhpos.hh \ + include/spring-spacer.hh include/line-spacer.hh \ + ../flower/include/vector.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/col-info.hh \ + ../flower/include/pointer.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/warn.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/p-score.hh include/music-output.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh +graphical-element.o graphical-element.lo: graphical-element.cc \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh \ + ../flower/include/virtual-methods.hh \ + include/axis-group-element.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/directed-graph.hh \ + include/axis-group-administration.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +grouping.o grouping.lo: grouping.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/grouping.hh include/minterval.hh \ + ../flower/include/interval.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/varray.hh +head-grav.o head-grav.lo: head-grav.cc include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/head-grav.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/musical-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/dots.hh +header.o header.lo: header.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/dictionary-iter.hh \ + ../flower/include/assoc-iter.hh ../flower/include/assoc.hh \ + ../flower/include/varray.hh ../flower/include/dictionary.hh \ + include/header.hh +horizontal-align-item.o horizontal-align-item.lo: \ + horizontal-align-item.cc include/horizontal-align-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +horizontal-group-item.o horizontal-group-item.lo: \ + horizontal-group-item.cc include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +horizontal-vertical-group-item.o horizontal-vertical-group-item.lo: \ + horizontal-vertical-group-item.cc \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/elem-group.hh include/p-col.hh \ + include/horizontal-group-item.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +idealspacing.o idealspacing.lo: idealspacing.cc include/idealspacing.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/p-score.hh \ + include/colhpos.hh include/music-output.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +identifier.o identifier.lo: identifier.cc include/midi-def.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/paper-def.hh ../flower/include/interval.hh \ + include/score.hh ../lib/include/input.hh \ + ../flower/include/parray.hh include/identifier.hh \ + include/my-lily-lexer.hh ../lib/include/includable-lexer.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/symtable.hh include/atom.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/lookup.hh ../flower/include/scalar.hh \ + include/direction.hh include/script-def.hh \ + include/general-script-def.hh include/request.hh \ + include/music.hh include/minterval.hh include/translator.hh +ineq-constrained-qp.o ineq-constrained-qp.lo: ineq-constrained-qp.cc \ + include/ineq-constrained-qp.hh ../flower/include/matrix.hh \ + ../flower/include/matrix-storage.hh ../flower/include/varray.hh \ + ../flower/include/real.hh ../flower/include/virtual-methods.hh \ + ../flower/include/vector.hh include/qlpsolve.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh ../flower/include/choleski.hh +item.o item.lo: item.cc include/p-score.hh include/colhpos.hh \ + ../flower/include/varray.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/parray.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/music-output.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/item.hh include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/direction.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/spanner.hh +key-grav.o key-grav.lo: key-grav.cc include/key-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/key.hh include/key-item.hh \ + include/item.hh include/boxes.hh include/offset.hh \ + include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/command-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/local-key-grav.hh \ + include/musical-request.hh include/local-key-item.hh \ + include/bar.hh include/time-description.hh +key-item.o key-item.lo: key-item.cc include/key-item.hh include/item.hh \ + include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/key.hh ../flower/include/scalar.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh include/key-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh include/staff-info.hh \ + include/translator.hh +key-performer.o key-performer.lo: key-performer.cc \ + include/key-performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/performer.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/command-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/audio-item.hh include/audio-element.hh +key.o key.lo: key.cc include/key.hh ../flower/include/varray.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh +keyword.o keyword.lo: keyword.cc include/keyword.hh +leastsquares.o leastsquares.lo: leastsquares.cc include/leastsquares.hh \ + ../flower/include/varray.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh +lexer.o lexer.lo: lexer.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/string-convert.hh include/my-lily-lexer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/varray.hh ../lib/include/includable-lexer.hh \ + ../lib/include/duration.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/plet.hh \ + ../flower/include/interval.hh parser.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/parseconstruct.hh include/main.hh include/identifier.hh \ + ../lib/include/input.hh ../flower/include/virtual-methods.hh +lexerinit.o lexerinit.lo: lexerinit.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/my-lily-lexer.hh \ + include/lily-proto.hh ../flower/include/varray.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../lib/include/includable-lexer.hh ../lib/include/duration.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../lib/include/plet.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/main.hh ../lib/include/source-file.hh \ + ../lib/include/source.hh +lily-version.o lily-version.lo: lily-version.cc ../lib/config.hh +line-group-grav.o line-group-grav.lo: line-group-grav.cc \ + include/staff-sym.hh include/spanner.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/vertical-group-spanner.hh \ + include/axis-group-spanner.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/command-request.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../lib/include/input.hh include/music.hh include/minterval.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/bar.hh include/item.hh include/boxes.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/line-group-grav.hh \ + include/engraver.hh include/score-elem-info.hh \ + ../flower/include/scalar.hh include/staff-info.hh \ + include/translator.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/p-col.hh \ + include/horizontal-group-item.hh include/axis-group-item.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc +line-spacer.o line-spacer.lo: line-spacer.cc include/line-spacer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh ../flower/include/vector.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh +local-key-grav.o local-key-grav.lo: local-key-grav.cc \ + include/musical-request.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/command-request.hh ../flower/include/varray.hh \ + include/local-key-grav.hh include/engraver.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/key.hh \ + include/local-key-item.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/key-grav.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/key-item.hh include/tie.hh include/bow.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/note-head.hh include/rhythmic-head.hh \ + include/time-description.hh +local-key-item.o local-key-item.lo: local-key-item.cc include/dimen.hh \ + ../flower/include/real.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/local-key-item.hh include/item.hh include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/scalar.hh include/lookup.hh include/atom.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/musical-request.hh include/request.hh \ + ../lib/include/input.hh include/music.hh include/minterval.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/note-head.hh include/rhythmic-head.hh include/misc.hh \ + include/grouping.hh +lookup.o lookup.lo: lookup.cc include/lookup.hh include/atom.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/scalar.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/symtable.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/dimen.hh include/tex.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/main.hh +lyric-grav.o lyric-grav.lo: lyric-grav.cc include/lyric-engraver.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/musical-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/text-item.hh include/text-def.hh \ + include/general-script-def.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/staff-side.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/lookup.hh include/atom.hh +lyric-performer.o lyric-performer.lo: lyric-performer.cc \ + include/lyric-performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/performer.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/text-def.hh \ + include/general-script-def.hh include/musical-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/audio-item.hh include/audio-element.hh +main.o main.lo: main.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/lgetopt.hh \ + include/misc.hh include/lily-proto.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/main.hh \ + ../flower/include/path.hh ../lib/config.hh \ + ../lib/include/source.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/my-lily-parser.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh ../lib/include/input.hh +meter-grav.o meter-grav.lo: meter-grav.cc include/meter-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/time-description.hh \ + include/grouping.hh include/meter.hh include/item.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/command-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/timing-grav.hh \ + include/timing-translator.hh include/engraver-group.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/translator-group.hh +meter-performer.o meter-performer.lo: meter-performer.cc \ + include/meter-performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/performer.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/command-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/audio-item.hh include/audio-element.hh +meter.o meter.lo: meter.cc ../flower/include/scalar.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/molecule.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh \ + include/direction.hh include/meter.hh include/item.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh +midi-def.o midi-def.lo: midi-def.cc include/misc.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/midi-def.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/translator.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/performance.hh include/music-output.hh \ + ../flower/include/assoc-iter.hh include/score-performer.hh \ + include/performer-group-performer.hh include/performer.hh \ + include/request.hh include/music.hh include/direction.hh \ + include/score-elem-info.hh include/staff-info.hh \ + include/translator-group.hh include/global-translator.hh \ + ../flower/include/pqueue.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +midi-item.o midi-item.lo: midi-item.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/lily-proto.hh \ + ../lib/include/warn.hh include/misc.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/scalar.hh \ + include/grouping.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/varray.hh \ + ../flower/include/string-convert.hh include/command-request.hh \ + include/request.hh ../flower/include/virtual-methods.hh \ + ../lib/include/input.hh include/music.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/musical-request.hh include/midi-item.hh \ + include/midi-stream.hh include/audio-item.hh \ + include/audio-element.hh +midi-stream.o midi-stream.lo: midi-stream.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/string-convert.hh include/main.hh \ + include/lily-proto.hh ../lib/include/proto.hh include/misc.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/scalar.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/midi-item.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/virtual-methods.hh include/midi-stream.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +midi-walker.o midi-walker.lo: midi-walker.cc include/midi-walker.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/pqueue.hh ../flower/include/varray.hh \ + include/lily-proto.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + include/audio-column.hh include/audio-item.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/audio-element.hh \ + ../flower/include/virtual-methods.hh include/audio-staff.hh \ + include/midi-item.hh include/midi-stream.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +misc.o misc.lo: misc.cc include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/misc.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/scalar.hh \ + include/grouping.hh include/minterval.hh +molecule.o molecule.lo: molecule.cc ../flower/include/interval.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/compare.hh include/dimen.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/molecule.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/direction.hh include/atom.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/tex.hh ../flower/include/scalar.hh +music-iterator.o music-iterator.lo: music-iterator.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/music-list.hh include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/music-iterator.hh ../flower/include/varray.hh \ + include/voice-iterator.hh include/property-iterator.hh \ + include/chord-iterator.hh include/request-iterator.hh \ + include/translator-group.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/parray.hh \ + include/translation-property.hh include/change-iterator.hh \ + include/change-translator.hh +music-list.o music-list.lo: music-list.cc include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/music-list.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +music-output-def.o music-output-def.lo: music-output-def.cc \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/global-translator.hh include/translator-group.hh \ + include/translator.hh ../flower/include/scalar.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + ../flower/include/rational.hh ../flower/include/pqueue.hh \ + ../flower/include/dictionary-iter.hh \ + ../flower/include/assoc-iter.hh +music.o music.lo: music.cc include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/music-list.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +musical-request.o musical-request.lo: musical-request.cc \ + include/musical-request.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/misc.hh ../flower/include/scalar.hh include/grouping.hh \ + ../flower/include/varray.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/script-def.hh include/general-script-def.hh \ + include/text-def.hh include/music-list.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc +my-lily-lexer.o my-lily-lexer.lo: my-lily-lexer.cc \ + include/notename-table.hh ../flower/include/pointer.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/varray.hh ../flower/include/interval.hh \ + include/identifier.hh ../lib/include/input.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/assoc-iter.hh parser.hh include/keyword.hh \ + include/my-lily-lexer.hh ../lib/include/includable-lexer.hh \ + ../lib/include/duration.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/plet.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh ../lib/include/source-file.hh \ + include/parseconstruct.hh +my-lily-parser.o my-lily-parser.lo: my-lily-parser.cc \ + include/my-lily-parser.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../lib/include/duration.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh ../lib/include/plet.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/varray.hh \ + ../lib/include/input.hh include/my-lily-lexer.hh \ + ../lib/include/includable-lexer.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/main.hh include/music-list.hh include/music.hh \ + ../flower/include/virtual-methods.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/musical-request.hh \ + include/request.hh include/direction.hh \ + include/command-request.hh parser.hh include/header.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh +note-column.o note-column.lo: note-column.cc include/dot-column.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/note-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh include/script.hh \ + include/staff-side.hh include/note-head.hh \ + include/rhythmic-head.hh include/stem.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/rest.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +note-head.o note-head.lo: note-head.cc include/misc.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/dots.hh include/item.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/direction.hh include/note-head.hh \ + include/rhythmic-head.hh include/dimen.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh include/molecule.hh \ + include/musical-request.hh include/request.hh \ + ../lib/include/input.hh include/music.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh +note-performer.o note-performer.lo: note-performer.cc \ + include/note-performer.hh include/performer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/musical-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/audio-item.hh include/audio-element.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +note.o note.lo: note.cc include/my-lily-lexer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/includable-lexer.hh ../lib/include/duration.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../lib/include/plet.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/musical-request.hh include/request.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/command-request.hh include/music-list.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/identifier.hh include/text-def.hh \ + include/general-script-def.hh include/parseconstruct.hh +notename-table.o notename-table.lo: notename-table.cc \ + include/notename-table.hh ../flower/include/pointer.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/varray.hh ../flower/include/pointer.tcc \ + include/musical-request.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh +offset.o offset.lo: offset.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh +outputter.o outputter.lo: outputter.cc include/outputter.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/tex-stream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh \ + include/direction.hh ../flower/include/varray.hh \ + include/dimen.hh include/tex.hh ../flower/include/scalar.hh +p-col.o p-col.lo: p-col.cc include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/p-score.hh \ + include/colhpos.hh include/music-output.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +p-score.o p-score.lo: p-score.cc include/main.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/super-elem.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/lookup.hh include/atom.hh include/boxes.hh \ + ../flower/include/scalar.hh include/direction.hh \ + include/spanner.hh include/drul-array.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/scoreline.hh \ + include/colhpos.hh include/p-score.hh include/music-output.hh \ + include/tex-stream.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/header.hh include/word-wrap.hh \ + include/break.hh include/gourlay-breaking.hh \ + include/outputter.hh +paper-def.o paper-def.lo: paper-def.cc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/misc.hh include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/scalar.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/lookup.hh include/atom.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/direction.hh include/dimen.hh \ + ../flower/include/assoc-iter.hh include/score-grav.hh \ + include/engraver-group.hh ../flower/include/parray.hh \ + include/score-elem-info.hh include/engraver.hh \ + include/request.hh ../lib/include/input.hh include/music.hh \ + include/staff-info.hh include/translator.hh \ + include/translator-group.hh include/global-translator.hh \ + ../flower/include/pqueue.hh include/p-score.hh \ + include/colhpos.hh include/music-output.hh include/main.hh +parser.o parser.lo: parser.cc ../flower/include/scalar.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/translation-property.hh include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh include/minterval.hh \ + ../flower/include/interval.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/lily-proto.hh \ + include/script-def.hh include/general-script-def.hh \ + include/direction.hh include/symtable.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/varray.hh include/atom.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/lookup.hh \ + include/misc.hh include/grouping.hh include/my-lily-lexer.hh \ + ../lib/include/includable-lexer.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/midi-def.hh include/main.hh \ + include/keyword.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/parseconstruct.hh include/dimen.hh \ + include/identifier.hh include/command-request.hh \ + include/request.hh include/musical-request.hh \ + include/my-lily-parser.hh include/text-def.hh \ + include/translator-group.hh include/translator.hh \ + ../flower/include/parray.hh include/score.hh \ + include/music-list.hh include/header.hh \ + ../lib/include/duration-convert.hh include/change-translator.hh +performance.o performance.lo: performance.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh ../flower/include/string-convert.hh \ + include/main.hh include/midi-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/midi-item.hh include/midi-stream.hh \ + include/audio-column.hh include/audio-staff.hh \ + include/audio-element.hh include/performance.hh \ + include/music-output.hh include/score.hh \ + ../lib/include/input.hh ../flower/include/parray.hh +performer-group-performer.o performer-group-performer.lo: \ + performer-group-performer.cc \ + include/performer-group-performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/performer.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +performer.o performer.lo: performer.cc \ + include/performer-group-performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/performer.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +pitch-squash-grav.o pitch-squash-grav.lo: pitch-squash-grav.cc \ + include/pitch-squash-grav.hh include/engraver.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh +plet-engraver.o plet-engraver.lo: plet-engraver.cc \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/musical-request.hh \ + include/lily-proto.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/plet-engraver.hh include/engraver.hh \ + ../flower/include/varray.hh include/score-elem-info.hh \ + ../flower/include/scalar.hh include/staff-info.hh \ + include/translator.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/parray.hh \ + include/drul-array.hh include/plet-spanner.hh include/bow.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/text-def.hh include/general-script-def.hh \ + include/beam.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/score-column.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/stem.hh \ + include/molecule.hh +plet-spanner.o plet-spanner.lo: plet-spanner.cc include/atom.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/lookup.hh ../flower/include/scalar.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/drul-array.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/plet-spanner.hh \ + include/bow.hh include/directional-spanner.hh \ + include/spanner.hh include/stem.hh include/text-def.hh \ + include/general-script-def.hh ../lib/include/input.hh +plet-swallow-engraver.o plet-swallow-engraver.lo: \ + plet-swallow-engraver.cc include/musical-request.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/plet-swallow-engraver.hh include/swallow-grav.hh \ + include/engraver.hh ../flower/include/varray.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh +priority-halign-grav.o priority-halign-grav.lo: priority-halign-grav.cc \ + include/bar.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/break-align-item.hh \ + include/horizontal-align-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh \ + include/priority-halign-grav.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/score-priority-grav.hh +property-iterator.o property-iterator.lo: property-iterator.cc \ + include/property-iterator.hh include/music-iterator.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/varray.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/virtual-methods.hh \ + include/translation-property.hh include/music.hh \ + ../lib/include/input.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/scalar.hh \ + include/translator-group.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh +ps-plet.o ps-plet.lo: ps-plet.cc include/main.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/misc.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/lookup.hh include/atom.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/dimen.hh include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/paper-def.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/string-convert.hh +qlp.o qlp.lo: qlp.cc include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/qlp.hh \ + include/ineq-constrained-qp.hh ../flower/include/matrix.hh \ + ../flower/include/matrix-storage.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/vector.hh +qlpsolve.o qlpsolve.lo: qlpsolve.cc include/ineq-constrained-qp.hh \ + ../flower/include/matrix.hh ../flower/include/matrix-storage.hh \ + ../flower/include/varray.hh ../flower/include/real.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/vector.hh include/qlpsolve.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh ../flower/include/choleski.hh +request-iterator.o request-iterator.lo: request-iterator.cc \ + include/translator-group.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/request-iterator.hh \ + include/music-iterator.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-list.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/request.hh \ + include/direction.hh +request.o request.lo: request.cc include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/lily-proto.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +rest-collision-grav.o rest-collision-grav.lo: rest-collision-grav.cc \ + include/debug.hh ../flower/include/dstream.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/rest-collision.hh \ + include/item.hh include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/direction.hh include/rest-collision-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/collision.hh include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/note-column.hh include/script-column.hh +rest-collision.o rest-collision.lo: rest-collision.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/rest-collision.hh \ + include/item.hh include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/direction.hh include/note-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/stem.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/note-head.hh include/rhythmic-head.hh \ + include/collision.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh +rest-grav.o rest-grav.lo: rest-grav.cc include/rest-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/musical-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/dots.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/rest.hh include/rhythmic-head.hh +rest.o rest.lo: rest.cc include/molecule.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/direction.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/varray.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh \ + include/rest.hh include/rhythmic-head.hh include/item.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/dots.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/p-score.hh \ + include/colhpos.hh include/music-output.hh +rhythmic-column-grav.o rhythmic-column-grav.lo: rhythmic-column-grav.cc \ + include/rhythmic-column-grav.hh include/engraver.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/stem.hh include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/note-column.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/script.hh include/staff-side.hh include/dot-column.hh \ + include/horizontal-group-item.hh +rhythmic-head.o rhythmic-head.lo: rhythmic-head.cc \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/lookup.hh include/atom.hh \ + ../flower/include/scalar.hh include/rest.hh include/dots.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/p-score.hh \ + include/colhpos.hh include/music-output.hh +score-bar.o score-bar.lo: score-bar.cc include/score-bar.hh \ + include/bar.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh +score-column.o score-column.lo: score-column.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/score-column.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh +score-elem-info.o score-elem-info.lo: score-elem-info.cc \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/varray.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh +score-elem.o score-elem.lo: score-elem.cc include/outputter.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/p-score.hh include/colhpos.hh \ + ../flower/include/varray.hh ../flower/include/parray.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/music-output.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/interval.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/atom.hh include/boxes.hh \ + include/offset.hh include/axes.hh ../flower/include/scalar.hh \ + include/direction.hh include/molecule.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/tex.hh include/dimen.hh include/spanner.hh \ + include/drul-array.hh include/scoreline.hh include/item.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh +score-grav.o score-grav.lo: score-grav.cc include/super-elem.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/scoreline.hh \ + include/colhpos.hh include/spanner.hh include/drul-array.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/item.hh include/boxes.hh include/score-grav.hh \ + include/engraver-group.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/score-elem-info.hh \ + ../flower/include/scalar.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh include/staff-info.hh \ + include/translator.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/translator-group.hh \ + include/global-translator.hh ../flower/include/pqueue.hh \ + include/p-score.hh include/music-output.hh \ + include/musical-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/score-column.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/command-request.hh include/paper-def.hh \ + include/music-output-def.hh +score-performer.o score-performer.lo: score-performer.cc \ + include/score-performer.hh include/performer-group-performer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/performer.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/global-translator.hh \ + ../flower/include/pqueue.hh include/midi-def.hh \ + include/music-output-def.hh include/audio-column.hh \ + include/audio-item.hh include/audio-element.hh \ + include/performance.hh include/music-output.hh \ + include/midi-stream.hh ../flower/include/string-convert.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/score.hh \ + ../lib/include/source-file.hh ../lib/include/source.hh \ + include/audio-staff.hh +score-priority-grav.o score-priority-grav.lo: score-priority-grav.cc \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/score-priority-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/assoc-iter.hh include/break-align-item.hh \ + include/horizontal-align-item.hh +score.o score.lo: score.cc include/score.hh ../flower/include/varray.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/input.hh \ + ../flower/include/parray.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/music-output.hh ../lib/include/source.hh \ + ../lib/include/source-file.hh include/music-iterator.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/global-translator.hh \ + include/translator-group.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/pqueue.hh \ + include/header.hh ../flower/include/cpu-timer.hh \ + include/main.hh include/paper-def.hh +scoreline.o scoreline.lo: scoreline.cc include/scoreline.hh \ + include/colhpos.hh ../flower/include/varray.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/spanner.hh include/score-elem.hh \ + ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/dimen.hh include/atom.hh \ + include/boxes.hh include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/p-score.hh include/music-output.hh +scores.o scores.lo: scores.cc include/main.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score.hh \ + ../flower/include/varray.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/input.hh \ + ../flower/include/parray.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/interval.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/header.hh include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +script-column.o script-column.lo: script-column.cc \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh \ + include/axis-group-administration.hh include/item.hh \ + include/boxes.hh include/drul-array.hh include/direction.hh \ + include/elem-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/script.hh include/staff-side.hh include/note-head.hh \ + include/rhythmic-head.hh include/stem.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc +script-def.o script-def.lo: script-def.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/script-def.hh \ + include/general-script-def.hh ../lib/include/input.hh \ + ../flower/include/virtual-methods.hh include/direction.hh \ + include/atom.hh include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/varray.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh ../flower/include/scalar.hh +script-grav.o script-grav.lo: script-grav.cc include/script-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/script.hh \ + include/staff-side.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/musical-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/stem.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/staff-sym.hh include/spanner.hh \ + include/general-script-def.hh +script.o script.lo: script.cc include/script-def.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/general-script-def.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../lib/include/input.hh \ + ../flower/include/virtual-methods.hh include/direction.hh \ + include/musical-request.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/paper-def.hh \ + ../flower/include/varray.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/script.hh include/staff-side.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/stem.hh include/molecule.hh include/lookup.hh \ + include/atom.hh ../flower/include/scalar.hh +slur-grav.o slur-grav.lo: slur-grav.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/musical-request.hh \ + include/lily-proto.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/slur-grav.hh include/engraver.hh \ + ../flower/include/varray.hh include/score-elem-info.hh \ + ../flower/include/scalar.hh include/staff-info.hh \ + include/translator.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/parray.hh \ + include/slur.hh include/directional-spanner.hh \ + include/spanner.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/drul-array.hh include/bow.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/note-column.hh include/item.hh include/boxes.hh \ + include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh +slur.o slur.lo: slur.cc include/slur.hh include/directional-spanner.hh \ + include/spanner.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/bow.hh ../flower/include/scalar.hh \ + include/lookup.hh include/atom.hh include/boxes.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/note-column.hh include/item.hh include/script-column.hh \ + include/horizontal-vertical-group-item.hh \ + include/axis-group-item.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/stem.hh include/molecule.hh include/p-col.hh \ + include/horizontal-group-item.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +span-bar-grav.o span-bar-grav.lo: span-bar-grav.cc include/span-bar.hh \ + include/bar.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/span-bar-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/vertical-align-spanner.hh include/spanner.hh \ + include/vertical-align-elem.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh +span-bar.o span-bar.lo: span-bar.cc include/dimen.hh \ + ../flower/include/real.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/span-bar.hh include/bar.hh include/item.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/lookup.hh include/atom.hh \ + ../flower/include/scalar.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/molecule.hh \ + include/vertical-align-elem.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh +span-score-bar-grav.o span-score-bar-grav.lo: span-score-bar-grav.cc \ + include/span-score-bar.hh include/span-bar.hh include/bar.hh \ + include/item.hh include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/score-bar.hh \ + include/span-score-bar-grav.hh include/span-bar-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh +span-score-bar.o span-score-bar.lo: span-score-bar.cc \ + include/span-score-bar.hh include/span-bar.hh include/bar.hh \ + include/item.hh include/boxes.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/interval.hh \ + ../flower/include/compare.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh include/score-bar.hh include/atom.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh ../flower/include/scalar.hh +spanner.o spanner.lo: spanner.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/spanner.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/p-score.hh \ + include/colhpos.hh include/music-output.hh include/outputter.hh +spring-spacer.o spring-spacer.lo: spring-spacer.cc \ + include/spring-spacer.hh include/line-spacer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh ../flower/include/vector.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/col-info.hh ../flower/include/pointer.hh \ + include/colhpos.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/qlp.hh include/ineq-constrained-qp.hh \ + ../flower/include/matrix.hh ../flower/include/matrix-storage.hh \ + ../flower/include/unionfind.hh include/idealspacing.hh \ + ../flower/include/pointer.tcc include/score-column.hh \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/dimen.hh include/main.hh +staff-info.o staff-info.lo: staff-info.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/staff-info.hh \ + include/lily-proto.hh include/score-column.hh \ + ../flower/include/varray.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh +staff-performer.o staff-performer.lo: staff-performer.cc \ + include/staff-performer.hh include/performer-group-performer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/performer.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/audio-column.hh include/audio-item.hh \ + include/audio-element.hh include/audio-staff.hh +staff-side.o staff-side.lo: staff-side.cc ../flower/include/interval.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/compare.hh include/paper-def.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/varray.hh include/music-output-def.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/dimen.hh \ + include/staff-side.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/direction.hh include/staff-sym.hh include/spanner.hh \ + include/drul-array.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +staff-sym-grav.o staff-sym-grav.lo: staff-sym-grav.cc \ + include/staff-sym-grav.hh include/engraver.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh include/request.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/staff-sym.hh \ + include/spanner.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/drul-array.hh include/score.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh +staff-sym.o staff-sym.lo: staff-sym.cc include/staff-sym.hh \ + include/spanner.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/lookup.hh include/atom.hh \ + include/boxes.hh ../flower/include/scalar.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/molecule.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/dimen.hh +stem-grav.o stem-grav.lo: stem-grav.cc include/stem-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/score-elem.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/stem.hh include/molecule.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/musical-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + ../lib/include/duration-convert.hh include/misc.hh \ + include/grouping.hh include/abbrev.hh +stem-info.o stem-info.lo: stem-info.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/dimen.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/misc.hh include/lily-proto.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/scalar.hh \ + include/grouping.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/varray.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/atom.hh include/boxes.hh \ + include/offset.hh include/axes.hh include/stem.hh \ + include/item.hh include/score-elem.hh \ + ../flower/include/parray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/paper-def.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/lookup.hh include/stem-info.hh +stem.o stem.lo: stem.cc include/stem.hh include/item.hh include/boxes.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + include/offset.hh include/axes.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/drul-array.hh \ + include/direction.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/dimen.hh include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/paper-def.hh \ + include/music-output-def.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/note-head.hh \ + include/rhythmic-head.hh include/lookup.hh include/atom.hh \ + ../flower/include/scalar.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/misc.hh include/grouping.hh include/minterval.hh \ + include/beam.hh include/directional-spanner.hh \ + include/spanner.hh include/rest.hh +super-elem.o super-elem.lo: super-elem.cc include/super-elem.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/scoreline.hh \ + include/colhpos.hh include/spanner.hh include/drul-array.hh \ + include/direction.hh include/p-score.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/music-output.hh include/outputter.hh +swallow-grav.o swallow-grav.lo: swallow-grav.cc include/swallow-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh +swallow-perf.o swallow-perf.lo: swallow-perf.cc include/swallow-perf.hh \ + include/performer.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh +symtable.o symtable.lo: symtable.cc include/misc.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/dimen.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/atom.hh include/boxes.hh include/offset.hh \ + include/axes.hh ../flower/include/assoc.hh \ + ../flower/include/assoc-iter.hh include/symtable.hh \ + ../flower/include/dictionary.hh +template1.o template1.lo: template1.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/idealspacing.hh include/lily-proto.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/musical-request.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/spanner.hh ../flower/include/pcursor.tcc \ + ../flower/include/plist.tcc +template2.o template2.lo: template2.cc include/line-spacer.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/varray.hh ../flower/include/vector.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../flower/include/plist.tcc ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/pcursor.tcc +template3.o template3.lo: template3.cc include/atom.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/direction.hh ../flower/include/plist.tcc \ + ../flower/include/pcursor.tcc +template4.o template4.lo: template4.cc +template5.o template5.lo: template5.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/interval.tcc ../flower/include/interval.hh \ + ../flower/include/flower-debug.hh ../flower/include/dstream.hh +template6.o template6.lo: template6.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.tcc ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/translator.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/lily-proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh +template7.o template7.lo: template7.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/plist.tcc \ + ../flower/include/pcursor.tcc include/music-list.hh \ + include/music.hh ../flower/include/virtual-methods.hh \ + ../lib/include/input.hh include/minterval.hh \ + ../flower/include/interval.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/music-iterator.hh \ + ../flower/include/varray.hh +template8.o template8.lo: template8.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/audio-column.hh \ + include/lily-proto.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/audio-item.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/audio-element.hh \ + ../flower/include/virtual-methods.hh include/audio-staff.hh \ + include/midi-item.hh ../flower/include/pcursor.tcc \ + ../flower/include/plist.tcc +tex-beam.o tex-beam.lo: tex-beam.cc include/atom.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh include/lily-proto.hh \ + ../lib/include/proto.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/direction.hh include/tex.hh ../flower/include/scalar.hh \ + include/symtable.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/dimen.hh include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/lookup.hh include/misc.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/grouping.hh include/minterval.hh include/paper-def.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/string-convert.hh include/main.hh +tex-slur.o tex-slur.lo: tex-slur.cc include/main.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/misc.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/scalar.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + ../flower/include/varray.hh include/lookup.hh include/atom.hh \ + include/boxes.hh include/offset.hh include/axes.hh \ + include/direction.hh include/molecule.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/dimen.hh include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/paper-def.hh \ + include/music-output-def.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/string-convert.hh +tex-stream.o tex-stream.lo: tex-stream.cc include/tex.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh ../flower/include/scalar.hh \ + include/main.hh include/lily-proto.hh ../lib/include/proto.hh \ + include/tex-stream.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh +tex.o tex.lo: tex.cc include/dimen.hh ../flower/include/real.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/tex.hh include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh ../flower/include/scalar.hh \ + include/atom.hh include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/varray.hh +text-def.o text-def.lo: text-def.cc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../lib/include/warn.hh include/lookup.hh include/atom.hh \ + include/boxes.hh ../flower/include/interval.hh \ + include/offset.hh include/axes.hh ../flower/include/scalar.hh \ + include/direction.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/varray.hh include/music-output-def.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/molecule.hh \ + include/text-def.hh include/general-script-def.hh \ + ../lib/include/input.hh include/dimen.hh +text-item.o text-item.lo: text-item.cc include/musical-request.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh \ + include/paper-def.hh ../flower/include/varray.hh \ + include/music-output-def.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/text-item.hh \ + include/text-def.hh include/general-script-def.hh \ + include/item.hh include/boxes.hh include/offset.hh \ + include/axes.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/staff-side.hh include/stem.hh include/molecule.hh \ + include/lookup.hh include/atom.hh ../flower/include/scalar.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +text-spanner.o text-spanner.lo: text-spanner.cc include/molecule.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/boxes.hh \ + ../flower/include/interval.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/direction.hh \ + include/text-spanner.hh include/directional-spanner.hh \ + include/spanner.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/drul-array.hh \ + include/text-def.hh include/general-script-def.hh \ + ../lib/include/input.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + include/paper-def.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-output-def.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/atom.hh +tie-grav.o tie-grav.lo: tie-grav.cc include/tie-grav.hh \ + include/engraver.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/varray.hh \ + include/request.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + ../flower/include/parray.hh include/tie.hh include/bow.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/drul-array.hh include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + include/musical-request.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/music-list.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc +tie.o tie.lo: tie.cc include/paper-def.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/varray.hh ../flower/include/interval.hh \ + include/music-output-def.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/tie.hh include/bow.hh \ + include/directional-spanner.hh include/spanner.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/drul-array.hh include/direction.hh include/note-head.hh \ + include/rhythmic-head.hh include/item.hh include/boxes.hh \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +time-description.o time-description.lo: time-description.cc \ + include/time-description.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../flower/include/compare.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/varray.hh include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../lib/include/warn.hh +timing-grav.o timing-grav.lo: timing-grav.cc include/score-grav.hh \ + include/engraver-group.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/engraver.hh \ + include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/translator-group.hh include/global-translator.hh \ + ../flower/include/pqueue.hh include/timing-grav.hh \ + include/timing-translator.hh include/time-description.hh \ + include/grouping.hh include/command-request.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh +timing-translator.o timing-translator.lo: timing-translator.cc \ + include/timing-translator.hh include/translator.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/time-description.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/grouping.hh \ + include/minterval.hh ../flower/include/interval.hh \ + include/command-request.hh include/request.hh include/music.hh \ + include/direction.hh ../lib/include/duration.hh \ + ../lib/include/plet.hh include/translator-group.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/global-translator.hh ../flower/include/pqueue.hh +translation-property.o translation-property.lo: translation-property.cc \ + include/translation-property.hh include/music.hh \ + ../flower/include/virtual-methods.hh ../lib/include/input.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/minterval.hh \ + ../flower/include/interval.hh ../flower/include/compare.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh include/lily-proto.hh \ + ../flower/include/string.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/scalar.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +translator-ctors.o translator-ctors.lo: translator-ctors.cc \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/compare.hh \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/translator.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/lily-proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh +translator-group.o translator-group.lo: translator-group.cc \ + include/music-output-def.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + include/translator-group.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/parray.hh \ + ../lib/include/input.hh include/debug.hh \ + ../flower/include/dstream.hh ../lib/include/warn.hh \ + ../flower/include/rational.hh +translator.o translator.lo: translator.cc include/translator.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/translator-group.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + ../flower/include/dictionary-iter.hh \ + ../flower/include/assoc-iter.hh ../flower/include/rational.hh +type-swallow-trans.o type-swallow-trans.lo: type-swallow-trans.cc \ + include/type-swallow-trans.hh include/translator.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + include/musical-request.hh include/request.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh include/direction.hh \ + ../lib/include/duration.hh ../lib/include/plet.hh +version.o version.lo: version.cc include/main.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh +vertical-align-elem.o vertical-align-elem.lo: vertical-align-elem.cc \ + include/vertical-align-elem.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh +vertical-align-grav.o vertical-align-grav.lo: vertical-align-grav.cc \ + include/p-col.hh include/horizontal-group-item.hh \ + include/elem-group.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh \ + ../flower/include/real.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/interval.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/vertical-align-grav.hh \ + include/engraver.hh include/request.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/input.hh \ + include/music.hh include/minterval.hh \ + include/score-elem-info.hh ../flower/include/scalar.hh \ + include/staff-info.hh include/translator.hh \ + ../flower/include/dictionary.hh ../flower/include/assoc.hh \ + include/vertical-align-spanner.hh include/spanner.hh \ + include/vertical-align-elem.hh +vertical-align-spanner.o vertical-align-spanner.lo: \ + vertical-align-spanner.cc include/vertical-align-spanner.hh \ + include/spanner.hh include/lily-proto.hh \ + ../lib/include/proto.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh include/score-elem.hh \ + ../flower/include/parray.hh ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/vertical-align-elem.hh \ + include/elem-group.hh include/axis-group-element.hh \ + include/axis-group-administration.hh +vertical-group-spanner.o vertical-group-spanner.lo: \ + vertical-group-spanner.cc include/vertical-group-spanner.hh \ + include/axis-group-spanner.hh include/spanner.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + include/score-elem.hh ../flower/include/parray.hh \ + ../flower/include/varray.hh \ + ../flower/include/virtual-methods.hh \ + ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + ../flower/include/interval.hh include/drul-array.hh \ + include/direction.hh include/axis-group-element.hh \ + include/axis-group-administration.hh include/elem-group.hh \ + include/item.hh include/boxes.hh include/p-col.hh \ + include/horizontal-group-item.hh include/axis-group-item.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc +voice-iterator.o voice-iterator.lo: voice-iterator.cc \ + include/translator-group.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + ../flower/include/virtual-methods.hh include/translator.hh \ + ../flower/include/scalar.hh ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh ../flower/include/varray.hh \ + ../flower/include/parray.hh ../lib/include/input.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/pcursor.hh ../flower/include/cursor.icc \ + ../flower/include/iterate.hh ../flower/include/plist.icc \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/voice-iterator.hh \ + include/music-iterator.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh include/music-list.hh \ + include/music.hh include/minterval.hh \ + ../flower/include/interval.hh +warn.o warn.lo: warn.cc ../lib/include/proto.hh \ + ../flower/include/fproto.hh ../flower/include/real.hh \ + ../flower/include/plist.hh ../flower/include/list.hh \ + ../flower/include/list.icc ../flower/include/cursor.hh \ + ../flower/include/link.hh ../flower/include/link.icc \ + ../flower/include/compare.hh ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc include/debug.hh \ + ../flower/include/dstream.hh ../flower/include/string.hh \ + ../flower/include/arithmetic-operator.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh include/lily-proto.hh \ + ../lib/include/warn.hh include/my-lily-lexer.hh \ + ../flower/include/varray.hh ../lib/include/includable-lexer.hh \ + ../lib/include/duration.hh ../lib/include/moment.hh \ + ../flower/include/rational.hh ../lib/include/plet.hh \ + include/time-description.hh ../lib/include/source-file.hh \ + ../lib/include/source.hh include/main.hh \ + ../lib/include/input.hh +word-wrap.o word-wrap.lo: word-wrap.cc include/word-wrap.hh \ + include/break.hh ../flower/include/varray.hh \ + ../flower/include/interval.hh ../flower/include/fproto.hh \ + ../flower/include/real.hh ../flower/include/compare.hh \ + include/lily-proto.hh ../lib/include/proto.hh \ + include/colhpos.hh include/paper-def.hh \ + ../lib/include/moment.hh ../flower/include/rational.hh \ + ../flower/include/arithmetic-operator.hh \ + include/music-output-def.hh ../flower/include/string.hh \ + ../flower/include/string-handle.hh \ + ../flower/include/international.hh \ + ../flower/include/virtual-methods.hh ../flower/include/plist.hh \ + ../flower/include/list.hh ../flower/include/list.icc \ + ../flower/include/cursor.hh ../flower/include/link.hh \ + ../flower/include/link.icc ../flower/include/pcursor.hh \ + ../flower/include/cursor.icc ../flower/include/iterate.hh \ + ../flower/include/plist.icc ../flower/include/dictionary.hh \ + ../flower/include/assoc.hh include/p-score.hh \ + ../flower/include/parray.hh include/music-output.hh \ + include/debug.hh ../flower/include/dstream.hh \ + ../lib/include/warn.hh include/p-col.hh \ + include/horizontal-group-item.hh include/elem-group.hh \ + include/score-elem.hh ../flower/include/directed-graph.hh \ + include/graphical-element.hh include/offset.hh include/axes.hh \ + include/axis-group-element.hh \ + include/axis-group-administration.hh include/axis-group-item.hh \ + include/item.hh include/boxes.hh include/drul-array.hh \ + include/direction.hh include/spring-spacer.hh \ + include/line-spacer.hh ../flower/include/vector.hh \ + include/col-info.hh ../flower/include/pointer.hh + +info: info-recursive +dvi: dvi-recursive +check: all-am + $(MAKE) check-recursive +installcheck: installcheck-recursive +all-am: Makefile $(PROGRAMS) $(HEADERS) + +install-exec-am: install-binPROGRAMS + +uninstall-am: uninstall-binPROGRAMS + +install-exec: install-exec-recursive install-exec-am + @$(NORMAL_INSTALL) + +install-data: install-data-recursive + @$(NORMAL_INSTALL) + +install: install-recursive install-exec-am + @: + +uninstall: uninstall-recursive uninstall-am + +all: all-recursive all-am + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: installdirs-recursive + $(mkinstalldirs) $(bindir) + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean-am: mostlyclean-binPROGRAMS mostlyclean-compile \ + mostlyclean-tags mostlyclean-generic + +clean-am: clean-binPROGRAMS clean-compile clean-tags clean-generic \ + mostlyclean-am + +distclean-am: distclean-binPROGRAMS distclean-compile distclean-tags \ + distclean-generic clean-am + +maintainer-clean-am: maintainer-clean-binPROGRAMS \ + maintainer-clean-compile maintainer-clean-tags \ + maintainer-clean-generic distclean-am + +mostlyclean: mostlyclean-recursive mostlyclean-am + +clean: clean-recursive clean-am + +distclean: distclean-recursive distclean-am + rm -f config.status + +maintainer-clean: maintainer-clean-recursive maintainer-clean-am + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default mostlyclean-binPROGRAMS distclean-binPROGRAMS \ +clean-binPROGRAMS maintainer-clean-binPROGRAMS uninstall-binPROGRAMS \ +install-binPROGRAMS mostlyclean-compile distclean-compile clean-compile \ +maintainer-clean-compile install-data-recursive \ +uninstall-data-recursive install-exec-recursive \ +uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \ +all-recursive check-recursive installcheck-recursive info-recursive \ +dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \ +maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ +distclean-tags clean-tags maintainer-clean-tags distdir info dvi \ +installcheck all-am install-exec-am uninstall-am install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# force these: Make can't know these have to be generated in advance +my-lily-lexer.cc: parser.hh +lexer.cc: parser.hh + +# ugh, autoconf assumes to get $(LEX_OUTPUT_ROOT).c ... +.ll.cc: + @echo "must override autoconf; ignore warning" + $(LEX) $(LFLAGS) $< && mv $(LEX_OUTPUT_ROOT).cc $@ +#.yy.hh: +parser.hh: parser.yy + $(BISON) -d $< + mv $<.tab.h $@ + mv $<.tab.c $(shell basename $@ .hh).cc +# .ll.cc: +# ugh, stupid automake +# now set output root by hand... +# touch lex.yy.cc + +# .yy.cc: +# $(BISON) $< +# mv $(shell basename $@ .cc ).tab.c $@ +# $(FLEX) -Cfe -p -p -t $< > $@ +# # could be faster: +# # $(FLEX) -8 -Cf -t $< > $@ + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/lily/VERSION b/lily/VERSION index 85dfb96054..d90599539a 100644 --- a/lily/VERSION +++ b/lily/VERSION @@ -1,4 +1,4 @@ MAJOR_VERSION = 0 MINOR_VERSION = 1 -PATCH_LEVEL = 48 +PATCH_LEVEL = 49 MY_PATCH_LEVEL = diff --git a/lily/break.cc b/lily/break.cc index 04b623e883..8475f79db4 100644 --- a/lily/break.cc +++ b/lily/break.cc @@ -6,7 +6,7 @@ (c) 1996, 1997 Han-Wen Nienhuys */ - +#include "score-column.hh" #include "break.hh" #include "paper-def.hh" #include "line-spacer.hh" @@ -137,7 +137,13 @@ Break_algorithm::feasible (Line_of_cols curline) const Real l =0; for (int i=0; i < curline.size (); i++) - l +=curline[i]->width ().length (); + { + if (i && i < curline.size () -1 + && ((Score_column*)curline[i])->forced_break_b ()) + return false; + + l +=curline[i]->width ().length (); + } return l < linelength; } diff --git a/lily/command-request.cc b/lily/command-request.cc index 661a7fed9f..a0b6227cec 100644 --- a/lily/command-request.cc +++ b/lily/command-request.cc @@ -252,7 +252,15 @@ Key_change_req::Key_change_req() multi_octave_b_= false; } +void +Break_force_req::do_print () const +{ +} + +IMPLEMENT_IS_TYPE_B1(Break_force_req, Command_req); + Key_change_req::Key_change_req (Key_change_req const&c) + : Command_req (c) { for (int i=0; i < c.melodic_p_arr_.size(); i++) melodic_p_arr_.push (c.melodic_p_arr_[i]->clone()->musical ()->melodic ()); diff --git a/lily/include/Makefile b/lily/include/Makefile deleted file mode 100644 index da392fe30f..0000000000 --- a/lily/include/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -# lily/include/Makefile - -# subdir level: -# -depth = ../.. -# - -# identify module: -# -MODULE_NAME = lilypond -include ./$(depth)/make/Include.make - diff --git a/lily/include/Makefile.am b/lily/include/Makefile.am new file mode 100644 index 0000000000..5e556de8b7 --- /dev/null +++ b/lily/include/Makefile.am @@ -0,0 +1,8 @@ +# Automatically generated from ./lilypond-0.1.49/lily/include/Makefile.am.wild by bin/autowild +# Do not edit +# lily/include/Makefile.am.wild + +noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-item.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc + +EXTRA_DIST = Makefile.am.wild + diff --git a/lily/include/Makefile.am.wild b/lily/include/Makefile.am.wild new file mode 100644 index 0000000000..3540ce1719 --- /dev/null +++ b/lily/include/Makefile.am.wild @@ -0,0 +1,6 @@ +# lily/include/Makefile.am.wild + +noinst_HEADERS = $(wildcard *.hh *.icc *.tcc) + +EXTRA_DIST = Makefile.am.wild + diff --git a/lily/include/Makefile.in b/lily/include/Makefile.in new file mode 100644 index 0000000000..9409ae7ea0 --- /dev/null +++ b/lily/include/Makefile.in @@ -0,0 +1,202 @@ +# Makefile.in generated automatically by automake 1.2 from Makefile.am + +# Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Automatically generated from ./lily/include/Makefile.am.wild by bin/autowild +# Do not edit +# lily/include/Makefile.am.wild + + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ + +bindir = @bindir@ +sbindir = @sbindir@ +libexecdir = @libexecdir@ +datadir = @datadir@ +sysconfdir = @sysconfdir@ +sharedstatedir = @sharedstatedir@ +localstatedir = @localstatedir@ +libdir = @libdir@ +infodir = @infodir@ +mandir = @mandir@ +includedir = @includedir@ +oldincludedir = /usr/include + +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ + +top_builddir = ../.. + +ACLOCAL = @ACLOCAL@ +AUTOCONF = @AUTOCONF@ +AUTOMAKE = @AUTOMAKE@ +AUTOHEADER = @AUTOHEADER@ + +INSTALL = @INSTALL@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +transform = @program_transform_name@ + +NORMAL_INSTALL = true +PRE_INSTALL = true +POST_INSTALL = true +NORMAL_UNINSTALL = true +PRE_UNINSTALL = true +POST_UNINSTALL = true +AUTOHEADER = @AUTOHEADER@ +BISON = @BISON@ +CC = @CC@ +COMPILEINFO = @COMPILEINFO@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +DEFINES = @DEFINES@ +DIR_DATADIR = @DIR_DATADIR@ +EXTRA_LIBES = @EXTRA_LIBES@ +FIND = @FIND@ +FLEX = @FLEX@ +ICFLAGS = @ICFLAGS@ +ILDFLAGS = @ILDFLAGS@ +LEX = @LEX@ +LN = @LN@ +MAKE = @MAKE@ +MAKEINFO = @MAKEINFO@ +MFDIR = @MFDIR@ +PACKAGE = @PACKAGE@ +PERL = @PERL@ +POD2HTML = @POD2HTML@ +POD2MAN = @POD2MAN@ +PYTHON = @PYTHON@ +RANLIB = @RANLIB@ +TAR = @TAR@ +TEXDIR = @TEXDIR@ +TEXPREFIX = @TEXPREFIX@ +VERSION = @VERSION@ +YACC = @YACC@ +ZIP = @ZIP@ + +noinst_HEADERS = abbrev.hh abbreviation-beam-engraver.hh abbreviation-beam.hh atom.hh audio-column.hh audio-element.hh audio-item.hh audio-staff.hh axes.hh axis-group-administration.hh axis-group-element.hh axis-group-item.hh axis-group-spanner.hh bar-align-grav.hh bar-column-grav.hh bar-column.hh bar-grav.hh bar-number-grav.hh bar.hh beam-grav.hh beam-swallow-trans.hh beam.hh bow.hh boxes.hh break-align-item.hh break-caching.hh break.hh change-iterator.hh change-translator.hh chord-iterator.hh clef-grav.hh clef-item.hh col-info.hh colhpos.hh collision-grav.hh collision.hh command-request.hh const.hh crescendo.hh debug.hh dimen.hh direction.hh directional-spanner.hh dot-column-grav.hh dot-column.hh dots.hh drul-array.hh dynamic-grav.hh elem-group.hh engraver-group.hh engraver.hh general-script-def.hh glob.hh global-translator.hh gourlay-breaking.hh graphical-element.hh grouping.hh head-column.hh head-grav.hh header.hh horizontal-align-item.hh horizontal-group-item.hh horizontal-vertical-group-item.hh idealspacing.hh identifier.hh ineq-constrained-qp.hh item.hh key-grav.hh key-item.hh key-performer.hh key.hh keyword.hh leastsquares.hh lily-proto.hh line-group-grav.hh line-spacer.hh linespace.hh local-key-grav.hh local-key-item.hh lookup.hh lyric-engraver.hh lyric-performer.hh main.hh meter-grav.hh meter-performer.hh meter.hh midi-def.hh midi-item.hh midi-stream.hh midi-walker.hh minterval.hh misc.hh molecule.hh music-iterator.hh music-list.hh music-output-def.hh music-output.hh music.hh musical-request.hh my-lily-lexer.hh my-lily-parser.hh note-column.hh note-head.hh note-performer.hh notename-table.hh notename.hh offset.hh outputter.hh p-col.hh p-score.hh paper-def.hh parseconstruct.hh performance.hh performer-group-performer.hh performer.hh pitch-squash-grav.hh plet-engraver.hh plet-spanner.hh plet-swallow-engraver.hh priority-halign-grav.hh property-iterator.hh qlp.hh qlpsolve.hh request-iterator.hh request.hh rest-collision-grav.hh rest-collision.hh rest-column-grav.hh rest-column.hh rest-grav.hh rest.hh rhythmic-column-grav.hh rhythmic-head.hh score-bar.hh score-column.hh score-elem-info.hh score-elem.hh score-grav.hh score-performer.hh score-priority-grav.hh score.hh scoreline.hh script-column.hh script-def.hh script-grav.hh script.hh slur-grav.hh slur.hh span-bar-grav.hh span-bar.hh span-score-bar-grav.hh span-score-bar.hh spanner.hh spring-spacer.hh staff-info.hh staff-performer.hh staff-side.hh staff-sym-grav.hh staff-sym.hh stem-grav.hh stem-info.hh stem.hh super-elem.hh swallow-grav.hh swallow-perf.hh symtable.hh tex-stream.hh tex.hh text-def.hh text-item.hh text-spanner.hh tie-grav.hh tie.hh time-description.hh timing-grav.hh timing-translator.hh todo-performer.hh translation-property.hh translator-change.hh translator-group.hh translator.hh type-swallow-trans.hh vertical-align-elem.hh vertical-align-grav.hh vertical-align-spanner.hh vertical-group-spanner.hh voice-iterator.hh word-wrap.hh dummy.icc minmax.tcc + +EXTRA_DIST = Makefile.am.wild +mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs +CONFIG_HEADER = ../../lib/config.hh +CONFIG_CLEAN_FILES = +HEADERS = $(noinst_HEADERS) + +DIST_COMMON = Makefile.am Makefile.in + + +DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) + +GZIP = --best +default: all + +.SUFFIXES: +$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps lily/include/Makefile + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + +tags: TAGS + +ID: $(HEADERS) $(SOURCES) + here=`pwd` && cd $(srcdir) && mkid -f$$here/ID $(SOURCES) $(HEADERS) + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) + tags=; \ + here=`pwd`; \ + test -z "$(ETAGS_ARGS)$(SOURCES)$(HEADERS)$$tags" \ + || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $(SOURCES) $(HEADERS) -o $$here/TAGS) + +mostlyclean-tags: + +clean-tags: + +distclean-tags: + rm -f TAGS ID + +maintainer-clean-tags: + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) + +subdir = lily/include + +distdir: $(DISTFILES) + @for file in $(DISTFILES); do \ + d=$(srcdir); \ + test -f $(distdir)/$$file \ + || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ + || cp -p $$d/$$file $(distdir)/$$file; \ + done +info: +dvi: +check: all + $(MAKE) +installcheck: +install-exec: + @$(NORMAL_INSTALL) + +install-data: + @$(NORMAL_INSTALL) + +install: install-exec install-data all + @: + +uninstall: + +all: Makefile $(HEADERS) + +install-strip: + $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install +installdirs: + + +mostlyclean-generic: + test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + rm -f Makefile $(DISTCLEANFILES) + rm -f config.cache config.log stamp-h stamp-h[0-9]* + test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) + test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +mostlyclean: mostlyclean-tags mostlyclean-generic + +clean: clean-tags clean-generic mostlyclean + +distclean: distclean-tags distclean-generic clean + rm -f config.status + +maintainer-clean: maintainer-clean-tags maintainer-clean-generic \ + distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + +.PHONY: default tags mostlyclean-tags distclean-tags clean-tags \ +maintainer-clean-tags distdir info dvi installcheck install-exec \ +install-data install uninstall all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/lily/include/command-request.hh b/lily/include/command-request.hh index 1988dc9add..11491edc41 100644 --- a/lily/include/command-request.hh +++ b/lily/include/command-request.hh @@ -18,32 +18,38 @@ musical requests. */ class Command_req : public virtual Request { public: - REQUESTMETHODS(Command_req, command); - virtual Measure_grouping_req * measuregrouping() { return 0; } - virtual Clef_change_req * clefchange() { return 0; } - virtual Key_change_req * keychange() { return 0; } - virtual Partial_measure_req * partial() { return 0; } - virtual Meter_change_req * meterchange() { return 0; } - virtual Bar_req *bar() { return 0; } - virtual Cadenza_req *cadenza() { return 0; } - virtual Disallow_break_req *disallowbreak() { return 0; } - virtual Timing_req*timing() { return 0; } - virtual Command_script_req*commandscript() { return 0;} + REQUESTMETHODS(Command_req, command); + virtual Measure_grouping_req * measuregrouping() { return 0; } + virtual Clef_change_req * clefchange() { return 0; } + virtual Key_change_req * keychange() { return 0; } + virtual Partial_measure_req * partial() { return 0; } + virtual Meter_change_req * meterchange() { return 0; } + virtual Bar_req *bar() { return 0; } + virtual Cadenza_req *cadenza() { return 0; } + virtual Disallow_break_req *disallowbreak() { return 0; } + virtual Timing_req*timing() { return 0; } + virtual Command_script_req*commandscript() { return 0;} + virtual Break_force_req *forcebreak () { return 0; } }; +class Break_force_req : public Command_req { +public: + REQUESTMETHODS(Break_force_req, forcebreak); +}; + class Command_script_req : public Command_req, public Script_req { public: - // huh? - Command_script_req(); - ~Command_script_req(); - REQUESTMETHODS(Command_script_req, commandscript); + // huh? + Command_script_req(); + ~Command_script_req(); + REQUESTMETHODS(Command_script_req, commandscript); }; class Disallow_break_req : public Command_req { public: - REQUESTMETHODS(Disallow_break_req, disallowbreak); + REQUESTMETHODS(Disallow_break_req, disallowbreak); }; @@ -51,29 +57,29 @@ public: Staff_{walker,column} baseclass. */ class Timing_req : public Command_req { public: - REQUESTMETHODS(Timing_req, timing); - virtual Tempo_req * tempo(){return 0; } + REQUESTMETHODS(Timing_req, timing); + virtual Tempo_req * tempo(){return 0; } }; class Tempo_req : public Timing_req { public: - Duration dur_; - int metronome_i_; + Duration dur_; + int metronome_i_; - Tempo_req(); - REQUESTMETHODS(Tempo_req, tempo); - bool do_equal_b (Request *) const; + Tempo_req(); + REQUESTMETHODS(Tempo_req, tempo); + bool do_equal_b (Request *) const; }; class Partial_measure_req : public Timing_req { public: - Moment duration_; + Moment duration_; - Partial_measure_req (Moment); - REQUESTMETHODS(Partial_measure_req, partial); - bool do_equal_b (Request*) const; + Partial_measure_req (Moment); + REQUESTMETHODS(Partial_measure_req, partial); + bool do_equal_b (Request*) const; }; /** @@ -81,48 +87,48 @@ public: */ class Meter_change_req : public Timing_req { public: - int beats_i_, one_beat_i_; + int beats_i_, one_beat_i_; - Meter_change_req(); - void set (int,int); - bool do_equal_b (Request*) const; - REQUESTMETHODS(Meter_change_req, meterchange); + Meter_change_req(); + void set (int,int); + bool do_equal_b (Request*) const; + REQUESTMETHODS(Meter_change_req, meterchange); }; /// toggle Cadenza mode class Cadenza_req : public Timing_req { public: - /// turn on? - bool on_b_; - bool do_equal_b (Request*) const; - Cadenza_req (bool); - REQUESTMETHODS(Cadenza_req,cadenza); + /// turn on? + bool on_b_; + bool do_equal_b (Request*) const; + Cadenza_req (bool); + REQUESTMETHODS(Cadenza_req,cadenza); }; /// check if we're at start of a measure. class Barcheck_req : public Timing_req { public: - bool do_equal_b (Request *) const; - REQUESTMETHODS(Barcheck_req,barcheck); + bool do_equal_b (Request *) const; + REQUESTMETHODS(Barcheck_req,barcheck); }; class Measure_grouping_req : public Timing_req { public: - Array beat_i_arr_; - Array elt_length_arr_; - bool do_equal_b (Request *) const; - REQUESTMETHODS(Measure_grouping_req, measuregrouping); + Array beat_i_arr_; + Array elt_length_arr_; + bool do_equal_b (Request *) const; + REQUESTMETHODS(Measure_grouping_req, measuregrouping); }; /** draw a (repeat)-bar. This something different than #Barcheck_req#, the latter should only happen at the start of a measure. */ class Bar_req : public Command_req { public: - String type_str_; - Bar_req (String); - bool do_equal_b (Request*) const; + String type_str_; + Bar_req (String); + bool do_equal_b (Request*) const; - REQUESTMETHODS(Bar_req,bar); + REQUESTMETHODS(Bar_req,bar); }; @@ -133,34 +139,34 @@ public: */ class Key_change_req : public Command_req { public: - Array melodic_p_arr_; - bool minor_b_; - - /// don't ignore the octaves in #melodic_p_arr_#? - bool multi_octave_b_; - Key_change_req(); - Key_change_req (Key_change_req const&); - ~Key_change_req(); - REQUESTMETHODS(Key_change_req, keychange); - - /// squash the octaves to 1 - void squash_octaves(); - /// return number of flats in key - int flats_i(); - - /// return number of sharps in key - int sharps_i(); - - void transpose (Melodic_req const * d) const; - /// is minor key? - int minor_b(); + Array melodic_p_arr_; + bool minor_b_; + + /// don't ignore the octaves in #melodic_p_arr_#? + bool multi_octave_b_; + Key_change_req(); + Key_change_req (Key_change_req const&); + ~Key_change_req(); + REQUESTMETHODS(Key_change_req, keychange); + + /// squash the octaves to 1 + void squash_octaves(); + /// return number of flats in key + int flats_i(); + + /// return number of sharps in key + int sharps_i(); + + void transpose (Melodic_req const * d) const; + /// is minor key? + int minor_b(); }; class Clef_change_req : public Command_req { public: - String clef_str_; - Clef_change_req (String); - REQUESTMETHODS(Clef_change_req, clefchange); + String clef_str_; + Clef_change_req (String); + REQUESTMETHODS(Clef_change_req, clefchange); }; #endif // COMMANDREQUEST_HH diff --git a/lily/include/dummy.icc b/lily/include/dummy.icc new file mode 100644 index 0000000000..e69de29bb2 diff --git a/lily/include/lily-proto.hh b/lily/include/lily-proto.hh index 1d39aad243..8f11061320 100644 --- a/lily/include/lily-proto.hh +++ b/lily/include/lily-proto.hh @@ -74,6 +74,7 @@ struct Dynamic; struct Dynamic_req; struct Element_group; struct Element_group_item; +struct Break_force_req; struct General_script_def; struct Graphical_element; struct Music_output; diff --git a/lily/include/out/dummy.dep b/lily/include/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/lily/include/score-column.hh b/lily/include/score-column.hh index 699c84a280..624c49ef31 100644 --- a/lily/include/score-column.hh +++ b/lily/include/score-column.hh @@ -26,25 +26,27 @@ */ class Score_column : public Paper_column { - friend class Score; - friend class Score_engraver; + friend class Score; + friend class Score_engraver; - bool musical_b_; - Moment when_; + bool musical_b_; + bool forced_break_b_; + Moment when_; public: + bool forced_break_b () { return forced_break_b_ ; } DECLARE_MY_RUNTIME_TYPEINFO; SCORE_ELEM_CLONE(Score_column); - /// length of notes/rests in this column - Array durations; + /// length of notes/rests in this column + Array durations; - /* *************** */ - - Moment when() { return when_; } - Score_column (Moment when); - void add_duration (Moment); - void preprocess(); - bool musical_b() { return musical_b_; } - void do_print() const; + /* *************** */ + + Moment when() { return when_; } + Score_column (Moment when); + void add_duration (Moment); + void preprocess(); + bool musical_b() { return musical_b_; } + void do_print() const; }; diff --git a/lily/lexer.cc b/lily/lexer.cc new file mode 100644 index 0000000000..f43cd5174d --- /dev/null +++ b/lily/lexer.cc @@ -0,0 +1,2096 @@ +/* A lexical scanner generated by flex */ + +/* Scanner skeleton version: + * $Header: /home/daffy/u0/vern/flex/RCS/flex.skl,v 2.91 96/09/10 16:58:48 vern Exp $ + */ + +#define FLEX_SCANNER +#define YY_FLEX_MAJOR_VERSION 2 +#define YY_FLEX_MINOR_VERSION 5 + + + +/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ +#ifdef c_plusplus +#ifndef __cplusplus +#define __cplusplus +#endif +#endif + + +#ifdef __cplusplus + +#include +class istream; +#include + +/* Use prototypes in function declarations. */ +#define YY_USE_PROTOS + +/* The "const" storage-class-modifier is valid. */ +#define YY_USE_CONST + +#else /* ! __cplusplus */ + +#if __STDC__ + +#define YY_USE_PROTOS +#define YY_USE_CONST + +#endif /* __STDC__ */ +#endif /* ! __cplusplus */ + +#ifdef __TURBOC__ + #pragma warn -rch + #pragma warn -use +#include +#include +#define YY_USE_CONST +#define YY_USE_PROTOS +#endif + +#ifdef YY_USE_CONST +#define yyconst const +#else +#define yyconst +#endif + + +#ifdef YY_USE_PROTOS +#define YY_PROTO(proto) proto +#else +#define YY_PROTO(proto) () +#endif + +/* Returned upon end-of-file. */ +#define YY_NULL 0 + +/* Promotes a possibly negative, possibly signed char to an unsigned + * integer for use as an array index. If the signed char is negative, + * we want to instead treat it as an 8-bit unsigned char, hence the + * double cast. + */ +#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) + +/* Enter a start condition. This macro really ought to take a parameter, + * but we do it the disgusting crufty way forced on us by the ()-less + * definition of BEGIN. + */ +#define BEGIN yy_start = 1 + 2 * + +/* Translate the current start state into a value that can be later handed + * to BEGIN to return to the state. The YYSTATE alias is for lex + * compatibility. + */ +#define YY_START ((yy_start - 1) / 2) +#define YYSTATE YY_START + +/* Action number for EOF rule of a given start state. */ +#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) + +/* Special action meaning "start processing a new file". */ +#define YY_NEW_FILE yyrestart( yyin ) + +#define YY_END_OF_BUFFER_CHAR 0 + +/* Size of default input buffer. */ +#define YY_BUF_SIZE 16384 + +typedef struct yy_buffer_state *YY_BUFFER_STATE; + +extern int yyleng; + +#define EOB_ACT_CONTINUE_SCAN 0 +#define EOB_ACT_END_OF_FILE 1 +#define EOB_ACT_LAST_MATCH 2 + +/* The funky do-while in the following #define is used to turn the definition + * int a single C statement (which needs a semi-colon terminator). This + * avoids problems with code like: + * + * if ( condition_holds ) + * yyless( 5 ); + * else + * do_something_else(); + * + * Prior to using the do-while the compiler would get upset at the + * "else" because it interpreted the "if" statement as being all + * done when it reached the ';' after the yyless() call. + */ + +/* Return all but the first 'n' matched characters back to the input stream. */ + +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + *yy_cp = yy_hold_char; \ + YY_RESTORE_YY_MORE_OFFSET \ + yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + } \ + while ( 0 ) + +#define unput(c) yyunput( c, yytext_ptr ) + +/* The following is because we cannot portably get our hands on size_t + * (without autoconf's help, which isn't available because we want + * flex-generated scanners to compile on their own). + */ +typedef unsigned int yy_size_t; + + +struct yy_buffer_state + { + istream* yy_input_file; + + char *yy_ch_buf; /* input buffer */ + char *yy_buf_pos; /* current position in input buffer */ + + /* Size of input buffer in bytes, not including room for EOB + * characters. + */ + yy_size_t yy_buf_size; + + /* Number of characters read into yy_ch_buf, not including EOB + * characters. + */ + int yy_n_chars; + + /* Whether we "own" the buffer - i.e., we know we created it, + * and can realloc() it to grow it, and should free() it to + * delete it. + */ + int yy_is_our_buffer; + + /* Whether this is an "interactive" input source; if so, and + * if we're using stdio for input, then we want to use getc() + * instead of fread(), to make sure we stop fetching input after + * each newline. + */ + int yy_is_interactive; + + /* Whether we're considered to be at the beginning of a line. + * If so, '^' rules will be active on the next match, otherwise + * not. + */ + int yy_at_bol; + + /* Whether to try to fill the input buffer when we reach the + * end of it. + */ + int yy_fill_buffer; + + int yy_buffer_status; +#define YY_BUFFER_NEW 0 +#define YY_BUFFER_NORMAL 1 + /* When an EOF's been seen but there's still some text to process + * then we mark the buffer as YY_EOF_PENDING, to indicate that we + * shouldn't try reading from the input source any more. We might + * still have a bunch of tokens to match, though, because of + * possible backing-up. + * + * When we actually see the EOF, we change the status to "new" + * (via yyrestart()), so that the user can continue scanning by + * just pointing yyin at a new input file. + */ +#define YY_BUFFER_EOF_PENDING 2 + }; + + +/* We provide macros for accessing buffer states in case in the + * future we want to put the buffer states in a more general + * "scanner state". + */ +#define YY_CURRENT_BUFFER yy_current_buffer + + + +static void *yy_flex_alloc YY_PROTO(( yy_size_t )); +static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )); +static void yy_flex_free YY_PROTO(( void * )); + +#define yy_new_buffer yy_create_buffer + +#define yy_set_interactive(is_interactive) \ + { \ + if ( ! yy_current_buffer ) \ + yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ + yy_current_buffer->yy_is_interactive = is_interactive; \ + } + +#define yy_set_bol(at_bol) \ + { \ + if ( ! yy_current_buffer ) \ + yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ + yy_current_buffer->yy_at_bol = at_bol; \ + } + +#define YY_AT_BOL() (yy_current_buffer->yy_at_bol) + + +#define yywrap() 1 +#define YY_SKIP_YYWRAP + +#define FLEX_DEBUG +typedef unsigned char YY_CHAR; +#define yytext_ptr yytext +#define YY_INTERACTIVE + +#define FLEX_DEBUG + +#include +int yyFlexLexer::yylex() + { + LexerError( "yyFlexLexer::yylex invoked but %option yyclass used" ); + return 0; + } + +#define YY_DECL int My_lily_lexer::yylex() + + +/* Done after the current pattern has been matched and before the + * corresponding action - sets up yytext. + */ +#define YY_DO_BEFORE_ACTION \ + yytext_ptr = yy_bp; \ + yyleng = (int) (yy_cp - yy_bp); \ + yy_hold_char = *yy_cp; \ + *yy_cp = '\0'; \ + yy_c_buf_p = yy_cp; + +#define YY_NUM_RULES 47 +#define YY_END_OF_BUFFER 48 +static yyconst short int yy_accept[124] = + { 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 8, 8, 48, 44, 7, 7, 1, 26, 18, 44, + 41, 44, 44, 39, 36, 44, 40, 46, 7, 1, + 13, 46, 34, 35, 7, 1, 31, 18, 35, 32, + 34, 35, 25, 20, 23, 21, 44, 14, 28, 28, + 1, 29, 30, 8, 8, 1, 9, 8, 7, 18, + 16, 4, 5, 2, 0, 0, 38, 38, 39, 36, + 45, 17, 37, 37, 13, 12, 34, 32, 34, 33, + 42, 43, 33, 20, 24, 19, 21, 22, 22, 28, + 27, 8, 8, 9, 9, 10, 6, 3, 38, 17, + + 15, 37, 37, 33, 33, 22, 22, 37, 33, 22, + 37, 33, 22, 37, 33, 22, 37, 33, 22, 11, + 11, 11, 0 + } ; + +static yyconst int yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 2, 2, 3, 4, + 2, 3, 5, 2, 2, 2, 1, 1, 1, 1, + 1, 1, 1, 2, 1, 2, 2, 2, 2, 1, + 2, 3, 6, 7, 2, 8, 9, 2, 10, 2, + 2, 11, 2, 2, 12, 13, 2, 14, 14, 14, + 14, 14, 14, 14, 14, 14, 14, 15, 2, 2, + 11, 2, 6, 2, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, + 17, 18, 19, 20, 21, 20, 16, 16, 22, 23, + + 24, 16, 16, 16, 25, 16, 16, 26, 16, 27, + 16, 16, 16, 28, 28, 29, 30, 16, 16, 16, + 16, 16, 31, 2, 32, 2, 2, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 + } ; + +static yyconst int yy_meta[33] = + { 0, + 1, 1, 2, 3, 1, 1, 4, 1, 5, 6, + 1, 1, 1, 7, 1, 8, 1, 4, 1, 1, + 9, 8, 8, 8, 8, 8, 10, 8, 10, 8, + 1, 1 + } ; + +static yyconst short int yy_base[144] = + { 0, + 0, 0, 30, 37, 46, 0, 78, 0, 107, 111, + 115, 117, 409, 410, 124, 127, 410, 410, 129, 109, + 410, 121, 394, 123, 0, 142, 410, 410, 135, 410, + 400, 113, 0, 410, 138, 410, 410, 142, 144, 392, + 0, 175, 410, 395, 390, 393, 200, 392, 0, 0, + 0, 410, 0, 369, 368, 366, 142, 0, 149, 151, + 410, 391, 410, 410, 350, 143, 330, 324, 146, 0, + 410, 158, 0, 310, 329, 410, 0, 320, 0, 0, + 410, 410, 299, 311, 305, 410, 304, 0, 283, 0, + 410, 277, 0, 200, 201, 410, 286, 410, 217, 208, + + 410, 0, 199, 0, 198, 0, 196, 189, 188, 187, + 149, 143, 133, 120, 100, 22, 19, 14, 12, 0, + 0, 0, 410, 233, 243, 253, 263, 273, 277, 287, + 297, 307, 312, 322, 329, 339, 349, 359, 369, 379, + 383, 386, 389 + } ; + +static yyconst short int yy_def[144] = + { 0, + 123, 1, 124, 124, 123, 5, 123, 7, 125, 125, + 126, 126, 123, 123, 123, 123, 123, 123, 127, 128, + 123, 123, 123, 123, 129, 130, 123, 123, 123, 123, + 131, 128, 132, 123, 123, 123, 123, 127, 128, 123, + 132, 123, 123, 123, 123, 133, 130, 133, 134, 134, + 134, 123, 135, 136, 136, 136, 137, 138, 123, 127, + 123, 139, 123, 123, 123, 123, 123, 123, 123, 129, + 123, 140, 141, 141, 131, 123, 132, 123, 132, 142, + 123, 123, 142, 123, 123, 123, 133, 143, 143, 134, + 123, 136, 138, 137, 137, 123, 139, 123, 123, 140, + + 123, 141, 141, 142, 142, 143, 143, 141, 142, 143, + 141, 142, 143, 141, 142, 143, 141, 142, 143, 141, + 142, 143, 0, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123 + } ; + +static yyconst short int yy_nxt[443] = + { 0, + 14, 14, 15, 16, 17, 14, 18, 19, 20, 14, + 21, 22, 23, 24, 21, 25, 14, 26, 14, 14, + 14, 25, 25, 25, 25, 25, 25, 25, 25, 25, + 27, 27, 29, 16, 30, 122, 31, 121, 32, 29, + 16, 30, 120, 31, 119, 32, 33, 34, 35, 16, + 36, 33, 37, 38, 39, 33, 34, 33, 34, 40, + 33, 41, 34, 42, 34, 34, 41, 41, 41, 41, + 41, 41, 41, 41, 41, 41, 34, 34, 14, 14, + 15, 16, 17, 14, 43, 19, 20, 44, 14, 14, + 14, 45, 14, 46, 14, 47, 14, 14, 14, 46, + + 46, 46, 46, 46, 46, 48, 46, 46, 14, 14, + 50, 51, 63, 52, 50, 51, 63, 52, 55, 56, + 55, 56, 118, 57, 53, 57, 59, 59, 53, 59, + 59, 61, 61, 65, 66, 68, 69, 59, 59, 64, + 59, 59, 117, 64, 61, 61, 58, 63, 58, 72, + 95, 59, 59, 61, 61, 68, 66, 73, 68, 69, + 101, 101, 116, 73, 73, 73, 74, 73, 73, 73, + 73, 73, 115, 96, 64, 71, 71, 71, 114, 71, + 71, 79, 72, 71, 79, 71, 71, 71, 71, 71, + 80, 81, 71, 82, 79, 71, 80, 80, 80, 83, + + 80, 80, 80, 80, 80, 71, 71, 72, 123, 95, + 101, 101, 113, 112, 111, 88, 81, 110, 82, 109, + 108, 88, 88, 88, 89, 88, 88, 88, 88, 88, + 99, 123, 96, 28, 28, 28, 28, 28, 28, 28, + 28, 28, 28, 49, 49, 49, 49, 49, 49, 49, + 49, 49, 49, 54, 54, 54, 54, 54, 54, 54, + 54, 54, 54, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 62, 62, 62, 62, 62, 62, 62, + 62, 62, 62, 70, 70, 70, 70, 71, 71, 98, + 71, 71, 71, 71, 71, 71, 71, 75, 75, 75, + + 75, 75, 75, 75, 75, 75, 75, 77, 93, 107, + 77, 77, 77, 86, 77, 77, 77, 87, 85, 87, + 84, 87, 90, 90, 90, 105, 90, 90, 90, 90, + 90, 90, 91, 78, 91, 76, 103, 99, 91, 92, + 92, 92, 92, 67, 92, 92, 92, 92, 92, 94, + 94, 94, 94, 94, 94, 94, 94, 94, 94, 93, + 93, 93, 93, 67, 93, 93, 93, 93, 93, 97, + 97, 97, 97, 97, 97, 97, 97, 97, 97, 100, + 100, 100, 100, 100, 100, 100, 100, 100, 100, 102, + 102, 102, 102, 104, 98, 104, 106, 93, 106, 93, + + 93, 86, 86, 85, 84, 78, 76, 67, 123, 13, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123 + } ; + +static yyconst short int yy_chk[443] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 3, 3, 3, 119, 3, 118, 3, 4, + 4, 4, 117, 4, 116, 4, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + + 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 9, 9, 20, 9, 10, 10, 32, 10, 11, 11, + 12, 12, 115, 11, 9, 12, 15, 15, 10, 16, + 16, 19, 19, 22, 22, 24, 24, 29, 29, 20, + 35, 35, 114, 32, 38, 38, 11, 39, 12, 26, + 57, 59, 59, 60, 60, 66, 66, 26, 69, 69, + 72, 72, 113, 26, 26, 26, 26, 26, 26, 26, + 26, 26, 112, 57, 39, 42, 42, 42, 111, 42, + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, + 42, 42, 42, 42, 42, 42, 42, 42, 42, 42, + + 42, 42, 42, 42, 42, 42, 42, 47, 94, 95, + 100, 100, 110, 109, 108, 47, 47, 107, 47, 105, + 103, 47, 47, 47, 47, 47, 47, 47, 47, 47, + 99, 94, 95, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 125, 125, 125, 125, 125, 125, 125, + 125, 125, 125, 126, 126, 126, 126, 126, 126, 126, + 126, 126, 126, 127, 127, 127, 127, 127, 127, 127, + 127, 127, 127, 128, 128, 128, 128, 128, 128, 128, + 128, 128, 128, 129, 129, 129, 129, 130, 130, 97, + 130, 130, 130, 130, 130, 130, 130, 131, 131, 131, + + 131, 131, 131, 131, 131, 131, 131, 132, 92, 89, + 132, 132, 132, 87, 132, 132, 132, 133, 85, 133, + 84, 133, 134, 134, 134, 83, 134, 134, 134, 134, + 134, 134, 135, 78, 135, 75, 74, 68, 135, 136, + 136, 136, 136, 67, 136, 136, 136, 136, 136, 137, + 137, 137, 137, 137, 137, 137, 137, 137, 137, 138, + 138, 138, 138, 65, 138, 138, 138, 138, 138, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 140, + 140, 140, 140, 140, 140, 140, 140, 140, 140, 141, + 141, 141, 141, 142, 62, 142, 143, 56, 143, 55, + + 54, 48, 46, 45, 44, 40, 31, 23, 13, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, + 123, 123 + } ; + +static yyconst short int yy_rule_linenum[47] = + { 0, + 94, 99, 102, 104, 106, 108, 110, 116, 118, 121, + 133, 136, 143, 147, 153, 158, 163, 167, 172, 176, + 184, 189, 193, 198, 203, 208, 212, 215, 218, 223, + 230, 233, 237, 240, 255, 267, 270, 273, 282, 287, + 292, 298, 302, 306, 310, 325 + } ; + +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ +#define REJECT reject_used_but_not_detected +#define yymore() yymore_used_but_not_detected +#define YY_MORE_ADJ 0 +#define YY_RESTORE_YY_MORE_OFFSET +#line 1 "lexer.ll" +#define INITIAL 0 +#line 2 "lexer.ll" +/* + lexer.l -- implement the Flex lexer + + source file of the LilyPond music typesetter + + (c) 1996,1997 Han-Wen Nienhuys +*/ + + +/* + backup rules + + after making a change to the lexer rules, run + flex -b + and make sure that + lex.backup + contains no backup states, but only the reminder + Compressed tables always back up. + (don-t forget to rm lex.yy.cc :-) + */ + + +#include +#include + +#include "string.hh" +#include "string-convert.hh" +#include "my-lily-lexer.hh" +#include "varray.hh" +#include "interval.hh" +#include "parser.hh" +#include "debug.hh" +#include "parseconstruct.hh" +#include "main.hh" +#include "identifier.hh" +void strip_trailing_white (String&); +void strip_leading_white (String&); + + +#define start_quote() \ + yy_push_state (quote);\ + yylval.string = new String + +#define yylval (*(YYSTYPE*)lexval_l) + +#define YY_USER_ACTION add_lexed_char (YYLeng ()); +#define YY_STACK_USED 1 +#define YY_NEVER_INTERACTIVE 1 +#define incl 1 + +#define lyrics 2 + +#define notes 3 + +#define quote 4 + +#define longcomment 5 + +#line 546 "lex.yy.cc" + +/* Macros after this point can all be overridden by user definitions in + * section 1. + */ + +#ifndef YY_SKIP_YYWRAP +#ifdef __cplusplus +extern "C" int yywrap YY_PROTO(( void )); +#else +extern int yywrap YY_PROTO(( void )); +#endif +#endif + + +#ifndef yytext_ptr +static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int )); +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen YY_PROTO(( yyconst char * )); +#endif + +#ifndef YY_NO_INPUT +#endif + +#if YY_STACK_USED +static int yy_start_stack_ptr = 0; +static int yy_start_stack_depth = 0; +static int *yy_start_stack = 0; +#ifndef YY_NO_PUSH_STATE +static void yy_push_state YY_PROTO(( int new_state )); +#endif +#ifndef YY_NO_POP_STATE +static void yy_pop_state YY_PROTO(( void )); +#endif +#ifndef YY_NO_TOP_STATE +static int yy_top_state YY_PROTO(( void )); +#endif + +#else +#define YY_NO_PUSH_STATE 1 +#define YY_NO_POP_STATE 1 +#define YY_NO_TOP_STATE 1 +#endif + +#ifdef YY_MALLOC_DECL +YY_MALLOC_DECL +#else +#if __STDC__ +#ifndef __cplusplus +#include +#endif +#else +/* Just try to get by without declaring the routines. This will fail + * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) + * or sizeof(void*) != sizeof(int). + */ +#endif +#endif + +/* Amount of stuff to slurp up with each read. */ +#ifndef YY_READ_BUF_SIZE +#define YY_READ_BUF_SIZE 8192 +#endif + +/* Copy whatever the last rule matched to the standard output. */ + +#ifndef ECHO +#define ECHO LexerOutput( yytext, yyleng ) +#endif + +/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, + * is returned in "result". + */ +#ifndef YY_INPUT +#define YY_INPUT(buf,result,max_size) \ + if ( (result = LexerInput( (char *) buf, max_size )) < 0 ) \ + YY_FATAL_ERROR( "input in flex scanner failed" ); +#endif + +/* No semi-colon after return; correct usage is to write "yyterminate();" - + * we don't want an extra ';' after the "return" because that will cause + * some compilers to complain about unreachable statements. + */ +#ifndef yyterminate +#define yyterminate() return YY_NULL +#endif + +/* Number of entries by which start-condition stack grows. */ +#ifndef YY_START_STACK_INCR +#define YY_START_STACK_INCR 25 +#endif + +/* Report a fatal error. */ +#ifndef YY_FATAL_ERROR +#define YY_FATAL_ERROR(msg) LexerError( msg ) +#endif + +/* Default declaration of generated scanner - a define so the user can + * easily add parameters. + */ +#ifndef YY_DECL +#define YY_DECL int yyFlexLexer::yylex() +#endif + +/* Code executed at the beginning of each rule, after yytext and yyleng + * have been set up. + */ +#ifndef YY_USER_ACTION +#define YY_USER_ACTION +#endif + +/* Code executed at the end of each rule. */ +#ifndef YY_BREAK +#define YY_BREAK break; +#endif + +#define YY_RULE_SETUP \ + YY_USER_ACTION + +YY_DECL + { + register yy_state_type yy_current_state; + register char *yy_cp, *yy_bp; + register int yy_act; + +#line 91 "lexer.ll" + + + +#line 677 "lex.yy.cc" + + if ( yy_init ) + { + yy_init = 0; + +#ifdef YY_USER_INIT + YY_USER_INIT; +#endif + + if ( ! yy_start ) + yy_start = 1; /* first start state */ + + if ( ! yyin ) + yyin = &cin; + + if ( ! yyout ) + yyout = &cout; + + if ( ! yy_current_buffer ) + yy_current_buffer = + yy_create_buffer( yyin, YY_BUF_SIZE ); + + yy_load_buffer_state(); + } + + while ( 1 ) /* loops until end-of-file is reached */ + { + yy_cp = yy_c_buf_p; + + /* Support of yytext. */ + *yy_cp = yy_hold_char; + + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; + + yy_current_state = yy_start; +yy_match: + do + { + register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; + yy_last_accepting_cpos = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 124 ) + yy_c = yy_meta[(unsigned int) yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + ++yy_cp; + } + while ( yy_base[yy_current_state] != 410 ); + +yy_find_action: + yy_act = yy_accept[yy_current_state]; + if ( yy_act == 0 ) + { /* have to back up */ + yy_cp = yy_last_accepting_cpos; + yy_current_state = yy_last_accepting_state; + yy_act = yy_accept[yy_current_state]; + } + + YY_DO_BEFORE_ACTION; + + +do_action: /* This label is used only to access EOF actions. */ + + if ( yy_flex_debug ) + { + if ( yy_act == 0 ) + cerr << "--scanner backing up\n"; + else if ( yy_act < 47 ) + cerr << "--accepting rule at line " << yy_rule_linenum[yy_act] << + "(\"" << yytext << "\")\n"; + else if ( yy_act == 47 ) + cerr << "--accepting default rule (\"" << yytext << "\")\n"; + else if ( yy_act == 48 ) + cerr << "--(end of buffer or a NUL)\n"; + else + cerr << "--EOF (start condition " << YY_START << ")\n"; + } + + switch ( yy_act ) + { /* beginning of action switch */ + case 0: /* must back up */ + /* undo the effects of YY_DO_BEFORE_ACTION */ + *yy_cp = yy_hold_char; + yy_cp = yy_last_accepting_cpos; + yy_current_state = yy_last_accepting_state; + goto yy_find_action; + +case 1: +YY_RULE_SETUP +#line 94 "lexer.ll" +{ + // windows-suck-suck-suck +} + YY_BREAK + +case 2: +YY_RULE_SETUP +#line 99 "lexer.ll" +{ + yy_push_state (longcomment); + } + YY_BREAK +case 3: +YY_RULE_SETUP +#line 102 "lexer.ll" +{ + } + YY_BREAK +case 4: +YY_RULE_SETUP +#line 104 "lexer.ll" +{ // backup rule + } + YY_BREAK +case 5: +YY_RULE_SETUP +#line 106 "lexer.ll" +{ + } + YY_BREAK +case 6: +YY_RULE_SETUP +#line 108 "lexer.ll" +{ + } + YY_BREAK +case 7: +YY_RULE_SETUP +#line 110 "lexer.ll" +{ + + } + YY_BREAK + + +case 8: +YY_RULE_SETUP +#line 116 "lexer.ll" +{ + } + YY_BREAK +case 9: +YY_RULE_SETUP +#line 118 "lexer.ll" +{ + + } + YY_BREAK +case 10: +YY_RULE_SETUP +#line 121 "lexer.ll" +{ + yy_pop_state (); + } + YY_BREAK +case YY_STATE_EOF(longcomment): +#line 124 "lexer.ll" +{ + LexerError ("EOF found inside a comment"); + if (! close_input ()) + yyterminate (); // can't move this, since it actually rets a YY_NULL + } + YY_BREAK + +case 11: +YY_RULE_SETUP +#line 133 "lexer.ll" +{ + yy_push_state (incl); +} + YY_BREAK +case 12: +YY_RULE_SETUP +#line 136 "lexer.ll" +{ /* got the include file name */ + String s (YYText ()+1); + s = s.left_str (s.length_i ()-1); + DOUT << "#include `" << s << "\'\n"; + new_input (s,source_global_l); + yy_pop_state (); +} + YY_BREAK +case 13: +YY_RULE_SETUP +#line 143 "lexer.ll" +{ // backup rule + cerr << "missing end quote" << endl; + exit (1); +} + YY_BREAK +case 14: +YY_RULE_SETUP +#line 147 "lexer.ll" +{ + const char *s = YYText (); + yylval.string = new String (s); + DOUT << "rest:"<< yylval.string; + return RESTNAME; +} + YY_BREAK +case 15: +YY_RULE_SETUP +#line 153 "lexer.ll" +{ + String s=YYText () + 2; + s=s.left_str (s.length_i () - 1); + return scan_escaped_word (s); +} + YY_BREAK +case 16: +YY_RULE_SETUP +#line 158 "lexer.ll" +{ + String s=YYText () + 1; + s=s.left_str (s.length_i () - 1); + return scan_bare_word (s); +} + YY_BREAK +case 17: +YY_RULE_SETUP +#line 163 "lexer.ll" +{ // backup rule + cerr << "white expected" << endl; + exit (1); +} + YY_BREAK +case 18: +YY_RULE_SETUP +#line 167 "lexer.ll" +{ // backup rule + cerr << "white expected" << endl; + exit (1); +} + YY_BREAK + +case 19: +*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ +yy_c_buf_p = yy_cp -= 1; +YY_DO_BEFORE_ACTION; /* set up yytext again */ +YY_RULE_SETUP +#line 172 "lexer.ll" +{ + post_quotes_b_ = true; + return scan_bare_word (YYText ()); + } + YY_BREAK +case 20: +YY_RULE_SETUP +#line 176 "lexer.ll" +{ + yylval.i = YYLeng (); + if (post_quotes_b_) { + post_quotes_b_ = false; + return POST_QUOTES; + } else + return PRE_QUOTES; + } + YY_BREAK +case 21: +YY_RULE_SETUP +#line 184 "lexer.ll" +{ + return scan_bare_word (YYText ()); + + } + YY_BREAK +case 22: +YY_RULE_SETUP +#line 189 "lexer.ll" +{ + return scan_escaped_word (YYText ()+1); + } + YY_BREAK +case 23: +YY_RULE_SETUP +#line 193 "lexer.ll" +{ + yylval.i = String_convert::dec2_i (String (YYText ())); + return DIGIT; + } + YY_BREAK +case 24: +YY_RULE_SETUP +#line 198 "lexer.ll" +{ + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; + } + YY_BREAK +case 25: +YY_RULE_SETUP +#line 203 "lexer.ll" +{ + start_quote (); + } + YY_BREAK + +case 26: +YY_RULE_SETUP +#line 208 "lexer.ll" +{ + start_quote (); +} + YY_BREAK + +case 27: +YY_RULE_SETUP +#line 212 "lexer.ll" +{ + *yylval.string += escaped_char(YYText()[1]); + } + YY_BREAK +case 28: +YY_RULE_SETUP +#line 215 "lexer.ll" +{ + *yylval.string += YYText (); + } + YY_BREAK +case 29: +YY_RULE_SETUP +#line 218 "lexer.ll" +{ + DOUT << "quoted string: `" << *yylval.string << "'\n"; + yy_pop_state (); + return STRING; + } + YY_BREAK +case 30: +YY_RULE_SETUP +#line 223 "lexer.ll" +{ + *yylval.string += YYText (); + } + YY_BREAK + + +case 31: +YY_RULE_SETUP +#line 230 "lexer.ll" +{ + start_quote (); + } + YY_BREAK +case 32: +YY_RULE_SETUP +#line 233 "lexer.ll" +{ + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; + } + YY_BREAK +case 33: +YY_RULE_SETUP +#line 237 "lexer.ll" +{ + return scan_escaped_word (YYText ()+1); + } + YY_BREAK +case 34: +YY_RULE_SETUP +#line 240 "lexer.ll" +{ + /* ugr. This sux. */ + String s (YYText ()); + int i = 0; + while ((i=s.index_i ("_")) != -1) // change word binding "_" to " " + *(s.ch_l () + i) = ' '; + if ((i=s.index_i ("\\,")) != -1) // change "\," to TeX's "\c " + { + *(s.ch_l () + i + 1) = 'c'; + s = s.left_str (i+2) + " " + s.right_str (s.length_i ()-i-2); + } + yylval.string = new String (s); + DOUT << "lyric : `" << s << "'\n"; + return STRING; + } + YY_BREAK +case 35: +YY_RULE_SETUP +#line 255 "lexer.ll" +{ + return yylval.c = YYText ()[0]; + } + YY_BREAK + +case YY_STATE_EOF(INITIAL): +case YY_STATE_EOF(incl): +case YY_STATE_EOF(lyrics): +case YY_STATE_EOF(notes): +case YY_STATE_EOF(quote): +#line 260 "lexer.ll" +{ + DOUT << "<>"; + + if (! close_input ()) { + yyterminate (); // can't move this, since it actually rets a YY_NULL + } +} + YY_BREAK +case 36: +YY_RULE_SETUP +#line 267 "lexer.ll" +{ + return scan_bare_word (YYText ()); +} + YY_BREAK +case 37: +YY_RULE_SETUP +#line 270 "lexer.ll" +{ + return scan_escaped_word (YYText ()+1); +} + YY_BREAK +case 38: +YY_RULE_SETUP +#line 273 "lexer.ll" +{ + Real r; + int cnv=sscanf (YYText (), "%lf", &r); + assert (cnv == 1); + DOUT << "REAL" << r<<'\n'; + yylval.real = r; + return REAL; +} + YY_BREAK +case 39: +YY_RULE_SETUP +#line 282 "lexer.ll" +{ + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; +} + YY_BREAK +case 40: +YY_RULE_SETUP +#line 287 "lexer.ll" +{ + + DOUT << "parens\n"; + return YYText ()[0]; +} + YY_BREAK +case 41: +YY_RULE_SETUP +#line 292 "lexer.ll" +{ + char c = YYText ()[0]; + DOUT << "misc char" <': + return E_BIGGER; + case '<': + return E_SMALLER; + case '!': + return E_EXCLAMATION; + default: + return E_CHAR; + } +} + YY_BREAK +case 46: +YY_RULE_SETUP +#line 325 "lexer.ll" +{ + String msg= String ("illegal character: ") +String (YYText ()[0]); + LexerError (msg.ch_C ()); + return YYText ()[0]; +} + YY_BREAK +case 47: +YY_RULE_SETUP +#line 331 "lexer.ll" +YY_FATAL_ERROR( "flex scanner jammed" ); + YY_BREAK +#line 1192 "lex.yy.cc" + + case YY_END_OF_BUFFER: + { + /* Amount of text matched not including the EOB char. */ + int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1; + + /* Undo the effects of YY_DO_BEFORE_ACTION. */ + *yy_cp = yy_hold_char; + YY_RESTORE_YY_MORE_OFFSET + + if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW ) + { + /* We're scanning a new file or input source. It's + * possible that this happened because the user + * just pointed yyin at a new source and called + * yylex(). If so, then we have to assure + * consistency between yy_current_buffer and our + * globals. Here is the right place to do so, because + * this is the first action (other than possibly a + * back-up) that will match for the new input source. + */ + yy_n_chars = yy_current_buffer->yy_n_chars; + yy_current_buffer->yy_input_file = yyin; + yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL; + } + + /* Note that here we test for yy_c_buf_p "<=" to the position + * of the first EOB in the buffer, since yy_c_buf_p will + * already have been incremented past the NUL character + * (since all states make transitions on EOB to the + * end-of-buffer state). Contrast this with the test + * in input(). + */ + if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + { /* This was really a NUL. */ + yy_state_type yy_next_state; + + yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state(); + + /* Okay, we're now positioned to make the NUL + * transition. We couldn't have + * yy_get_previous_state() go ahead and do it + * for us because it doesn't know how to deal + * with the possibility of jamming (and we don't + * want to build jamming into it because then it + * will run more slowly). + */ + + yy_next_state = yy_try_NUL_trans( yy_current_state ); + + yy_bp = yytext_ptr + YY_MORE_ADJ; + + if ( yy_next_state ) + { + /* Consume the NUL. */ + yy_cp = ++yy_c_buf_p; + yy_current_state = yy_next_state; + goto yy_match; + } + + else + { + yy_cp = yy_c_buf_p; + goto yy_find_action; + } + } + + else switch ( yy_get_next_buffer() ) + { + case EOB_ACT_END_OF_FILE: + { + yy_did_buffer_switch_on_eof = 0; + + if ( yywrap() ) + { + /* Note: because we've taken care in + * yy_get_next_buffer() to have set up + * yytext, we can now set up + * yy_c_buf_p so that if some total + * hoser (like flex itself) wants to + * call the scanner after we return the + * YY_NULL, it'll still work - another + * YY_NULL will get returned. + */ + yy_c_buf_p = yytext_ptr + YY_MORE_ADJ; + + yy_act = YY_STATE_EOF(YY_START); + goto do_action; + } + + else + { + if ( ! yy_did_buffer_switch_on_eof ) + YY_NEW_FILE; + } + break; + } + + case EOB_ACT_CONTINUE_SCAN: + yy_c_buf_p = + yytext_ptr + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state(); + + yy_cp = yy_c_buf_p; + yy_bp = yytext_ptr + YY_MORE_ADJ; + goto yy_match; + + case EOB_ACT_LAST_MATCH: + yy_c_buf_p = + &yy_current_buffer->yy_ch_buf[yy_n_chars]; + + yy_current_state = yy_get_previous_state(); + + yy_cp = yy_c_buf_p; + yy_bp = yytext_ptr + YY_MORE_ADJ; + goto yy_find_action; + } + break; + } + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ + } /* end of yylex */ + +yyFlexLexer::yyFlexLexer( istream* arg_yyin, ostream* arg_yyout ) + { + yyin = arg_yyin; + yyout = arg_yyout; + yy_c_buf_p = 0; + yy_init = 1; + yy_start = 0; + yy_flex_debug = 0; + yylineno = 1; // this will only get updated if %option yylineno + + yy_did_buffer_switch_on_eof = 0; + + yy_looking_for_trail_begin = 0; + yy_more_flag = 0; + yy_more_len = 0; + yy_more_offset = yy_prev_more_offset = 0; + + yy_start_stack_ptr = yy_start_stack_depth = 0; + yy_start_stack = 0; + + yy_current_buffer = 0; + +#ifdef YY_USES_REJECT + yy_state_buf = new yy_state_type[YY_BUF_SIZE + 2]; +#else + yy_state_buf = 0; +#endif + } + +yyFlexLexer::~yyFlexLexer() + { + delete yy_state_buf; + yy_delete_buffer( yy_current_buffer ); + } + +void yyFlexLexer::switch_streams( istream* new_in, ostream* new_out ) + { + if ( new_in ) + { + yy_delete_buffer( yy_current_buffer ); + yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE ) ); + } + + if ( new_out ) + yyout = new_out; + } + +#ifdef YY_INTERACTIVE +int yyFlexLexer::LexerInput( char* buf, int /* max_size */ ) +#else +int yyFlexLexer::LexerInput( char* buf, int max_size ) +#endif + { + if ( yyin->eof() || yyin->fail() ) + return 0; + +#ifdef YY_INTERACTIVE + yyin->get( buf[0] ); + + if ( yyin->eof() ) + return 0; + + if ( yyin->bad() ) + return -1; + + return 1; + +#else + (void) yyin->read( buf, max_size ); + + if ( yyin->bad() ) + return -1; + else + return yyin->gcount(); +#endif + } + +void yyFlexLexer::LexerOutput( const char* buf, int size ) + { + (void) yyout->write( buf, size ); + } + +/* yy_get_next_buffer - try to read in a new buffer + * + * Returns a code representing an action: + * EOB_ACT_LAST_MATCH - + * EOB_ACT_CONTINUE_SCAN - continue scanning from current position + * EOB_ACT_END_OF_FILE - end of file + */ + +int yyFlexLexer::yy_get_next_buffer() + { + register char *dest = yy_current_buffer->yy_ch_buf; + register char *source = yytext_ptr; + register int number_to_move, i; + int ret_val; + + if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) + YY_FATAL_ERROR( + "fatal flex scanner internal error--end of buffer missed" ); + + if ( yy_current_buffer->yy_fill_buffer == 0 ) + { /* Don't try to fill the buffer, so this is an EOF. */ + if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 ) + { + /* We matched a single character, the EOB, so + * treat this as a final EOF. + */ + return EOB_ACT_END_OF_FILE; + } + + else + { + /* We matched some text prior to the EOB, first + * process it. + */ + return EOB_ACT_LAST_MATCH; + } + } + + /* Try to read more data. */ + + /* First move last chars to start of buffer. */ + number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1; + + for ( i = 0; i < number_to_move; ++i ) + *(dest++) = *(source++); + + if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + /* don't do the read, it's not guaranteed to return an EOF, + * just force an EOF + */ + yy_current_buffer->yy_n_chars = yy_n_chars = 0; + + else + { + int num_to_read = + yy_current_buffer->yy_buf_size - number_to_move - 1; + + while ( num_to_read <= 0 ) + { /* Not enough room in the buffer - grow it. */ +#ifdef YY_USES_REJECT + YY_FATAL_ERROR( +"input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); +#else + + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = yy_current_buffer; + + int yy_c_buf_p_offset = + (int) (yy_c_buf_p - b->yy_ch_buf); + + if ( b->yy_is_our_buffer ) + { + int new_size = b->yy_buf_size * 2; + + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; + + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + yy_flex_realloc( (void *) b->yy_ch_buf, + b->yy_buf_size + 2 ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = 0; + + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); + + yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset]; + + num_to_read = yy_current_buffer->yy_buf_size - + number_to_move - 1; +#endif + } + + if ( num_to_read > YY_READ_BUF_SIZE ) + num_to_read = YY_READ_BUF_SIZE; + + /* Read in more data. */ + YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), + yy_n_chars, num_to_read ); + + yy_current_buffer->yy_n_chars = yy_n_chars; + } + + if ( yy_n_chars == 0 ) + { + if ( number_to_move == YY_MORE_ADJ ) + { + ret_val = EOB_ACT_END_OF_FILE; + yyrestart( yyin ); + } + + else + { + ret_val = EOB_ACT_LAST_MATCH; + yy_current_buffer->yy_buffer_status = + YY_BUFFER_EOF_PENDING; + } + } + + else + ret_val = EOB_ACT_CONTINUE_SCAN; + + yy_n_chars += number_to_move; + yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; + yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; + + yytext_ptr = &yy_current_buffer->yy_ch_buf[0]; + + return ret_val; + } + + +/* yy_get_previous_state - get the state just before the EOB char was reached */ + +yy_state_type yyFlexLexer::yy_get_previous_state() + { + register yy_state_type yy_current_state; + register char *yy_cp; + + yy_current_state = yy_start; + + for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp ) + { + register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 2); + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; + yy_last_accepting_cpos = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 124 ) + yy_c = yy_meta[(unsigned int) yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + } + + return yy_current_state; + } + + +/* yy_try_NUL_trans - try to make a transition on the NUL character + * + * synopsis + * next_state = yy_try_NUL_trans( current_state ); + */ + +yy_state_type yyFlexLexer::yy_try_NUL_trans( yy_state_type yy_current_state ) + { + register int yy_is_jam; + register char *yy_cp = yy_c_buf_p; + + register YY_CHAR yy_c = 2; + if ( yy_accept[yy_current_state] ) + { + yy_last_accepting_state = yy_current_state; + yy_last_accepting_cpos = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 124 ) + yy_c = yy_meta[(unsigned int) yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_is_jam = (yy_current_state == 123); + + return yy_is_jam ? 0 : yy_current_state; + } + + +void yyFlexLexer::yyunput( int c, register char* yy_bp ) + { + register char *yy_cp = yy_c_buf_p; + + /* undo effects of setting up yytext */ + *yy_cp = yy_hold_char; + + if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ + register int number_to_move = yy_n_chars + 2; + register char *dest = &yy_current_buffer->yy_ch_buf[ + yy_current_buffer->yy_buf_size + 2]; + register char *source = + &yy_current_buffer->yy_ch_buf[number_to_move]; + + while ( source > yy_current_buffer->yy_ch_buf ) + *--dest = *--source; + + yy_cp += (int) (dest - source); + yy_bp += (int) (dest - source); + yy_current_buffer->yy_n_chars = + yy_n_chars = yy_current_buffer->yy_buf_size; + + if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) + YY_FATAL_ERROR( "flex scanner push-back overflow" ); + } + + *--yy_cp = (char) c; + + + yytext_ptr = yy_bp; + yy_hold_char = *yy_cp; + yy_c_buf_p = yy_cp; + } + + +int yyFlexLexer::yyinput() + { + int c; + + *yy_c_buf_p = yy_hold_char; + + if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR ) + { + /* yy_c_buf_p now points to the character we want to return. + * If this occurs *before* the EOB characters, then it's a + * valid NUL; if not, then we've hit the end of the buffer. + */ + if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + /* This was really a NUL. */ + *yy_c_buf_p = '\0'; + + else + { /* need more input */ + int offset = yy_c_buf_p - yytext_ptr; + ++yy_c_buf_p; + + switch ( yy_get_next_buffer() ) + { + case EOB_ACT_LAST_MATCH: + /* This happens because yy_g_n_b() + * sees that we've accumulated a + * token and flags that we need to + * try matching the token before + * proceeding. But for input(), + * there's no matching to consider. + * So convert the EOB_ACT_LAST_MATCH + * to EOB_ACT_END_OF_FILE. + */ + + /* Reset buffer status. */ + yyrestart( yyin ); + + /* fall through */ + + case EOB_ACT_END_OF_FILE: + { + if ( yywrap() ) + return EOF; + + if ( ! yy_did_buffer_switch_on_eof ) + YY_NEW_FILE; +#ifdef __cplusplus + return yyinput(); +#else + return input(); +#endif + } + + case EOB_ACT_CONTINUE_SCAN: + yy_c_buf_p = yytext_ptr + offset; + break; + } + } + } + + c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */ + *yy_c_buf_p = '\0'; /* preserve yytext */ + yy_hold_char = *++yy_c_buf_p; + + + return c; + } + + +void yyFlexLexer::yyrestart( istream* input_file ) + { + if ( ! yy_current_buffer ) + yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); + + yy_init_buffer( yy_current_buffer, input_file ); + yy_load_buffer_state(); + } + + +void yyFlexLexer::yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) + { + if ( yy_current_buffer == new_buffer ) + return; + + if ( yy_current_buffer ) + { + /* Flush out information for old buffer. */ + *yy_c_buf_p = yy_hold_char; + yy_current_buffer->yy_buf_pos = yy_c_buf_p; + yy_current_buffer->yy_n_chars = yy_n_chars; + } + + yy_current_buffer = new_buffer; + yy_load_buffer_state(); + + /* We don't actually know whether we did this switch during + * EOF (yywrap()) processing, but the only time this flag + * is looked at is after yywrap() is called, so it's safe + * to go ahead and always set it. + */ + yy_did_buffer_switch_on_eof = 1; + } + + +void yyFlexLexer::yy_load_buffer_state() + { + yy_n_chars = yy_current_buffer->yy_n_chars; + yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; + yyin = yy_current_buffer->yy_input_file; + yy_hold_char = *yy_c_buf_p; + } + + +YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( istream* file, int size ) + { + YY_BUFFER_STATE b; + + b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_buf_size = size; + + /* yy_ch_buf has to be 2 characters longer than the size given because + * we need to put in 2 end-of-buffer characters. + */ + b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 ); + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_is_our_buffer = 1; + + yy_init_buffer( b, file ); + + return b; + } + + +void yyFlexLexer::yy_delete_buffer( YY_BUFFER_STATE b ) + { + if ( ! b ) + return; + + if ( b == yy_current_buffer ) + yy_current_buffer = (YY_BUFFER_STATE) 0; + + if ( b->yy_is_our_buffer ) + yy_flex_free( (void *) b->yy_ch_buf ); + + yy_flex_free( (void *) b ); + } + + +extern "C" int isatty YY_PROTO(( int )); +void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, istream* file ) + + { + yy_flush_buffer( b ); + + b->yy_input_file = file; + b->yy_fill_buffer = 1; + + b->yy_is_interactive = 0; + } + + +void yyFlexLexer::yy_flush_buffer( YY_BUFFER_STATE b ) + { + if ( ! b ) + return; + + b->yy_n_chars = 0; + + /* We always need two end-of-buffer characters. The first causes + * a transition to the end-of-buffer state. The second causes + * a jam in that state. + */ + b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; + b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; + + b->yy_buf_pos = &b->yy_ch_buf[0]; + + b->yy_at_bol = 1; + b->yy_buffer_status = YY_BUFFER_NEW; + + if ( b == yy_current_buffer ) + yy_load_buffer_state(); + } + + +#ifndef YY_NO_SCAN_BUFFER +#endif + + +#ifndef YY_NO_SCAN_STRING +#endif + + +#ifndef YY_NO_SCAN_BYTES +#endif + + +#ifndef YY_NO_PUSH_STATE +void yyFlexLexer::yy_push_state( int new_state ) + { + if ( yy_start_stack_ptr >= yy_start_stack_depth ) + { + yy_size_t new_size; + + yy_start_stack_depth += YY_START_STACK_INCR; + new_size = yy_start_stack_depth * sizeof( int ); + + if ( ! yy_start_stack ) + yy_start_stack = (int *) yy_flex_alloc( new_size ); + + else + yy_start_stack = (int *) yy_flex_realloc( + (void *) yy_start_stack, new_size ); + + if ( ! yy_start_stack ) + YY_FATAL_ERROR( + "out of memory expanding start-condition stack" ); + } + + yy_start_stack[yy_start_stack_ptr++] = YY_START; + + BEGIN(new_state); + } +#endif + + +#ifndef YY_NO_POP_STATE +void yyFlexLexer::yy_pop_state() + { + if ( --yy_start_stack_ptr < 0 ) + YY_FATAL_ERROR( "start-condition stack underflow" ); + + BEGIN(yy_start_stack[yy_start_stack_ptr]); + } +#endif + + +#ifndef YY_NO_TOP_STATE +int yyFlexLexer::yy_top_state() + { + return yy_start_stack[yy_start_stack_ptr - 1]; + } +#endif + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 +#endif + + +void yyFlexLexer::LexerError( yyconst char msg[] ) + { + cerr << msg << '\n'; + exit( YY_EXIT_FAILURE ); + } + + +/* Redefine yyless() so it works in section 3 code. */ + +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + yytext[yyleng] = yy_hold_char; \ + yy_c_buf_p = yytext + n; \ + yy_hold_char = *yy_c_buf_p; \ + *yy_c_buf_p = '\0'; \ + yyleng = n; \ + } \ + while ( 0 ) + + +/* Internal utility routines. */ + +#ifndef yytext_ptr +#ifdef YY_USE_PROTOS +static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) +#else +static void yy_flex_strncpy( s1, s2, n ) +char *s1; +yyconst char *s2; +int n; +#endif + { + register int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; + } +#endif + +#ifdef YY_NEED_STRLEN +#ifdef YY_USE_PROTOS +static int yy_flex_strlen( yyconst char *s ) +#else +static int yy_flex_strlen( s ) +yyconst char *s; +#endif + { + register int n; + for ( n = 0; s[n]; ++n ) + ; + + return n; + } +#endif + + +#ifdef YY_USE_PROTOS +static void *yy_flex_alloc( yy_size_t size ) +#else +static void *yy_flex_alloc( size ) +yy_size_t size; +#endif + { + return (void *) malloc( size ); + } + +#ifdef YY_USE_PROTOS +static void *yy_flex_realloc( void *ptr, yy_size_t size ) +#else +static void *yy_flex_realloc( ptr, size ) +void *ptr; +yy_size_t size; +#endif + { + /* The cast to (char *) in the following accommodates both + * implementations that use char* generic pointers, and those + * that use void* generic pointers. It works with the latter + * because both ANSI C and C++ allow castless assignment from + * any pointer type to void*, and deal with argument conversions + * as though doing an assignment. + */ + return (void *) realloc( (char *) ptr, size ); + } + +#ifdef YY_USE_PROTOS +static void yy_flex_free( void *ptr ) +#else +static void yy_flex_free( ptr ) +void *ptr; +#endif + { + free( ptr ); + } + +#if YY_MAIN +int main() + { + yylex(); + return 0; + } +#endif +#line 331 "lexer.ll" + + +void +My_lily_lexer::push_note_state () +{ + yy_push_state (notes); +} + +void +My_lily_lexer::push_lyric_state () +{ + yy_push_state (lyrics); +} +void +My_lily_lexer::pop_state () +{ + yy_pop_state (); +} + +int +My_lily_lexer::scan_escaped_word (String str) +{ + DOUT << "\\word: `" << str<<"'\n"; + int l = lookup_keyword (str); + if (l != -1) { + DOUT << "(keyword)\n"; + return l; + } + Identifier * id = lookup_identifier (str); + if (id) { + DOUT << "(identifier)\n"; + yylval.id = id; + return id->token_code_i_; + } + if (YYSTATE != notes) { + Melodic_req * mel_l = lookup_melodic_req_l (str); + if (mel_l) { + DOUT << "(notename)\n"; + yylval.melreq = mel_l; + return NOTENAME_ID; + } + } + String msg ("Unknown escaped string: `" + str + "'"); + LexerError (msg.ch_C ()); + DOUT << "(string)"; + String *sp = new String (str); + yylval.string=sp; + return STRING; +} + +int +My_lily_lexer::scan_bare_word (String str) +{ + DOUT << "word: `" << str<< "'\n"; + if (YYSTATE == notes){ + Melodic_req * mel_l = lookup_melodic_req_l (str); + if (mel_l) { + DOUT << "(notename)\n"; + yylval.melreq = mel_l; + return NOTENAME_ID; + } + } + + yylval.string=new String (str); + return STRING; +} + +bool +My_lily_lexer::note_state_b () const +{ + return YY_START == notes; +} + +bool +My_lily_lexer::lyric_state_b () const +{ + return YY_START == lyrics; +} + +void +strip_trailing_white (String&s) +{ + int i=0; + for (; i < s.length_i (); i++) + if (!isspace (s[i])) + break; + + s = s.nomid_str (0, i); +} + +void +strip_leading_white (String&s) +{ + int i=s.length_i (); + while (i--) + if (!isspace (s[i])) + break; + + s = s.left_str (i+1); +} diff --git a/lily/lexer.l b/lily/lexer.l deleted file mode 100644 index c7df7be95e..0000000000 --- a/lily/lexer.l +++ /dev/null @@ -1,430 +0,0 @@ -%{ // -*-Fundamental-*- -/* - lexer.l -- implement the Flex lexer - - source file of the LilyPond music typesetter - - (c) 1996,1997 Han-Wen Nienhuys -*/ - - -/* - backup rules - - after making a change to the lexer rules, run - flex -b - and make sure that - lex.backup - contains no backup states, but only the reminder - Compressed tables always back up. - (don-t forget to rm lex.yy.cc :-) - */ - - -#include -#include - -#include "string.hh" -#include "string-convert.hh" -#include "my-lily-lexer.hh" -#include "varray.hh" -#include "interval.hh" -#include "parser.hh" -#include "debug.hh" -#include "parseconstruct.hh" -#include "main.hh" -#include "identifier.hh" -void strip_trailing_white (String&); -void strip_leading_white (String&); - - -#define start_quote() \ - yy_push_state (quote);\ - yylval.string = new String - -#define yylval (*(YYSTYPE*)lexval_l) - -#define YY_USER_ACTION add_lexed_char (YYLeng ()); -%} - -%option c++ -%option noyywrap -%option nodefault -%option debug -%option yyclass="My_lily_lexer" -%option stack -%option never-interactive -%option warn - -%x incl -%x lyrics -%x notes -%x quote -%x longcomment - - -A [a-zA-Z] -AA {A}|_ -N [0-9] -AN {AA}|{N} -PUNCT [?!:'] -ACCENT \\[`'"^] -NATIONAL [\001-\006\021-\027\031\036\200-\377] -TEX {AA}|-|{PUNCT}|{ACCENT}|{NATIONAL} -WORD {A}{AN}* -ALPHAWORD {A}+ -DIGIT {N} -UNSIGNED {N}+ -INT -?{UNSIGNED} -REAL ({INT}\.{N}*)|(-?\.{N}+) -KEYWORD \\{WORD} -WHITE [ \n\t\f] -HORIZONTALWHITE [ \t] -BLACK [^ \n\t\f] -RESTNAME [rs] -NOTECOMMAND \\{A}+ -LYRICS ({AA}|{TEX})[^0-9 \t\n\f]* -ESCAPED [nt\\'"] -PLET \\\[ -TELP \\\] - -%% - - -<*>\r { - // windows-suck-suck-suck -} - -{ - "%{" { - yy_push_state (longcomment); - } - %[^{\n].*\n { - } - %[^{\n] { // backup rule - } - %\n { - } - %[^{\n].* { - } - {WHITE}+ { - - } -} - -{ - [^\%]* { - } - \%*[^}%]* { - - } - "%"+"}" { - yy_pop_state (); - } - <> { - LexerError ("EOF found inside a comment"); - if (! close_input ()) - yyterminate (); // can't move this, since it actually rets a YY_NULL - } -} - - - -\\include { - yy_push_state (incl); -} -\"[^"]*\" { /* got the include file name */ - String s (YYText ()+1); - s = s.left_str (s.length_i ()-1); - DOUT << "#include `" << s << "\'\n"; - new_input (s,source_global_l); - yy_pop_state (); -} -\"[^"]* { // backup rule - cerr << "missing end quote" << endl; - exit (1); -} -{RESTNAME} { - const char *s = YYText (); - yylval.string = new String (s); - DOUT << "rest:"<< yylval.string; - return RESTNAME; -} -\\\${BLACK}*{WHITE} { - String s=YYText () + 2; - s=s.left_str (s.length_i () - 1); - return scan_escaped_word (s); -} -\${BLACK}*{WHITE} { - String s=YYText () + 1; - s=s.left_str (s.length_i () - 1); - return scan_bare_word (s); -} -\\\${BLACK}* { // backup rule - cerr << "white expected" << endl; - exit (1); -} -\${BLACK}* { // backup rule - cerr << "white expected" << endl; - exit (1); -} -{ - {ALPHAWORD}/\' { - post_quotes_b_ = true; - return scan_bare_word (YYText ()); - } - \'+ { - yylval.i = YYLeng (); - if (post_quotes_b_) { - post_quotes_b_ = false; - return POST_QUOTES; - } else - return PRE_QUOTES; - } - {ALPHAWORD} { - return scan_bare_word (YYText ()); - - } - - {NOTECOMMAND} { - return scan_escaped_word (YYText ()+1); - } - - {DIGIT} { - yylval.i = String_convert::dec2_i (String (YYText ())); - return DIGIT; - } - - {UNSIGNED} { - yylval.i = String_convert::dec2_i (String (YYText ())); - return UNSIGNED; - } - - \" { - start_quote (); - } -} - -\" { - start_quote (); -} -{ - \\{ESCAPED} { - *yylval.string += escaped_char(YYText()[1]); - } - [^\\"]+ { - *yylval.string += YYText (); - } - \" { - DOUT << "quoted string: `" << *yylval.string << "'\n"; - yy_pop_state (); - return STRING; - } - . { - *yylval.string += YYText (); - } -} - -{ - - \" { - start_quote (); - } - {UNSIGNED} { - yylval.i = String_convert::dec2_i (String (YYText ())); - return UNSIGNED; - } - {NOTECOMMAND} { - return scan_escaped_word (YYText ()+1); - } - {LYRICS} { - /* ugr. This sux. */ - String s (YYText ()); - int i = 0; - while ((i=s.index_i ("_")) != -1) // change word binding "_" to " " - *(s.ch_l () + i) = ' '; - if ((i=s.index_i ("\\,")) != -1) // change "\," to TeX's "\c " - { - *(s.ch_l () + i + 1) = 'c'; - s = s.left_str (i+2) + " " + s.right_str (s.length_i ()-i-2); - } - yylval.string = new String (s); - DOUT << "lyric : `" << s << "'\n"; - return STRING; - } - . { - return yylval.c = YYText ()[0]; - } -} - -<> { - DOUT << "<>"; - - if (! close_input ()) { - yyterminate (); // can't move this, since it actually rets a YY_NULL - } -} -{WORD} { - return scan_bare_word (YYText ()); -} -{KEYWORD} { - return scan_escaped_word (YYText ()+1); -} -{REAL} { - Real r; - int cnv=sscanf (YYText (), "%lf", &r); - assert (cnv == 1); - DOUT << "REAL" << r<<'\n'; - yylval.real = r; - return REAL; -} - -{UNSIGNED} { - yylval.i = String_convert::dec2_i (String (YYText ())); - return UNSIGNED; -} - -[{}] { - - DOUT << "parens\n"; - return YYText ()[0]; -} -[*:=] { - char c = YYText ()[0]; - DOUT << "misc char" <{PLET} { - return yylval.i = PLET; -} - -{TELP} { - return yylval.i = TELP; -} - -. { - return yylval.c = YYText ()[0]; -} - -\\. { - char c= YYText ()[1]; - yylval.c = c; - switch (c) { - case '>': - return E_BIGGER; - case '<': - return E_SMALLER; - case '!': - return E_EXCLAMATION; - default: - return E_CHAR; - } -} - -<*>. { - String msg= String ("illegal character: ") +String (YYText ()[0]); - LexerError (msg.ch_C ()); - return YYText ()[0]; -} - -%% - -void -My_lily_lexer::push_note_state () -{ - yy_push_state (notes); -} - -void -My_lily_lexer::push_lyric_state () -{ - yy_push_state (lyrics); -} -void -My_lily_lexer::pop_state () -{ - yy_pop_state (); -} - -int -My_lily_lexer::scan_escaped_word (String str) -{ - DOUT << "\\word: `" << str<<"'\n"; - int l = lookup_keyword (str); - if (l != -1) { - DOUT << "(keyword)\n"; - return l; - } - Identifier * id = lookup_identifier (str); - if (id) { - DOUT << "(identifier)\n"; - yylval.id = id; - return id->token_code_i_; - } - if (YYSTATE != notes) { - Melodic_req * mel_l = lookup_melodic_req_l (str); - if (mel_l) { - DOUT << "(notename)\n"; - yylval.melreq = mel_l; - return NOTENAME_ID; - } - } - String msg ("Unknown escaped string: `" + str + "'"); - LexerError (msg.ch_C ()); - DOUT << "(string)"; - String *sp = new String (str); - yylval.string=sp; - return STRING; -} - -int -My_lily_lexer::scan_bare_word (String str) -{ - DOUT << "word: `" << str<< "'\n"; - if (YYSTATE == notes){ - Melodic_req * mel_l = lookup_melodic_req_l (str); - if (mel_l) { - DOUT << "(notename)\n"; - yylval.melreq = mel_l; - return NOTENAME_ID; - } - } - - yylval.string=new String (str); - return STRING; -} - -bool -My_lily_lexer::note_state_b () const -{ - return YY_START == notes; -} - -bool -My_lily_lexer::lyric_state_b () const -{ - return YY_START == lyrics; -} - -void -strip_trailing_white (String&s) -{ - int i=0; - for (; i < s.length_i (); i++) - if (!isspace (s[i])) - break; - - s = s.nomid_str (0, i); -} - -void -strip_leading_white (String&s) -{ - int i=s.length_i (); - while (i--) - if (!isspace (s[i])) - break; - - s = s.left_str (i+1); -} diff --git a/lily/lexer.ll b/lily/lexer.ll new file mode 100644 index 0000000000..c7df7be95e --- /dev/null +++ b/lily/lexer.ll @@ -0,0 +1,430 @@ +%{ // -*-Fundamental-*- +/* + lexer.l -- implement the Flex lexer + + source file of the LilyPond music typesetter + + (c) 1996,1997 Han-Wen Nienhuys +*/ + + +/* + backup rules + + after making a change to the lexer rules, run + flex -b + and make sure that + lex.backup + contains no backup states, but only the reminder + Compressed tables always back up. + (don-t forget to rm lex.yy.cc :-) + */ + + +#include +#include + +#include "string.hh" +#include "string-convert.hh" +#include "my-lily-lexer.hh" +#include "varray.hh" +#include "interval.hh" +#include "parser.hh" +#include "debug.hh" +#include "parseconstruct.hh" +#include "main.hh" +#include "identifier.hh" +void strip_trailing_white (String&); +void strip_leading_white (String&); + + +#define start_quote() \ + yy_push_state (quote);\ + yylval.string = new String + +#define yylval (*(YYSTYPE*)lexval_l) + +#define YY_USER_ACTION add_lexed_char (YYLeng ()); +%} + +%option c++ +%option noyywrap +%option nodefault +%option debug +%option yyclass="My_lily_lexer" +%option stack +%option never-interactive +%option warn + +%x incl +%x lyrics +%x notes +%x quote +%x longcomment + + +A [a-zA-Z] +AA {A}|_ +N [0-9] +AN {AA}|{N} +PUNCT [?!:'] +ACCENT \\[`'"^] +NATIONAL [\001-\006\021-\027\031\036\200-\377] +TEX {AA}|-|{PUNCT}|{ACCENT}|{NATIONAL} +WORD {A}{AN}* +ALPHAWORD {A}+ +DIGIT {N} +UNSIGNED {N}+ +INT -?{UNSIGNED} +REAL ({INT}\.{N}*)|(-?\.{N}+) +KEYWORD \\{WORD} +WHITE [ \n\t\f] +HORIZONTALWHITE [ \t] +BLACK [^ \n\t\f] +RESTNAME [rs] +NOTECOMMAND \\{A}+ +LYRICS ({AA}|{TEX})[^0-9 \t\n\f]* +ESCAPED [nt\\'"] +PLET \\\[ +TELP \\\] + +%% + + +<*>\r { + // windows-suck-suck-suck +} + +{ + "%{" { + yy_push_state (longcomment); + } + %[^{\n].*\n { + } + %[^{\n] { // backup rule + } + %\n { + } + %[^{\n].* { + } + {WHITE}+ { + + } +} + +{ + [^\%]* { + } + \%*[^}%]* { + + } + "%"+"}" { + yy_pop_state (); + } + <> { + LexerError ("EOF found inside a comment"); + if (! close_input ()) + yyterminate (); // can't move this, since it actually rets a YY_NULL + } +} + + + +\\include { + yy_push_state (incl); +} +\"[^"]*\" { /* got the include file name */ + String s (YYText ()+1); + s = s.left_str (s.length_i ()-1); + DOUT << "#include `" << s << "\'\n"; + new_input (s,source_global_l); + yy_pop_state (); +} +\"[^"]* { // backup rule + cerr << "missing end quote" << endl; + exit (1); +} +{RESTNAME} { + const char *s = YYText (); + yylval.string = new String (s); + DOUT << "rest:"<< yylval.string; + return RESTNAME; +} +\\\${BLACK}*{WHITE} { + String s=YYText () + 2; + s=s.left_str (s.length_i () - 1); + return scan_escaped_word (s); +} +\${BLACK}*{WHITE} { + String s=YYText () + 1; + s=s.left_str (s.length_i () - 1); + return scan_bare_word (s); +} +\\\${BLACK}* { // backup rule + cerr << "white expected" << endl; + exit (1); +} +\${BLACK}* { // backup rule + cerr << "white expected" << endl; + exit (1); +} +{ + {ALPHAWORD}/\' { + post_quotes_b_ = true; + return scan_bare_word (YYText ()); + } + \'+ { + yylval.i = YYLeng (); + if (post_quotes_b_) { + post_quotes_b_ = false; + return POST_QUOTES; + } else + return PRE_QUOTES; + } + {ALPHAWORD} { + return scan_bare_word (YYText ()); + + } + + {NOTECOMMAND} { + return scan_escaped_word (YYText ()+1); + } + + {DIGIT} { + yylval.i = String_convert::dec2_i (String (YYText ())); + return DIGIT; + } + + {UNSIGNED} { + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; + } + + \" { + start_quote (); + } +} + +\" { + start_quote (); +} +{ + \\{ESCAPED} { + *yylval.string += escaped_char(YYText()[1]); + } + [^\\"]+ { + *yylval.string += YYText (); + } + \" { + DOUT << "quoted string: `" << *yylval.string << "'\n"; + yy_pop_state (); + return STRING; + } + . { + *yylval.string += YYText (); + } +} + +{ + + \" { + start_quote (); + } + {UNSIGNED} { + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; + } + {NOTECOMMAND} { + return scan_escaped_word (YYText ()+1); + } + {LYRICS} { + /* ugr. This sux. */ + String s (YYText ()); + int i = 0; + while ((i=s.index_i ("_")) != -1) // change word binding "_" to " " + *(s.ch_l () + i) = ' '; + if ((i=s.index_i ("\\,")) != -1) // change "\," to TeX's "\c " + { + *(s.ch_l () + i + 1) = 'c'; + s = s.left_str (i+2) + " " + s.right_str (s.length_i ()-i-2); + } + yylval.string = new String (s); + DOUT << "lyric : `" << s << "'\n"; + return STRING; + } + . { + return yylval.c = YYText ()[0]; + } +} + +<> { + DOUT << "<>"; + + if (! close_input ()) { + yyterminate (); // can't move this, since it actually rets a YY_NULL + } +} +{WORD} { + return scan_bare_word (YYText ()); +} +{KEYWORD} { + return scan_escaped_word (YYText ()+1); +} +{REAL} { + Real r; + int cnv=sscanf (YYText (), "%lf", &r); + assert (cnv == 1); + DOUT << "REAL" << r<<'\n'; + yylval.real = r; + return REAL; +} + +{UNSIGNED} { + yylval.i = String_convert::dec2_i (String (YYText ())); + return UNSIGNED; +} + +[{}] { + + DOUT << "parens\n"; + return YYText ()[0]; +} +[*:=] { + char c = YYText ()[0]; + DOUT << "misc char" <{PLET} { + return yylval.i = PLET; +} + +{TELP} { + return yylval.i = TELP; +} + +. { + return yylval.c = YYText ()[0]; +} + +\\. { + char c= YYText ()[1]; + yylval.c = c; + switch (c) { + case '>': + return E_BIGGER; + case '<': + return E_SMALLER; + case '!': + return E_EXCLAMATION; + default: + return E_CHAR; + } +} + +<*>. { + String msg= String ("illegal character: ") +String (YYText ()[0]); + LexerError (msg.ch_C ()); + return YYText ()[0]; +} + +%% + +void +My_lily_lexer::push_note_state () +{ + yy_push_state (notes); +} + +void +My_lily_lexer::push_lyric_state () +{ + yy_push_state (lyrics); +} +void +My_lily_lexer::pop_state () +{ + yy_pop_state (); +} + +int +My_lily_lexer::scan_escaped_word (String str) +{ + DOUT << "\\word: `" << str<<"'\n"; + int l = lookup_keyword (str); + if (l != -1) { + DOUT << "(keyword)\n"; + return l; + } + Identifier * id = lookup_identifier (str); + if (id) { + DOUT << "(identifier)\n"; + yylval.id = id; + return id->token_code_i_; + } + if (YYSTATE != notes) { + Melodic_req * mel_l = lookup_melodic_req_l (str); + if (mel_l) { + DOUT << "(notename)\n"; + yylval.melreq = mel_l; + return NOTENAME_ID; + } + } + String msg ("Unknown escaped string: `" + str + "'"); + LexerError (msg.ch_C ()); + DOUT << "(string)"; + String *sp = new String (str); + yylval.string=sp; + return STRING; +} + +int +My_lily_lexer::scan_bare_word (String str) +{ + DOUT << "word: `" << str<< "'\n"; + if (YYSTATE == notes){ + Melodic_req * mel_l = lookup_melodic_req_l (str); + if (mel_l) { + DOUT << "(notename)\n"; + yylval.melreq = mel_l; + return NOTENAME_ID; + } + } + + yylval.string=new String (str); + return STRING; +} + +bool +My_lily_lexer::note_state_b () const +{ + return YY_START == notes; +} + +bool +My_lily_lexer::lyric_state_b () const +{ + return YY_START == lyrics; +} + +void +strip_trailing_white (String&s) +{ + int i=0; + for (; i < s.length_i (); i++) + if (!isspace (s[i])) + break; + + s = s.nomid_str (0, i); +} + +void +strip_leading_white (String&s) +{ + int i=s.length_i (); + while (i--) + if (!isspace (s[i])) + break; + + s = s.left_str (i+1); +} diff --git a/lily/lily-version.cc b/lily/lily-version.cc index df773fa7cc..fcf2f8e8e3 100644 --- a/lily/lily-version.cc +++ b/lily/lily-version.cc @@ -1,13 +1,11 @@ -#include "version.hh" #include +#include "config.hh" -#define VERSION_SZ MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL +// #define VERSION_SZ MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL +#define VERSION_SZ TOPLEVEL_VERSION static char *s = "GNU LilyPond " VERSION_SZ " #%d"; -static const int build= -#include ".build" -; char const * lily_version_number_sz() @@ -18,7 +16,5 @@ lily_version_number_sz() char const * lily_version_sz() { - static char v[1024]; // ugh - sprintf (v, s, build); - return v; + return s; } diff --git a/lily/my-lily-lexer.cc b/lily/my-lily-lexer.cc index 1aa7bb77e9..43495eb06c 100644 --- a/lily/my-lily-lexer.cc +++ b/lily/my-lily-lexer.cc @@ -23,6 +23,7 @@ static Keyword_ent the_key_tab[]={ {"accepts", ACCEPTS}, {"bar", BAR}, + {"break", BREAK}, {"cadenza", CADENZA}, {"clear", CLEAR}, {"clef", CLEF}, diff --git a/lily/out/dummy.dep b/lily/out/dummy.dep deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/lily/parser.cc b/lily/parser.cc new file mode 100644 index 0000000000..7c9149b7e5 --- /dev/null +++ b/lily/parser.cc @@ -0,0 +1,2841 @@ + +/* A Bison parser, made from parser.yy + by GNU Bison version 1.25 + */ + +#define YYBISON 1 /* Identify Bison output. */ + +#define ALIAS 258 +#define BAR 259 +#define BEAMPLET 260 +#define MAEBTELP 261 +#define BREAK 262 +#define CADENZA 263 +#define CLEAR 264 +#define CLEF 265 +#define CONTAINS 266 +#define CONSISTS 267 +#define ACCEPTS 268 +#define CM_T 269 +#define DURATION 270 +#define ABSDYNAMIC 271 +#define END 272 +#define GROUPING 273 +#define TRANSLATOR 274 +#define HEADER 275 +#define IN_T 276 +#define LYRIC 277 +#define KEY 278 +#define MELODIC 279 +#define MIDI 280 +#define MELODIC_REQUEST 281 +#define METER 282 +#define MM_T 283 +#define MULTI 284 +#define NOTENAMES 285 +#define OCTAVE 286 +#define OUTPUT 287 +#define PAPER 288 +#define PARTIAL 289 +#define PLET 290 +#define TELP 291 +#define PT_T 292 +#define SCORE 293 +#define SCRIPT 294 +#define SHAPE 295 +#define SKIP 296 +#define SPANDYNAMIC 297 +#define STAFF 298 +#define START_T 299 +#define SYMBOLTABLES 300 +#define TABLE 301 +#define TRANSPOSE 302 +#define TEMPO 303 +#define TYPE 304 +#define TEXID 305 +#define TEXTSTYLE 306 +#define TITLE 307 +#define PROPERTY 308 +#define VERSION 309 +#define E_EXCLAMATION 310 +#define E_SMALLER 311 +#define E_BIGGER 312 +#define E_CHAR 313 +#define DIGIT 314 +#define NOTENAME_ID 315 +#define DURATION_IDENTIFIER 316 +#define IDENTIFIER 317 +#define MELODIC_REQUEST_IDENTIFIER 318 +#define MUSIC_IDENTIFIER 319 +#define VOICE_IDENTIFIER 320 +#define POST_REQUEST_IDENTIFIER 321 +#define SCRIPT_IDENTIFIER 322 +#define COMMAND_IDENTIFIER 323 +#define REAL_IDENTIFIER 324 +#define TRANS_IDENTIFIER 325 +#define INT_IDENTIFIER 326 +#define SCORE_IDENTIFIER 327 +#define MIDI_IDENTIFIER 328 +#define PAPER_IDENTIFIER 329 +#define REQUEST_IDENTIFIER 330 +#define REAL 331 +#define RESTNAME 332 +#define STRING 333 +#define UNSIGNED 334 +#define POST_QUOTES 335 +#define PRE_QUOTES 336 + +#line 1 "parser.yy" + // -*-Fundamental-*- + +/* + parser.yy -- YACC -> C++ parser for mudela + + source file of the GNU LilyPond music typesetter + + (c) 1997 Han-Wen Nienhuys + Jan Nieuwenhuizen +*/ + +#include + +// mmm +#define MUDELA_VERSION "0.1.9" + +#include "scalar.hh" +#include "translation-property.hh" +#include "script-def.hh" +#include "symtable.hh" +#include "lookup.hh" +#include "misc.hh" +#include "my-lily-lexer.hh" +#include "paper-def.hh" +#include "midi-def.hh" +#include "main.hh" +#include "keyword.hh" +#include "debug.hh" +#include "parseconstruct.hh" +#include "dimen.hh" +#include "identifier.hh" +#include "command-request.hh" +#include "musical-request.hh" +#include "my-lily-parser.hh" +#include "text-def.hh" +#include "translator-group.hh" +#include "score.hh" +#include "music-list.hh" +#include "header.hh" +#include "duration-convert.hh" +#include "change-translator.hh" + +int const GUESS_PLET = 5; +int guess_plet_a[GUESS_PLET] = +{ + 1, + 3, + 2, + 3, + 4 +}; + +#ifndef NDEBUG +#define YYDEBUG 1 +#endif + +#define YYERROR_VERBOSE 1 + +#define YYPARSE_PARAM my_lily_parser_l +#define YYLEX_PARAM my_lily_parser_l +#define THIS ((My_lily_parser *) my_lily_parser_l) + +#define yyerror THIS->parser_error + + +#line 68 "parser.yy" +typedef union { + Array* intarr; + Array *melreqvec;/* should clean up naming */ + Array * strvec; + Array *intvec; + Box *box; + Chord * chord; + Duration *duration; + Identifier *id; + Translator* trans; + Music *music; + Music_list *musiclist; + Score *score; + Header *header; + Interval *interval; + Lookup*lookup; + Melodic_req * melreq; + Musical_req* musreq; + Music_output_def * outputdef; + Midi_def* midi; + Moment *moment; + Note_req *notereq; + Paper_def *paper; + Real real; + Request * request; + General_script_def * script; + Scalar *scalar; + String *string; + Atom * symbol; + Symtable * symtable; + Symtables * symtables; + Text_def * textdef; + Tempo_req *tempo; + char c; + const char *consstr; + int i; + int pair[2]; + int ii[10]; +} YYSTYPE; +#line 107 "parser.yy" + + +int +yylex (YYSTYPE *s, void * v_l) +{ + My_lily_parser *pars_l = (My_lily_parser*) v_l; + My_lily_lexer * lex_l = pars_l->lexer_p_; + + lex_l->lexval_l = (void*) s; + return lex_l->yylex (); +} + + +#include + +#ifndef __cplusplus +#ifndef __STDC__ +#define const +#endif +#endif + + + +#define YYFINAL 353 +#define YYFLAG -32768 +#define YYNTBASE 104 + +#define YYTRANSLATE(x) ((unsigned)(x) <= 336 ? yytranslate[x] : 191) + +static const char yytranslate[] = { 0, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 92, 2, 2, 2, 2, 2, 2, 95, + 98, 86, 100, 2, 101, 87, 91, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 97, 82, 88, + 85, 89, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 96, 2, 93, 99, 103, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 102, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 83, 90, 84, 94, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, + 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81 +}; + +#if YYDEBUG != 0 +static const short yyprhs[] = { 0, + 0, 1, 4, 7, 10, 13, 16, 19, 23, 28, + 29, 32, 37, 38, 44, 49, 50, 53, 54, 59, + 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, + 81, 83, 88, 90, 94, 100, 105, 110, 111, 117, + 118, 120, 123, 126, 129, 132, 134, 136, 137, 142, + 147, 148, 150, 155, 158, 164, 170, 175, 181, 184, + 185, 189, 194, 195, 200, 205, 209, 212, 217, 221, + 222, 225, 227, 231, 237, 239, 241, 243, 245, 248, + 249, 253, 254, 258, 260, 262, 267, 274, 276, 278, + 282, 286, 287, 290, 294, 298, 300, 303, 305, 307, + 309, 311, 314, 316, 318, 321, 323, 328, 331, 333, + 336, 339, 342, 345, 348, 349, 352, 355, 357, 359, + 361, 363, 365, 367, 370, 373, 375, 378, 385, 391, + 396, 402, 406, 409, 412, 414, 417, 419, 421, 423, + 425, 427, 429, 433, 436, 439, 441, 443, 445, 447, + 449, 454, 461, 464, 466, 468, 470, 472, 474, 476, + 478, 480, 482, 484, 486, 488, 490, 492, 494, 496, + 498, 500, 501, 504, 507, 510, 511, 515, 518, 519, + 522, 524, 527, 528, 530, 532, 534, 536, 538, 541, + 545, 549, 551, 554, 557, 560, 563, 564, 567, 569, + 571, 573, 576, 578, 580, 582, 585, 587, 589, 591, + 593, 598, 599, 601, 605, 610, 615, 616, 620, 623, + 625, 628 +}; + +static const short yyrhs[] = { -1, + 104, 109, 0, 104, 116, 0, 104, 111, 0, 104, + 1, 0, 104, 105, 0, 104, 106, 0, 54, 78, + 82, 0, 30, 83, 107, 84, 0, 0, 107, 9, + 0, 107, 78, 85, 149, 0, 0, 108, 78, 85, + 110, 82, 0, 20, 83, 108, 84, 0, 0, 110, + 78, 0, 0, 78, 112, 85, 113, 0, 116, 0, + 121, 0, 124, 0, 158, 0, 129, 0, 184, 0, + 181, 0, 180, 0, 146, 0, 149, 0, 114, 0, + 150, 0, 19, 83, 115, 84, 0, 70, 0, 49, + 78, 82, 0, 115, 78, 85, 134, 82, 0, 115, + 12, 78, 82, 0, 115, 13, 78, 82, 0, 0, + 38, 117, 83, 118, 84, 0, 0, 72, 0, 118, + 109, 0, 118, 129, 0, 118, 119, 0, 118, 1, + 0, 121, 0, 124, 0, 0, 120, 180, 86, 180, + 0, 33, 83, 122, 84, 0, 0, 74, 0, 122, + 32, 78, 82, 0, 122, 184, 0, 122, 78, 85, + 182, 82, 0, 122, 78, 85, 181, 82, 0, 122, + 78, 85, 114, 0, 122, 40, 85, 123, 82, 0, + 122, 1, 0, 0, 123, 182, 182, 0, 25, 83, + 125, 84, 0, 0, 125, 78, 85, 114, 0, 125, + 32, 78, 82, 0, 125, 126, 82, 0, 125, 1, + 0, 48, 172, 85, 179, 0, 83, 128, 84, 0, + 0, 128, 129, 0, 138, 0, 49, 78, 129, 0, + 49, 78, 85, 78, 129, 0, 127, 0, 135, 0, + 137, 0, 64, 0, 64, 82, 0, 0, 24, 130, + 129, 0, 0, 22, 131, 129, 0, 133, 0, 132, + 0, 19, 78, 85, 78, 0, 53, 78, 87, 78, + 85, 134, 0, 78, 0, 180, 0, 88, 136, 89, + 0, 29, 179, 135, 0, 0, 136, 129, 0, 47, + 147, 129, 0, 167, 139, 144, 0, 140, 0, 168, + 82, 0, 176, 0, 177, 0, 141, 0, 142, 0, + 143, 82, 0, 90, 0, 68, 0, 4, 78, 0, + 7, 0, 27, 179, 91, 179, 0, 41, 170, 0, + 126, 0, 8, 179, 0, 34, 170, 0, 10, 78, + 0, 23, 178, 0, 18, 120, 0, 0, 144, 145, + 0, 144, 154, 0, 160, 0, 146, 0, 66, 0, + 151, 0, 175, 0, 60, 0, 147, 80, 0, 81, + 147, 0, 147, 0, 148, 92, 0, 26, 83, 180, + 180, 180, 84, 0, 15, 83, 180, 179, 84, 0, + 16, 83, 179, 84, 0, 42, 83, 180, 180, 84, + 0, 179, 91, 179, 0, 91, 179, 0, 93, 152, + 0, 36, 0, 36, 152, 0, 94, 0, 95, 0, + 93, 0, 56, 0, 57, 0, 153, 0, 96, 97, + 179, 0, 96, 152, 0, 35, 152, 0, 55, 0, + 98, 0, 96, 0, 155, 0, 156, 0, 39, 83, + 159, 84, 0, 78, 180, 180, 180, 180, 180, 0, + 166, 161, 0, 162, 0, 165, 0, 163, 0, 78, + 0, 59, 0, 99, 0, 100, 0, 101, 0, 90, + 0, 102, 0, 89, 0, 87, 0, 67, 0, 158, + 0, 164, 0, 103, 0, 99, 0, 101, 0, 0, + 167, 157, 0, 15, 78, 0, 15, 172, 0, 0, + 31, 169, 147, 0, 51, 78, 0, 0, 170, 174, + 0, 87, 0, 171, 87, 0, 0, 171, 0, 174, + 0, 172, 0, 179, 0, 61, 0, 174, 87, 0, + 174, 86, 179, 0, 174, 91, 179, 0, 97, 0, + 97, 179, 0, 148, 173, 0, 77, 173, 0, 162, + 173, 0, 0, 178, 60, 0, 79, 0, 59, 0, + 179, 0, 101, 179, 0, 71, 0, 76, 0, 69, + 0, 181, 183, 0, 14, 0, 21, 0, 28, 0, + 37, 0, 45, 83, 185, 84, 0, 0, 62, 0, + 185, 50, 78, 0, 185, 78, 85, 186, 0, 46, + 83, 187, 84, 0, 0, 187, 78, 188, 0, 78, + 189, 0, 78, 0, 190, 190, 0, 182, 182, 0 +}; + +#endif + +#if YYDEBUG != 0 +static const short yyrline[] = { 0, + 258, 259, 263, 266, 267, 268, 269, 272, 285, 288, + 291, 294, 300, 304, 311, 318, 322, 331, 335, 342, + 347, 351, 355, 359, 363, 367, 371, 374, 377, 381, + 384, 391, 396, 401, 406, 411, 415, 424, 428, 442, + 445, 448, 451, 456, 459, 464, 468, 473, 475, 484, + 489, 493, 496, 500, 501, 504, 507, 511, 515, 520, + 524, 531, 537, 540, 544, 548, 552, 557, 570, 576, + 581, 586, 588, 593, 600, 601, 602, 603, 604, 605, + 608, 610, 613, 614, 615, 618, 631, 645, 647, 651, + 653, 659, 665, 670, 683, 688, 689, 692, 694, 697, + 707, 709, 712, 716, 721, 726, 731, 736, 744, 747, + 750, 754, 758, 764, 769, 778, 782, 791, 793, 796, + 800, 803, 815, 820, 823, 829, 835, 841, 850, 858, + 864, 872, 877, 885, 893, 900, 909, 913, 916, 919, + 922, 925, 929, 941, 949, 958, 962, 965, 968, 970, + 976, 980, 989, 1000, 1005, 1009, 1015, 1026, 1036, 1038, + 1039, 1040, 1041, 1042, 1043, 1048, 1050, 1051, 1057, 1059, + 1060, 1063, 1066, 1075, 1080, 1084, 1094, 1098, 1104, 1108, + 1113, 1115, 1118, 1122, 1126, 1132, 1138, 1148, 1151, 1154, + 1157, 1163, 1167, 1177, 1185, 1191, 1203, 1206, 1211, 1215, + 1219, 1223, 1226, 1233, 1237, 1246, 1251, 1252, 1253, 1254, + 1260, 1264, 1268, 1271, 1275, 1281, 1285, 1287, 1294, 1300, + 1307, 1315 +}; +#endif + + +#if YYDEBUG != 0 || defined (YYERROR_VERBOSE) + +static const char * const yytname[] = { "$","error","$undefined.","ALIAS", +"BAR","BEAMPLET","MAEBTELP","BREAK","CADENZA","CLEAR","CLEF","CONTAINS","CONSISTS", +"ACCEPTS","CM_T","DURATION","ABSDYNAMIC","END","GROUPING","TRANSLATOR","HEADER", +"IN_T","LYRIC","KEY","MELODIC","MIDI","MELODIC_REQUEST","METER","MM_T","MULTI", +"NOTENAMES","OCTAVE","OUTPUT","PAPER","PARTIAL","PLET","TELP","PT_T","SCORE", +"SCRIPT","SHAPE","SKIP","SPANDYNAMIC","STAFF","START_T","SYMBOLTABLES","TABLE", +"TRANSPOSE","TEMPO","TYPE","TEXID","TEXTSTYLE","TITLE","PROPERTY","VERSION", +"E_EXCLAMATION","E_SMALLER","E_BIGGER","E_CHAR","DIGIT","NOTENAME_ID","DURATION_IDENTIFIER", +"IDENTIFIER","MELODIC_REQUEST_IDENTIFIER","MUSIC_IDENTIFIER","VOICE_IDENTIFIER", +"POST_REQUEST_IDENTIFIER","SCRIPT_IDENTIFIER","COMMAND_IDENTIFIER","REAL_IDENTIFIER", +"TRANS_IDENTIFIER","INT_IDENTIFIER","SCORE_IDENTIFIER","MIDI_IDENTIFIER","PAPER_IDENTIFIER", +"REQUEST_IDENTIFIER","REAL","RESTNAME","STRING","UNSIGNED","POST_QUOTES","PRE_QUOTES", +"';'","'{'","'}'","'='","'*'","'.'","'<'","'>'","'|'","'/'","'!'","']'","'~'", +"'('","'['","':'","')'","'^'","'+'","'-'","'o'","'_'","mudela","check_version", +"add_notenames","notenames_body","mudela_header_body","mudela_header","concat_strings", +"add_declaration","@1","identifier_init","translator_spec","translator_spec_body", +"score_block","@2","score_body","output_def","intastint_list","paper_block", +"paper_body","shape_array","midi_block","midi_body","tempo_request","Voice", +"Voice_body","Music","@3","@4","translator_change","property_def","scalar","Chord", +"Chord_body","transposed_music","full_element","simple_element","command_elt", +"command_req","abbrev_command_req","verbose_command_req","post_requests","structured_post_request", +"post_request","steno_melodic_req","steno_note_req","melodic_request","explicit_duration", +"dynamic_req","plet_fraction","close_plet_parens","close_request_parens","open_abbrev_parens", +"open_plet_parens","open_request_parens","script_definition","script_body","script_req", +"gen_script_def","text_def","finger","script_abbreviation","mudela_script","script_dir", +"pre_requests","voice_command","@5","duration_length","dots","entered_notemode_duration", +"notemode_duration","explicit_steno_duration","abbrev_type","music_elt","lyrics_elt", +"pitch_list","unsigned","int","real","dim","unit","symtables","symtables_body", +"symtable","symtable_body","symboldef","box","dinterval", NULL +}; +#endif + +static const short yyr1[] = { 0, + 104, 104, 104, 104, 104, 104, 104, 105, 106, 107, + 107, 107, 108, 108, 109, 110, 110, 112, 111, 113, + 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, + 113, 114, 115, 115, 115, 115, 115, 117, 116, 118, + 118, 118, 118, 118, 118, 119, 119, 120, 120, 121, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 123, + 123, 124, 125, 125, 125, 125, 125, 126, 127, 128, + 128, 129, 129, 129, 129, 129, 129, 129, 129, 130, + 129, 131, 129, 129, 129, 132, 133, 134, 134, 135, + 135, 136, 136, 137, 138, 138, 138, 139, 139, 140, + 141, 141, 142, 142, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 144, 144, 144, 145, 145, 146, + 146, 146, 147, 147, 147, 148, 148, 149, 150, 151, + 151, 152, 152, 153, 153, 153, 154, 154, 154, 154, + 154, 154, 155, 156, 156, 157, 157, 157, 157, 157, + 158, 159, 160, 161, 161, 161, 162, 163, 164, 164, + 164, 164, 164, 164, 164, 165, 165, 165, 166, 166, + 166, 167, 167, 168, 168, 169, 168, 168, 170, 170, + 171, 171, 172, 172, 172, 173, 174, 174, 174, 174, + 174, 175, 175, 176, 176, 177, 178, 178, 179, 179, + 180, 180, 180, 181, 181, 182, 183, 183, 183, 183, + 184, 185, 185, 185, 185, 186, 187, 187, 188, 188, + 189, 190 +}; + +static const short yyr2[] = { 0, + 0, 2, 2, 2, 2, 2, 2, 3, 4, 0, + 2, 4, 0, 5, 4, 0, 2, 0, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 4, 1, 3, 5, 4, 4, 0, 5, 0, + 1, 2, 2, 2, 2, 1, 1, 0, 4, 4, + 0, 1, 4, 2, 5, 5, 4, 5, 2, 0, + 3, 4, 0, 4, 4, 3, 2, 4, 3, 0, + 2, 1, 3, 5, 1, 1, 1, 1, 2, 0, + 3, 0, 3, 1, 1, 4, 6, 1, 1, 3, + 3, 0, 2, 3, 3, 1, 2, 1, 1, 1, + 1, 2, 1, 1, 2, 1, 4, 2, 1, 2, + 2, 2, 2, 2, 0, 2, 2, 1, 1, 1, + 1, 1, 1, 2, 2, 1, 2, 6, 5, 4, + 5, 3, 2, 2, 1, 2, 1, 1, 1, 1, + 1, 1, 3, 2, 2, 1, 1, 1, 1, 1, + 4, 6, 2, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 0, 2, 2, 2, 0, 3, 2, 0, 2, + 1, 2, 0, 1, 1, 1, 1, 1, 2, 3, + 3, 1, 2, 2, 2, 2, 0, 2, 1, 1, + 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, + 4, 0, 1, 3, 4, 4, 0, 3, 2, 1, + 2, 2 +}; + +static const short yydefact[] = { 1, + 0, 5, 0, 0, 38, 0, 18, 6, 7, 2, + 4, 3, 13, 10, 0, 0, 0, 0, 0, 40, + 8, 172, 0, 15, 11, 0, 9, 41, 0, 0, + 106, 0, 0, 183, 0, 48, 0, 82, 197, 80, + 0, 0, 0, 0, 176, 0, 179, 0, 179, 0, + 0, 0, 183, 0, 0, 0, 200, 78, 120, 104, + 205, 203, 204, 199, 70, 92, 103, 192, 0, 19, + 30, 20, 21, 22, 109, 75, 24, 85, 84, 76, + 77, 72, 96, 100, 101, 0, 28, 29, 31, 121, + 23, 0, 0, 122, 201, 27, 26, 25, 16, 0, + 45, 183, 0, 39, 42, 44, 46, 47, 43, 105, + 110, 112, 188, 174, 0, 181, 184, 175, 185, 187, + 0, 114, 0, 0, 172, 113, 172, 63, 0, 0, + 0, 0, 51, 111, 0, 108, 0, 212, 123, 0, + 172, 0, 172, 178, 0, 79, 172, 172, 193, 202, + 102, 0, 146, 183, 157, 148, 147, 115, 126, 183, + 149, 150, 173, 183, 98, 99, 97, 0, 12, 0, + 182, 0, 189, 0, 0, 0, 0, 0, 33, 0, + 83, 198, 81, 0, 0, 0, 91, 177, 52, 0, + 180, 0, 0, 0, 213, 0, 125, 124, 94, 0, + 0, 73, 0, 69, 71, 90, 93, 0, 145, 0, + 186, 195, 0, 144, 95, 127, 194, 196, 17, 14, + 0, 190, 191, 130, 0, 86, 0, 0, 0, 0, + 32, 67, 0, 0, 62, 0, 0, 107, 59, 0, + 0, 0, 50, 54, 0, 151, 0, 0, 0, 211, + 68, 172, 0, 133, 0, 143, 135, 140, 141, 139, + 137, 138, 170, 171, 169, 116, 119, 142, 117, 118, + 0, 129, 49, 34, 0, 0, 0, 0, 0, 66, + 0, 0, 60, 0, 0, 131, 214, 0, 74, 0, + 132, 136, 134, 158, 166, 165, 164, 162, 159, 160, + 161, 163, 167, 153, 154, 156, 168, 155, 36, 37, + 88, 0, 89, 65, 0, 64, 128, 53, 0, 57, + 0, 0, 0, 0, 215, 87, 35, 58, 0, 0, + 207, 208, 209, 210, 56, 206, 55, 0, 217, 61, + 152, 0, 0, 216, 220, 218, 0, 219, 0, 222, + 221, 0, 0 +}; + +static const short yydefgoto[] = { 1, + 8, 9, 19, 18, 10, 168, 11, 17, 70, 71, + 180, 12, 15, 29, 106, 122, 73, 190, 319, 74, + 184, 75, 76, 147, 77, 127, 125, 78, 79, 312, + 80, 148, 81, 82, 158, 83, 84, 85, 86, 215, + 266, 87, 141, 160, 88, 89, 90, 209, 268, 269, + 161, 162, 163, 91, 193, 270, 304, 164, 306, 307, + 308, 271, 92, 93, 132, 134, 117, 211, 212, 119, + 94, 165, 166, 126, 95, 313, 329, 347, 336, 98, + 196, 325, 342, 346, 348, 349 +}; + +static const short yypact[] = {-32768, + 19,-32768, -66, -47,-32768, -18,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, -14, -6, 28, 50, -4, 12, +-32768, 243, 46,-32768,-32768, 53,-32768,-32768, 328, 62, +-32768, 51, 71, 134, 68,-32768, -52,-32768,-32768,-32768, + 91, 92, 51, 51,-32768, 97,-32768, 100,-32768, 114, + 118, -46, 141, 126, 127, 128,-32768, 54,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, 51, 51,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 132,-32768,-32768,-32768,-32768, +-32768, 113, 136,-32768,-32768,-32768,-32768,-32768,-32768, 170, +-32768, 120, 138,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, 107,-32768, 123,-32768, 101,-32768, + 51, 107, 137, 7, 608, 159, 608,-32768, 107, 142, + -23, -46, 151, -36, 149, -36, 107, 168,-32768, -46, + 413, 147, 461,-32768, 148,-32768, 509, 557,-32768,-32768, +-32768, 73,-32768, 141,-32768, -27,-32768,-32768, 154, 58, +-32768,-32768,-32768, 141,-32768,-32768,-32768, 20,-32768, 51, +-32768, 51,-32768, 51, 152, 153, 160, 162,-32768, 34, +-32768,-32768,-32768, 10, 107, 51,-32768, 154,-32768, 8, + 101, 107, 157, 107,-32768, -17, 154,-32768,-32768, 51, + 164,-32768, 165,-32768,-32768,-32768,-32768, 51,-32768, 146, +-32768,-32768, 51,-32768, -12,-32768,-32768,-32768,-32768,-32768, + 161,-32768,-32768,-32768, 107,-32768, 166, 171, 174, 169, +-32768,-32768, 177, 172,-32768, 178, 107,-32768,-32768, 193, + 188, 190,-32768,-32768, 107,-32768, 194, 201, 195,-32768, +-32768, 608, 198,-32768, 51,-32768, 73,-32768,-32768, 73, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, + 57,-32768,-32768,-32768, 204, 205, 83, 207, 225,-32768, + 209, 213,-32768, -1, 107,-32768,-32768, 200,-32768, 83, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, 215,-32768,-32768, 173,-32768,-32768,-32768, -10,-32768, + 13, 216, 107, 217,-32768,-32768,-32768,-32768, 139, -48, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, 107,-32768,-32768, +-32768, 87, 221,-32768, -48,-32768, -48,-32768, -48,-32768, +-32768, 303,-32768 +}; + +static const short yypgoto[] = {-32768, +-32768,-32768,-32768,-32768, 275,-32768,-32768,-32768,-32768, -170, +-32768, 283,-32768,-32768,-32768,-32768, 277,-32768,-32768, 279, +-32768, 129,-32768,-32768, -21,-32768,-32768,-32768,-32768, 27, + 179,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768, 103, -77,-32768, 220,-32768,-32768, -149,-32768,-32768, +-32768,-32768,-32768, 44,-32768,-32768,-32768, 52,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 272,-32768, -24, 25, -35, +-32768,-32768,-32768,-32768, -31, -22, -20, -268,-32768, 135, +-32768,-32768,-32768,-32768,-32768, -25 +}; + + +#define YYLAST 698 + + +static const short yytable[] = { 96, + 111, 97, 120, 35, 25, 44, 214, 109, 239, 118, + 232, 130, 131, 139, 159, 322, 13, 315, 352, 2, + 61, 120, 57, 257, 113, 123, 331, 63, 142, 50, + 124, 57, 248, 332, 140, 14, 149, 150, 3, 240, + 333, 233, 64, 258, 259, 228, 229, 241, 4, 334, + 330, 64, 51, 59, 188, 178, 5, 53, 61, 16, + 249, 340, 197, 208, 66, 63, 250, 61, 20, 213, + 120, 328, 6, 26, 63, 21, 179, 118, 350, 27, + 260, 261, 262, 28, 68, 242, 263, 234, 264, 175, + 265, 243, 170, 235, 335, 48, 7, 219, 191, 176, + 191, 220, 120, 181, 120, 183, 185, 292, 316, 57, + 293, 230, 22, 320, 194, 294, 57, 231, 113, 199, + 210, 202, 120, 295, 210, 205, 207, 23, 120, 64, + 99, 57, 120, 24, 155, 146, 64, 100, 221, 110, + 222, 57, 223, 296, 116, 297, 298, 152, 112, 216, + 121, 64, 331, 62, 238, 299, 300, 301, 302, 332, + 311, 64, 237, 208, 343, 57, 333, 153, 251, 245, + 344, 247, 139, 128, 129, 334, 254, 62, 57, 133, + 113, 256, 135, 69, 217, 64, 172, 173, 218, 154, + 155, 174, 57, 140, 113, 42, 137, 114, 64, 57, + 138, 113, 273, 143, 144, 145, 116, 69, 156, 171, + 157, 114, 64, 151, 281, 123, 115, 167, 182, 64, + 116, 177, 285, 291, 189, 210, 192, 116, 210, 195, + 289, 200, 186, 198, 203, 224, 255, 226, 225, 227, + 246, 252, 253, 315, 272, 324, 30, 274, 275, 31, + 32, 276, 33, 277, 278, 124, 279, 34, 35, 280, + 36, 37, 323, 321, 38, 39, 40, 41, 42, 43, + 282, 44, 283, 45, 284, 46, 47, 286, 287, 288, + 5, 48, 290, 49, 50, 309, 310, 51, 314, 52, + 53, 54, 317, 55, 318, 56, 327, 337, 345, 339, + 338, 57, 353, 105, 72, 107, 58, 108, 59, 187, + 60, 61, 236, 62, 303, 341, 326, 267, 63, 169, + 136, 64, 305, 351, 244, 65, 0, 0, 101, 0, + 66, 30, 67, 0, 31, 32, 0, 33, 0, 68, + 0, 0, 102, 69, 0, 36, 103, 3, 0, 38, + 39, 40, 41, 0, 43, 0, 44, 0, 45, 0, + 46, 47, -172, 0, 0, 0, 0, 0, 49, 0, + 0, 0, 0, 0, 52, 53, 54, 0, 55, 0, + 56, 0, -172, 0, 0, 0, 0, -172, 0, 0, + 0, 58, 0, 0, 0, 60, 0, 0, 0, 0, + 0, 0, 0, 0, -172, -172, 0, 0, -172, 0, + 65, 104, 0, 0, 0, 66, 30, 67, 0, 31, + 32, 0, 33, -172, 0, -172, 0, 102, 0, 0, + 36, 103, 0, 0, 38, 39, 40, 0, 0, 43, + 0, 44, 0, 45, 0, 0, 47, 0, 0, 0, + 0, 0, 0, 49, 0, 0, 0, 0, 0, 52, + 53, 54, 0, 55, 30, 56, 0, 31, 32, 0, + 33, 0, 0, 0, 0, 102, 58, 0, 36, 103, + 60, 0, 38, 39, 40, 0, 0, 43, 0, 44, + 0, 45, 198, 0, 47, 65, 0, 0, 0, 0, + 66, 49, 67, 0, 0, 0, 0, 52, 53, 54, + 0, 55, 30, 56, 0, 31, 32, 0, 33, 0, + 0, 0, 0, 102, 58, 0, 36, 103, 60, 0, + 38, 39, 40, 0, 0, 43, 0, 44, 0, 45, + 0, 0, 47, 65, 0, 201, 0, 0, 66, 49, + 67, 0, 0, 0, 0, 52, 53, 54, 0, 55, + 30, 56, 0, 31, 32, 0, 33, 0, 0, 0, + 0, 102, 58, 0, 36, 103, 60, 0, 38, 39, + 40, 0, 0, 43, 0, 44, 0, 45, 0, 0, + 47, 65, 204, 0, 0, 0, 66, 49, 67, 0, + 0, 0, 0, 52, 53, 54, 0, 55, 0, 56, + 0, 30, 0, 0, 31, 32, 0, 33, 0, 0, + 58, 0, 102, 0, 60, 36, 103, 0, 0, 38, + 39, 40, 0, 0, 43, 0, 44, 0, 45, 65, + 0, 47, 0, 0, 66, 206, 67, 0, 49, 0, + 0, 0, 0, 0, 52, 53, 54, 0, 55, 0, + 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 58, 0, 0, 0, 60, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 65, 0, 0, 0, 0, 66, 0, 67 +}; + +static const short yycheck[] = { 22, + 32, 22, 34, 16, 9, 29, 156, 29, 1, 34, + 1, 43, 44, 60, 92, 284, 83, 19, 0, 1, + 69, 53, 59, 36, 61, 78, 14, 76, 53, 42, + 83, 59, 50, 21, 81, 83, 68, 69, 20, 32, + 28, 32, 79, 56, 57, 12, 13, 40, 30, 37, + 319, 79, 45, 66, 132, 49, 38, 48, 69, 78, + 78, 330, 140, 91, 88, 76, 84, 69, 83, 97, + 102, 82, 54, 78, 76, 82, 70, 102, 347, 84, + 93, 94, 95, 72, 97, 78, 99, 78, 101, 121, + 103, 84, 115, 84, 82, 39, 78, 78, 134, 122, + 136, 82, 134, 125, 136, 127, 129, 257, 279, 59, + 260, 78, 85, 284, 137, 59, 59, 84, 61, 141, + 152, 143, 154, 67, 156, 147, 148, 78, 160, 79, + 85, 59, 164, 84, 78, 82, 79, 85, 170, 78, + 172, 59, 174, 87, 87, 89, 90, 35, 78, 92, + 83, 79, 14, 71, 186, 99, 100, 101, 102, 21, + 78, 79, 185, 91, 78, 59, 28, 55, 200, 192, + 84, 194, 60, 83, 83, 37, 208, 71, 59, 83, + 61, 213, 83, 101, 160, 79, 86, 87, 164, 77, + 78, 91, 59, 81, 61, 26, 83, 78, 79, 59, + 83, 61, 225, 78, 78, 78, 87, 101, 96, 87, + 98, 78, 79, 82, 237, 78, 83, 82, 60, 79, + 87, 85, 245, 255, 74, 257, 78, 87, 260, 62, + 252, 85, 91, 80, 87, 84, 91, 78, 86, 78, + 84, 78, 78, 19, 84, 46, 4, 82, 78, 7, + 8, 78, 10, 85, 78, 83, 85, 15, 16, 82, + 18, 19, 285, 284, 22, 23, 24, 25, 26, 27, + 78, 29, 85, 31, 85, 33, 34, 84, 78, 85, + 38, 39, 85, 41, 42, 82, 82, 45, 82, 47, + 48, 49, 84, 51, 82, 53, 82, 82, 78, 83, + 323, 59, 0, 29, 22, 29, 64, 29, 66, 131, + 68, 69, 184, 71, 271, 338, 290, 215, 76, 100, + 49, 79, 271, 349, 190, 83, -1, -1, 1, -1, + 88, 4, 90, -1, 7, 8, -1, 10, -1, 97, + -1, -1, 15, 101, -1, 18, 19, 20, -1, 22, + 23, 24, 25, -1, 27, -1, 29, -1, 31, -1, + 33, 34, 35, -1, -1, -1, -1, -1, 41, -1, + -1, -1, -1, -1, 47, 48, 49, -1, 51, -1, + 53, -1, 55, -1, -1, -1, -1, 60, -1, -1, + -1, 64, -1, -1, -1, 68, -1, -1, -1, -1, + -1, -1, -1, -1, 77, 78, -1, -1, 81, -1, + 83, 84, -1, -1, -1, 88, 4, 90, -1, 7, + 8, -1, 10, 96, -1, 98, -1, 15, -1, -1, + 18, 19, -1, -1, 22, 23, 24, -1, -1, 27, + -1, 29, -1, 31, -1, -1, 34, -1, -1, -1, + -1, -1, -1, 41, -1, -1, -1, -1, -1, 47, + 48, 49, -1, 51, 4, 53, -1, 7, 8, -1, + 10, -1, -1, -1, -1, 15, 64, -1, 18, 19, + 68, -1, 22, 23, 24, -1, -1, 27, -1, 29, + -1, 31, 80, -1, 34, 83, -1, -1, -1, -1, + 88, 41, 90, -1, -1, -1, -1, 47, 48, 49, + -1, 51, 4, 53, -1, 7, 8, -1, 10, -1, + -1, -1, -1, 15, 64, -1, 18, 19, 68, -1, + 22, 23, 24, -1, -1, 27, -1, 29, -1, 31, + -1, -1, 34, 83, -1, 85, -1, -1, 88, 41, + 90, -1, -1, -1, -1, 47, 48, 49, -1, 51, + 4, 53, -1, 7, 8, -1, 10, -1, -1, -1, + -1, 15, 64, -1, 18, 19, 68, -1, 22, 23, + 24, -1, -1, 27, -1, 29, -1, 31, -1, -1, + 34, 83, 84, -1, -1, -1, 88, 41, 90, -1, + -1, -1, -1, 47, 48, 49, -1, 51, -1, 53, + -1, 4, -1, -1, 7, 8, -1, 10, -1, -1, + 64, -1, 15, -1, 68, 18, 19, -1, -1, 22, + 23, 24, -1, -1, 27, -1, 29, -1, 31, 83, + -1, 34, -1, -1, 88, 89, 90, -1, 41, -1, + -1, -1, -1, -1, 47, 48, 49, -1, 51, -1, + 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 64, -1, -1, -1, 68, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, 88, -1, 90 +}; +#define YYPURE 1 + +/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ +#line 3 "/usr/lib/bison.simple" + +/* Skeleton output parser for bison, + Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* As a special exception, when this file is copied by Bison into a + Bison output file, you may use that output file without restriction. + This special exception was added by the Free Software Foundation + in version 1.24 of Bison. */ + +#ifndef alloca +#ifdef __GNUC__ +#define alloca __builtin_alloca +#else /* not GNU C. */ +#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) +#include +#else /* not sparc */ +#if defined (MSDOS) && !defined (__TURBOC__) +#include +#else /* not MSDOS, or __TURBOC__ */ +#if defined(_AIX) +#include + #pragma alloca +#else /* not MSDOS, __TURBOC__, or _AIX */ +#ifdef __hpux +#ifdef __cplusplus +extern "C" { +void *alloca (unsigned int); +}; +#else /* not __cplusplus */ +void *alloca (); +#endif /* not __cplusplus */ +#endif /* __hpux */ +#endif /* not _AIX */ +#endif /* not MSDOS, or __TURBOC__ */ +#endif /* not sparc. */ +#endif /* not GNU C. */ +#endif /* alloca not defined. */ + +/* This is the parser code that is written into each bison parser + when the %semantic_parser declaration is not specified in the grammar. + It was written by Richard Stallman by simplifying the hairy parser + used when %semantic_parser is specified. */ + +/* Note: there must be only one dollar sign in this file. + It is replaced by the list of actions, each action + as one case of the switch. */ + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = YYEMPTY) +#define YYEMPTY -2 +#define YYEOF 0 +#define YYACCEPT return(0) +#define YYABORT return(1) +#define YYERROR goto yyerrlab1 +/* Like YYERROR except do call yyerror. + This remains here temporarily to ease the + transition to the new meaning of YYERROR, for GCC. + Once GCC version 2 has supplanted version 1, this can go. */ +#define YYFAIL goto yyerrlab +#define YYRECOVERING() (!!yyerrstatus) +#define YYBACKUP(token, value) \ +do \ + if (yychar == YYEMPTY && yylen == 1) \ + { yychar = (token), yylval = (value); \ + yychar1 = YYTRANSLATE (yychar); \ + YYPOPSTACK; \ + goto yybackup; \ + } \ + else \ + { yyerror ("syntax error: cannot back up"); YYERROR; } \ +while (0) + +#define YYTERROR 1 +#define YYERRCODE 256 + +#ifndef YYPURE +#define YYLEX yylex() +#endif + +#ifdef YYPURE +#ifdef YYLSP_NEEDED +#ifdef YYLEX_PARAM +#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM) +#else +#define YYLEX yylex(&yylval, &yylloc) +#endif +#else /* not YYLSP_NEEDED */ +#ifdef YYLEX_PARAM +#define YYLEX yylex(&yylval, YYLEX_PARAM) +#else +#define YYLEX yylex(&yylval) +#endif +#endif /* not YYLSP_NEEDED */ +#endif + +/* If nonreentrant, generate the variables here */ + +#ifndef YYPURE + +int yychar; /* the lookahead symbol */ +YYSTYPE yylval; /* the semantic value of the */ + /* lookahead symbol */ + +#ifdef YYLSP_NEEDED +YYLTYPE yylloc; /* location data for the lookahead */ + /* symbol */ +#endif + +int yynerrs; /* number of parse errors so far */ +#endif /* not YYPURE */ + +#if YYDEBUG != 0 +int yydebug; /* nonzero means print parse trace */ +/* Since this is uninitialized, it does not stop multiple parsers + from coexisting. */ +#endif + +/* YYINITDEPTH indicates the initial size of the parser's stacks */ + +#ifndef YYINITDEPTH +#define YYINITDEPTH 200 +#endif + +/* YYMAXDEPTH is the maximum size the stacks can grow to + (effective only if the built-in stack extension method is used). */ + +#if YYMAXDEPTH == 0 +#undef YYMAXDEPTH +#endif + +#ifndef YYMAXDEPTH +#define YYMAXDEPTH 10000 +#endif + +/* Prevent warning if -Wstrict-prototypes. */ +#ifdef __GNUC__ +int yyparse (void); +#endif + +#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */ +#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT) +#else /* not GNU C or C++ */ +#ifndef __cplusplus + +/* This is the most reliable way to avoid incompatibilities + in available built-in functions on various systems. */ +static void +__yy_memcpy (to, from, count) + char *to; + char *from; + int count; +{ + register char *f = from; + register char *t = to; + register int i = count; + + while (i-- > 0) + *t++ = *f++; +} + +#else /* __cplusplus */ + +/* This is the most reliable way to avoid incompatibilities + in available built-in functions on various systems. */ +static void +__yy_memcpy (char *to, char *from, int count) +{ + register char *f = from; + register char *t = to; + register int i = count; + + while (i-- > 0) + *t++ = *f++; +} + +#endif +#endif + +#line 196 "/usr/lib/bison.simple" + +/* The user can define YYPARSE_PARAM as the name of an argument to be passed + into yyparse. The argument should have type void *. + It should actually point to an object. + Grammar actions can access the variable by casting it + to the proper pointer type. */ + +#ifdef YYPARSE_PARAM +#ifdef __cplusplus +#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM +#define YYPARSE_PARAM_DECL +#else /* not __cplusplus */ +#define YYPARSE_PARAM_ARG YYPARSE_PARAM +#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; +#endif /* not __cplusplus */ +#else /* not YYPARSE_PARAM */ +#define YYPARSE_PARAM_ARG +#define YYPARSE_PARAM_DECL +#endif /* not YYPARSE_PARAM */ + +int +yyparse(YYPARSE_PARAM_ARG) + YYPARSE_PARAM_DECL +{ + register int yystate; + register int yyn; + register short *yyssp; + register YYSTYPE *yyvsp; + int yyerrstatus; /* number of tokens to shift before error messages enabled */ + int yychar1 = 0; /* lookahead token as an internal (translated) token number */ + + short yyssa[YYINITDEPTH]; /* the state stack */ + YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */ + + short *yyss = yyssa; /* refer to the stacks thru separate pointers */ + YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */ + +#ifdef YYLSP_NEEDED + YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */ + YYLTYPE *yyls = yylsa; + YYLTYPE *yylsp; + +#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) +#else +#define YYPOPSTACK (yyvsp--, yyssp--) +#endif + + int yystacksize = YYINITDEPTH; + +#ifdef YYPURE + int yychar; + YYSTYPE yylval; + int yynerrs; +#ifdef YYLSP_NEEDED + YYLTYPE yylloc; +#endif +#endif + + YYSTYPE yyval; /* the variable used to return */ + /* semantic values from the action */ + /* routines */ + + int yylen; + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Starting parse\n"); +#endif + + yystate = 0; + yyerrstatus = 0; + yynerrs = 0; + yychar = YYEMPTY; /* Cause a token to be read. */ + + /* Initialize stack pointers. + Waste one element of value and location stack + so that they stay on the same level as the state stack. + The wasted elements are never initialized. */ + + yyssp = yyss - 1; + yyvsp = yyvs; +#ifdef YYLSP_NEEDED + yylsp = yyls; +#endif + +/* Push a new state, which is found in yystate . */ +/* In all cases, when you get here, the value and location stacks + have just been pushed. so pushing a state here evens the stacks. */ +yynewstate: + + *++yyssp = yystate; + + if (yyssp >= yyss + yystacksize - 1) + { + /* Give user a chance to reallocate the stack */ + /* Use copies of these so that the &'s don't force the real ones into memory. */ + YYSTYPE *yyvs1 = yyvs; + short *yyss1 = yyss; +#ifdef YYLSP_NEEDED + YYLTYPE *yyls1 = yyls; +#endif + + /* Get the current used size of the three stacks, in elements. */ + int size = yyssp - yyss + 1; + +#ifdef yyoverflow + /* Each stack pointer address is followed by the size of + the data in use in that stack, in bytes. */ +#ifdef YYLSP_NEEDED + /* This used to be a conditional around just the two extra args, + but that might be undefined if yyoverflow is a macro. */ + yyoverflow("parser stack overflow", + &yyss1, size * sizeof (*yyssp), + &yyvs1, size * sizeof (*yyvsp), + &yyls1, size * sizeof (*yylsp), + &yystacksize); +#else + yyoverflow("parser stack overflow", + &yyss1, size * sizeof (*yyssp), + &yyvs1, size * sizeof (*yyvsp), + &yystacksize); +#endif + + yyss = yyss1; yyvs = yyvs1; +#ifdef YYLSP_NEEDED + yyls = yyls1; +#endif +#else /* no yyoverflow */ + /* Extend the stack our own way. */ + if (yystacksize >= YYMAXDEPTH) + { + yyerror("parser stack overflow"); + return 2; + } + yystacksize *= 2; + if (yystacksize > YYMAXDEPTH) + yystacksize = YYMAXDEPTH; + yyss = (short *) alloca (yystacksize * sizeof (*yyssp)); + __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp)); + yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp)); + __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp)); +#ifdef YYLSP_NEEDED + yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp)); + __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp)); +#endif +#endif /* no yyoverflow */ + + yyssp = yyss + size - 1; + yyvsp = yyvs + size - 1; +#ifdef YYLSP_NEEDED + yylsp = yyls + size - 1; +#endif + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Stack size increased to %d\n", yystacksize); +#endif + + if (yyssp >= yyss + yystacksize - 1) + YYABORT; + } + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Entering state %d\n", yystate); +#endif + + goto yybackup; + yybackup: + +/* Do appropriate processing given the current state. */ +/* Read a lookahead token if we need one and don't already have one. */ +/* yyresume: */ + + /* First try to decide what to do without reference to lookahead token. */ + + yyn = yypact[yystate]; + if (yyn == YYFLAG) + goto yydefault; + + /* Not known => get a lookahead token if don't already have one. */ + + /* yychar is either YYEMPTY or YYEOF + or a valid token in external form. */ + + if (yychar == YYEMPTY) + { +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Reading a token: "); +#endif + yychar = YYLEX; + } + + /* Convert token to internal form (in yychar1) for indexing tables with */ + + if (yychar <= 0) /* This means end of input. */ + { + yychar1 = 0; + yychar = YYEOF; /* Don't call YYLEX any more */ + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Now at end of input.\n"); +#endif + } + else + { + yychar1 = YYTRANSLATE(yychar); + +#if YYDEBUG != 0 + if (yydebug) + { + fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]); + /* Give the individual parser a way to print the precise meaning + of a token, for further debugging info. */ +#ifdef YYPRINT + YYPRINT (stderr, yychar, yylval); +#endif + fprintf (stderr, ")\n"); + } +#endif + } + + yyn += yychar1; + if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) + goto yydefault; + + yyn = yytable[yyn]; + + /* yyn is what to do for this token type in this state. + Negative => reduce, -yyn is rule number. + Positive => shift, yyn is new state. + New state is final state => don't bother to shift, + just return success. + 0, or most negative number => error. */ + + if (yyn < 0) + { + if (yyn == YYFLAG) + goto yyerrlab; + yyn = -yyn; + goto yyreduce; + } + else if (yyn == 0) + goto yyerrlab; + + if (yyn == YYFINAL) + YYACCEPT; + + /* Shift the lookahead token. */ + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]); +#endif + + /* Discard the token being shifted unless it is eof. */ + if (yychar != YYEOF) + yychar = YYEMPTY; + + *++yyvsp = yylval; +#ifdef YYLSP_NEEDED + *++yylsp = yylloc; +#endif + + /* count tokens shifted since error; after three, turn off error status. */ + if (yyerrstatus) yyerrstatus--; + + yystate = yyn; + goto yynewstate; + +/* Do the default action for the current state. */ +yydefault: + + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + +/* Do a reduction. yyn is the number of a rule to reduce with. */ +yyreduce: + yylen = yyr2[yyn]; + if (yylen > 0) + yyval = yyvsp[1-yylen]; /* implement default value of the action */ + +#if YYDEBUG != 0 + if (yydebug) + { + int i; + + fprintf (stderr, "Reducing via rule %d (line %d), ", + yyn, yyrline[yyn]); + + /* Print the symbols being reduced, and their result. */ + for (i = yyprhs[yyn]; yyrhs[i] > 0; i++) + fprintf (stderr, "%s ", yytname[yyrhs[i]]); + fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]); + } +#endif + + + switch (yyn) { + +case 2: +#line 259 "parser.yy" +{ + delete THIS->default_header_p_ ; + THIS->default_header_p_ = yyvsp[0].header; + ; + break;} +case 3: +#line 263 "parser.yy" +{ + add_score (yyvsp[0].score); + ; + break;} +case 4: +#line 266 "parser.yy" +{ ; + break;} +case 6: +#line 268 "parser.yy" +{ ; + break;} +case 7: +#line 269 "parser.yy" +{ ; + break;} +case 8: +#line 273 "parser.yy" +{ + if (String (*yyvsp[-1].string) != MUDELA_VERSION) { + if (THIS->ignore_version_b_) { + THIS->here_input ().error ("Incorrect mudela version"); + } else { + THIS->fatal_error_i_ = 1; + THIS->parser_error ("Incorrect mudela version"); + } + } + ; + break;} +case 10: +#line 289 "parser.yy" +{ + ; + break;} +case 11: +#line 291 "parser.yy" +{ + THIS->clear_notenames (); + ; + break;} +case 12: +#line 294 "parser.yy" +{ + THIS->add_notename (*yyvsp[-2].string, yyvsp[0].melreq); + delete yyvsp[-2].string; + ; + break;} +case 13: +#line 301 "parser.yy" +{ + yyval.header = new Header; + ; + break;} +case 14: +#line 304 "parser.yy" +{ + (*yyval.header)[*yyvsp[-3].string] = *yyvsp[-1].string; + delete yyvsp[-3].string; + delete yyvsp[-1].string; + ; + break;} +case 15: +#line 312 "parser.yy" +{ + yyval.header = yyvsp[-1].header; + ; + break;} +case 16: +#line 319 "parser.yy" +{ + yyval.string = new String; + ; + break;} +case 17: +#line 322 "parser.yy" +{ + *yyval.string += *yyvsp[0].string; + ; + break;} +case 18: +#line 332 "parser.yy" +{ + THIS->remember_spot (); + ; + break;} +case 19: +#line 335 "parser.yy" +{ + THIS->lexer_p_->set_identifier (*yyvsp[-3].string, yyvsp[0].id); + yyvsp[0].id->init_b_ = THIS->init_parse_b_; + yyvsp[0].id->set_spot (THIS->pop_spot ()); + ; + break;} +case 20: +#line 343 "parser.yy" +{ + yyval.id = new Score_id (yyvsp[0].score, SCORE_IDENTIFIER); + + ; + break;} +case 21: +#line 347 "parser.yy" +{ + yyval.id = new Paper_def_id (yyvsp[0].paper, PAPER_IDENTIFIER); + + ; + break;} +case 22: +#line 351 "parser.yy" +{ + yyval.id = new Midi_def_id (yyvsp[0].midi, MIDI_IDENTIFIER); + + ; + break;} +case 23: +#line 355 "parser.yy" +{ + yyval.id = new Script_id (yyvsp[0].script, SCRIPT_IDENTIFIER); + + ; + break;} +case 24: +#line 359 "parser.yy" +{ + yyval.id = new Music_id (yyvsp[0].music, MUSIC_IDENTIFIER); + + ; + break;} +case 25: +#line 363 "parser.yy" +{ + yyval.id = new Lookup_id (yyvsp[0].lookup, IDENTIFIER); + + ; + break;} +case 26: +#line 367 "parser.yy" +{ + yyval.id = new Real_id (new Real (yyvsp[0].real), REAL_IDENTIFIER); + + ; + break;} +case 27: +#line 371 "parser.yy" +{ + yyval.id = new Int_id (new int (yyvsp[0].i), INT_IDENTIFIER); + ; + break;} +case 28: +#line 374 "parser.yy" +{ + yyval.id = new Request_id (yyvsp[0].request, POST_REQUEST_IDENTIFIER); + ; + break;} +case 29: +#line 377 "parser.yy" +{ + yyval.id = new Request_id (yyvsp[0].melreq, MELODIC_REQUEST_IDENTIFIER); + + ; + break;} +case 30: +#line 381 "parser.yy" +{ + yyval.id = new Translator_id (yyvsp[0].trans, TRANS_IDENTIFIER); + ; + break;} +case 31: +#line 384 "parser.yy" +{ + yyval.id = new Duration_id (yyvsp[0].duration, DURATION_IDENTIFIER); + ; + break;} +case 32: +#line 393 "parser.yy" +{ yyval.trans = yyvsp[-1].trans; ; + break;} +case 33: +#line 397 "parser.yy" +{ + yyval.trans = yyvsp[0].id->translator (); + yyval.trans-> set_spot (THIS->here_input ()); + ; + break;} +case 34: +#line 401 "parser.yy" +{ + yyval.trans = get_translator_l (*yyvsp[-1].string)->clone (); + yyval.trans->set_spot (THIS->here_input ()); + delete yyvsp[-1].string; + ; + break;} +case 35: +#line 406 "parser.yy" +{ + yyval.trans-> set_property (*yyvsp[-3].string, *yyvsp[-1].scalar); + delete yyvsp[-3].string; + delete yyvsp[-1].scalar; + ; + break;} +case 36: +#line 411 "parser.yy" +{ + yyval.trans->group_l ()->consists_str_arr_.push (*yyvsp[-1].string); + delete yyvsp[-1].string; + ; + break;} +case 37: +#line 415 "parser.yy" +{ + yyval.trans->group_l ()->accepts_str_arr_.push (*yyvsp[-1].string); + delete yyvsp[-1].string; + ; + break;} +case 38: +#line 425 "parser.yy" +{ THIS->remember_spot (); + THIS->error_level_i_ =0; + ; + break;} +case 39: +#line 428 "parser.yy" +{ + yyval.score = yyvsp[-1].score; + yyval.score->set_spot (THIS->pop_spot ()); + if (!yyval.score->def_p_arr_.size ()) + yyval.score->add (THIS->default_paper ()); + + /* handle error levels. */ + yyval.score->errorlevel_i_ = THIS->error_level_i_; + THIS->error_level_i_ = 0; + if (!yyval.score->header_p_ && THIS->default_header_p_) + yyval.score->header_p_ = new Header (*THIS->default_header_p_); + ; + break;} +case 40: +#line 442 "parser.yy" +{ + yyval.score = new Score; + ; + break;} +case 41: +#line 445 "parser.yy" +{ + yyval.score = yyvsp[0].id->score (); + ; + break;} +case 42: +#line 448 "parser.yy" +{ + yyval.score->header_p_ = yyvsp[0].header; + ; + break;} +case 43: +#line 451 "parser.yy" +{ + if (yyval.score->music_p_) + yyvsp[0].music->warning ("More than one music block"); + yyval.score->music_p_ = yyvsp[0].music; + ; + break;} +case 44: +#line 456 "parser.yy" +{ + yyval.score->add (yyvsp[0].outputdef); + ; + break;} +case 45: +#line 459 "parser.yy" +{ + + ; + break;} +case 46: +#line 465 "parser.yy" +{ + yyval.outputdef = yyvsp[0].paper; + ; + break;} +case 47: +#line 468 "parser.yy" +{ + yyval.outputdef= yyvsp[0].midi; + ; + break;} +case 48: +#line 474 "parser.yy" +{ yyval.intvec =new Array; ; + break;} +case 49: +#line 475 "parser.yy" +{ + yyval.intvec->push (yyvsp[-2].i); yyval.intvec->push (yyvsp[0].i); + ; + break;} +case 50: +#line 486 "parser.yy" +{ yyval.paper = yyvsp[-1].paper; ; + break;} +case 51: +#line 490 "parser.yy" +{ + yyval.paper = THIS->default_paper (); + ; + break;} +case 52: +#line 493 "parser.yy" +{ + yyval.paper = yyvsp[0].id->paperdef (); + ; + break;} +case 53: +#line 496 "parser.yy" +{ + yyval.paper->outfile_str_ = *yyvsp[-1].string; + delete yyvsp[-1].string; + ; + break;} +case 54: +#line 500 "parser.yy" +{ yyval.paper->set (yyvsp[0].lookup); ; + break;} +case 55: +#line 501 "parser.yy" +{ + yyval.paper->set_var (*yyvsp[-3].string, yyvsp[-1].real); + ; + break;} +case 56: +#line 504 "parser.yy" +{ + yyval.paper->set_var (*yyvsp[-3].string, yyvsp[-1].real); + ; + break;} +case 57: +#line 507 "parser.yy" +{ + yyval.paper-> assign_translator (*yyvsp[-2].string, yyvsp[0].trans); + delete yyvsp[-2].string; + ; + break;} +case 58: +#line 511 "parser.yy" +{ + yyval.paper->shape_int_a_ = *yyvsp[-1].intarr; + delete yyvsp[-1].intarr; + ; + break;} +case 59: +#line 515 "parser.yy" +{ + + ; + break;} +case 60: +#line 521 "parser.yy" +{ + yyval.intarr = new Array; + ; + break;} +case 61: +#line 524 "parser.yy" +{ + yyval.intarr->push(Interval(yyvsp[-1].real, yyvsp[-1].real + yyvsp[0].real)); + ; + break;} +case 62: +#line 534 "parser.yy" +{ yyval.midi = yyvsp[-1].midi; ; + break;} +case 63: +#line 537 "parser.yy" +{ + yyval.midi = THIS->default_midi (); + ; + break;} +case 64: +#line 540 "parser.yy" +{ + yyval.midi-> assign_translator (*yyvsp[-2].string, yyvsp[0].trans); + delete yyvsp[-2].string; + ; + break;} +case 65: +#line 544 "parser.yy" +{ + yyval.midi->outfile_str_ = *yyvsp[-1].string; + delete yyvsp[-1].string; + ; + break;} +case 66: +#line 548 "parser.yy" +{ + yyval.midi->set_tempo (yyvsp[-1].tempo->dur_.length (), yyvsp[-1].tempo->metronome_i_); + delete yyvsp[-1].tempo; + ; + break;} +case 67: +#line 552 "parser.yy" +{ + + ; + break;} +case 68: +#line 558 "parser.yy" +{ + yyval.tempo = new Tempo_req; + yyval.tempo->dur_ = *yyvsp[-2].duration; + delete yyvsp[-2].duration; + yyval.tempo-> metronome_i_ = yyvsp[0].i; + ; + break;} +case 69: +#line 571 "parser.yy" +{ + yyval.musiclist = yyvsp[-1].musiclist; + ; + break;} +case 70: +#line 577 "parser.yy" +{ + yyval.musiclist = new Voice; + yyval.musiclist->set_spot (THIS->here_input ()); + ; + break;} +case 71: +#line 581 "parser.yy" +{ + yyval.musiclist->add (yyvsp[0].music); + ; + break;} +case 72: +#line 587 "parser.yy" +{ yyval.music = yyvsp[0].music; ; + break;} +case 73: +#line 588 "parser.yy" +{ + yyval.music = yyvsp[0].music; + yyval.music->translator_type_str_ = *yyvsp[-1].string; + delete yyvsp[-1].string; + ; + break;} +case 74: +#line 593 "parser.yy" +{ + yyval.music = yyvsp[0].music; + yyval.music->translator_type_str_ = *yyvsp[-3].string; + yyval.music->translator_id_str_ = *yyvsp[-1].string; + delete yyvsp[-3].string; + delete yyvsp[-1].string; + ; + break;} +case 75: +#line 600 "parser.yy" +{ yyval.music = yyvsp[0].musiclist; ; + break;} +case 76: +#line 601 "parser.yy" +{ yyval.music = yyvsp[0].chord; ; + break;} +case 77: +#line 602 "parser.yy" +{ yyval.music = yyvsp[0].music; ; + break;} +case 78: +#line 603 "parser.yy" +{ yyval.music = yyvsp[0].id->music (); ; + break;} +case 79: +#line 604 "parser.yy" +{ yyval.music = yyvsp[-1].id->music (); ; + break;} +case 80: +#line 606 "parser.yy" +{ THIS->lexer_p_->push_note_state (); ; + break;} +case 81: +#line 608 "parser.yy" +{ yyval.music=yyvsp[0].music; THIS->lexer_p_->pop_state (); ; + break;} +case 82: +#line 611 "parser.yy" +{ THIS->lexer_p_->push_lyric_state (); ; + break;} +case 83: +#line 613 "parser.yy" +{ yyval.music = yyvsp[0].music; THIS->lexer_p_->pop_state (); ; + break;} +case 86: +#line 619 "parser.yy" +{ + Change_translator * t = new Change_translator; + t-> change_to_type_str_ = *yyvsp[-2].string; + t-> change_to_id_str_ = *yyvsp[0].string; + + yyval.music = t; + yyval.music->set_spot (THIS->here_input ()); + delete yyvsp[-2].string; + delete yyvsp[0].string; + ; + break;} +case 87: +#line 632 "parser.yy" +{ + Translation_property *t = new Translation_property; + t-> translator_type_str_ = *yyvsp[-4].string; + t-> var_str_ = *yyvsp[-2].string; + t-> value_ = *yyvsp[0].scalar; + yyval.music = t; + yyval.music->set_spot (THIS->here_input ()); + delete yyvsp[-4].string; + delete yyvsp[-2].string; + delete yyvsp[0].scalar; + ; + break;} +case 88: +#line 646 "parser.yy" +{ yyval.scalar = new Scalar (*yyvsp[0].string); delete yyvsp[0].string; ; + break;} +case 89: +#line 647 "parser.yy" +{ yyval.scalar = new Scalar (yyvsp[0].i); ; + break;} +case 90: +#line 652 "parser.yy" +{ yyval.chord = yyvsp[-1].chord; ; + break;} +case 91: +#line 653 "parser.yy" +{ + yyval.chord = yyvsp[0].chord; + yyval.chord->multi_level_i_=yyvsp[-1].i; + ; + break;} +case 92: +#line 660 "parser.yy" +{ + yyval.chord = new Chord; + yyval.chord-> multi_level_i_ = 1; + yyval.chord->set_spot (THIS->here_input ()); + ; + break;} +case 93: +#line 665 "parser.yy" +{ + yyval.chord->add (yyvsp[0].music); + ; + break;} +case 94: +#line 671 "parser.yy" +{ + yyval.music = yyvsp[0].music; + yyval.music -> transpose (yyvsp[-1].melreq); + + delete yyvsp[-1].melreq; + ; + break;} +case 95: +#line 684 "parser.yy" +{ + THIS->add_requests ((Chord*)yyvsp[-1].music);//ugh + yyval.music = yyvsp[-1].music; + ; + break;} +case 97: +#line 689 "parser.yy" +{ yyval.music = 0; ; + break;} +case 100: +#line 698 "parser.yy" +{ + yyval.music = new Request_chord; + yyval.music-> set_spot (THIS->here_input ()); + yyvsp[0].request-> set_spot (THIS->here_input ()); + ((Chord*)yyval.music) ->add (yyvsp[0].request);//ugh + + ; + break;} +case 102: +#line 709 "parser.yy" +{ yyval.request = yyvsp[-1].request; ; + break;} +case 103: +#line 713 "parser.yy" +{ + yyval.request = new Barcheck_req; + ; + break;} +case 104: +#line 716 "parser.yy" +{ + yyval.request = yyvsp[0].id->request (); + ; + break;} +case 105: +#line 722 "parser.yy" +{ + yyval.request = new Bar_req (*yyvsp[0].string); + delete yyvsp[0].string; + ; + break;} +case 106: +#line 726 "parser.yy" +{ + Break_force_req * f = new Break_force_req; + f-> set_spot (THIS->here_input ()); + yyval.request = f; + ; + break;} +case 107: +#line 731 "parser.yy" +{ + Meter_change_req *m = new Meter_change_req; + m->set (yyvsp[-2].i,yyvsp[0].i); + yyval.request = m; + ; + break;} +case 108: +#line 736 "parser.yy" +{ + Skip_req * skip_p = new Skip_req; + skip_p->duration_.set_plet (yyvsp[0].moment->num (), + yyvsp[0].moment->den ()); + + delete yyvsp[0].moment; + yyval.request = skip_p; + ; + break;} +case 109: +#line 744 "parser.yy" +{ + yyval.request = yyvsp[0].tempo; + ; + break;} +case 110: +#line 747 "parser.yy" +{ + yyval.request = new Cadenza_req (yyvsp[0].i); + ; + break;} +case 111: +#line 750 "parser.yy" +{ + yyval.request = new Partial_measure_req (*yyvsp[0].moment); + delete yyvsp[0].moment; + ; + break;} +case 112: +#line 754 "parser.yy" +{ + yyval.request = new Clef_change_req (*yyvsp[0].string); + delete yyvsp[0].string; + ; + break;} +case 113: +#line 758 "parser.yy" +{ + Key_change_req *key_p= new Key_change_req; + key_p->melodic_p_arr_ = *yyvsp[0].melreqvec; + yyval.request = key_p; + delete yyvsp[0].melreqvec; + ; + break;} +case 114: +#line 764 "parser.yy" +{ + yyval.request = get_grouping_req (*yyvsp[0].intvec); delete yyvsp[0].intvec; + ; + break;} +case 115: +#line 770 "parser.yy" +{ + /* something silly happened. Junk this stuff*/ + if (!THIS->post_reqs.empty ()) + { + warning ("Junking post-requests"); + THIS->post_reqs.clear (); + } + ; + break;} +case 116: +#line 778 "parser.yy" +{ + yyvsp[0].request->set_spot (THIS->here_input ()); + THIS->post_reqs.push (yyvsp[0].request); + ; + break;} +case 117: +#line 782 "parser.yy" +{ + Array& r = *THIS->get_parens_request (yyvsp[0].i); + for (int i = 0; i < r.size (); i++ ) + r[i]->set_spot (THIS->here_input ()); + THIS->post_reqs.concat (r); + delete &r; + ; + break;} +case 120: +#line 797 "parser.yy" +{ + yyval.request = (Request*)yyvsp[0].id->request (); + ; + break;} +case 121: +#line 800 "parser.yy" +{ + yyval.request = yyvsp[0].request; + ; + break;} +case 122: +#line 803 "parser.yy" +{ + Abbreviation_req* a = new Abbreviation_req; + a->type_i_ = yyvsp[0].i; + yyval.request = a; + ; + break;} +case 123: +#line 816 "parser.yy" +{ + yyval.melreq = yyvsp[0].melreq->clone ()->musical ()->melodic (); + yyval.melreq->octave_i_ += THIS->default_octave_i_; + ; + break;} +case 124: +#line 820 "parser.yy" +{ + yyval.melreq-> octave_i_ += yyvsp[0].i; + ; + break;} +case 125: +#line 823 "parser.yy" +{ + yyval.melreq = yyvsp[0].melreq; + yyvsp[0].melreq-> octave_i_ -= yyvsp[-1].i; + ; + break;} +case 126: +#line 830 "parser.yy" +{ + yyval.notereq = new Note_req; + * (Melodic_req *) yyval.notereq = *yyvsp[0].melreq; + delete yyvsp[0].melreq; + ; + break;} +case 127: +#line 835 "parser.yy" +{ + yyval.notereq->forceacc_b_ = ! yyval.notereq->forceacc_b_; + ; + break;} +case 128: +#line 842 "parser.yy" +{/* ugh */ + yyval.melreq = new Melodic_req; + yyval.melreq->octave_i_ = yyvsp[-3].i; + yyval.melreq->notename_i_ = yyvsp[-2].i; + yyval.melreq->accidental_i_ = yyvsp[-1].i; + ; + break;} +case 129: +#line 851 "parser.yy" +{ + yyval.duration = new Duration; + yyval.duration-> durlog_i_ = yyvsp[-2].i; + yyval.duration-> dots_i_ = yyvsp[-1].i; + ; + break;} +case 130: +#line 859 "parser.yy" +{ + Absolute_dynamic_req *ad_p = new Absolute_dynamic_req; + ad_p ->loudness_ = (Dynamic_req::Loudness)yyvsp[-1].i; + yyval.request =ad_p; + ; + break;} +case 131: +#line 864 "parser.yy" +{ + Span_dynamic_req * sp_p = new Span_dynamic_req; + sp_p->spantype = yyvsp[-1].i; + sp_p-> dynamic_dir_ = yyvsp[-2].i; + yyval.request = sp_p; + ; + break;} +case 132: +#line 873 "parser.yy" +{ + yyval.pair[0] = yyvsp[-2].i; + yyval.pair[1] = yyvsp[0].i; + ; + break;} +case 133: +#line 878 "parser.yy" +{ + int num = yyvsp[0].i >? 1; + yyval.pair[0] = guess_plet_a[(num plet_.type_i_ = yyvsp[0].pair[1]; + THIS->plet_.iso_i_ = yyvsp[0].pair[0]; + THIS->default_duration_.plet_.type_i_ = yyvsp[0].pair[1]; + THIS->default_duration_.plet_.iso_i_ = yyvsp[0].pair[0]; + ; + break;} +case 135: +#line 893 "parser.yy" +{ + yyval.i = TELP; + THIS->plet_.type_i_ = 1; + THIS->plet_.iso_i_ = 1; + THIS->default_duration_.plet_.iso_i_ = 1; + THIS->default_duration_.plet_.type_i_ = 1; + ; + break;} +case 136: +#line 900 "parser.yy" +{ + yyval.i = TELP; + THIS->plet_.type_i_ = yyvsp[0].pair[1]; + THIS->plet_.iso_i_ = yyvsp[0].pair[0]; + THIS->default_duration_.plet_.type_i_ = yyvsp[0].pair[1]; + THIS->default_duration_.plet_.iso_i_ = yyvsp[0].pair[0]; + ; + break;} +case 137: +#line 910 "parser.yy" +{ + yyval.i = '~'; + ; + break;} +case 138: +#line 913 "parser.yy" +{ + yyval.i='('; + ; + break;} +case 139: +#line 916 "parser.yy" +{ + yyval.i = ']'; + ; + break;} +case 140: +#line 919 "parser.yy" +{ + yyval.i = '<'; + ; + break;} +case 141: +#line 922 "parser.yy" +{ + yyval.i = '>'; + ; + break;} +case 142: +#line 925 "parser.yy" +{ + ; + break;} +case 143: +#line 930 "parser.yy" +{ + yyval.c = '['; + if (!Duration::duration_type_b (yyvsp[0].i)) + THIS->parser_error ("1:Not a duration"); + else if (yyvsp[0].i < 8) + THIS->parser_error ("Can't abbreviate"); + else + THIS->set_abbrev_beam (yyvsp[0].i); + ; + break;} +case 144: +#line 942 "parser.yy" +{ + yyval.i = BEAMPLET; + THIS->plet_.type_i_ = yyvsp[0].pair[1]; + THIS->plet_.iso_i_ = yyvsp[0].pair[0]; + THIS->default_duration_.plet_.type_i_ = yyvsp[0].pair[1]; + THIS->default_duration_.plet_.iso_i_ = yyvsp[0].pair[0]; + ; + break;} +case 145: +#line 949 "parser.yy" +{ + yyval.i = PLET; + THIS->plet_.type_i_ = yyvsp[0].pair[1]; + THIS->plet_.iso_i_ = yyvsp[0].pair[0]; + THIS->default_duration_.plet_.type_i_ = yyvsp[0].pair[1]; + THIS->default_duration_.plet_.iso_i_ = yyvsp[0].pair[0]; + ; + break;} +case 146: +#line 959 "parser.yy" +{ + yyval.i = '!'; + ; + break;} +case 147: +#line 962 "parser.yy" +{ + yyval.i=')'; + ; + break;} +case 148: +#line 965 "parser.yy" +{ + yyval.i='['; + ; + break;} +case 149: +#line 968 "parser.yy" +{ + ; + break;} +case 150: +#line 970 "parser.yy" +{ + ; + break;} +case 151: +#line 977 "parser.yy" +{ yyval.script = yyvsp[-1].script; ; + break;} +case 152: +#line 981 "parser.yy" +{ + Script_def *s = new Script_def; + s->set_from_input (*yyvsp[-5].string,yyvsp[-4].i, yyvsp[-3].i,yyvsp[-2].i,yyvsp[-1].i, yyvsp[0].i); + yyval.script = s; + delete yyvsp[-5].string; + ; + break;} +case 153: +#line 990 "parser.yy" +{ + Musical_script_req *m = new Musical_script_req; + yyval.request = m; + m->scriptdef_p_ = yyvsp[0].script; + m->set_spot (THIS->here_input ()); + if (!m->dir_) + m->dir_ = yyvsp[-1].i; + ; + break;} +case 154: +#line 1001 "parser.yy" +{ + yyval.script = yyvsp[0].textdef; + ((Text_def*) yyval.script)->align_i_ = CENTER; /* UGH */ + ; + break;} +case 155: +#line 1005 "parser.yy" +{ + yyval.script = yyvsp[0].script; + yyval.script-> set_spot (THIS->here_input ()); + ; + break;} +case 156: +#line 1009 "parser.yy" +{ + yyval.script = yyvsp[0].textdef; + ((Text_def*)yyval.script)->align_i_ = CENTER; + ; + break;} +case 157: +#line 1016 "parser.yy" +{ + Text_def *t = new Text_def; + yyval.textdef = t; + t->text_str_ = *yyvsp[0].string; + delete yyvsp[0].string; + t->style_str_ = THIS->textstyle_str_; + yyval.textdef->set_spot (THIS->here_input ()); + ; + break;} +case 158: +#line 1027 "parser.yy" +{ + Text_def* t = new Text_def; + yyval.textdef = t; + t->text_str_ = String (yyvsp[0].i); + t->style_str_ = "finger"; + yyval.textdef->set_spot (THIS->here_input ()); + ; + break;} +case 159: +#line 1037 "parser.yy" +{ yyval.string = get_scriptdef ('^'); ; + break;} +case 160: +#line 1038 "parser.yy" +{ yyval.string = get_scriptdef ('+'); ; + break;} +case 161: +#line 1039 "parser.yy" +{ yyval.string = get_scriptdef ('-'); ; + break;} +case 162: +#line 1040 "parser.yy" +{ yyval.string = get_scriptdef ('|'); ; + break;} +case 163: +#line 1041 "parser.yy" +{ yyval.string = get_scriptdef ('o'); ; + break;} +case 164: +#line 1042 "parser.yy" +{ yyval.string = get_scriptdef ('>'); ; + break;} +case 165: +#line 1043 "parser.yy" +{ + yyval.string = get_scriptdef ('.'); + ; + break;} +case 166: +#line 1049 "parser.yy" +{ yyval.script = yyvsp[0].id->script (); ; + break;} +case 167: +#line 1050 "parser.yy" +{ yyval.script = yyvsp[0].script; ; + break;} +case 168: +#line 1051 "parser.yy" +{ + yyval.script = THIS->lexer_p_->lookup_identifier (*yyvsp[0].string)->script (); + delete yyvsp[0].string; + ; + break;} +case 169: +#line 1058 "parser.yy" +{ yyval.i = -1; ; + break;} +case 170: +#line 1059 "parser.yy" +{ yyval.i = 1; ; + break;} +case 171: +#line 1060 "parser.yy" +{ yyval.i = 0; ; + break;} +case 172: +#line 1064 "parser.yy" +{ + ; + break;} +case 173: +#line 1066 "parser.yy" +{ + Array& r = *THIS->get_parens_request (yyvsp[0].i); + for (int i = 0; i < r.size (); i++ ) + r[i]->set_spot (THIS->here_input ()); + THIS->pre_reqs.concat (r); + delete &r; + ; + break;} +case 174: +#line 1076 "parser.yy" +{ + THIS->set_duration_mode (*yyvsp[0].string); + delete yyvsp[0].string; + ; + break;} +case 175: +#line 1080 "parser.yy" +{ + THIS->set_default_duration (yyvsp[0].duration); + delete yyvsp[0].duration; + ; + break;} +case 176: +#line 1084 "parser.yy" +{ + /* + This is weird, but default_octave_i_ + is used in steno_note_req too + + c' -> default_octave_i_ == 1 + */ + /* why can't we have \oct 0 iso \oct{c'}*/ + THIS->default_octave_i_ = 1; ; + break;} +case 177: +#line 1094 "parser.yy" +{ + THIS->default_octave_i_ = yyvsp[0].melreq->octave_i_; + delete yyvsp[0].melreq; + ; + break;} +case 178: +#line 1098 "parser.yy" +{ + THIS->textstyle_str_ = *yyvsp[0].string; + delete yyvsp[0].string; + ; + break;} +case 179: +#line 1105 "parser.yy" +{ + yyval.moment = new Moment (0,1); + ; + break;} +case 180: +#line 1108 "parser.yy" +{ + *yyval.moment += yyvsp[0].duration->length (); + ; + break;} +case 181: +#line 1114 "parser.yy" +{ yyval.i = 1; ; + break;} +case 182: +#line 1115 "parser.yy" +{ yyval.i ++; ; + break;} +case 183: +#line 1119 "parser.yy" +{ + yyval.duration = new Duration (THIS->default_duration_); + ; + break;} +case 184: +#line 1122 "parser.yy" +{ + yyval.duration = new Duration (THIS->default_duration_); + yyval.duration->dots_i_ = yyvsp[0].i; + ; + break;} +case 185: +#line 1126 "parser.yy" +{ + THIS->set_last_duration (yyvsp[0].duration); + yyval.duration = yyvsp[0].duration; + ; + break;} +case 186: +#line 1133 "parser.yy" +{ + yyval.duration = yyvsp[0].duration; + ; + break;} +case 187: +#line 1139 "parser.yy" +{ + yyval.duration = new Duration; + if (!Duration::duration_type_b (yyvsp[0].i)) + THIS->parser_error ("2:Not a duration"); + else { + yyval.duration->durlog_i_ = Duration_convert::i2_type (yyvsp[0].i); + yyval.duration->set_plet (THIS->default_duration_); + } + ; + break;} +case 188: +#line 1148 "parser.yy" +{ + yyval.duration = yyvsp[0].id->duration (); + ; + break;} +case 189: +#line 1151 "parser.yy" +{ + yyval.duration->dots_i_ ++; + ; + break;} +case 190: +#line 1154 "parser.yy" +{ + yyval.duration->plet_.iso_i_ = yyvsp[0].i; + ; + break;} +case 191: +#line 1157 "parser.yy" +{ + yyval.duration->plet_.type_i_ = yyvsp[0].i; + ; + break;} +case 192: +#line 1164 "parser.yy" +{ + yyval.i =0; + ; + break;} +case 193: +#line 1167 "parser.yy" +{ + if (!Duration::duration_type_b (yyvsp[0].i)) + THIS->parser_error ("3:Not a duration"); + else if (yyvsp[0].i < 8) + THIS->parser_error ("Can't abbreviate"); + yyval.i = yyvsp[0].i; + ; + break;} +case 194: +#line 1178 "parser.yy" +{ + if (!THIS->lexer_p_->note_state_b ()) + THIS->parser_error ("have to be in Note mode for notes"); + yyvsp[-1].notereq->set_duration (*yyvsp[0].duration); + int durlog_i = yyvsp[0].duration->durlog_i_; + yyval.music = THIS->get_note_element (yyvsp[-1].notereq, yyvsp[0].duration); + ; + break;} +case 195: +#line 1185 "parser.yy" +{ + yyval.music = THIS->get_rest_element (*yyvsp[-1].string, yyvsp[0].duration); + delete yyvsp[-1].string; + ; + break;} +case 196: +#line 1192 "parser.yy" +{ + /* this sux! text-def should be feature of lyric-engraver. */ + if (!THIS->lexer_p_->lyric_state_b ()) + THIS->parser_error ("Have to be in Lyric mode for lyrics"); + yyval.music = THIS->get_word_element (yyvsp[-1].textdef, yyvsp[0].duration); + + ; + break;} +case 197: +#line 1203 "parser.yy" +{ + yyval.melreqvec = new Array; + ; + break;} +case 198: +#line 1206 "parser.yy" +{ + yyval.melreqvec->push (yyvsp[0].melreq->clone ()->musical ()->melodic ()); + ; + break;} +case 199: +#line 1212 "parser.yy" +{ + yyval.i = yyvsp[0].i; + ; + break;} +case 200: +#line 1215 "parser.yy" +{ + yyval.i = yyvsp[0].i; + ; + break;} +case 201: +#line 1220 "parser.yy" +{ + yyval.i = yyvsp[0].i; + ; + break;} +case 202: +#line 1223 "parser.yy" +{ + yyval.i = -yyvsp[0].i; + ; + break;} +case 203: +#line 1226 "parser.yy" +{ + int *i_p = yyvsp[0].id->intid (); + yyval.i = *i_p; + delete i_p; + ; + break;} +case 204: +#line 1234 "parser.yy" +{ + yyval.real = yyvsp[0].real; + ; + break;} +case 205: +#line 1237 "parser.yy" +{ + Real *r_p = yyvsp[0].id->real (); + yyval.real = * r_p; + delete r_p; + ; + break;} +case 206: +#line 1247 "parser.yy" +{ yyval.real = yyvsp[-1].real*yyvsp[0].real; ; + break;} +case 207: +#line 1251 "parser.yy" +{ yyval.real = 1 CM; ; + break;} +case 208: +#line 1252 "parser.yy" +{ yyval.real = 1 INCH; ; + break;} +case 209: +#line 1253 "parser.yy" +{ yyval.real = 1 MM; ; + break;} +case 210: +#line 1254 "parser.yy" +{ yyval.real = 1 PT; ; + break;} +case 211: +#line 1261 "parser.yy" +{ yyval.lookup = yyvsp[-1].lookup; ; + break;} +case 212: +#line 1265 "parser.yy" +{ + yyval.lookup = new Lookup; + ; + break;} +case 213: +#line 1268 "parser.yy" +{ + yyval.lookup = yyvsp[0].id->lookup (); + ; + break;} +case 214: +#line 1271 "parser.yy" +{ + yyval.lookup->texsetting = *yyvsp[0].string; + delete yyvsp[0].string; + ; + break;} +case 215: +#line 1275 "parser.yy" +{ + yyval.lookup->add (*yyvsp[-2].string, yyvsp[0].symtable); + delete yyvsp[-2].string; + ; + break;} +case 216: +#line 1282 "parser.yy" +{ yyval.symtable = yyvsp[-1].symtable; ; + break;} +case 217: +#line 1286 "parser.yy" +{ yyval.symtable = new Symtable; ; + break;} +case 218: +#line 1287 "parser.yy" +{ + yyval.symtable->add (*yyvsp[-1].string, *yyvsp[0].symbol); + delete yyvsp[-1].string; + delete yyvsp[0].symbol; + ; + break;} +case 219: +#line 1295 "parser.yy" +{ + yyval.symbol = new Atom (*yyvsp[-1].string, *yyvsp[0].box); + delete yyvsp[-1].string; + delete yyvsp[0].box; + ; + break;} +case 220: +#line 1300 "parser.yy" +{ + Box b (Interval (0,0), Interval (0,0)); + yyval.symbol = new Atom (*yyvsp[0].string, b); + delete yyvsp[0].string; + ; + break;} +case 221: +#line 1308 "parser.yy" +{ + yyval.box = new Box (*yyvsp[-1].interval, *yyvsp[0].interval); + delete yyvsp[-1].interval; + delete yyvsp[0].interval; + ; + break;} +case 222: +#line 1315 "parser.yy" +{ + yyval.interval = new Interval (yyvsp[-1].real, yyvsp[0].real); + ; + break;} +} + /* the action file gets copied in in place of this dollarsign */ +#line 498 "/usr/lib/bison.simple" + + yyvsp -= yylen; + yyssp -= yylen; +#ifdef YYLSP_NEEDED + yylsp -= yylen; +#endif + +#if YYDEBUG != 0 + if (yydebug) + { + short *ssp1 = yyss - 1; + fprintf (stderr, "state stack now"); + while (ssp1 != yyssp) + fprintf (stderr, " %d", *++ssp1); + fprintf (stderr, "\n"); + } +#endif + + *++yyvsp = yyval; + +#ifdef YYLSP_NEEDED + yylsp++; + if (yylen == 0) + { + yylsp->first_line = yylloc.first_line; + yylsp->first_column = yylloc.first_column; + yylsp->last_line = (yylsp-1)->last_line; + yylsp->last_column = (yylsp-1)->last_column; + yylsp->text = 0; + } + else + { + yylsp->last_line = (yylsp+yylen-1)->last_line; + yylsp->last_column = (yylsp+yylen-1)->last_column; + } +#endif + + /* Now "shift" the result of the reduction. + Determine what state that goes to, + based on the state we popped back to + and the rule number reduced by. */ + + yyn = yyr1[yyn]; + + yystate = yypgoto[yyn - YYNTBASE] + *yyssp; + if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yytable[yystate]; + else + yystate = yydefgoto[yyn - YYNTBASE]; + + goto yynewstate; + +yyerrlab: /* here on detecting error */ + + if (! yyerrstatus) + /* If not already recovering from an error, report this error. */ + { + ++yynerrs; + +#ifdef YYERROR_VERBOSE + yyn = yypact[yystate]; + + if (yyn > YYFLAG && yyn < YYLAST) + { + int size = 0; + char *msg; + int x, count; + + count = 0; + /* Start X at -yyn if nec to avoid negative indexes in yycheck. */ + for (x = (yyn < 0 ? -yyn : 0); + x < (sizeof(yytname) / sizeof(char *)); x++) + if (yycheck[x + yyn] == x) + size += strlen(yytname[x]) + 15, count++; + msg = (char *) malloc(size + 15); + if (msg != 0) + { + strcpy(msg, "parse error"); + + if (count < 5) + { + count = 0; + for (x = (yyn < 0 ? -yyn : 0); + x < (sizeof(yytname) / sizeof(char *)); x++) + if (yycheck[x + yyn] == x) + { + strcat(msg, count == 0 ? ", expecting `" : " or `"); + strcat(msg, yytname[x]); + strcat(msg, "'"); + count++; + } + } + yyerror(msg); + free(msg); + } + else + yyerror ("parse error; also virtual memory exceeded"); + } + else +#endif /* YYERROR_VERBOSE */ + yyerror("parse error"); + } + + goto yyerrlab1; +yyerrlab1: /* here on error raised explicitly by an action */ + + if (yyerrstatus == 3) + { + /* if just tried and failed to reuse lookahead token after an error, discard it. */ + + /* return failure if at end of input */ + if (yychar == YYEOF) + YYABORT; + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]); +#endif + + yychar = YYEMPTY; + } + + /* Else will try to reuse lookahead token + after shifting the error token. */ + + yyerrstatus = 3; /* Each real token shifted decrements this */ + + goto yyerrhandle; + +yyerrdefault: /* current state does not do anything special for the error token. */ + +#if 0 + /* This is wrong; only states that explicitly want error tokens + should shift them. */ + yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/ + if (yyn) goto yydefault; +#endif + +yyerrpop: /* pop the current state because it cannot handle the error token */ + + if (yyssp == yyss) YYABORT; + yyvsp--; + yystate = *--yyssp; +#ifdef YYLSP_NEEDED + yylsp--; +#endif + +#if YYDEBUG != 0 + if (yydebug) + { + short *ssp1 = yyss - 1; + fprintf (stderr, "Error: state stack now"); + while (ssp1 != yyssp) + fprintf (stderr, " %d", *++ssp1); + fprintf (stderr, "\n"); + } +#endif + +yyerrhandle: + + yyn = yypact[yystate]; + if (yyn == YYFLAG) + goto yyerrdefault; + + yyn += YYTERROR; + if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) + goto yyerrdefault; + + yyn = yytable[yyn]; + if (yyn < 0) + { + if (yyn == YYFLAG) + goto yyerrpop; + yyn = -yyn; + goto yyreduce; + } + else if (yyn == 0) + goto yyerrpop; + + if (yyn == YYFINAL) + YYACCEPT; + +#if YYDEBUG != 0 + if (yydebug) + fprintf(stderr, "Shifting error token, "); +#endif + + *++yyvsp = yylval; +#ifdef YYLSP_NEEDED + *++yylsp = yylloc; +#endif + + yystate = yyn; + goto yynewstate; +} +#line 1320 "parser.yy" + + +void +My_lily_parser::set_yydebug (bool b) +{ +#ifdef YYDEBUG + yydebug = b; +#endif +} +void +My_lily_parser::do_yyparse () +{ + yyparse ((void*)this); +} + +Paper_def* +My_lily_parser::default_paper () +{ + Identifier *id = lexer_p_->lookup_identifier ("default_paper"); + return id ? id->paperdef () : new Paper_def ; +} + +Midi_def* +My_lily_parser::default_midi () +{ + Identifier *id = lexer_p_->lookup_identifier ("default_midi"); + return id ? id->mididef () : new Midi_def ; +} + diff --git a/lily/parser.hh b/lily/parser.hh new file mode 100644 index 0000000000..7e0baa9a6a --- /dev/null +++ b/lily/parser.hh @@ -0,0 +1,119 @@ +typedef union { + Array* intarr; + Array *melreqvec;/* should clean up naming */ + Array * strvec; + Array *intvec; + Box *box; + Chord * chord; + Duration *duration; + Identifier *id; + Translator* trans; + Music *music; + Music_list *musiclist; + Score *score; + Header *header; + Interval *interval; + Lookup*lookup; + Melodic_req * melreq; + Musical_req* musreq; + Music_output_def * outputdef; + Midi_def* midi; + Moment *moment; + Note_req *notereq; + Paper_def *paper; + Real real; + Request * request; + General_script_def * script; + Scalar *scalar; + String *string; + Atom * symbol; + Symtable * symtable; + Symtables * symtables; + Text_def * textdef; + Tempo_req *tempo; + char c; + const char *consstr; + int i; + int pair[2]; + int ii[10]; +} YYSTYPE; +#define ALIAS 258 +#define BAR 259 +#define BEAMPLET 260 +#define MAEBTELP 261 +#define BREAK 262 +#define CADENZA 263 +#define CLEAR 264 +#define CLEF 265 +#define CONTAINS 266 +#define CONSISTS 267 +#define ACCEPTS 268 +#define CM_T 269 +#define DURATION 270 +#define ABSDYNAMIC 271 +#define END 272 +#define GROUPING 273 +#define TRANSLATOR 274 +#define HEADER 275 +#define IN_T 276 +#define LYRIC 277 +#define KEY 278 +#define MELODIC 279 +#define MIDI 280 +#define MELODIC_REQUEST 281 +#define METER 282 +#define MM_T 283 +#define MULTI 284 +#define NOTENAMES 285 +#define OCTAVE 286 +#define OUTPUT 287 +#define PAPER 288 +#define PARTIAL 289 +#define PLET 290 +#define TELP 291 +#define PT_T 292 +#define SCORE 293 +#define SCRIPT 294 +#define SHAPE 295 +#define SKIP 296 +#define SPANDYNAMIC 297 +#define STAFF 298 +#define START_T 299 +#define SYMBOLTABLES 300 +#define TABLE 301 +#define TRANSPOSE 302 +#define TEMPO 303 +#define TYPE 304 +#define TEXID 305 +#define TEXTSTYLE 306 +#define TITLE 307 +#define PROPERTY 308 +#define VERSION 309 +#define E_EXCLAMATION 310 +#define E_SMALLER 311 +#define E_BIGGER 312 +#define E_CHAR 313 +#define DIGIT 314 +#define NOTENAME_ID 315 +#define DURATION_IDENTIFIER 316 +#define IDENTIFIER 317 +#define MELODIC_REQUEST_IDENTIFIER 318 +#define MUSIC_IDENTIFIER 319 +#define VOICE_IDENTIFIER 320 +#define POST_REQUEST_IDENTIFIER 321 +#define SCRIPT_IDENTIFIER 322 +#define COMMAND_IDENTIFIER 323 +#define REAL_IDENTIFIER 324 +#define TRANS_IDENTIFIER 325 +#define INT_IDENTIFIER 326 +#define SCORE_IDENTIFIER 327 +#define MIDI_IDENTIFIER 328 +#define PAPER_IDENTIFIER 329 +#define REQUEST_IDENTIFIER 330 +#define REAL 331 +#define RESTNAME 332 +#define STRING 333 +#define UNSIGNED 334 +#define POST_QUOTES 335 +#define PRE_QUOTES 336 + diff --git a/lily/parser.y b/lily/parser.y deleted file mode 100644 index 545d72c8a6..0000000000 --- a/lily/parser.y +++ /dev/null @@ -1,1337 +0,0 @@ -%{ // -*-Fundamental-*- - -/* - parser.y -- YACC parser for mudela - - source file of the GNU LilyPond music typesetter - - (c) 1997 Han-Wen Nienhuys - Jan Nieuwenhuizen -*/ - -#include - -// mmm -#define MUDELA_VERSION "0.1.9" - -#include "scalar.hh" -#include "translation-property.hh" -#include "script-def.hh" -#include "symtable.hh" -#include "lookup.hh" -#include "misc.hh" -#include "my-lily-lexer.hh" -#include "paper-def.hh" -#include "midi-def.hh" -#include "main.hh" -#include "keyword.hh" -#include "debug.hh" -#include "parseconstruct.hh" -#include "dimen.hh" -#include "identifier.hh" -#include "command-request.hh" -#include "musical-request.hh" -#include "my-lily-parser.hh" -#include "text-def.hh" -#include "translator-group.hh" -#include "score.hh" -#include "music-list.hh" -#include "header.hh" -#include "duration-convert.hh" -#include "change-translator.hh" - -int const GUESS_PLET = 5; -int guess_plet_a[GUESS_PLET] = -{ - 1, - 3, - 2, - 3, - 4 -}; - -#ifndef NDEBUG -#define YYDEBUG 1 -#endif - -#define YYERROR_VERBOSE 1 - -#define YYPARSE_PARAM my_lily_parser_l -#define YYLEX_PARAM my_lily_parser_l -#define THIS ((My_lily_parser *) my_lily_parser_l) - -#define yyerror THIS->parser_error - -%} - - -%union { - Array* intarr; - Array *melreqvec;/* should clean up naming */ - Array * strvec; - Array *intvec; - Box *box; - Chord * chord; - Duration *duration; - Identifier *id; - Translator* trans; - Music *music; - Music_list *musiclist; - Score *score; - Header *header; - Interval *interval; - Lookup*lookup; - Melodic_req * melreq; - Musical_req* musreq; - Music_output_def * outputdef; - Midi_def* midi; - Moment *moment; - Note_req *notereq; - Paper_def *paper; - Real real; - Request * request; - General_script_def * script; - Scalar *scalar; - String *string; - Atom * symbol; - Symtable * symtable; - Symtables * symtables; - Text_def * textdef; - Tempo_req *tempo; - char c; - const char *consstr; - int i; - int pair[2]; - int ii[10]; -} -%{ - -int -yylex (YYSTYPE *s, void * v_l) -{ - My_lily_parser *pars_l = (My_lily_parser*) v_l; - My_lily_lexer * lex_l = pars_l->lexer_p_; - - lex_l->lexval_l = (void*) s; - return lex_l->yylex (); -} - - -%} - -%pure_parser - -/* tokens which are not keywords */ - -%token ALIAS -%token BAR -%token BEAMPLET -%token MAEBTELP -%token CADENZA -%token CLEAR -%token CLEF -%token CONTAINS -%token CONSISTS -%token ACCEPTS -%token CM_T -%token DURATION -%token ABSDYNAMIC -%token END -%token GROUPING -%token TRANSLATOR -%token HEADER -%token IN_T -%token LYRIC -%token KEY -%token MELODIC -%token MIDI -%token MELODIC_REQUEST -%token METER -%token MM_T -%token MULTI -%token NOTENAMES -%token OCTAVE -%token OUTPUT -%token PAPER -%token PARTIAL -%token PLET -%token TELP -%token PT_T -%token SCORE -%token SCRIPT -%token SHAPE -%token SKIP -%token SPANDYNAMIC -%token STAFF -%token START_T -%token SYMBOLTABLES -%token TABLE -%token TRANSPOSE -%token TEMPO -%token TYPE -%token TEXID -%token TEXTSTYLE -%token TITLE -%token PROPERTY -%token VERSION - -/* escaped */ -%token E_EXCLAMATION E_SMALLER E_BIGGER E_CHAR - -%type dots -%token DIGIT -%token NOTENAME_ID -%token DURATION_IDENTIFIER -%token IDENTIFIER -%token MELODIC_REQUEST_IDENTIFIER -%token MUSIC_IDENTIFIER -%token VOICE_IDENTIFIER -%token POST_REQUEST_IDENTIFIER -%token SCRIPT_IDENTIFIER -%token COMMAND_IDENTIFIER -%token REAL_IDENTIFIER -%token TRANS_IDENTIFIER -%token INT_IDENTIFIER -%token SCORE_IDENTIFIER -%token MIDI_IDENTIFIER -%token PAPER_IDENTIFIER -%token REQUEST_IDENTIFIER -%token REAL -%token DURATION RESTNAME -%token STRING -%token UNSIGNED -%token POST_QUOTES -%token PRE_QUOTES - -%type output_def -%type
mudela_header mudela_header_body -%type box -%type open_request_parens close_request_parens -%type open_abbrev_parens -%type open_plet_parens close_plet_parens -%type simple_element music_elt full_element lyrics_elt command_elt -%type abbrev_type -%type int unsigned -%type script_dir -%type identifier_init -%type explicit_steno_duration notemode_duration -%type entered_notemode_duration explicit_duration -%type dinterval -%type intastint_list -%type symtables symtables_body -%type melodic_request steno_melodic_req -%type steno_note_req -%type pitch_list -%type midi_block midi_body -%type duration_length - -%type scalar -%type Music transposed_music -%type property_def translator_change -%type Voice Voice_body -%type Chord Chord_body -%type paper_block paper_body -%type dim real -%type unit -%type abbrev_command_req -%type post_request structured_post_request -%type plet_fraction -%type command_req verbose_command_req -%type script_req dynamic_req -%type score_block score_body -%type shape_array -%type