TOPLEVEL_MAJOR_VERSION = 0
TOPLEVEL_MINOR_VERSION = 0
-TOPLEVEL_PATCH_LEVEL = 41
+TOPLEVEL_PATCH_LEVEL = 42
# use to send patches, always empty for released version:
# include separator: ".postfix", "-pl" makes rpm barf
-TOPLEVEL_MY_PATCH_LEVEL =
+TOPLEVEL_MY_PATCH_LEVEL =
#
Functions and methods do not return errorcodes, but use assert for
checking status.
+ A program should be light and agile, its subroutines
+ connected like a strings of pearls. The spirit and intent of
+ the program should be retained throughout. There should be
+ neither too little nor too much, neither needless loops nor
+ useless variables, neither lack of structure nor overwhelming
+ rigidity.
+
+ A program should follow the 'Law of Least
+ Astonishment'. What is this law? It is simply that the
+ program should always respond to the user in the way that
+ astonishes him least.
+
+ A program, no matter how complex, should act as a
+ single unit. The program should be directed by the logic
+ within rather than by outward appearances.
+
+ If the program fails in these requirements, it will be
+ in a state of disorder and confusion. The only way to correct
+ this is to rewrite the program.
+ -- Geoffrey James, "The Tao of Programming"
+
=head2 INDENTATION
in emacs:
--- /dev/null
+=head1 NAME
+
+INSTALL - installing LilyPond
+
+=head1 DESCRIPTION
+
+This page documents installation and compilation of LilyPond
+
+=head1 IMPORTANT
+
+if you have downloaded a
+
+ *.pre*
+
+version, then this is version is I<not> meant for producing nice
+output, but to keep your patchsets up to date. It might not even compile.
+
+=head1 PREREQUISITES
+
+For compilation you need.
+
+=over 5
+
+=item *
+Unix. LilyPond is known to run on Linux, AIX, Digital Unix and
+Solaris
+
+If you have the Cygnus WIN32 port of the GNU utils, it will
+even work in Lose NT/95, but don't promise to support it.
+
+=item *
+GNU C++ v2.7 or better, with libg++ installed. Version 2.7.2
+or better recommended. I almost positive that it will not compile with
+AT&T CC.
+
+=item *
+Bash. Most scripts will continue to work with a stock sh, but they
+will generate (harmless) syntax errors
+
+=item *
+GNU make.
+
+=item *
+Flex (2.5.1 or better).
+
+=item *
+Bison.
+
+=back
+
+=head1 RECOMMENDED
+
+=over 5
+
+=item *
+Perl. Some (mostly unimportant scripts) use Perl for trivial
+operations. The documentation was created with the perl's Plain Old
+Documentation.
+
+=item *
+(GNU) find
+
+=back
+
+
+
+=head1 CONFIGURING and COMPILING
+
+to install LilyPond, simply type:
+
+ configure
+ make install
+
+This will install the following files:
+
+ /usr/local/man/man1/lilypond.1
+ /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 B<--enable-texprefix>. 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:
+
+ CXXFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" configure
+
+the configure script is Cygnus configure, and it will accept
+B<--help>. If you are not root, you will probably have to make it with
+
+ configure --prefix=/home/me_myself_and_I/
+
+Since LilyPond currently is beta, You are advised to also use
+
+ --enable-debug
+ --enable-checking
+
+other options include:
+
+ --enable-printing
+ --enable-optimise
+ --enable-profiling
+
+The option B<--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 subdirectory
+F<bin/>.
+
+=head1 RUNNING
+
+LilyPond does use a lot of resources. For operation you need the following:
+
+
+=over 5
+
+=item *
+A fast computer (a full page of music typically takes 1 minute
+on my 486/66, using the B<--enable-checking> compile. It's lot slower
+than most MusiXTeX preprocessors)
+
+=item *
+TeX
+
+=item *
+The MusixTeX fonts. (I use those found in MusixTeX
+T.59)
+
+=back
+
+Please refer to the man page for more information.
+
+=head1 REDHAT LINUX
+
+RedHat Linux users should be able to get a RPM. A spec file is in
+F<make/lilypond.spec>.
+
+
+=head1 WINDOZE
+
+Windows NT:
+
+you need the cygnus win32 gnu port development stuff; have a look
+at http://www.cygnus.com/gnu-win32.
+
+to make LilyPond under, brr, aargh, well, simply type:
+
+ bash configure
+ make win32
+
+=head1 PLATFORMS
+
+LilyPond (pl 0.0.39) is known to compile on the following platforms:
+
+ * linux 2.0.28, g++ 2.7.2[.1]
+ * aix 4.1, g++ 2.7.2
+ * windows-nt 4.0, cygnus gnu-win32 beta17.1 (~=g++ 2.7.2)
+ * linux 2.0.28 X to doze, gcc-go32 (~=g++ 2.7.2) [exec. untested]
+
+=head1 AUTHORS
+
+ Han-Wen Nienhuys <hanwen@stack.nl>
+
+ Jan Nieuwenhuizen <jan@digicash.com>
+
+
+Have fun!
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic variables:
PODFILES = $(shell ls *.pod)
OUTPODFILES = $(patsubst %,$(outdir)/%,$(PODFILES))
TEXTFILES = $(OUTPODFILES:.pod=.text)
-MANFILES = $(OUTPODFILES:.pod=.1)
+GROFFFILES = $(OUTPODFILES:.pod=.1)
HTMLFILES = $(OUTPODFILES:.pod=.html)
#
# list of distribution files:
#
-DISTFILES = $(PODFILES) Makefile lelie_logo.png
+DISTFILES = $(PODFILES) Makefile lelie_logo.gif
#
default: do-doc
pod2html
htmldist: html
- ./$(bindir)/make_website
+ ./$(lily_bindir)/make_website
+
# generic targets and rules:
#
include ./$(depth)/make/Rules.make
#
+localclean:
+ rm -f $(TEXTFILES) $(HTMLFILES) $(GROFFFILES)
+
+localinstall: $(outdir)/lilypond.1
+ $(INSTALL) -d $(mandir)/man1
+ $(INSTALL) -m 755 $< $(mandir)/man1
+
+localuninstall:
+ rm -f $(mandir)/man1/lilypond.1
+++ /dev/null
-=head1 NAME
-
-LilyPond - a music typesetter
-
-=head1 SYNOPSIS
-
- lilypond [options] [inputfiles]
-
-=head1 DESCRIPTION
-
-LilyPond typesets music. It translates script files (mudela files or
-F<*.ly>'s) into TeX input. Typesetting music is a complex task,
-whereas the message that printed music conveys is usually a simple
-one. LilyPond is a try at providing a simple interface for setting
-music. LilyPond has these features:
-
-
-=over 5
-
-=item *
-ASCII script input, with identifiers (for music reuse),
-customizable notenames, customizable fontset
-
-=item *
-MIDI output lets you check if you have entered the correct notes.
-
-=item *
-Multiple staffs in one score. Each staff can have a different meters.
-
-=item *
-multiple stafftypes (melodic, rhythmic) [broken from pl28 on]
-
-=item *
-beams, slurs, chords, super/subscripts (accents and text),
-triplets, general n-plet (triplet, quadruplets, etc.), lyrics
-
-=item *
-multiple voices within one staff; beams optionally shared
-between voices. (well, more than 2 voices won't look pretty --yet.)
-
-=item *
-multiple scores within one input file. Each score is output to
-a different file.
-
-=item *
-clef changes, meter changes, cadenza-mode, key changes, repeat bars
-
-=back
-
-=head1 DESIGN CONSIDERATIONS
-
-LilyPond was written with some considerations in mind:
-
-=over 5
-
-=item *
-Describing a well-defined language for defining music. We call
-this language (rather arrogantly) The Musical Definition Language
-(mudela for short). LilyPond reads a mudela sourcefile and outputs a
-TeX file. This musical definition language should:
-
-=over 5
-
-=item 1.
-define the musical message of the writer as unambigiously as
-possible.
-
-=item 2.
-be easily readable. (as compared to, say, MusixTeX input)
-
-=item 3.
-be writable in ASCII (with a simple texteditor).
-
-=back
-
-At this time, the language isn't yet defined precisely. It is evolving as
-LilyPond is getting more complex.
-
-=item *
-We want to provide an easy-to-use interface for typesetting music in
-its broadest sense. This interface should be intuitive from a musical
-point of view. By broadest sense we mean: it is designed for music
-printed left to right in staffs, using notes to designate rythm and
-pitch.
-
-=item *
-LilyPond uses MusiXTeX fonts and TeX for its output. This is not a key
-issue: in a future version, LilyPond might bypass TeX, but at the moment
-TeX is very convenient for producing output.
-
-=item *
-Generate high-quality output. Ideally it should be of a professional
-quality. We'd like to render Herbert Chlapiks words, "Fine music
-setting is not possible without a knowledgeable printer," untrue.
-
-=item *
-LilyPond does not display notes directly, nor will it be rehacked to be
-used interactively. LilyPond writes output to a file. It will not be
-extended to play music, or to recognize music.
-
-=item *
-LilyPond is intended to run on Unix platforms, but it should
-be portable to any platform which can run TeX and the GNU tools
-
-=item *
-LilyPond is free. Commercial windows packages for setting music are
-abundant. Free musicprinting software is scarce.
-
-=item *
-LilyPond is written in GNU C++. It will not be downgraded/ported to fit
-broken systems.
-
-=back
-
-=head1 OPTIONS
-
-=over 5
-
-=item B<-I,--include>=F<FILE>,
-
-add F<FILE> to the search path for input files.
-
-
-=item B<-M,--midi>
-
-do midi output only
-
-=item B<-d,--debug>,
-
-Turn debugging info. LilyPond will read the file F<.dstreamrc>, which
-tells for what functions and classes may produce copious debugging
-output.
-
-=item B<-w,--warranty>,
-
-Show the warranty with which LilyPond comes. (It comes with B<NO WARRANTY>!)
-
-=item B<-o,--output=>F<FILE>,
-
-Set the default output file to F<FILE>.
-
-=item B<-h,--help>,
-
-Show a summary of usage
-
-=item B<-i,--init=>F<FILE>
-
-set init file to F<FILE> (default: F<symbol.ini>)
-
-=item B<--include, -I>=F<DIRECTORY>
-add F<DIRECTORY> to the search path for input files.
-
-=back
-
-=head1
-DISCLAIMER & COPYING POLICY
-
-LilyPond is copyright 1996,97 by its authors. LilyPond is
-distributed under the terms of the GNU General Public
-License. LilyPond is provided without any warranty what so ever.
-LilyPond may be freely distributed. For further information consult
-the GNU General Public License, which is in the file F<COPYING>
-
-=head1 PREREQUISITES
-
-For compilation you need.
-
-=over 5
-
-=item *
-Unix. LilyPond is known to run on Linux, AIX, Digital Unix and
-Solaris (if you have the Cygnus WIN32 port of the GNU utils, it will
-even work in Lose NT/95)
-
-=item *
-GNU C++ v2.7 or better, with libg++ installed. Version 2.7.2
-or better recommended. I doubt if it will compile with AT&T CC.
-
-=item *
-Bash. Most scripts will continue to work with a stock sh, but they
-will generate (harmless) syntax errors
-
-=item *
-GNU make.
-
-=item *
-Flex (2.5.1 or better).
-
-=item *
-Bison.
-
-=item *
-Perl. The Makefile uses Perl for trivial operations, and you
-could tinker with it to use sed or awk.
-
-=back
-
-LilyPond does use a lot of resources. For operation you need the following:
-
-=over 5
-
-=item *
-a fast computer (a full page of music typically takes 1 minute
-on my 486/66, using the DEBUG compile. It's lot slower than most
-MusiXTeX preprocessors)
-
-=item *
-TeX
-
-=item *
-The MusixTeX fonts. (I use version those found in MusixTeX
-Taupin version T.59)
-
-=back
-
-=head1 COMPILING
-
-Do:
-
- tar zxf flower-1.11.9.tar.gz
- tar zxf lilypond-1.2.13.tar.gz
- cd lilypond-1.2.13
- configure
- make
-
-You probably want to edit Variables.make to tailor the compilation
-flags. If you're not into debugging C++, then you should go for no
-debugging and C<-O2>
-
-=head1 AUTHORS
-
-=over 5
-
-=item *
-Han-Wen Nienhuys <hanwen@stack.nl>, Main author
-
-=item *
-Jan Nieuwenhuizen <jan@digicash.com>, Context errors, Lyrics,
-bits of FlowerLib, general comments.
-
-=item *
-Mats Bengtsson <matsb@s3.kth.se>, bugfixes, testing, general comments.
-
-=back
-
-Your name could be here! If you want to help, then take a look at the
-SMALLISH PROJECTS section of in the file F<TODO>. Some do not involve
-coding C++
-
-=head1 EXAMPLES
-
-At this time, LilyPond output looks nice, but is not of production
-quality. If you're not discouraged; this is what I type in my xterm:
-
- lilypond someinput.ly
- tex test
- xdvi test&
-
-This is what the output looks like over here:
-
- LilyPond 0.0.pre32-3/FlowerLib 1.0.27. Compile: Feb 18 1997, 11:21:57 (g++ 2.7.2)
- Parsing ... [./init//symbol.ini[./init//dutch.ini][./init//script.ini][./init//table_sixteen.ini]][./input/wohltemperirt.ly]
- Setting up music ...Processing music ............
- Preprocessing ...
- Calculating column positions ... [3][6][9]
- Postprocessing ...
- warning: slope_index(): beam steeper than 0.5 (-0.555556)
- warning: slope_index(): beam steeper than 0.5 (-0.588346)
- warning: slope_index(): beam steeper than 0.5 (-0.523166)
- warning: slope_index(): beam steeper than 0.5 (0.571915)
- warning: slope_index(): beam steeper than 0.5 (-0.555556)
- warning: slope_index(): beam steeper than 0.5 (-0.588346)
- warning: slope_index(): beam steeper than 0.5 (-0.523166)
- warning: slope_index(): beam steeper than 0.5 (0.571915)
- output to lelie.out...
-
- hw:~/musix/spacer$ tex test
- This is TeX, Version 3.14159 (C version 6.1)
- (test.tex
- Hyphenation patterns for english, dutch, loaded.
- (lilyponddefs.tex) (lelie.uit) [1] [2] )
- Output written on test.dvi (2 pages, 8420 bytes).
- Transcript written on test.log.
-
- hw:~/musix/spacer$ xdvi test&
- [1] 855
-
-Check out the input files, some of them have comments
-
-
-=head1 PROBLEMS
-
-If LilyPond bombs out, then please recompile using with debugging info
-turned on, and send a copy of the input which causes the error and a
-gdb stacktrace of the crash. It also helps if you can print the values
-of the objects. So if your trace is
-
- (gdb) backtrace 12
- #0 Interval::operator+= (this=0x11fffec60..)
- at ../flower/interval.hh:50
- #1 0x12005195c in Item::width (this=0x14008a680) at src/item.cc:39
- #2 0x12008fdbc in itemlist_width (its=0x11fffed58 ..
- :
- :
-
-Than it would help if you send a dump of the Interval and the Item
-(use: C<print *this> or use LilyPond C<print()> methods).
-
-This is a beta version of LilyPond. Please send your helpful comments
-and patches to me (see AUTHORS section)
-
-LilyPond is updated very frequently, the latest version is always available at:
-ftp://pcnov095.win.tue.nl/pub/lilypond.
-
-
-=head1 FILES
-
-=over 5
-
-=item F<symbol.ini>
-The initialisation file with symbol tables etc. It
-includes files from the directory F<init/>.
-
-=back
-
-=head1 SEE ALSO
-
-There are some documentation files in the subdirectory F<Documentation/>,
-among others: lilygut, lilyinput, error, faq,
-
-=head1 REMARKS
-
-LilyPond has no connection with the music package RoseGarden, other
-than the names being similar :-)
-
-=head1 HISTORY
-
-(for a detailed changelog, see F<NEWS>)
-
-LilyPond's roots lie in MPP, a preprocessor to the rather arcane
-MusiXTeX macro package for TeX. A friend of mine, Jan Nieuwenhuizen
-wrote the first 44 versions (0.01 to 0.44), then his program caught my
-attention, and I was slowly sucked in to the interesting problem of
-easily producing beautifully printed music. I contributed some
-code. We soon realised that MPP's design was too fundamentally broken
-to be repaired. It was decided to rewrite MPP. We debated a lot about
-the requirements to an inputformat (fall 1995). I sat down and started
-with a parser-first, bottom-up rewrite called mpp95 (which totally
-failed, obviously).
-
-After long and hard thinking, I came up with an algorithm for the
-horizontal spacing of multiple staffs (april 1996) I coded it (and did
-not test it). After starting with this fundamental piece, I slowly
-added the stages which come before spacing, and after. A half year
-later later, I had a first working version, (october 1996). I
-announced Patchlevel 0.0.7 (or 8) to the mutex list after asking some
-technical details on spacing; it was downloaded approximately 4 times.
-Then I got the hang of it, and in the subsequent two months, I coded
-until it had doubled in size (pl 23).
</a
>
+
=item *
-<a href=ftp://pcnov095.win.tue.nl/pub/lilypond
->
-Get it!
-</a
->
+Get it at ftp://pcnov095.win.tue.nl/pub/lilypond !
+=cut
+niet veranderen in expliciete URL. pod2* doet dit automaties.
+=pod
+
=head1 AUTHOR
We might be able to do without the staff{} construct, but I doubt if
it will make things easier.
-=head1 CONCRETE PROPOSAL
+=head1 CONCRETE PROPOSALS
-Any optional request/modifier should follow the note/rest-name/lyric:
- old new
- ''!a a!''
- [a()a]()a a[( a)]( a)
-
-the []() construct doesn't look nice. We might make an exception for
-spanning requests.
=head1 THOUGHTS
--- /dev/null
+=head1 NAME
+
+LilyPond - a music typesetter
+
+=head1 SYNOPSIS
+
+ lilypond [options] [inputfiles]
+
+=head1 DESCRIPTION
+
+Technically LilyPond is a preprocessor which generates TeX
+(or LaTeX) output which contains information to typeset a musical
+score. Practically it is a typesetter, which only uses TeX as an
+output medium. (this is handy because there exist music fonts for TeX)
+
+As a bonus, you can also output a MIDI file of what you typed.
+
+It translates script files (mudela files or F<*.ly>'s) into TeX input.
+Typesetting music is a complex task, whereas the message that printed
+music conveys is usually a simple one. LilyPond is a try at providing
+a simple interface for setting music.
+
+
+=head1 OPTIONS
+
+=over 5
+
+=item B<-I,--include>=F<FILE>,
+
+add F<FILE> to the search path for input files.
+
+
+=item B<-M,--midi>
+
+do midi output only
+
+=item B<-d,--debug>,
+
+Turn debugging info. LilyPond will read the file F<.dstreamrc>, which
+tells for what functions and classes may produce copious debugging
+output.
+
+=item B<-w,--warranty>,
+
+Show the warranty with which LilyPond comes. (It comes with B<NO WARRANTY>!)
+
+=item B<-o,--output=>F<FILE>,
+
+Set the default output file to F<FILE>.
+
+=item B<-h,--help>,
+
+Show a summary of usage
+
+=item B<-i,--init=>F<FILE>
+
+set init file to F<FILE> (default: F<symbol.ini>)
+
+=item B<--include, -I>=F<DIRECTORY>
+add F<DIRECTORY> to the search path for input files.
+
+=back
+
+=head1 FEATURES
+
+=over 5
+
+=item *
+ASCII script input, with identifiers (for music reuse),
+customizable notenames, customizable fontset
+
+=item *
+MIDI output lets you check if you have entered the correct notes.
+
+=item *
+MIDI to Mudela conversion through the mi2mu program.
+
+=item *
+Multiple staffs in one score. Each staff can have a different meters.
+
+=item *
+multiple stafftypes (melodic, rhythmic) [broken from pl28 on]
+
+=item *
+beams, slurs, chords, super/subscripts (accents and text),
+triplets, general n-plet (triplet, quadruplets, etc.), lyrics
+
+=item *
+multiple voices within one staff; beams optionally shared
+between voices. (well, more than 2 voices won't look pretty --yet.)
+
+=item *
+multiple scores within one input file. Each score is output to
+a different file.
+
+=item *
+clef changes, meter changes, cadenza-mode, key changes, repeat bars
+
+=back
+
+=head1 DESIGN CONSIDERATIONS
+
+LilyPond was written with some considerations in mind:
+
+=over 5
+
+=item *
+Describing a well-defined language for defining music. We call
+this language (rather arrogantly) The Musical Definition Language
+(mudela for short). LilyPond reads a mudela sourcefile and outputs a
+TeX file. This musical definition language should:
+
+=over 5
+
+=item 1.
+define the musical message of the writer as unambigiously as
+possible.
+
+=item 2.
+be easily readable. (as compared to, say, MusixTeX input)
+
+=item 3.
+be writable in ASCII (with a simple texteditor).
+
+=back
+
+At this time, the language isn't yet defined precisely. It is evolving as
+LilyPond is getting more complex.
+
+=item *
+We want to provide an easy-to-use interface for typesetting music in
+its broadest sense. This interface should be intuitive from a musical
+point of view. By broadest sense we mean: it is designed for music
+printed left to right in staffs, using notes to designate rythm and
+pitch.
+
+=item *
+LilyPond uses MusiXTeX fonts and TeX for its output. This is not a key
+issue: in a future version, LilyPond might bypass TeX, but at the moment
+TeX is very convenient for producing output.
+
+=item *
+Generate high-quality output. Ideally it should be of a professional
+quality. We'd like to render Herbert Chlapiks words, "Fine music
+setting is not possible without a knowledgeable printer," untrue.
+
+=item *
+LilyPond does not display notes directly, nor will it be rehacked to be
+used interactively. LilyPond writes output to a file. It will not be
+extended to play music, or to recognize music.
+
+=item *
+LilyPond is intended to run on Unix platforms, but it should
+be portable to any platform which can run TeX and the GNU tools
+
+=item *
+LilyPond is free. Commercial windows packages for setting music are
+abundant. Free musicprinting software is scarce.
+
+=item *
+LilyPond is written in GNU C++. It will not be downgraded/ported to fit
+broken systems.
+
+=back
+
+=head1
+DISCLAIMER & COPYING POLICY
+
+LilyPond is copyright 1996,97 by its authors. LilyPond is
+distributed under the terms of the GNU General Public
+License. LilyPond is provided without any warranty what so ever.
+LilyPond may be freely distributed. For further information consult
+the GNU General Public License, which is in the file F<COPYING>
+
+=head1 AUTHORS
+
+=over 5
+
+=item *
+Han-Wen Nienhuys <hanwen@stack.nl>, Main author
+
+=item *
+Jan Nieuwenhuizen <jan@digicash.com>, Context errors, Lyrics,
+mi2mu, MIDI stuff, make structure, bits of FlowerLib, general
+comments.
+
+=item *
+Mats Bengtsson <matsb@s3.kth.se>, bugfixes, testing, general comments.
+
+=back
+
+Your name could be here! If you want to help, then take a look at the
+SMALLISH PROJECTS section of in the file F<TODO>. Some do not involve
+coding C++
+
+=head1 EXAMPLES
+
+At this time, LilyPond output looks nice, but is not of production
+quality. If you're not discouraged; this is what I type in my xterm:
+
+ lilypond someinput.ly
+ tex test
+ xdvi test&
+
+This is what the output looks like over here:
+
+ LilyPond 0.0.40 #0/FlowerLib 1.1.7 #2. Compile: Mar 11 1997, 22:58:47 (g++ 2.7.2)
+ Parsing ... [./init//symbol.ini[./init//dynamic.ini][./init//dutch.ini][./init//script.ini][./init//table_sixteen.ini]][./input/wohltemperirt.ly]
+ Setting up music ...Processing music ............
+ Preprocessing ...
+ Calculating column positions ... [3][6][9]
+ Postprocessing ...
+ TeX output to lelie.out ...
+ midi output to lelie.midi ...
+
+ hw:~/musix/spacer$ tex test
+ This is TeX, Version 3.14159 (C version 6.1)
+ (test.tex
+ Hyphenation patterns for english, dutch, loaded.
+ (lilyponddefs.tex) (lelie.uit) [1] [2] )
+ Output written on test.dvi (2 pages, 8420 bytes).
+ Transcript written on test.log.
+
+ hw:~/musix/spacer$ xdvi test&
+ [1] 855
+
+Check out the input files, some of them have comments
+
+
+=head1 PROBLEMS
+
+If LilyPond bombs out, then please recompile using with debugging info
+turned on, and send a copy of the input which causes the error and a
+gdb stacktrace of the crash. It also helps if you can print the values
+of the objects. So if your trace is
+
+ (gdb) backtrace 12
+ #0 Interval::operator+= (this=0x11fffec60..)
+ at ../flower/interval.hh:50
+ #1 0x12005195c in Item::width (this=0x14008a680) at src/item.cc:39
+ #2 0x12008fdbc in itemlist_width (its=0x11fffed58 ..
+ :
+ :
+
+Than it would help if you send a dump of the Interval and the Item
+(use: C<print *this> or use LilyPond C<print()> methods).
+
+This is a beta version of LilyPond. Please send your helpful comments
+and patches to me (see AUTHORS section)
+
+LilyPond is updated very frequently, the latest version is always available at:
+ftp://pcnov095.win.tue.nl/pub/lilypond.
+
+
+=head1 FILES
+
+=over 5
+
+=item F<symbol.ini>
+The initialisation file with symbol tables etc. It
+includes files from the directory F<init/>.
+
+=back
+
+=head1 SEE ALSO
+
+There are some documentation files in the subdirectory F<Documentation/>,
+among others: lilygut, lilyinput, error, faq,
+
+=head1 REMARKS
+
+LilyPond has no connection with the music package RoseGarden, other
+than the names being similar :-)
+
+=head1 HISTORY
+
+(for a detailed changelog, see F<NEWS>)
+
+LilyPond's roots lie in MPP, a preprocessor to the rather arcane
+MusiXTeX macro package for TeX. A friend of mine, Jan Nieuwenhuizen
+wrote the first 44 versions (0.01 to 0.44), then his program caught my
+attention, and I was slowly sucked in to the interesting problem of
+easily producing beautifully printed music. I contributed some
+code. We soon realised that MPP's design was too fundamentally broken
+to be repaired. It was decided to rewrite MPP. We debated a lot about
+the requirements to an inputformat (fall 1995). I sat down and started
+with a parser-first, bottom-up rewrite called mpp95 (which totally
+failed, obviously).
+
+After long and hard thinking, I came up with an algorithm for the
+horizontal spacing of multiple staffs (april 1996) I coded it (and did
+not test it). After starting with this fundamental piece, I slowly
+added the stages which come before spacing, and after. A half year
+later later, I had a first working version, (october 1996). I
+announced Patchlevel 0.0.7 (or 8) to the mutex list after asking some
+technical details on spacing; it was downloaded approximately 4 times.
+Then I got the hang of it, and in the subsequent two months, I coded
+until it had doubled in size (pl 23).
+++ /dev/null
-IMPORTANT:
-
- if you have downloaded a
-
- *.pre*
-
- version, then this is version is *not* meant for producing nice output
- (but to keep your patchsets up to date). It might not even compile.
-
-
-INSTALL:
-
- to make LilyPond, simply type:
-
- sh configure
- make
-
- assuming you have the gnu development tools, and your make is gnu make,
- else try something like:
-
- MAKE=gmake configure
- MAKE=gmake gmake
-
- \begin{masochist}
- Windows NT:
-
- you need the cygnus win32 gnu port development stuff; have a look
- at http://www.cygnus.com/gnu-win32.
-
- to make LilyPond under, brr, aargh, well, simply type:
-
- bash configure
- make win32
- \end{masochist}
-
-
-SUPPORT
-
- LilyPond (pl 0.0.39) is known to compile on the following platforms:
-
- * linux 2.0.28, g++ 2.7.2[.1]
- * aix 4.1, g++ 2.7.2
- * windows-nt 4.0, cygnus gnu-win32 beta17.1 (~=g++ 2.7.2)
- * linux 2.0.28 X to doze, gcc-go32 (~=g++ 2.7.2), but segfaults
- in 16 bit subsystem %-/
-
-Have fun!
-
- hanwen@stack.nl
- jan@digicash.com
-
--- /dev/null
+
+
+
+INSTALL(1) LilyPond documentation INSTALL(1)
+
+
+N\bN\bN\bNA\bA\bA\bAM\bM\bM\bME\bE\bE\bE
+ INSTALL - installing LilyPond
+
+D\bD\bD\bDE\bE\bE\bES\bS\bS\bSC\bC\bC\bCR\bR\bR\bRI\bI\bI\bIP\bP\bP\bPT\bT\bT\bTI\bI\bI\bIO\bO\bO\bON\bN\bN\bN
+ This page documents installation and compilation of
+ LilyPond
+
+I\bI\bI\bIM\bM\bM\bMP\bP\bP\bPO\bO\bO\bOR\bR\bR\bRT\bT\bT\bTA\bA\bA\bAN\bN\bN\bNT\bT\bT\bT
+ if you have downloaded a
+
+ *.pre*
+
+ version, then this is version is _\bn_\bo_\bt meant for producing
+ nice output, but to keep your patchsets up to date. It
+ might not even compile.
+
+P\bP\bP\bPR\bR\bR\bRE\bE\bE\bER\bR\bR\bRE\bE\bE\bEQ\bQ\bQ\bQU\bU\bU\bUI\bI\bI\bIS\bS\bS\bSI\bI\bI\bIT\bT\bT\bTE\bE\bE\bES\bS\bS\bS
+ For compilation you need.
+
+ +\bo Unix. LilyPond is known to run on Linux, AIX, Digital
+ Unix and Solaris
+ If you have the Cygnus WIN32 port of the GNU utils,
+ it will even work in Lose NT/95, but don't promise to
+ support it.
+
+ +\bo GNU C++ v2.7 or better, with libg++ installed. Version
+ 2.7.2 or better recommended. I almost positive that
+ it will not compile with AT&T CC.
+
+ +\bo Bash. Most scripts will continue to work with a stock
+ sh, but they will generate (harmless) syntax errors
+
+ +\bo GNU make.
+
+ +\bo Flex (2.5.1 or better).
+
+ +\bo Bison.
+
+R\bR\bR\bRE\bE\bE\bEC\bC\bC\bCO\bO\bO\bOM\bM\bM\bMM\bM\bM\bME\bE\bE\bEN\bN\bN\bND\bD\bD\bDE\bE\bE\bED\bD\bD\bD
+ +\bo Perl. Some (mostly unimportant scripts) use Perl for
+ trivial operations. The documentation was created
+ with the perl's Plain Old Documentation.
+
+ +\bo (GNU) find
+
+C\bC\bC\bCO\bO\bO\bON\bN\bN\bNF\bF\bF\bFI\bI\bI\bIG\bG\bG\bGU\bU\bU\bUR\bR\bR\bRI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG a\ba\ba\ban\bn\bn\bnd\bd\bd\bd C\bC\bC\bCO\bO\bO\bOM\bM\bM\bMP\bP\bP\bPI\bI\bI\bIL\bL\bL\bLI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG
+ to install LilyPond, simply type:
+
+ configure
+ make install
+
+ This will install the following files:
+
+
+
+
+
+14/Mar/97 LilyPond 0.0.41 1
+
+
+
+
+
+INSTALL(1) LilyPond documentation INSTALL(1)
+
+
+ /usr/local/man/man1/lilypond.1
+ /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 -\b-\b-\b--\b-\b-\b-e\be\be\ben\bn\bn\bna\ba\ba\bab\bb\bb\bbl\bl\bl\ble\be\be\be-\b-\b-\b-t\bt\bt\bte\be\be\bex\bx\bx\bxp\bp\bp\bpr\br\br\bre\be\be\bef\bf\bf\bfi\bi\bi\bix\bx\bx\bx. 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:
+
+ CXXFLAGS="-I /home/me/my_include -DWEIRD_FOOBAR" configure
+
+ the configure script is Cygnus configure, and it will
+ accept -\b-\b-\b--\b-\b-\b-h\bh\bh\bhe\be\be\bel\bl\bl\blp\bp\bp\bp. If you are not root, you will probably have
+ to make it with
+
+ configure --prefix=/home/me_myself_and_I/
+
+ Since LilyPond currently is beta, You are advised to also
+ use
+
+ --enable-debug
+ --enable-checking
+
+ other options include:
+
+ --enable-printing
+ --enable-optimise
+ --enable-profiling
+
+ The option -\b-\b-\b--\b-\b-\b-e\be\be\ben\bn\bn\bna\ba\ba\bab\bb\bb\bbl\bl\bl\ble\be\be\be-\b-\b-\b-o\bo\bo\bop\bp\bp\bpt\bt\bt\bti\bi\bi\bim\bm\bm\bmi\bi\bi\bis\bs\bs\bse\be\be\be 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
+ subdirectory _\bb_\bi_\bn_\b/.
+
+R\bR\bR\bRU\bU\bU\bUN\bN\bN\bNN\bN\bN\bNI\bI\bI\bIN\bN\bN\bNG\bG\bG\bG
+ LilyPond does use a lot of resources. For operation you
+ need the following:
+
+ +\bo A fast computer (a full page of music typically takes 1
+ minute on my 486/66, using the -\b-\b-\b--\b-\b-\b-e\be\be\ben\bn\bn\bna\ba\ba\bab\bb\bb\bbl\bl\bl\ble\be\be\be-\b-\b-\b-c\bc\bc\bch\bh\bh\bhe\be\be\bec\bc\bc\bck\bk\bk\bki\bi\bi\bin\bn\bn\bng\bg\bg\bg
+ compile. It's lot slower than most MusiXTeX
+ preprocessors)
+
+ +\bo TeX
+
+
+
+
+14/Mar/97 LilyPond 0.0.41 2
+
+
+
+
+
+INSTALL(1) LilyPond documentation INSTALL(1)
+
+
+ +\bo The MusixTeX fonts. (I use those found in MusixTeX T.59)
+
+ Please refer to the man page for more information.
+
+R\bR\bR\bRE\bE\bE\bED\bD\bD\bDH\bH\bH\bHA\bA\bA\bAT\bT\bT\bT L\bL\bL\bLI\bI\bI\bIN\bN\bN\bNU\bU\bU\bUX\bX\bX\bX
+ RedHat Linux users should be able to get a RPM. A spec
+ file is in _\bm_\ba_\bk_\be_\b/_\bl_\bi_\bl_\by_\bp_\bo_\bn_\bd_\b._\bs_\bp_\be_\bc.
+
+W\bW\bW\bWI\bI\bI\bIN\bN\bN\bND\bD\bD\bDO\bO\bO\bOZ\bZ\bZ\bZE\bE\bE\bE
+ Windows NT:
+
+ you need the cygnus win32 gnu port development stuff; have
+ a look at http://www.cygnus.com/gnu-win32.
+
+ to make LilyPond under, brr, aargh, well, simply type:
+
+ bash configure
+ make win32
+
+
+P\bP\bP\bPL\bL\bL\bLA\bA\bA\bAT\bT\bT\bTF\bF\bF\bFO\bO\bO\bOR\bR\bR\bRM\bM\bM\bMS\bS\bS\bS
+ LilyPond (pl 0.0.39) is known to compile on the following
+ platforms:
+
+ * linux 2.0.28, g++ 2.7.2[.1]
+ * aix 4.1, g++ 2.7.2
+ * windows-nt 4.0, cygnus gnu-win32 beta17.1 (~=g++ 2.7.2)
+ * linux 2.0.28 X to doze, gcc-go32 (~=g++ 2.7.2) [exec. untested]
+
+
+A\bA\bA\bAU\bU\bU\bUT\bT\bT\bTH\bH\bH\bHO\bO\bO\bOR\bR\bR\bRS\bS\bS\bS
+ Han-Wen Nienhuys <hanwen@stack.nl>
+
+ Jan Nieuwenhuizen <jan@digicash.com>
+
+ Have fun!
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+14/Mar/97 LilyPond 0.0.41 3
+
+
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic variables:
# list of distribution files:
#
# SYMLINKS = # naah, configure
-SCRIPTS = configure
-README_FILES = ANNOUNCE COPYING INSTALL NEWS README TODO
+SCRIPTS = configure configure.in install-sh
+README_FILES = ANNOUNCE COPYING NEWS README TODO INSTALL.text
DISTFILES= Makefile .dstreamrc .version $(README_FILES) $(SCRIPTS) $(SYMLINKS)
#
+
# generic targets and rules:
#
include ./$(depth)/make/Targets.make
include ./$(depth)/make/Rules.make
#
+localdist: configure
+
+# ugh. I know dep is not quite what is really needed.
+INSTALL.text: Documentation
+ rm -f INSTALL.text
+ $(MAKE) -C Documentation
+ ln `find -name INSTALL.text|head -1` .
+
+localclean:
+ rm -f $(allexe) core config.cache config.log config.status
+
+localinstall: all
+ $(INSTALL) -d $(bindir)
+ $(INSTALL) -m 755 $(allexe) $(bindir)
+
+localuninstall:
+ for i in $(allexe); do rm -f $(bindir)/`basename $$i`; done
\ No newline at end of file
+pl 41.hwn3
+ - struct Lexer_prefs
+ - parser bug
+ - make uninstall
+
+pl 41.hwn2
+ - make file rehack
+ - spec update
+ - make install
+ - detect TeX directory
+
+pl 41.hwn1
+ - cygnus configure,
+ - updated versioning
+ - install.pod
+
+pl 41.jn1
+Bugfix
+ - doze compile
pl 41
- release
pl 40.3
====================
-Please refer to the directory Documentation/, Documentation/README.*.
+Please refer to the directory Documentation/ for the real doco.
-To generate the pretty-printed docs, do this:
+To generate the pretty-printed docs, you have to run configure first,
+and then do this:
make doc
-You can also simply read the .pod source. It is ASCII text.
+You can also simply read the .pod sources. It is ASCII text. For your
+convenience, a copy of the formatted INSTALL instructions are in
+the toplevel directory, as INSTALL.text
+
======================
+ * remove notename.* README.pod LilyPond.pod
+
before 0.1
* remove spurious/outdated comments in .ly, debug .ly
This is an assorted collection of stuff that will be done, might be
done, or is an idea that I want to think about
-STUFF
- * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
+MAKE-STUFF
- * generate all (.hh) files into out dirs
+ * fix increase build ( libflower rebuilt when making lilypond. )
* sort out headers, see m2m
INPUTLANGUAGE
+ * read ENV for include path
+
* lose the $ and @ ?
* figured bass?
SMALLISH PROJECTS
+
+ * midi esp.: use I32 iso int where 32 bits are needed (or assumed...)
+
* fix Staff_elem::width() derivs to use offset_
* parshape
* eentje/tweetje
* piano staff
-
+
* abbreviations a4*8
IDEAS
* itemcolumns: Use dummy items.
- * use an embedded language: scheme, lisp, S-lang, Perl, ?
+ * use an embedded language: scheme, lisp, S-lang, Perl, GUILE, ?
* y -dims in internote?
depth = ..
#
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
# generic stuff/Makefile
#
# list of distribution files:
#
-SCRIPTS = clearlily cpgento genheader make_patch make_fversion make_version make_website
+SCRIPTS = clearlily cpgento genheader make_patch make_version make_website
DISTFILES = Makefile $(SCRIPTS)
#
echo generating $genlily ...
$MAKE -C lily $genlily
-genm2m="out/midi-parser.hh out/midi-parser.cc out/midi-lexer.cc"
-echo generating $genm2m ...
-$MAKE -C m2m $genm2m
+genmi2mu="out/midi-parser.hh out/midi-parser.cc out/midi-lexer.cc"
+echo generating $genmi2mu ...
+$MAKE -C mi2mu $genmi2mu
lilydir=`pwd | sed "s/.*\///"`
todir=$1/$lilydir
}
cpto lily "$genlily"
-cpto m2m "$genm2m"
+cpto mi2mu "$genmi2mu"
# if you cannot gen the above, you-ll probably want:
flexlexerh=/usr/include/FlexLexer.h
+++ /dev/null
-#!/bin/sh
-echo '#ifndef FVERSION_HH'
-echo '#define FVERSION_HH'
-echo '#define FMAJOR_VERSION ' "$1"
-echo '#define FMINOR_VERSION ' "$2"
-echo '#define FPATCH_LEVEL ' "$3"
-echo '#define FMY_PATCH_LEVEL ' "$4"
-echo '#define FBUILD ' "$5"
-echo '#define FVERSIONSTR "'$1.$2.$3$4 \#$5'"'
-echo '#define FCOMPILER "'$6'"'
-echo '#endif'
#(cd $nm$old; touch depend; make clean)
#(cd $nm$new; touch depend; make clean)
-(cd $nm$new; diff -urP ../$nm$old . > ../patch-$new)
+
+echo 'use cd source-dir; patch -E -p0 < this_patch'> patch-$new
+
+(cd $nm$new; diff -urN ../$nm$old . >> ../patch-$new)
rm -rf $nm$old $nm$new
#!/bin/sh
-echo '#ifndef VERSION_HH'
-echo '#define VERSION_HH'
-echo '#define MAJOR_VERSION ' "$1"
-echo '#define MINOR_VERSION ' "$2"
-echo '#define PATCH_LEVEL ' "$3"
-echo '#define MY_PATCH_LEVEL ' "$4"
-echo '#define BUILD ' "$5"
-echo '#define VERSIONSTR "'$1.$2.$3$4 \#$5'"'
-echo '#define COMPILER "'$6'"'
-echo '#endif'
+
+#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
+if [ -z $CXX ]
+then
+ COMPILER=unknown
+else
+ COMPILER="$CXX `$CXX --version`"
+fi
+
+echo "#define COMPILER "\"$COMPILER\"
-#!/bin/sh
-#
-# project LilyPond -- the musical typesetter
-# title (bash/sh/ksh) script to setup library and auto generated files
-# file configure-broken-system
+#! /bin/sh
+
+# Guess values for system-dependent variables and create Makefiles.
+# Generated automatically using autoconf version 2.10
+# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
#
-# Copyright (c) 1997 by
-# Han-Wen Nienhuys <hanwen@stack.nl>
-# Jan Nieuwenhuizen <jan@digicash.com>
-#
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
-MAKE=${MAKE:-make}
-PREFIX=${PREFIX:-.}
+# Defaults:
+ac_help=
+ac_default_prefix=/usr/local
+# Any additions from configure.in:
+ac_help="$ac_help
+ printing set debug printing"
+ac_help="$ac_help
+ checking set runtime checks"
+ac_help="$ac_help
+ debug set debug info"
+ac_help="$ac_help
+ optimise use maximal speed optimisations"
+ac_help="$ac_help
+ profiling compile with gprof support"
+ac_help="$ac_help
+ texprefix=DIR set the tex-directory to put the lilypond subdir in."
-# this whole script sux, but here we go:
-opt="`echo $1 | cut -c 1-3`"
-if [ "$opt" = "-h" -o "$opt" = "--h" ]
-then
- echo "Usage:"
- echo " [MAKE=make] configure [options]"
- echo
- echo "options:"
- echo " -h, --help this text"
- echo
- echo "e.g.: MAKE=gmake configure"
- exit
+# Initialize some variables set by options.
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+build=NONE
+cache_file=./config.cache
+exec_prefix=NONE
+host=NONE
+no_create=
+nonopt=NONE
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+target=NONE
+verbose=
+x_includes=NONE
+x_libraries=NONE
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+# Initialize some other variables.
+subdirs=
+MFLAGS= MAKEFLAGS=
+
+ac_prev=
+for ac_option
+do
+
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval "$ac_prev=\$ac_option"
+ ac_prev=
+ continue
+ fi
+
+ case "$ac_option" in
+ -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) ac_optarg= ;;
+ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case "$ac_option" in
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir="$ac_optarg" ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build="$ac_optarg" ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file="$ac_optarg" ;;
+
+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+ | --da=*)
+ datadir="$ac_optarg" ;;
+
+ -disable-* | --disable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ eval "enable_${ac_feature}=no" ;;
+
+ -enable-* | --enable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "enable_${ac_feature}='$ac_optarg'" ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix="$ac_optarg" ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he)
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat << EOF
+Usage: configure [options] [host]
+Options: [defaults in brackets after descriptions]
+Configuration:
+ --cache-file=FILE cache test results in FILE
+ --help print this message
+ --no-create do not create output files
+ --quiet, --silent do not print \`checking...' messages
+ --version print the version of autoconf that created configure
+Directory and file names:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [same as prefix]
+ --bindir=DIR user executables in DIR [EPREFIX/bin]
+ --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
+ --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
+ --datadir=DIR read-only architecture-independent data in DIR
+ [PREFIX/share]
+ --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data in DIR
+ [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
+ --libdir=DIR object code libraries in DIR [EPREFIX/lib]
+ --includedir=DIR C header files in DIR [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
+ --infodir=DIR info documentation in DIR [PREFIX/info]
+ --mandir=DIR man documentation in DIR [PREFIX/man]
+ --srcdir=DIR find the sources in DIR [configure dir or ..]
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM
+ run sed PROGRAM on installed program names
+EOF
+ cat << EOF
+Host type:
+ --build=BUILD configure for building on BUILD [BUILD=HOST]
+ --host=HOST configure for HOST [guessed]
+ --target=TARGET configure for TARGET [TARGET=HOST]
+Features and packages:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --x-includes=DIR X include files are in DIR
+ --x-libraries=DIR X library files are in DIR
+EOF
+ if test -n "$ac_help"; then
+ echo "--enable and --with options recognized:$ac_help"
+ fi
+ exit 0 ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host="$ac_optarg" ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir="$ac_optarg" ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir="$ac_optarg" ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir="$ac_optarg" ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir="$ac_optarg" ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst \
+ | --locals | --local | --loca | --loc | --lo)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+ localstatedir="$ac_optarg" ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir="$ac_optarg" ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir="$ac_optarg" ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix="$ac_optarg" ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix="$ac_optarg" ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix="$ac_optarg" ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name="$ac_optarg" ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir="$ac_optarg" ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir="$ac_optarg" ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site="$ac_optarg" ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir="$ac_optarg" ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir="$ac_optarg" ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target="$ac_optarg" ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers)
+ echo "configure generated by autoconf version 2.10"
+ exit 0 ;;
+
+ -with-* | --with-*)
+ ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "with_${ac_package}='$ac_optarg'" ;;
+
+ -without-* | --without-*)
+ ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ eval "with_${ac_package}=no" ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes="$ac_optarg" ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries="$ac_optarg" ;;
+
+ -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+ ;;
+
+ *)
+ if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
+ echo "configure: warning: $ac_option: invalid host type" 1>&2
+ fi
+ if test "x$nonopt" != xNONE; then
+ { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
+ fi
+ nonopt="$ac_option"
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
+fi
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+# File descriptor usage:
+# 0 standard input
+# 1 file creation
+# 2 errors and warnings
+# 3 some systems may open it to /dev/tty
+# 4 used on the Kubota Titan
+# 6 checking for... messages and results
+# 5 compiler messages saved in config.log
+if test "$silent" = yes; then
+ exec 6>/dev/null
+else
+ exec 6>&1
+fi
+exec 5>./config.log
+
+echo "\
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+" 1>&5
+
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell metacharacters.
+ac_configure_args=
+for ac_arg
+do
+ case "$ac_arg" in
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c) ;;
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
+ ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) ac_configure_args="$ac_configure_args $ac_arg" ;;
+ esac
+done
+
+# NLS nuisances.
+# Only set LANG and LC_ALL to C if already set.
+# These must not be set unconditionally because not all systems understand
+# e.g. LANG=C (notably SCO).
+if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+if test "${LANG+set}" = set; then LANG=C; export LANG; 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
+
+# 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/lib/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'
+
+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
+
+
+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'
+
+
+# Check whether --enable-printing or --disable-printing was given.
+if test "${enable_printing+set}" = set; then
+ enableval="$enable_printing"
+ :
+else
+ DEFINES="$DEFINES -DNPRINT=1"
+fi
+
+# Check whether --enable-checking or --disable-checking was given.
+if test "${enable_checking+set}" = set; then
+ enableval="$enable_checking"
+ :
+else
+ DEFINES="$DEFINES -DNDEBUG=1"
+fi
+
+# Check whether --enable-debug or --disable-debug was given.
+if test "${enable_debug+set}" = set; then
+ enableval="$enable_debug"
+ DEFINES="$DEFINES -g"
+fi
+
+# Check whether --enable-optimise or --disable-optimise was given.
+if test "${enable_optimise+set}" = set; then
+ enableval="$enable_optimise"
+ DEFINES="$DEFINES -O2 -DSTRING_UTILS_INLINED"
+fi
+
+# Check whether --enable-profiling or --disable-profiling was given.
+if test "${enable_profiling+set}" = set; then
+ enableval="$enable_profiling"
+ DEFINES="$DEFINES -pg"
+fi
+
+# Check whether --enable-texprefix or --disable-texprefix was given.
+if test "${enable_texprefix+set}" = set; then
+ enableval="$enable_texprefix"
+ TEXPREFIX=$enableval
+else
+ TEXPREFIX=auto
+fi
+
+
+AUTOHEADER="This file was automatically generated by configure"
+CXXFLAGS=${CXXFLAGS:-""} # we don't want -g -O junk
+for ac_prog in $CCC c++ g++ gcc CC cxx
+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
+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 we are using GNU C++""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.C <<EOF
+#ifdef __GNUC__
+ yes;
+#endif
+EOF
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:623: \"$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
+fi
+fi
+
+echo "$ac_t""$ac_cv_prog_gxx" 1>&6
+if test $ac_cv_prog_gxx = yes; then
+ GXX=yes
+ if test "${CXXFLAGS+set}" != set; then
+ echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_prog_gxx_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_gxx_g=yes
+else
+ ac_cv_prog_gxx_g=no
+fi
+rm -f conftest*
+
+fi
+
+echo "$ac_t""$ac_cv_prog_gxx_g" 1>&6
+ if test $ac_cv_prog_gxx_g = yes; then
+ CXXFLAGS="-g -O"
+ else
+ CXXFLAGS="-O"
+ fi
+ 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
+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
+
+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
+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'
+
+for ac_prog in find
+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
+if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$FIND"; then
+ ac_cv_prog_FIND="$FIND" # 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_FIND="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+FIND="$ac_cv_prog_FIND"
+if test -n "$FIND"; then
+ echo "$ac_t""$FIND" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$FIND" && break
+done
+test -n "$FIND" || FIND="error"
+
-do_outdir() {
- if [ \! -d $1/out ]
+if test FIND = error; then
+ echo "configure: warning: Couldn't find \`find'. Please use --enable-texprefix" 1>&2
+else
+
+
+
+
+
+
+
+
+
+
+for ac_prog in bison
+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
+if eval "test \"`echo '$''{'ac_cv_prog_BISON'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$BISON"; then
+ ac_cv_prog_BISON="$BISON" # 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_BISON="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+BISON="$ac_cv_prog_BISON"
+if test -n "$BISON"; then
+ echo "$ac_t""$BISON" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$BISON" && break
+done
+test -n "$BISON" || BISON="error"
+
+for ac_prog in flex
+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
+if eval "test \"`echo '$''{'ac_cv_prog_FLEX'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$FLEX"; then
+ ac_cv_prog_FLEX="$FLEX" # 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_FLEX="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+FLEX="$ac_cv_prog_FLEX"
+if test -n "$FLEX"; then
+ echo "$ac_t""$FLEX" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$FLEX" && break
+done
+test -n "$FLEX" || FLEX="error"
+
+for ac_prog in make
+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
+if eval "test \"`echo '$''{'ac_cv_prog_MAKE'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test -n "$MAKE"; then
+ ac_cv_prog_MAKE="$MAKE" # 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_MAKE="$ac_prog"
+ break
+ fi
+ done
+ IFS="$ac_save_ifs"
+fi
+fi
+MAKE="$ac_cv_prog_MAKE"
+if test -n "$MAKE"; then
+ echo "$ac_t""$MAKE" 1>&6
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$MAKE" && break
+done
+test -n "$MAKE" || MAKE="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
+if eval "test \"`echo '$''{'ac_cv_prog_PODMAN'+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.
+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"
+ 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
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+test -n "$PODMAN" && break
+done
+test -n "$PODMAN" || PODMAN="error"
+
+
+if test $TEXPREFIX = auto ; then
+
+
+ # do something sensible if root hasn't specced dir yet attempts install
+
+ echo $ac_n "checking TeX installation directory""... $ac_c" 1>&6
+
+ ac_tmp_prefix=$prefix
+ test "x$ac_tmp_prefix" = xNONE && ac_tmp_prefix=$ac_default_prefix
+
+ for texdir in $ac_tmp_prefix $ac_tmp_prefix/lib; do
+ if test -d $texdir/texmf; then
+ TEXTOP=$texdir/texmf
+ break
+ else
+ if test -d $texdir/tex; then
+ TEXTOP=$texdir/tex
+ break
+ fi
+ fi
+ done
+ TEXPREFIX=$ac_tmp_prefix/lib/texmf/tex
+ if test x = "x$TEXTOP"; then
+ echo "configure: warning: Cannot determine a tex-directory. Please use --enable-texprefix" 1>&2
+ else
+ TEXPREFIX=`$FIND $TEXTOP -type d -a -name tex -print |sort|head -1`
+ fi
+ fi
+
+ echo "$ac_t""$TEXPREFIX" 1>&6
+
+fi
+
+if test $MAKE = "error"
+then
+ { echo "configure: error: Please install GNU make" 1>&2; exit 1; }
+else
+ $MAKE -v| grep -q GNU
+ if test "$?" = 1
then
- touch $1/.GENERATE
- mkdir $1/out
- echo 0 > $1/.build
+ echo "configure: warning: Please install *GNU* make" 1>&2
fi
-}
+fi
-echo using PREFIX=$PREFIX
-do_outdir make
+if test $BISON = "error"
+then
+ echo "configure: warning: can't find bison. Please install Bison (1.24 or better)" 1>&2
+fi
+
+if test $PODMAN = "error"
+then
+ echo "configure: warning: can't find pod. You should install Perl (version 5 or better)" 1>&2
+fi
+
+if test $FLEX = "error"
+then
+ echo "configure: warning: can't find flex. Please install Flex (2.5 or better)" 1>&2
+fi
+
+if $CXX --version | grep -q '2\.7'
+then
+ true
+else
+ echo "configure: warning: can't find g++ 2.7" 1>&2
+fi
+
+echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6
+if test -z "$CXXCPP"; then
+if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ 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'
+ CXXCPP="${CXX-g++} -E"
+ cat > conftest.$ac_ext <<EOF
+#line 1025 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1030: \"$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
+ rm -rf conftest*
+ CXXCPP=/lib/cpp
+fi
+rm -f conftest*
+ ac_cv_prog_CXXCPP="$CXXCPP"
+fi
+fi
+CXXCPP="$ac_cv_prog_CXXCPP"
+echo "$ac_t""$CXXCPP" 1>&6
+
+ac_safe=`echo "FlexLexer.h" | tr './\055' '___'`
+echo $ac_n "checking for FlexLexer.h""... $ac_c" 1>&6
+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
+#line 1052 "configure"
+#include "confdefs.h"
+#include <FlexLexer.h>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1057: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ true
+else
+ echo "$ac_t""no" 1>&6
+{ echo "configure: error: can't find flex header. Please install Flex headers correctly" 1>&2; exit 1; }
+fi
+
+subdirs="flower"
+
+trap '' 1 2 15
+cat > confcache <<\EOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs. It is not useful on other systems.
+# If it contains results you don't want to keep, you may remove or edit it.
+#
+# By default, configure uses ./config.cache as the cache file,
+# creating it if it does not exist already. You can give configure
+# the --cache-file=FILE option to use a different cache file; that is
+# what configure does when it calls configure scripts in
+# subdirectories, so they share the cache.
+# Giving --cache-file=/dev/null disables caching, for debugging configure.
+# config.status only pays attention to the cache file if you give it the
+# --recheck option to rerun configure.
+#
+EOF
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(set) 2>&1 |
+ sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
+ >> confcache
+if cmp -s $cache_file confcache; then
+ :
+else
+ if test -w $cache_file; then
+ echo "updating cache $cache_file"
+ cat confcache > $cache_file
+ else
+ echo "not updating unwritable cache $cache_file"
+ fi
+fi
+rm -f confcache
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# Any assignment to VPATH causes Sun make to only execute
+# the first set of double-colon rules, so remove it if not needed.
+# If there is a colon in the path, we need to keep it.
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
+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
+
+
+# Without the "./", some shells look in PATH for config.status.
+: ${CONFIG_STATUS=./config.status}
+
+echo creating $CONFIG_STATUS
+rm -f $CONFIG_STATUS
+cat > $CONFIG_STATUS <<EOF
+#! /bin/sh
+# Generated automatically by configure.
+# Run this file to recreate the current configuration.
+# This directory was configured as follows,
+# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+#
+# $0 $ac_configure_args
+#
+# Compiler output produced by configure, useful for debugging
+# configure, is in ./config.log if it exists.
+
+ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
+for ac_option
+do
+ case "\$ac_option" in
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
+ exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
+ -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+ echo "$CONFIG_STATUS generated by autoconf version 2.10"
+ exit 0 ;;
+ -help | --help | --hel | --he | --h)
+ echo "\$ac_cs_usage"; exit 0 ;;
+ *) echo "\$ac_cs_usage"; exit 1 ;;
+ esac
+done
+
+ac_given_srcdir=$srcdir
+ac_given_INSTALL="$INSTALL"
+
+trap 'rm -fr `echo "make/out/Configure_variables.make:make/Configure_variables.make.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+# Protect against being on the right side of a sed subst in config.status.
+sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
+ s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
+$ac_vpsub
+$extrasub
+s%@CFLAGS@%$CFLAGS%g
+s%@CPPFLAGS@%$CPPFLAGS%g
+s%@CXXFLAGS@%$CXXFLAGS%g
+s%@DEFS@%$DEFS%g
+s%@LDFLAGS@%$LDFLAGS%g
+s%@LIBS@%$LIBS%g
+s%@exec_prefix@%$exec_prefix%g
+s%@prefix@%$prefix%g
+s%@program_transform_name@%$program_transform_name%g
+s%@bindir@%$bindir%g
+s%@sbindir@%$sbindir%g
+s%@libexecdir@%$libexecdir%g
+s%@datadir@%$datadir%g
+s%@sysconfdir@%$sysconfdir%g
+s%@sharedstatedir@%$sharedstatedir%g
+s%@localstatedir@%$localstatedir%g
+s%@libdir@%$libdir%g
+s%@includedir@%$includedir%g
+s%@oldincludedir@%$oldincludedir%g
+s%@infodir@%$infodir%g
+s%@mandir@%$mandir%g
+s%@CXX@%$CXX%g
+s%@RANLIB@%$RANLIB%g
+s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
+s%@INSTALL_DATA@%$INSTALL_DATA%g
+s%@FIND@%$FIND%g
+s%@DEFINES@%$DEFINES%g
+s%@COMPILEINFO@%$COMPILEINFO%g
+s%@AUTOHEADER@%$AUTOHEADER%g
+s%@BISON@%$BISON%g
+s%@FLEX@%$FLEX%g
+s%@TEXPREFIX@%$TEXPREFIX%g
+s%@MAKE@%$MAKE%g
+s%@PODMAN@%$PODMAN%g
+s%@CXXCPP@%$CXXCPP%g
+s%@subdirs@%$subdirs%g
+
+CEOF
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+CONFIG_FILES=\${CONFIG_FILES-"make/out/Configure_variables.make:make/Configure_variables.make.in"}
+EOF
+cat >> $CONFIG_STATUS <<\EOF
+for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+ # Support "outfile[: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
+
+ # Adjust relative srcdir, etc. for subdirectories.
+
+ # 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"
+ ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+ else
+ ac_dir_suffix= ac_dots=
+ fi
+
+ case "$ac_given_srcdir" in
+ .) srcdir=.
+ if test -z "$ac_dots"; then top_srcdir=.
+ else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
+ /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+ *) # Relative path.
+ srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
+ 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"
+ configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
+ case "$ac_file" in
+ *Makefile*) ac_comsub="1i\\
+# $configure_input" ;;
+ *) ac_comsub= ;;
+ esac
+ sed -e "$ac_comsub
+s%@configure_input@%$configure_input%g
+s%@srcdir@%$srcdir%g
+s%@top_srcdir@%$top_srcdir%g
+s%@INSTALL@%$INSTALL%g
+" -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file
+fi; done
+rm -f conftest.subs
+
+
+
+exit 0
+EOF
+chmod +x $CONFIG_STATUS
+rm -fr confdefs* $ac_clean_files
+test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
+
+if test "$no_recursion" != yes; then
+
+ # Remove --cache-file and --srcdir arguments so they do not pile up.
+ ac_sub_configure_args=
+ ac_prev=
+ for ac_arg in $ac_configure_args; do
+ if test -n "$ac_prev"; then
+ ac_prev=
+ continue
+ fi
+ case "$ac_arg" in
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ ;;
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ ;;
+ *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;;
+ esac
+ done
+
+ for ac_config_dir in flower; do
+
+ # Do not complain, so a configure script can configure whichever
+ # parts of a large source tree are present.
+ if test ! -d $srcdir/$ac_config_dir; then
+ continue
+ fi
+
+ echo configuring in $ac_config_dir
+
+ case "$srcdir" in
+ .) ;;
+ *)
+ if test -d ./$ac_config_dir || mkdir ./$ac_config_dir; then :;
+ else
+ { echo "configure: error: can not create `pwd`/$ac_config_dir" 1>&2; exit 1; }
+ fi
+ ;;
+ esac
+
+ ac_popdir=`pwd`
+ cd $ac_config_dir
+
+ case "$srcdir" in
+ .) # No --srcdir option. We are building in place.
+ ac_sub_srcdir=$srcdir ;;
+ /*) # Absolute path.
+ ac_sub_srcdir=$srcdir/$ac_config_dir ;;
+ *) # Relative path.
+ ac_sub_srcdir=../$srcdir/$ac_config_dir ;;
+ esac
+
+ # Check for guested configure; otherwise get Cygnus style configure.
+ if test -f $ac_sub_srcdir/configure; then
+ ac_sub_configure=$ac_sub_srcdir/configure
+ elif test -f $ac_sub_srcdir/configure.in; then
+ ac_sub_configure=$ac_configure
+ else
+ echo "configure: warning: no configuration information is in $ac_config_dir" 1>&2
+ ac_sub_configure=
+ fi
+
+ # The recursion is here.
+ if test -n "$ac_sub_configure"; then
+
+ # Make the cache file name correct relative to the subdirectory.
+ # A "../" for each directory in /$ac_config_dir.
+ ac_dots=`echo $ac_config_dir|sed -e 's%^\./%%' -e 's%[^/]$%&/%' -e 's%[^/]*/%../%g'`
+ case "$cache_file" in
+ /*) ac_sub_cache_file=$cache_file ;;
+ *) # Relative path.
+ ac_sub_cache_file="$ac_dots$cache_file" ;;
+ esac
+ case "$ac_given_INSTALL" in
+ [/$]*) INSTALL="$ac_given_INSTALL" ;;
+ *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
+ esac
+
+ echo "running ${CONFIG_SHELL-/bin/sh} $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_sub_srcdir"
+ # The eval makes quoting arguments work.
+ if eval ${CONFIG_SHELL-/bin/sh} $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_sub_srcdir
+ then :
+ else
+ { echo "configure: error: $ac_sub_configure failed for $ac_config_dir" 1>&2; exit 1; }
+ fi
+ fi
+
+ cd $ac_popdir
+ done
+fi
+
+
+
+
+eval "DIR_DATADIR=$datadir"
+DIR_DATADIR="$DIR_DATADIR/lilypond"
+echo $ac_n "checking ""... $ac_c" 1>&6
+
+cat << EOF > lib/out/config.hh
+
+/* automatically generated by configure */
+/* include this file only once! */
+
+#define DIR_DATADIR "$DIR_DATADIR"
+
+EOF
+
+CXX="$ac_cv_prog_CXX" bin/make_version >> lib/out/config.hh
+
touch make/out/Site.make
-$MAKE -C make -f Initial.make
+# ugr
+(cd mi2mu; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+)
+(cd lily; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+)
+ (cd flower;
+)
+cat << END
+
+Finished configuring. For making everything, do:
+
+ make all
+
+If you only want help on the make targets, do a
-echo "The sources are ready for compiling. "
-echo "To make sure that you don't have any stale dependencies: do"
-echo " make clean"
+ make help
+END
--- /dev/null
+dnl Process this file with autoconf to produce a configure script. -*-shell-script-*-
+
+dnl should cache result.
+dnl should look in $prefix first.
+
+AC_DEFUN(AC_TEX_SUBDIR, [
+
+ # do something sensible if root hasn't specced dir yet attempts install
+
+ AC_MSG_CHECKING(TeX installation directory)
+
+ ac_tmp_prefix=$prefix
+ test "x$ac_tmp_prefix" = xNONE && ac_tmp_prefix=$ac_default_prefix
+
+ for texdir in $ac_tmp_prefix $ac_tmp_prefix/lib; do
+ if test -d $texdir/texmf; then
+ TEXTOP=$texdir/texmf
+ break
+ else
+ if test -d $texdir/tex; then
+ TEXTOP=$texdir/tex
+ break
+ fi
+ fi
+ done
+ $1=$ac_tmp_prefix/lib/texmf/tex
+ if test x = "x$TEXTOP"; then
+ AC_MSG_WARN(Cannot determine a tex-directory. Please use --enable-texprefix)
+ else
+ $1=`$FIND $TEXTOP -type d -a -name tex -print |sort|head -1`
+ fi
+ fi
+
+ AC_MSG_RESULT($$1)
+])
+
+
+AC_INIT(flower/lib/choleski.cc)
+AC_LANG_CPLUSPLUS
+
+AC_ARG_ENABLE(printing,
+ [ printing set debug printing],
+ [],
+ [DEFINES="$DEFINES -DNPRINT=1"])
+AC_ARG_ENABLE(checking,
+ [ checking set runtime checks],
+ [],
+ [DEFINES="$DEFINES -DNDEBUG=1"])
+AC_ARG_ENABLE(debug,
+ [ debug set debug info],
+ [DEFINES="$DEFINES -g"])
+AC_ARG_ENABLE(optimise,
+ [ optimise use maximal speed optimisations],
+ [DEFINES="$DEFINES -O2 -DSTRING_UTILS_INLINED"])
+AC_ARG_ENABLE(profiling,
+ [ profiling compile with gprof support],
+ [DEFINES="$DEFINES -pg"])
+AC_ARG_ENABLE(texprefix,
+ [ texprefix=DIR set the tex-directory to put the lilypond subdir in.],
+ [TEXPREFIX=$enableval],
+ [TEXPREFIX=auto] )
+
+dnl COMPILEINFO="$HOST $host $TARGET $target"
+AUTOHEADER="This file was automatically generated by configure"
+CXXFLAGS=${CXXFLAGS:-""} # we don't want -g -O junk
+AC_PROG_CXX
+AC_PROG_RANLIB
+AC_PROG_INSTALL
+AC_CHECK_PROGS(FIND, find, error)
+
+dnl should check out -print
+if test FIND = error; then
+ AC_MSG_WARN(Couldn't find \`find'. Please use --enable-texprefix)
+else
+
+
+AC_SUBST(DEFINES)
+AC_SUBST(COMPILEINFO)
+AC_SUBST(AUTOHEADER)
+AC_SUBST(BISON)
+AC_SUBST(FLEX)
+AC_SUBST(TEXPREFIX)
+
+
+AC_CHECK_PROGS(BISON, bison, error)
+AC_CHECK_PROGS(FLEX, flex, error)
+AC_CHECK_PROGS(MAKE, make, error)
+AC_CHECK_PROGS(PODMAN, pod2man, error)
+
+if test $TEXPREFIX = auto ; then
+ AC_TEX_SUBDIR(TEXPREFIX)
+fi
+
+if test $MAKE = "error"
+then
+ AC_MSG_ERROR(Please install GNU make)
+else
+ $MAKE -v| grep -q GNU
+ if test "$?" = 1
+ then
+ AC_MSG_WARN(Please install *GNU* make)
+ fi
+fi
+
+
+if test $BISON = "error"
+then
+ AC_MSG_WARN(can't find bison. Please install Bison (1.24 or better))
+fi
+
+if test $PODMAN = "error"
+then
+ AC_MSG_WARN(can't find pod. You should install Perl (version 5 or better))
+fi
+
+if test $FLEX = "error"
+then
+ AC_MSG_WARN(can't find flex. Please install Flex (2.5 or better))
+fi
+
+if $CXX --version | grep -q '2\.7'
+then
+ true
+else
+ AC_MSG_WARN(can't find g++ 2.7)
+fi
+
+AC_CHECK_HEADER(FlexLexer.h, true,
+ AC_MSG_ERROR(can't find flex header. Please install Flex headers correctly))
+AC_CONFIG_SUBDIRS(flower)
+AC_OUTPUT(make/out/Configure_variables.make:make/Configure_variables.make.in)
+
+
+
+dnl URG!!!!!!
+eval "DIR_DATADIR=$datadir"
+DIR_DATADIR="$DIR_DATADIR/lilypond"
+AC_MSG_CHECKING
+
+cat << EOF > lib/out/config.hh
+
+/* automatically generated by configure */
+/* include this file only once! */
+
+#define DIR_DATADIR "$DIR_DATADIR"
+
+EOF
+
+CXX="$ac_cv_prog_CXX" bin/make_version >> lib/out/config.hh
+
+touch make/out/Site.make
+
+# ugr
+(cd mi2mu; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+dnl echo 0 > out/.build
+)
+(cd lily; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+dnl echo 0 > out/.build
+)
+ (cd flower;
+dnl echo 0 > out/.build
+)
+cat << END
+
+Finished configuring. For making everything, do:
+
+ make all
+
+If you only want help on the make targets, do a
+
+ make help
+
+END
MAJOR_VERSION = 1
MINOR_VERSION = 1
-PATCH_LEVEL = 6
+PATCH_LEVEL = 7
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = # include separator: "-1" or ".a"
#
# edit .version only
include ./$(depth)/flower/.version
include ./$(depth)/.version
-build = ./$(depth)/flower/lib/.build
+build = ./$(depth)/flower/$(outdir)/.build
#
# generic variables:
# descent order into subdirectories:
#
-SUBDIRS = lib
+SUBDIRS = lib test
#
# list of distribution files:
#
-SCRIPTS = # make_version make_patch genheader clearlily configure
+SCRIPTS =
README_FILES = NEWS README TODO
-DISTFILES= Makefile .version $(README_FILES) $(SCRIPTS)
+DISTFILES= configure config.hh.in configure.in Makefile .version $(README_FILES) $(SCRIPTS)
#
# generic targets and rules:
#
include ./$(depth)/make/Targets.make
-# include ./$(depth)/make/Rules.make
+include ./$(depth)/make/Rules.make
#
# version:
#
-flower-version: $(flower-version)
-$(flower-version): ./$(depth)/flower/.version ./$(bindir)/make_fversion $(build)
- ./$(bindir)/make_fversion "$(MAJOR_VERSION)" "$(MINOR_VERSION)" "$(PATCH_LEVEL)" "$(MY_PATCH_LEVEL)" "$(BUILD)" "$(CXX) $(CXXVER)" > $@
-#
+localdist: configure
+pl 1.1.7
+ - PQueue blondification.
+ - String_convert::i2hex_str fix, unsigned eqvs introduced
+ - long long deprecioated, now named I64
+ - type I32 introduced. should be used iso int where 32 bits are
+ needed(or, brr, assumed...)
+
+pl 1.1.6-2
+Bugfix
+ - silly String( int... ) -> String( (char)... ) fix
+ really should junk ambiguous constructor overload
+pl 1.1.6-1
+
+Bugfix
+ - small but nasty include/fversion.hh fixed
+
pl 1.1.6
- all of 1.1.4-1 and 1.1.5
Bugfix
- snprintf
pl 1.1.4-1
- - included in new make structure
+ - included in new make structure, as a library of lilypond;
+ for compiling you-ll need ../make and ../bin dirs from
+ lilypond...
pl 1.1.4
- great file-renaming.
+ * Autoconf configure script.
+
+ * fix/junk ambiguous String constructor overloads, e.g.:
+ String( int ) and String( char )
+
* shared lib.
* LGPL?
--- /dev/null
+/* define if you have memmem */
+#define HAVE_MEMMEM 0
+
+/* define if you have snprintf */
+#define HAVE_SNPRINTF 0
+
+/* just testing */
+#define HAVE_FOOBAR 0
--- /dev/null
+#! /bin/sh
+
+# Guess values for system-dependent variables and create Makefiles.
+# Generated automatically using autoconf version 2.10
+# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+#
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+
+# Defaults:
+ac_help=
+ac_default_prefix=/usr/local
+# Any additions from configure.in:
+
+# Initialize some variables set by options.
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+build=NONE
+cache_file=./config.cache
+exec_prefix=NONE
+host=NONE
+no_create=
+nonopt=NONE
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+target=NONE
+verbose=
+x_includes=NONE
+x_libraries=NONE
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+# Initialize some other variables.
+subdirs=
+MFLAGS= MAKEFLAGS=
+
+ac_prev=
+for ac_option
+do
+
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval "$ac_prev=\$ac_option"
+ ac_prev=
+ continue
+ fi
+
+ case "$ac_option" in
+ -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+ *) ac_optarg= ;;
+ esac
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case "$ac_option" in
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir="$ac_optarg" ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build="$ac_optarg" ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file="$ac_optarg" ;;
+
+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+ | --da=*)
+ datadir="$ac_optarg" ;;
+
+ -disable-* | --disable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ eval "enable_${ac_feature}=no" ;;
+
+ -enable-* | --enable-*)
+ ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+ fi
+ ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "enable_${ac_feature}='$ac_optarg'" ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix="$ac_optarg" ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he)
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat << EOF
+Usage: configure [options] [host]
+Options: [defaults in brackets after descriptions]
+Configuration:
+ --cache-file=FILE cache test results in FILE
+ --help print this message
+ --no-create do not create output files
+ --quiet, --silent do not print \`checking...' messages
+ --version print the version of autoconf that created configure
+Directory and file names:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [same as prefix]
+ --bindir=DIR user executables in DIR [EPREFIX/bin]
+ --sbindir=DIR system admin executables in DIR [EPREFIX/sbin]
+ --libexecdir=DIR program executables in DIR [EPREFIX/libexec]
+ --datadir=DIR read-only architecture-independent data in DIR
+ [PREFIX/share]
+ --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data in DIR
+ [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var]
+ --libdir=DIR object code libraries in DIR [EPREFIX/lib]
+ --includedir=DIR C header files in DIR [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include]
+ --infodir=DIR info documentation in DIR [PREFIX/info]
+ --mandir=DIR man documentation in DIR [PREFIX/man]
+ --srcdir=DIR find the sources in DIR [configure dir or ..]
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM
+ run sed PROGRAM on installed program names
+EOF
+ cat << EOF
+Host type:
+ --build=BUILD configure for building on BUILD [BUILD=HOST]
+ --host=HOST configure for HOST [guessed]
+ --target=TARGET configure for TARGET [TARGET=HOST]
+Features and packages:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
+ --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --x-includes=DIR X include files are in DIR
+ --x-libraries=DIR X library files are in DIR
+EOF
+ if test -n "$ac_help"; then
+ echo "--enable and --with options recognized:$ac_help"
+ fi
+ exit 0 ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host="$ac_optarg" ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir="$ac_optarg" ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir="$ac_optarg" ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir="$ac_optarg" ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir="$ac_optarg" ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst \
+ | --locals | --local | --loca | --loc | --lo)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+ localstatedir="$ac_optarg" ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir="$ac_optarg" ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir="$ac_optarg" ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix="$ac_optarg" ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix="$ac_optarg" ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix="$ac_optarg" ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name="$ac_optarg" ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir="$ac_optarg" ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir="$ac_optarg" ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site="$ac_optarg" ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir="$ac_optarg" ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir="$ac_optarg" ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target="$ac_optarg" ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers)
+ echo "configure generated by autoconf version 2.10"
+ exit 0 ;;
+
+ -with-* | --with-*)
+ ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ case "$ac_option" in
+ *=*) ;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "with_${ac_package}='$ac_optarg'" ;;
+
+ -without-* | --without-*)
+ ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+ # Reject names that are not valid shell variable names.
+ if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
+ { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+ fi
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ eval "with_${ac_package}=no" ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes="$ac_optarg" ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries="$ac_optarg" ;;
+
+ -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+ ;;
+
+ *)
+ if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
+ echo "configure: warning: $ac_option: invalid host type" 1>&2
+ fi
+ if test "x$nonopt" != xNONE; then
+ { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
+ fi
+ nonopt="$ac_option"
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
+fi
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+# File descriptor usage:
+# 0 standard input
+# 1 file creation
+# 2 errors and warnings
+# 3 some systems may open it to /dev/tty
+# 4 used on the Kubota Titan
+# 6 checking for... messages and results
+# 5 compiler messages saved in config.log
+if test "$silent" = yes; then
+ exec 6>/dev/null
+else
+ exec 6>&1
+fi
+exec 5>./config.log
+
+echo "\
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+" 1>&5
+
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell metacharacters.
+ac_configure_args=
+for ac_arg
+do
+ case "$ac_arg" in
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c) ;;
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
+ ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ *) ac_configure_args="$ac_configure_args $ac_arg" ;;
+ esac
+done
+
+# NLS nuisances.
+# Only set LANG and LC_ALL to C if already set.
+# These must not be set unconditionally because not all systems understand
+# e.g. LANG=C (notably SCO).
+if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+if test "${LANG+set}" = set; then LANG=C; export LANG; 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
+
+# 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=lib/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'
+
+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
+
+
+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'
+
+
+
+for ac_prog in $CCC c++ g++ gcc CC cxx
+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
+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 we are using GNU C++""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.C <<EOF
+#ifdef __GNUC__
+ yes;
+#endif
+EOF
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:567: \"$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
+fi
+fi
+
+echo "$ac_t""$ac_cv_prog_gxx" 1>&6
+if test $ac_cv_prog_gxx = yes; then
+ GXX=yes
+ if test "${CXXFLAGS+set}" != set; then
+ echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_prog_gxx_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_gxx_g=yes
+else
+ ac_cv_prog_gxx_g=no
+fi
+rm -f conftest*
+
+fi
+
+echo "$ac_t""$ac_cv_prog_gxx_g" 1>&6
+ if test $ac_cv_prog_gxx_g = yes; then
+ CXXFLAGS="-g -O"
+ else
+ CXXFLAGS="-O"
+ fi
+ fi
+else
+ GXX=
+ test "${CXXFLAGS+set}" = set || CXXFLAGS="-g"
+fi
+
+# If we cannot run a trivial program, we must be cross compiling.
+echo $ac_n "checking whether cross-compiling""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_c_cross'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test "$cross_compiling" = yes; then
+ ac_cv_c_cross=yes
+else
+cat > conftest.$ac_ext <<EOF
+#line 613 "configure"
+#include "confdefs.h"
+#ifdef __cplusplus
+extern "C" void exit(int);
+#endif
+main(){return(0);}
+EOF
+{ (eval echo configure:620: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }
+if test -s conftest && (./conftest; exit) 2>/dev/null; then
+ ac_cv_c_cross=no
+else
+ ac_cv_c_cross=yes
+fi
+fi
+rm -fr conftest*
+fi
+
+echo "$ac_t""$ac_cv_c_cross" 1>&6
+cross_compiling=$ac_cv_c_cross
+
+echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_func_memcmp'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ if test "$cross_compiling" = yes; then
+ ac_cv_func_memcmp=no
+else
+cat > conftest.$ac_ext <<EOF
+#line 641 "configure"
+#include "confdefs.h"
+#ifdef __cplusplus
+extern "C" void exit(int);
+#endif
+
+main()
+{
+ char c0 = 0x40, c1 = 0x80, c2 = 0x81;
+ exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1);
+}
+
+EOF
+{ (eval echo configure:654: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }
+if test -s conftest && (./conftest; exit) 2>/dev/null; then
+ ac_cv_func_memcmp=yes
+else
+ ac_cv_func_memcmp=no
+fi
+fi
+rm -fr conftest*
+fi
+
+echo "$ac_t""$ac_cv_func_memcmp" 1>&6
+test $ac_cv_func_memcmp = no && LIBOBJS="$LIBOBJS memcmp.o"
+
+echo $ac_n "checking for vprintf""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 672 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char vprintf(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char vprintf();
+
+int main() { return 0; }
+int t() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_vprintf) || defined (__stub___vprintf)
+choke me
+#else
+vprintf();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ rm -rf conftest*
+ eval "ac_cv_func_vprintf=yes"
+else
+ rm -rf conftest*
+ eval "ac_cv_func_vprintf=no"
+fi
+rm -f conftest*
+
+fi
+if eval "test \"`echo '$ac_cv_func_'vprintf`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ cat >> confdefs.h <<\EOF
+#define HAVE_VPRINTF 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+if test "$ac_cv_func_vprintf" != yes; then
+echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
+if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 725 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char _doprnt(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char _doprnt();
+
+int main() { return 0; }
+int t() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub__doprnt) || defined (__stub____doprnt)
+choke me
+#else
+_doprnt();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:752: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ rm -rf conftest*
+ eval "ac_cv_func__doprnt=yes"
+else
+ rm -rf conftest*
+ eval "ac_cv_func__doprnt=no"
+fi
+rm -f conftest*
+
+fi
+if eval "test \"`echo '$ac_cv_func_'_doprnt`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ cat >> confdefs.h <<\EOF
+#define HAVE_DOPRNT 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+
+fi
+
+for ac_func in memmem snprintf foobar
+do
+echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+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 <<EOF
+#line 781 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func(); below. */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func();
+
+int main() { return 0; }
+int t() {
+
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+$ac_func();
+#endif
+
+; return 0; }
+EOF
+if { (eval echo configure:808: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=yes"
+else
+ rm -rf conftest*
+ eval "ac_cv_func_$ac_func=no"
+fi
+rm -f conftest*
+
+fi
+if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_func 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+done
+
+
+
+CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+
+trap '' 1 2 15
+cat > confcache <<\EOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs. It is not useful on other systems.
+# If it contains results you don't want to keep, you may remove or edit it.
+#
+# By default, configure uses ./config.cache as the cache file,
+# creating it if it does not exist already. You can give configure
+# the --cache-file=FILE option to use a different cache file; that is
+# what configure does when it calls configure scripts in
+# subdirectories, so they share the cache.
+# Giving --cache-file=/dev/null disables caching, for debugging configure.
+# config.status only pays attention to the cache file if you give it the
+# --recheck option to rerun configure.
+#
+EOF
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+(set) 2>&1 |
+ sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
+ >> confcache
+if cmp -s $cache_file confcache; then
+ :
+else
+ if test -w $cache_file; then
+ echo "updating cache $cache_file"
+ cat confcache > $cache_file
+ else
+ echo "not updating unwritable cache $cache_file"
+ fi
+fi
+rm -f confcache
+
+trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# Any assignment to VPATH causes Sun make to only execute
+# the first set of double-colon rules, so remove it if not needed.
+# If there is a colon in the path, we need to keep it.
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d'
+fi
+
+trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
+
+DEFS=-DHAVE_CONFIG_H
+
+# Without the "./", some shells look in PATH for config.status.
+: ${CONFIG_STATUS=./config.status}
+
+echo creating $CONFIG_STATUS
+rm -f $CONFIG_STATUS
+cat > $CONFIG_STATUS <<EOF
+#! /bin/sh
+# Generated automatically by configure.
+# Run this file to recreate the current configuration.
+# This directory was configured as follows,
+# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+#
+# $0 $ac_configure_args
+#
+# Compiler output produced by configure, useful for debugging
+# configure, is in ./config.log if it exists.
+
+ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
+for ac_option
+do
+ case "\$ac_option" in
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
+ exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
+ -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+ echo "$CONFIG_STATUS generated by autoconf version 2.10"
+ exit 0 ;;
+ -help | --help | --hel | --he | --h)
+ echo "\$ac_cs_usage"; exit 0 ;;
+ *) echo "\$ac_cs_usage"; exit 1 ;;
+ esac
+done
+
+ac_given_srcdir=$srcdir
+
+trap 'rm -fr `echo " lib/out/config.hh:config.hh.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+# Protect against being on the right side of a sed subst in config.status.
+sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
+ s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
+$ac_vpsub
+$extrasub
+s%@CFLAGS@%$CFLAGS%g
+s%@CPPFLAGS@%$CPPFLAGS%g
+s%@CXXFLAGS@%$CXXFLAGS%g
+s%@DEFS@%$DEFS%g
+s%@LDFLAGS@%$LDFLAGS%g
+s%@LIBS@%$LIBS%g
+s%@exec_prefix@%$exec_prefix%g
+s%@prefix@%$prefix%g
+s%@program_transform_name@%$program_transform_name%g
+s%@bindir@%$bindir%g
+s%@sbindir@%$sbindir%g
+s%@libexecdir@%$libexecdir%g
+s%@datadir@%$datadir%g
+s%@sysconfdir@%$sysconfdir%g
+s%@sharedstatedir@%$sharedstatedir%g
+s%@localstatedir@%$localstatedir%g
+s%@libdir@%$libdir%g
+s%@includedir@%$includedir%g
+s%@oldincludedir@%$oldincludedir%g
+s%@infodir@%$infodir%g
+s%@mandir@%$mandir%g
+s%@CXX@%$CXX%g
+s%@LIBOBJS@%$LIBOBJS%g
+
+CEOF
+EOF
+cat >> $CONFIG_STATUS <<EOF
+
+CONFIG_FILES=\${CONFIG_FILES-""}
+EOF
+cat >> $CONFIG_STATUS <<\EOF
+for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+ # Support "outfile[: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
+
+ # Adjust relative srcdir, etc. for subdirectories.
+
+ # 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"
+ ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+ else
+ ac_dir_suffix= ac_dots=
+ fi
+
+ case "$ac_given_srcdir" in
+ .) srcdir=.
+ if test -z "$ac_dots"; then top_srcdir=.
+ else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
+ /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+ *) # Relative path.
+ srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
+ top_srcdir="$ac_dots$ac_given_srcdir" ;;
+ esac
+
+ echo creating "$ac_file"
+ rm -f "$ac_file"
+ configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
+ case "$ac_file" in
+ *Makefile*) ac_comsub="1i\\
+# $configure_input" ;;
+ *) ac_comsub= ;;
+ esac
+ sed -e "$ac_comsub
+s%@configure_input@%$configure_input%g
+s%@srcdir@%$srcdir%g
+s%@top_srcdir@%$top_srcdir%g
+" -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file
+fi; done
+rm -f conftest.subs
+
+# 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'
+
+CONFIG_HEADERS=${CONFIG_HEADERS-"lib/out/config.hh:config.hh.in"}
+for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
+ # Support "outfile[: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
+ cp $ac_given_srcdir/$ac_file_in 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.
+# Maximum number of lines to put in a single here document.
+ac_max_here_lines=12
+
+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 <<CEOF' >> $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
+
+
+
+exit 0
+EOF
+chmod +x $CONFIG_STATUS
+rm -fr confdefs* $ac_clean_files
+test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
+
--- /dev/null
+dnl Process this file with autoconf to produce a configure script.
+AC_INIT(lib/choleski.cc)
+AC_LANG_CPLUSPLUS
+
+dnl should enable flower specific compile flags.
+
+AC_PROG_CXX
+AC_FUNC_MEMCMP
+AC_FUNC_VPRINTF
+AC_CHECK_FUNCS(memmem snprintf foobar)
+AC_CONFIG_HEADER(lib/out/config.hh:config.hh.in)
+
+CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
+
+AC_OUTPUT()
depth = ../..
#
+# generic variables:
+#
+include ./$(depth)/make/Variables.make
+#
+
# identify module:
#
NAME = flower
MODULE_NAME = flower
include ./$(depth)/flower/.version
-build = ./$(depth)/flower/lib/.build
-#
-
-# generic variables:
-#
-include ./$(depth)/make/Variables.make
+build = ./$(depth)/flower/$(outdir)/.build
#
# descent order into subdirectories:
#
-SUBDIRS = include
+SUBDIRS = include
#
# to be remade each build:
#
-VERSION_DEPENDENCY = include/fversion.hh
+VERSION_DEPENDENCY =#
#
# list of c++ header files:
#
-HHFILES = # $(shell ls include/*.hh)
+HHFILES = $(shell ls *.hh $(ERROR_LOG))
#
# list of c++ source files:
#
-CCFILES = $(shell ls *.cc)
+CCFILES = $(shell ls *.cc $(ERROR_LOG))
#
# list of other source files:
#
-EXTRA_SOURCE_FILES =# $(shell ls *.y *.l)
+EXTRA_SOURCE_FILES = $(shell ls *.y *.l $(ERROR_LOG))
#
# list of distribution files:
default: $(MAINTARGET)
#
-# sic.
-$(include-flower)/flower-config.hh:
- touch $@
-
+# # sic.
+# $(include-flower)/flower-config.hh:
+# touch $@
+
# generic targets and rules:
#
include ./$(depth)/make/Targets.make
include ./$(depth)/make/Rules.make
#
+# list of depend files:
+#
+DEPFILES = $(shell ls $(depdir)/*.dep $(ERROR_LOG))
+#
+
# auto dependencies:
#
--include ./$(outdir)/*.dep
+-include /dev/null $(DEPFILES)
#
+
+
#include <fstream.h>
#include "assoc.hh"
#include "dstream.hh"
local_silence = (*silent)[idx];
if (classname != idx && !local_silence) {
classname=idx;
-// *os << "[" << classname << ":]"; // messy.
+ if (!(*silent)["Dstream"])
+ *os << "[" << classname << ":]"; // messy.
}
return *this;
}
--- /dev/null
+#include "../out/version.hh" // urg
+#include <stdio.h>
+
+static char *s = "FlowerLib " MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL " #%d";
+
+static const int build=
+#include "../out/.build"
+;
+
+const char *
+flower_version_sz()
+{
+ static char v[1024];
+ sprintf(v, s, build);
+ return v;
+}
#
MODULE_NAME = flower
include ./$(depth)/flower/.version
-build = ./$(depth)/flower/lib/.build
+build = ./$(depth)/flower/$(outdir)/.build
#
#ifndef FPROTO_HH
#define FPROTO_HH
-#include "flower-config.hh"
+
+const char * flower_version_sz();
+
+// what the F*** is "int" ?
+// depreciate int, long, etc., use i32, i64, remember: linux-16/linux-64 ?
+/// (i32)
+typedef int i32;
+/// (i64)
+typedef long long I64;
template<class T> struct Array;
template<class T> struct sstack;
template<class T> struct PCursor;
template<class T> struct Link;
template<class T> struct Handle;
-template<class T>struct Interval_t;
+template<class T> struct Interval_t;
+template<class T,class Q> struct PQueue;
+
#include "real.hh"
typedef Interval_t<Real> Interval;
#ifndef LIBC_EXTENSION_HH
#define LIBC_EXTENSION_HH
#include "fproto.hh"
+#include "config.hh"
char* strnlwr( char* start_l ,int n);
char* strnupr( char* start_l, int n);
/**
Stupid Prioq. Should use Lists and STL.
Smallest is put at the front.
+
+Actually, this sux. Should use a template struct PQuee_ent<V,I>
*/
template<class V, class I>
{
Array<V> value_arr_;
Array<I> indices_arr_;
-
+ void OK() const
+ {
+
+ assert(value_arr_.size() == indices_arr_.size());
+ }
+
void enter(V v, I idx) {
int j=0;
for (; j < value_arr_.size(); j++)
if (indices_arr_[j] > idx)
break;
- value_arr_.insert(v, j);
- indices_arr_.insert(idx, j);
+ insert(j,v,idx);
+
}
int size() { return value_arr_.size(); }
V front_val() { return value_arr_[0]; }
I front_idx() { return indices_arr_[0]; }
+ void del(int i)
+ {
+ value_arr_.del(i);
+ indices_arr_.del(i);
+ }
+ int size() const
+ {
+ OK();
+ return value_arr_.size();
+ }
+
+
+ void insert(int j, V v, I idx)
+ {
+ value_arr_.insert(v, j);
+ indices_arr_.insert(idx, j);
+ }
+
+
+
V get() {
V retval = front_val();
- value_arr_.del(0);
- indices_arr_.del(0);
+ del(0);
return retval;
}
static int dec2_i( String dec_str );
static double dec2_f( String dec_str );
static String double_str(double f, char const* fmt=0);
- static int hex2int_i( String str );
+ static int hex2_i( String str );
+ static unsigned hex2_u( String str );
static String hex2bin_str( String str );
static String int_str(int i, char const *fmt=0 );
static String i2hex_str( int i, int length_i, char ch );
+ static String u2hex_str( unsigned u, int length_i, char ch );
static String i2dec_str( int i, int length_i, char ch );
static String rational_str(Rational);
static String pointer_str(const void *);
- static String longlong_str(long long , char const * fmt = 0);
+ static String i64_str(I64, char const * fmt = 0);
};
#endif // __STRING_CONVERT_HH //
}
#ifndef HAVE_SNPRINTF
-int snprintf ( char *str, size_t n,
+int snprintf ( char *str, size_t,
const char *format, ... )
{
va_list ap;
#include <assert.h>
+#include <limits.h>
#include "libc-extension.hh"
#include "string.hh"
#include "string-convert.hh"
}
String
-String_convert::longlong_str(long long ll, char const* fmt)
+String_convert::i64_str( I64 i64, char const* fmt)
{
char buffer[STRING_BUFFER_LEN];
snprintf(buffer, STRING_BUFFER_LEN,
- (fmt ? fmt : "%Ld"), ll ); // assume radix 10
+ (fmt ? fmt : "%Ld"), i64 ); // assume radix 10
return String(buffer);
}
// stupido. Should use int_str()
String
-String_convert::i2hex_str( int i, int length_i, char ch )
+String_convert::u2hex_str( unsigned u, int length_i, char fill_ch )
{
String str;
- if ( !i )
+ if ( !u )
str = "0";
- while ( i ) {
- str = String( ( i % 16 )["0123456789abcdef"] ) + str;
- i /= 16;
+
+#if 1 // both go...
+ while ( u ) {
+ str = String( (char)( ( u % 16 )["0123456789abcdef"] ) ) + str;
+ u /= 16;
}
- if ( str.length_i() < length_i )
- str = String( ch, length_i - str.length_i() ) + str;
+#else
+ str += int_str( u, "%x" );
+#endif
+
+ str = String( fill_ch, length_i - str.length_i() ) + str;
+ while ( ( str.length_i() > length_i ) && ( str[ 0 ] == 'f' ) )
+ str = str.mid_str( 2, INT_MAX );
+
return str;
}
+String
+String_convert::i2hex_str( int i, int length_i, char fill_ch )
+{
+ return u2hex_str( (unsigned)i, length_i, fill_ch );
+}
+
Byte
String_convert::nibble2hex_byte( Byte byte )
{
String
String_convert::pointer_str(const void *l)
{
- long long int ill = (long long int )l;
- return String_convert::longlong_str(ill, "0x%0Lx");
+ I64 i64 = (I64)l;
+ return String_convert::i64_str(i64, "0x%0Lx");
}
# include ./$(depth)/$(NAME)/.version
MODULE_NAME = flower
include ./$(depth)/flower/.version
-build = ./$(depth)/flower/lib/.build
+build = ./$(depth)/flower/test/$(outdir)/.build
#
# generic variables:
#
# MAINTARGET = $(EXECUTABLE)
# MAINTARGET = $(LIBRARY)
-MAINTARGET = $(bindir)/$(EXECUTABLE)# huh?
+MAINTARGET = $(lily_bindir)/$(EXECUTABLE)# huh?
# MAINTARGET = $(libdir)/$(LIBRARY)# huh?
#default: $(MAINTARGET)
EXECSTRINGTEST=$(EXECUTABLE)
default: $(BUILDSTRINGTEST) do-stringtest
do-stringtest:
- $(EXECSTRINGTEST) # should return error value if test fails
+ $(EXECSTRINGTEST) # should cmp with a 'standard result'
dummy:
}
str = "blonde haren";
cout << str<<endl;
- cout << "mid(2,6)="<<str.mid_str(2,3)<<endl;
- cout << "nomid(2,6)="<<str.nomid_str(2,3)<<endl;
+ cout << "mid(2,6)="<<str.mid_str(2,6)<<endl;
+ cout << "nomid(2,6)="<<str.nomid_str(2,6)<<endl;
}
bool
-test_empty_bo( String str )
+test_empty_b( String str )
{
cout << "`" << str << "' is ";
str += " daar";
cout << str << endl;
- str = String( "Hallo" ) + " daaR" + '!';
+// str = String( "Hallo" ) + " daaR" + '!'; // no go on doze-s gcc2.7.2?
+ str = String( "Hallo" ) + " daaR" + "!";
cout << str << endl;
cout << "up: " << str.upper_str() << " down: " << str.lower_str()<<endl;
- if ( test_empty_bo( str ) )
+ if ( test_empty_b( str ) )
return 1;
String fn = "";
- if ( !test_empty_bo( fn ) )
+ if ( !test_empty_b( fn ) )
return 1;
fn = "";
depth = ..
#
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
# generic stuff/Makefile
#
DISTFILES = Makefile $(INIFILES)
#
+localinstall:
+ $(INSTALL) -d $(datadir)/lilypond/init
+ $(INSTALL) -m 755 $(INIFILES) $(datadir)/lilypond/init
+
+localuninstall:
+ for i in $(INIFILES) ; do rm -f $(datadir)/lilypond/init/$$i; done
+ -rmdir $(datadir)/lilypond/init $(datadir)/lilypond/
depth = ..
#
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
# generic stuff/Makefile
#
--- /dev/null
+#! /bin/sh
+
+# ugr. Why $#^&@ does configure need this?
+
+#
+# install - install a program, script, or datafile
+# This comes from X11R5.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch.
+#
+
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+transformbasename=""
+transform_arg=""
+instcmd="$mvprog"
+chmodcmd="$chmodprog 0755"
+chowncmd=""
+chgrpcmd=""
+stripcmd=""
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=""
+dst=""
+dir_arg=""
+
+while [ x"$1" != x ]; do
+ case $1 in
+ -c) instcmd="$cpprog"
+ shift
+ continue;;
+
+ -d) dir_arg=true
+ shift
+ continue;;
+
+ -m) chmodcmd="$chmodprog $2"
+ shift
+ shift
+ continue;;
+
+ -o) chowncmd="$chownprog $2"
+ shift
+ shift
+ continue;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift
+ shift
+ continue;;
+
+ -s) stripcmd="$stripprog"
+ shift
+ continue;;
+
+ -t=*) transformarg=`echo $1 | sed 's/-t=//'`
+ shift
+ continue;;
+
+ -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
+ shift
+ continue;;
+
+ *) if [ x"$src" = x ]
+ then
+ src=$1
+ else
+ # this colon is to work around a 386BSD /bin/sh bug
+ :
+ dst=$1
+ fi
+ shift
+ continue;;
+ esac
+done
+
+if [ x"$src" = x ]
+then
+ echo "install: no input file specified"
+ exit 1
+else
+ true
+fi
+
+if [ x"$dir_arg" != x ]; then
+ dst=$src
+ src=""
+
+ if [ -d $dst ]; then
+ instcmd=:
+ else
+ instcmd=mkdir
+ fi
+else
+
+# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
+# might cause directories to be created, which would be especially bad
+# if $src (and thus $dsttmp) contains '*'.
+
+ if [ -f $src -o -d $src ]
+ then
+ true
+ else
+ echo "install: $src does not exist"
+ exit 1
+ fi
+
+ if [ x"$dst" = x ]
+ then
+ echo "install: no destination specified"
+ exit 1
+ else
+ true
+ fi
+
+# If destination is a directory, append the input filename; if your system
+# does not like double slashes in filenames, you may need to add some logic
+
+ if [ -d $dst ]
+ then
+ dst="$dst"/`basename $src`
+ else
+ true
+ fi
+fi
+
+## this sed command emulates the dirname command
+dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
+
+# Make sure that the destination directory exists.
+# this part is taken from Noah Friedman's mkinstalldirs script
+
+# Skip lots of stat calls in the usual case.
+if [ ! -d "$dstdir" ]; then
+defaultIFS='
+'
+IFS="${IFS-${defaultIFS}}"
+
+oIFS="${IFS}"
+# Some sh's can't handle IFS=/ for some reason.
+IFS='%'
+set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
+IFS="${oIFS}"
+
+pathcomp=''
+
+while [ $# -ne 0 ] ; do
+ pathcomp="${pathcomp}${1}"
+ shift
+
+ if [ ! -d "${pathcomp}" ] ;
+ then
+ $mkdirprog "${pathcomp}"
+ else
+ true
+ fi
+
+ pathcomp="${pathcomp}/"
+done
+fi
+
+if [ x"$dir_arg" != x ]
+then
+ $doit $instcmd $dst &&
+
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
+else
+
+# If we're going to rename the final executable, determine the name now.
+
+ if [ x"$transformarg" = x ]
+ then
+ dstfile=`basename $dst`
+ else
+ dstfile=`basename $dst $transformbasename |
+ sed $transformarg`$transformbasename
+ fi
+
+# don't allow the sed command to completely eliminate the filename
+
+ if [ x"$dstfile" = x ]
+ then
+ dstfile=`basename $dst`
+ else
+ true
+ fi
+
+# Make a temp file name in the proper directory.
+
+ dsttmp=$dstdir/#inst.$$#
+
+# Move or copy the file name to the temp name
+
+ $doit $instcmd $src $dsttmp &&
+
+ trap "rm -f ${dsttmp}" 0 &&
+
+# and set any options; do chmod last to preserve setuid bits
+
+# If any of these fail, we abort the whole thing. If we want to
+# ignore errors from any of these, just make sure not to ignore
+# errors from the above "$doit $instcmd $src $dsttmp" command.
+
+ if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
+ if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
+ if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
+ if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
+
+# Now rename the file to the real destination.
+
+ $doit $rmcmd -f $dstdir/$dstfile &&
+ $doit $mvcmd $dsttmp $dstdir/$dstfile
+
+fi &&
+
+
+exit 0
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = $(lily-dir)/.build
+build = $(lily-dir)/$(outdir)/.build
#
# descent order into subdirectories:
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic stuff/Makefile
--- /dev/null
+MAJOR_VERSION = 0
+MINOR_VERSION = 0
+PATCH_LEVEL = 41
+MY_PATCH_LEVEL=
\ No newline at end of file
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = $(lily-dir)/.build
+build = $(lily-dir)/$(outdir)/.build
#
# descent order into subdirectories:
# list of c++ header files:
#
-HHFILES = $(shell ls *.hh $(ERROR_LOG))
+HHFILES := $(wildcard *.hh) #$(shell ls *.hh $(ERROR_LOG))
#
# list of c++ source files:
#
-CCFILES = $(shell ls *.cc $(ERROR_LOG))
+CCFILES := $(wildcard *.cc) #$(shell ls *.cc $(ERROR_LOG))
#
# list of other source files:
# list of distribution files:
#
-DISTFILES = Makefile $(HHFILES) $(CCFILES) $(EXTRA_SOURCE_FILES)
+DISTFILES = .version Makefile $(HHFILES) $(CCFILES) $(EXTRA_SOURCE_FILES)
#
# list of custom libraries:
#
# MAINTARGET = $(EXECUTABLE)
# MAINTARGET = $(LIBRARY)
-MAINTARGET = $(bindir)/$(EXECUTABLE)# huh?
+MAINTARGET = $(lily_bindir)/$(EXECUTABLE)# huh?
# MAINTARGET = $(libdir)/$(LIBRARY)# huh?
default: $(MAINTARGET)
# explicit dependencies: (how to do auto?)
#
# ugh
-$(outdir)/version.cc: check-flower-version $(lily-version)
+#$(outdir)/version.cc: check-flower-version $(lily-version)
+
+
mylexer.cc: $(outdir)/parser.hh # sic
lexer.l: $(outdir)/parser.hh
#
# auto dependencies:
#
--include $(DEPFILES)
+-include /dev/null $(DEPFILES)
#
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic stuff/Makefile
void kill_lexer();
void set_lexer();
+
+struct Lexer_prefs {
+ int default_duration, default_dots, default_octave_i_;
+ int default_plet_type, default_plet_dur;
+ String textstyle_str_;
+
+ bool last_duration_mode ;
+
+ Lexer_prefs();
+ Moment plet_mom();
+ void set_default_duration(int *);
+ void set_last_duration(int n);
+ void set_duration_mode(String s);
+ void get_default_duration(int *);
+ void set_plet(int,int);
+};
+
/// lexer with provisions for include files.
struct My_flex_lexer : yyFlexLexer {
-
+ Lexer_prefs prefs;
+
Array<Input_file*> include_stack_;
Assoc<String, Identifier*> *identifier_assoc_p_;
Keyword_table * keytable_p_;
void set_default_output(String s);
Input_score* current_iscore_l();
String find_file(String);
-const char *get_version();
+String get_version_str();
extern String infile_str_g;
extern Source* source_l_g;
extern bool only_midi;
#ifndef NOTENAME_HH
#define NOTENAME_HH
-
+#error OBSOLETE!
#include "string.hh"
struct Notename_tab {
extern char const* defined_ch_c_l;
extern char const* req_defined_ch_c_l;
-void set_default_duration(int *);
-void last_duration(int n);
-void set_duration_mode(String s);
-void get_default_duration(int *);
-void set_default_octave(String);
-void set_plet(int,int);
+
+
+
+
Voice_element * get_note_element(Note_req * ,int *);
Voice_element* get_rest_element(String,int *);
Voice_element* get_word_element(Text_def*, int*);
void add_requests( Voice_element*v, Array<Request*>&req);
Request* get_request(char);
-void set_text_style(String);
Script_def* get_scriptdef(char);
Text_def*get_text(String s);
Request* get_plet_request( char c, int dur_i, int type_i );
void do_pre_processing();
Text_item(Text_def*,int);
Text_item(Text_req*,int);
+ ~Text_item();
};
--- /dev/null
+#include "version.hh"
+#include <stdio.h>
+
+static char *s = "LilyPond " MAJOR_VERSION "." MINOR_VERSION "." PATCH_LEVEL MY_PATCH_LEVEL " #%d";
+
+static const int build=
+#include ".build"
+;
+
+const char *
+lily_version_sz()
+{
+ static char v[1024];
+ sprintf(v, s, build);
+ return v;
+}
"--init, -i set init file\n"
"--include, -I add to file search path.\n"
"--midi, -M midi output only\n"
+ "\n"
+ "LilyPond was compiled with the following settings:\n"
+#ifdef NDEBUG
+ "NDEBUG "
+#endif
+#ifdef NPRINT
+ "NPRINT "
+#endif
+#ifdef STRING_UTILS_INLINED
+ "STRING_UTILS_INLINED "
+#endif
+ "datadir= " DIR_DATADIR "\n"
;
+
}
void
"LilyPond, a music typesetter.\n"
"Copyright (C) 1996,97 by\n"
" Han-Wen Nienhuys <hanwen@stack.nl>\n"
- "Contributors\n"
" Jan Nieuwenhuizen <jan@digicash.com>\n"
+ "Contributors\n"
" Mats Bengtsson <matsb@s3.kth.se>\n"
"\n"
" This program is free software; you can redistribute it and/or\n"
static File_path * path =0;
struct Main_init {
Main_init() {
- path = new File_path(LIBDIR);
- path->push(String(LIBDIR)+"init/");
+ path = new File_path(String(DIR_DATADIR)+"/init/");
+ path->push(DIR_DATADIR );
debug_init();
}
~Main_init() {
main (int argc, char **argv)
{
Getopt_long oparser(argc, argv,theopts);
- cout << get_version();
+ cout << get_version_str() << endl;
String init_str("symbol.ini");
while (Long_option_init * opt = oparser()) {
int accidentals_i = 0;
int minor_i = 0;
+#ifdef UGR
// uph, sorry, wanna test this...
// menuetto in F
if ( ( infile_str_g.index_i( "scsii-menuetto" ) >= 0 )
// standchen in d
if ( ( infile_str_g.index_i( "standchen" ) >= 0 ) )
minor_i = 1;
+#endif
Midi_key midi_key( accidentals_i, minor_i );
midi_track.add( Moment( 0.0 ), &midi_key );
time_t t = time( 0 );
// perhaps multiple text events?
- String str = String( "Creator: " ) + get_version() + "\n";
+ String str = String( "Creator: " ) + get_version_str() + "\n";
Midi_text creator( Midi_text::TEXT, str );
midi_track.add( Moment( 0.0 ), &creator );
Midi_text track_name( Midi_text::TRACK_NAME, "Track " + String_convert::i2dec_str( 0, 0, '0' ) );
midi_track.add( Moment( 0.0 ), &track_name );
+#if 0
+ /*
+ shouldn't impose copyright on output.
+ */
struct tm* tm_l = gmtime( &t );
String year_str = String_convert::i2dec_str( 1900 + tm_l->tm_year, 4, '0' );
Midi_text authors( Midi_text::COPYRIGHT, str );
midi_track.add( Moment( 0.0 ), &authors );
+#endif
*midi_stream_l_ << midi_track;
}
#include "parseconstruct.hh"
#include "input-music.hh"
#include "voice-element.hh"
-
-int default_duration = 4, default_dots=0, default_octave=0;
-int default_plet_type = 1, default_plet_dur = 1;
-String textstyle="roman"; // in lexer?
-
-bool last_duration_mode = false;
+Moment
+Lexer_prefs::plet_mom()
+{
+ return Moment(default_plet_dur, default_plet_type);
+}
+Lexer_prefs::Lexer_prefs()
+{
+ default_duration = 4, default_dots=0, default_octave_i_=0;
+ default_plet_type = 1, default_plet_dur = 1;
+ textstyle_str_="roman"; // in lexer?
+
+ last_duration_mode = false;
+}
void
-set_duration_mode(String s)
+Lexer_prefs::set_duration_mode(String s)
{
s = s.upper_str();
last_duration_mode = (s== "LAST");
}
void
-last_duration(int n)
+Lexer_prefs::set_last_duration(int n)
{
if (last_duration_mode)
default_duration = n;
/* triplet is '2/3' */
void
-set_plet(int num,int den)
+Lexer_prefs::set_plet(int num,int den)
{
assert(num >0&& den>0);
default_plet_dur = num;
{
t= new Text_def;
t->text_str_= s;
- t->style_str_ = textstyle;
+ t->style_str_ = lexer->prefs.textstyle_str_;
t->defined_ch_c_l_ = defined_ch_c_l;
return t;
}
-
-void
-set_text_style(String s)
-{
- textstyle = s;
-}
-
-void
-parse_octave (const char *a, int &j, int &oct)
-{
- while (1)
- {
- if (a[j] == '\'')
- oct ++;
- else if (a[j] == '`')
- oct --;
- else
- break;
- j++;
- }
-}
-
Voice_element *
get_note_element(Note_req *rq, int * duration )
{
if (dur >= 2) {
Stem_req * stem_req_p = new Stem_req(dur,dots);
- stem_req_p->plet_factor = Moment(default_plet_dur, default_plet_type);
+ stem_req_p->plet_factor = lexer->prefs.plet_mom();
+
stem_req_p->defined_ch_c_l_ = defined_ch_c_l;
v->add(stem_req_p);
}
rq->balltype = dur;
rq->dots = dots;
- rq->plet_factor = Moment(default_plet_dur, default_plet_type);
+ rq->plet_factor = lexer->prefs.plet_mom();
+
rq->defined_ch_c_l_ = defined_ch_c_l;
v->add(rq);
lreq_p->balltype = dur;
lreq_p->dots = dots;
- lreq_p->plet_factor = Moment(default_plet_dur, default_plet_type);
+ lreq_p->plet_factor = lexer->prefs.plet_mom();
lreq_p->print();
lreq_p->defined_ch_c_l_ = defined_ch_c_l;
velt_p->defined_ch_c_l_ = defined_ch_c_l;
Rest_req * rest_req_p = new Rest_req;
- rest_req_p->plet_factor = Moment(default_plet_dur, default_plet_type);
+ rest_req_p->plet_factor = lexer->prefs.plet_mom();
rest_req_p->balltype = duration[0];
rest_req_p->dots = duration[1];
rest_req_p->print();
}
void
-get_default_duration(int *p)
+Lexer_prefs::get_default_duration(int *p)
{
*p++ = default_duration;
*p = default_dots;
}
void
-set_default_duration(int *p)
+Lexer_prefs::set_default_duration(int *p)
{
default_duration = *p++;
default_dots = *p++;
}
-
-void
-set_default_octave(String d)
-{
- int i=0;
- default_octave=0;
- parse_octave(d, i, default_octave);
-}
-
Request*
get_plet_request( char c, int dur_i, int type_i )
{
case ']':
{
Beam_req*b = new Beam_req;
- if (default_plet_type != 1)
- b->nplet = default_plet_type;
+ int p_i=lexer->prefs.default_plet_type ;
+ if (p_i!= 1)
+ b->nplet = p_i;
req_p = b;
}
break;
+++ /dev/null
-#include "glob.hh"
-#include "string.hh"
-#include "notename.hh"
-#include "lexer.hh"
-#include "identifier.hh"
-
-
-
-void
-Notename_tab::lookup(int &large, int &small, String s)
-{
- large = -1;
- small = 0;
-
- for (int i =0; i < 7*5; i++)
- if (s == notetab[i])
- {
- large = i /5;
- small = i %5 - 2;
- return;
- }
-}
-
-
-void
-Notename_tab::set(int l, int s, String n)
-{
- assert(l < 8 && s <= 2 && s >= -2 && l >=0);
- notetab[l * 5 + s +2] = n;
-}
-/* *************** */
-
-#if 0
-void
-My_flex_lexer::set(Notename_tab *n)
-{
- delete defaulttab;
- defaulttab = n;
-}
-
-void
-My_flex_lexer::lookup_notename(int &large, int &small, String s)
-{
- if (!defaulttab)
- set(lookup_identifier("default_table")->
- notename_tab(true));
-
- defaulttab->lookup(large, small, s);
-}
-#endif
MELODIC_REQUEST_IDENTIFIER {
$$ = new Note_req;
* (Melodic_req *) $$ = *$1->request(false)->melodic();
+ $$->octave_i_ += lexer->prefs.default_octave_i_;
}
| octave_quote steno_note_req {
$2-> octave_i_ += $1;
voice_command:
PLET '{' INT '/' INT '}' {
- set_plet($3,$5);
+ lexer->prefs.set_plet($3,$5);
}
| DURATIONCOMMAND '{' STRING '}' {
- set_duration_mode(*$3);
+ lexer->prefs.set_duration_mode(*$3);
delete $3;
}
| DURATIONCOMMAND '{' notemode_duration '}' {
- set_default_duration($3);
+ lexer->prefs.set_default_duration($3);
}
| OCTAVECOMMAND '{' octave_quotes '}' {
- set_default_octave($3);
+ lexer->prefs.default_octave_i_ = $3;
}
| TEXTSTYLE STRING {
- set_text_style(*$2);
+ lexer->prefs.textstyle_str_ = *$2;
delete $2;
}
;
explicit_duration:
INT {
- last_duration($1);
+ lexer->prefs.set_last_duration($1);
$$[0] = $1;
$$[1] = 0;
}
| INT DOTS {
- last_duration($1);
+ lexer->prefs.set_last_duration($1);
$$[0] = $1;
$$[1] = $2;
}
| DOTS {
- get_default_duration($$);
+ lexer->prefs.get_default_duration($$);
$$[1] = $1;
}
| INT '*' INT '/' INT {
// ugh, must use Duration
- set_plet( $3, $5 );
+ lexer->prefs.set_plet( $3, $5 );
$$[ 0 ] = $1;
$$[ 1 ] = 0;
- set_plet( 1, 1 );
+ lexer->prefs.set_plet( 1, 1 );
}
;
default_duration:
/* empty */ {
- get_default_duration($$);
+ lexer->prefs.get_default_duration($$);
}
;
Vector
Mixed_qp::solve(Vector start) const
{
+ if (!dim())
+ return Vector(0);
+
print();
Ineq_constrained_qp pure(*this);
Vector
Ineq_constrained_qp::solve(Vector start) const
{
+ if (!dim())
+ return Vector(0);
+
Active_constraints act(this);
void
Tex_stream::header()
{
- *os << "% Creator: " << get_version();
+ *os << "% Creator: " << get_version_str();
*os << "% Automatically generated, at ";
time_t t(time(0));
*os << ctime(&t);
-#include "version.hh"
-#include "fversion.hh"
+#include "main.hh"
-static char *s = "LilyPond " VERSIONSTR "/FlowerLib " FVERSIONSTR
-". Compile: " __DATE__ ", " __TIME__ " (" COMPILER ")\n";
+#include "string.hh"
-const char *
-get_version()
+extern const char* lily_version_sz();
+
+String
+get_version_str()
{
+ String s = lily_version_sz();
+ s+="/";
+ s+=flower_version_sz();
return s;
}
+++ /dev/null
-# -*-Makefile-*-
-
-# @AUTOHEADER@
-
-#CXXFLAGS=@CXXFLAGS@
-#CXX=@CXX@
-bindir=@bindir@
-includedir=@includedir@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-DEFS=@DEFS@
-#SET_MAKE=@SET_MAKE@
-DEFINES=@DEFINES@
-COMPILEINFO=@COMPILEINFO@
-BISON=@BISON@
-FLEX=@FLEX@
--- /dev/null
+# -*-Makefile-*-
+
+# @configure_input@
+
+INSTALL = @INSTALL@
+CXXFLAGS = @CXXFLAGS@
+#CXX = @CXX@
+
+prefix = @prefix@
+TEXPREFIX = @TEXPREFIX@
+mandir = @mandir@
+exec_prefix = @exec_prefix@
+bindir = @bindir@
+includedir = @includedir@
+datadir = @datadir@
+
+RANLIB = @RANLIB@
+DEFS = @DEFS@
+#SET_MAKE = @SET_MAKE@
+DEFINES = @DEFINES@
+FIND = @FIND@
+COMPILEINFO = @COMPILEINFO@
+BISON = @BISON@
+FLEX = @FLEX@
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic variables:
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# generic variables:
# ugh
# initdefault: $(CCDIR)/parser.cc $(CCDIR)/lexer.cc hdr/version.hh alldeps
-initdefault: check-flower-version $(lily-version) check-mi2mu-version dummydep
+initdefault: dummydep
# $(MAKE) -C ./$(depth)/lily $(outdir)/parser.cc
# generic targets and rules:
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
#
# list of generic make files:
# list of distribution files:
#
-DISTFILES = configure.in ACVariables.make.in Makefile lilypond.spec $(MAKEFILES)
+DISTFILES = Configure_variables.make.in Makefile lilypond.spec.in $(MAKEFILES)
#
# generic variables:
include ./$(depth)/make/Rules.make
#
+lilypond.spec: lilypond.spec.in
+ sed 's/@TOPLEVEL_VERSION@/${TOPLEVEL_VERSION}/g'< $< > $@
\ No newline at end of file
# compile rules:
#
-$(outdir)/%.o: %.cc $(genout)
+$(outdir)/%.o: %.cc
$(DODEP)\
$(CXX) -c $(CXXFLAGS) $(CXX_OUTPUT_OPTION)
-$(outdir)/%.cc: %.y $(genout)
+$(outdir)/%.cc: %.y
# $(BISON) -d $<
$(BISON) $<
# mv $(shell basename $@ .cc ).tab.h $(include-lib)/$(shell basename $@ .cc).hh
# mv $(shell basename $@ .cc ).tab.h $(outdir)/$(shell basename $@ .cc).hh
mv $(shell basename $@ .cc ).tab.c $@
-$(outdir)/%.hh: %.y $(genout)
+$(outdir)/%.hh: %.y
$(BISON) -d $<
mv $(shell basename $@ .hh ).tab.h $@
mv $(shell basename $@ .hh ).tab.c $(outdir)/$(shell basename $@ .hh).cc
-$(outdir)/%.cc: %.l $(genout)
+$(outdir)/%.cc: %.l
$(FLEX) -t $< > $@
$(outdir)/%.text: $(outdir)/%.1
groff -man -Tascii $< > $@
-$(outdir)/%.1: %.pod $(genout)
+$(depth)/%.text: $(outdir)/%.text
+ cp $< $@
+
+$(outdir)/%.1: %.pod
pod2man --center="LilyPond documentation" --section="0"\
- --release="LilyPond $(MAJVER).$(MINVER).$(PATCHLEVEL)" $< > $@
+ --release="LilyPond $(TOPLEVEL_MAJOR_VERSION).$(TOPLEVEL_MINOR_VERSION).$(TOPLEVEL_PATCH_LEVEL)" $< > $@
#
# outdirs:
# ?$(outdir)/%.dep:
%.dep:
touch $@
-$(outdir):
- mkdir $(outdir)
- @touch $(genout)
-%/$(outdir):y
- mkdir $@
- @touch $(@D)/$(genout)
-$(genout):
- mkdir $(outdir)
- @touch $@
-%/$(genout):
- mkdir $(@D)/$(outdir)
- @touch $@
-#
+
# build and config stuff: (could make this generic default rule...)
#
%/.build:
- @echo 0 >$@
-$(flower-config): $(flower-dir)/$(genout)
- touch $@
-$(lily-config): $(lib-dir)/$(genout)
- @echo "#define LIBDIR \"./\"" >$@
-%.hh:
- touch $@
-#
+ echo 0 >$@
+
# specific stuff:
#
-$(LIBFLOWER): check-flower-version
+$(LIBFLOWER): check-flower-deps
$(MAKE) ./$(outdir)/$(@F) -C $(depth)/flower/lib
-#
+
+check-flower-deps:
+ $(MAKE) -C $(depth)/flower/lib
+
+check-lily-deps: check-flower-deps
+ $(MAKE) -C $(depth)/lib
+
$(LIBLILY): dummy
$(MAKE) ./$(outdir)/$(@F) -C $(depth)/lib
#
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-# build = ./$(depth)/lily/.build
#
# generic variables:
# target all:
#
all: default
- for i in $(SUBDIRS); do $(MAKE) -C $$i all; done
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i all; done
+endif
+
#
# platform specific variables,
# where to do this ?
.PRECIOUS: $(makeout)/Site.make
-# ... and configure bootstrap :-)
-#
-$(makeout)/Site.make: $(make-dir)/$(genout) $(flower-config) $(lily-config)
-# this is handy, but runs on second "make distclean" too. ah well...
-# if [ \! -d $(makeout) ]; then mkdir $(makeout); fi
- touch $@
- @echo "oeps, sources were not configured!"
- (cd $(depth); ./configure)
-#
-
# dependency list of executable:
#
-EXECUTABLE = $(bindir)/$(NAME)
-$(EXECUTABLE): $(OFILES) $(CUSTOMLIBES)
+EXECUTABLE = $(lily_bindir)/$(NAME)
+$(EXECUTABLE): $(build) $(OFILES) $(CUSTOMLIBES)
+ $(INCREASE_BUILD)
+ $(MAKE) $(OFILES) $(SILENT_LOG)
# $(STRIPDEBUG) $(STABLEOBS)
-# $(LD_COMMAND) -o $@ $^ $(LOADLIBES)
$(LD_COMMAND) $(OFILES) $(LOADLIBES)
- -@touch $(VERSION_DEPENDENCY) $(ERROR_LOG)
- $(INCREASE_BUILD)
- touch $(build) #waai necessary?
-#
+
exe: $(EXECUTABLE)
#
+$(build):
+ echo 0 > $@
+
# dependency list of library:
#
LIBRARY = $(libdir)/$(LIB_PREFIX)$(NAME)$(LIB_SUFFIX)
-$(LIBRARY): $(OFILES) $(CUSTOMLIBES)
- $(AR_COMMAND) $(OFILES)
- -@touch $(VERSION_DEPENDENCY) $(ERROR_LOG)
+$(LIBRARY): $(build) $(OFILES) $(CUSTOMLIBES)
$(INCREASE_BUILD)
- touch $(build) #waai necessary?
+ $(MAKE) $(OFILES) $(SILENT_LOG)
+ $(AR_COMMAND) $(OFILES)
+ $(RANLIB_COMMAND)
+
+
#
lib: $(LIBRARY)
#
-clean:
- rm -f $(allexe) core $(allobs) $(alldeps)
- for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done
+clean: localclean
+ rm -f $(allobs) $(alldeps)
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i clean; done
+endif
distclean: clean
rm -rf $(lily-version) $(flower-version) $(mi2mu-version) .b $(build) *~ $(allout) $(allgen)
# dummydeps:
#
-dummydep: $(flower-dir)/$(genout) $(lib-dir)/$(genout) $(lily-dir)/$(genout) $(mi2mu-dir)/$(genout) $(DUMMYDEPS)
+dummydep: $(DUMMYDEPS)
#
# value of $(OSTYPE) on windhoos; "make $OSTYPE" if you use bash :-)
#
doc:
- $(MAKE) -C Documentation do-doc
+ $(MAKE) -C $(depth)/Documentation do-doc
# doc++ documentation of classes
doc++: $(progdocs)
(cd ./$(depth); tar cfz $(DIST_NAME).tar.gz $(DIST_NAME))
rm -rf $(distdir)/ # should be trapped
-localdist:
+localdist: $(DISTFILES)
+ if [ -d out ]; then mkdir $(distdir)/$(localdir)/out; fi
ln $(DISTFILES) $(distdir)/$(localdir)
- for i in $(SUBDIRS); do mkdir $(distdir)/$(localdir)/$$i; done
- for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localdist; done
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do mkdir $(distdir)/$(localdir)/$$i; done
+ set -e; for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localdist; done
+endif
moduledist:
-mkdir $(module-distdir)
localmoduledist:
ln $(DISTFILES) $(module-distdir)/$(localdir)
- for i in $(SUBDIRS); do mkdir $(module-distdir)/$(localdir)/$$i; done
- for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localmoduledist; done
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do mkdir $(module-distdir)/$(localdir)/$$i; done
+ set -e; for i in $(SUBDIRS); do $(MAKE) localdir=$(localdir)/$$i -C $$i localmoduledist; done
+endif
all-tags: TAGS
- for i in $(SUBDIRS); do $(MAKE) -C $$i all-tags; done
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i all-tags; done
+endif
TAGS: $(allcc)
etags -CT $(allcc)
-# to some outdir?
-autoconf:
- autoconf - < configure.in > ac_configure
-
# version stuff:
#
-check-flower-version:
- $(MAKE) flower-version -C ./$(depth)/flower
-$(lily-version): $(lily-dir)/$(genout) ./$(depth)/.version ./$(bindir)/make_version $(build)
- ./$(bindir)/make_version "$(MAJOR_VERSION)" "$(MINOR_VERSION)" "$(PATCH_LEVEL)" "$(MY_PATCH_LEVEL)" "$(BUILD)" "$(CXX) $(CXXVER)" > $@
-check-mi2mu-version:
- $(MAKE) mi2mu-version -C ./$(depth)/mi2mu
-#
+out/version.hh: .version
+ ./$(lily_bindir)/make_version > $@
+
+
+# should this be in Rules?
+configure: configure.in
+ autoconf - < $<> $@
+ chmod +x configure
+
+localclean:
+
+
+install: localinstall
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i install; done
+endif
+
+localinstall:
+
+uninstall: localuninstall
+ifdef SUBDIRS
+ set -e; for i in $(SUBDIRS); do $(MAKE) -C $$i uninstall; done
+endif
+
+localuninstall:
PATCH_LEVEL = 0
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = # include separator: "-1" or ".a"
-build = $(lily-dir)/.build
+build = $(lily-dir)/$(outdir)/.build #????!
#
# descent order into subdirectories:
# turn off -pipe if linker doesn't support it
#
-USER_CXXFLAGS=-pipe -Wall -W -Wmissing-prototypes -DSTRING_UTILS_INLINED
-#
+USER_CXXFLAGS=-pipe -Wall -W -Wmissing-prototypes
#
# -lefence = ElectricFence.
# project LilyPond -- the musical typesetter
# title generic variables
# file make/Variables.make
-# abstract do not change this file; edit settings in User.make
+# abstract do not change this file for site-wide extensions;
+# please edit settings in User.make
#
# Copyright (c) 1997 by
# Jan Nieuwenhuizen <jan@digicash.com>
#
include ./$(depth)/.version
#
+include ./$(depth)/make/out/Configure_variables.make
+
+ifeq (0,${MAKELEVEL})
+MAKE:=$(MAKE) --no-builtin-rules
+endif
+
# directory names:
#
outdir = out# "objects" won-t do, used for libs and deps as well
-bindir = ./$(depth)/bin
+lily_bindir = ./$(depth)/bin
distdir = ./$(depth)/$(DIST_NAME)
module-distdir = ./$(depth)/$(MODULE_DIST_NAME)
depdir = $(outdir)
#
include ./$(depth)/make/User.make
#
-
-ifdef PROFILEFLAG
- DEFINES+=$(OPTIFLAG) $(PROFILEFLAG)
- EXTRA_LIBES+=-pg
-endif
-
-ifndef DEBUGFLAG
- DEFINES+=$(OPTIFLAG)
-else
- DEFINES+=$(DEBUGFLAG)
-endif
-
-# build no:
#
# need to be defined in local Makefiles:
-# build = ./$(depth)/lily/.build
+# build = ./$(depth)/lily/$(outdir)/.build ######## UGR!
BUILD = $(shell cat $(build))
-INCREASE_BUILD = @echo `expr \`cat $(build)\` + 1` > .b; mv .b $(build)
+INCREASE_BUILD = echo `expr \`cat $(build)\` + 1` > .b; mv .b $(build)
#
# the version:
TOPLEVEL_VERSION=$(TOPLEVEL_MAJOR_VERSION).$(TOPLEVEL_MINOR_VERSION).$(TOPLEVEL_PATCH_LEVEL)$(TOPLEVEL_MY_PATCH_LEVEL)
#
-# compiler version:
-#
-CXXVER=`$(CXX) --version`
-#
# module and top level dist:
#
# clean file lists:
#
ERROR_LOG = 2> /dev/null
-allexe = $(bindir)/lilypond $(bindir)/mi2mu
-allcc = $(shell find -name "*.cc" $(ERROR_LOG))
-allobs = $(shell find $(outdir) -name "*.o" $(ERROR_LOG))
-allibs = $(shell find $(libdir) -name "*.lib" $(ERROR_LOG))
-alldeps = $(shell find $(outdir) -name "*.dep" $(ERROR_LOG))
-allout = $(shell find . -name "$(outdir)" $(ERROR_LOG))
-allgen = $(shell find . -name $(genout) -o -name .build $(ERROR_LOG))
-#
-
-# config stuff:
-#
-# cannot let targets depend upon (out)directory -> will always be out of date!
-genout = .GENERATE
-flower-config = $(flowerout)/flower-config.hh
-lily-config = $(libout)/config.hh
-#
+SILENT_LOG = >& /dev/null
+allexe = $(lily_bindir)/lilypond $(lily_bindir)/mi2mu
+allcc := $(shell $(FIND) -name "*.cc" $(ERROR_LOG))
+allobs := $(shell $(FIND) $(outdir) -name "*.o" $(ERROR_LOG))
+allibs := $(shell $(FIND) $(libdir) -name "*.lib" $(ERROR_LOG))
+alldeps := $(shell $(FIND) $(outdir) -name "*.dep" $(ERROR_LOG))
# version stuff:
#
-flower-version = $(flowerout)/fversion.hh
lily-version = $(lilyout)/version.hh
+flower-version = $(flowerout)/version.hh
mi2mu-version = $(mi2muout)/version.hh
#
AR = ar
AR_COMMAND = $(AR) $(ARFLAGS) $@
#
-
+RANLIB_COMMAND=$(RANLIB) $@
# compiler:
#
# "CC = $(CC)"
# utils:
#
-FLEX = flex
-BISON = bison
+#FLEX = flex
+#BISON = bison
#
# generic target names:
+++ /dev/null
-dnl Process this file with autoconf to produce a configure script.
-AC_INIT(flower/lib/choleski.cc)
-AC_LANG_CPLUSPLUS
-
-AC_ARG_ENABLE(printing,
- [ --enable-printing set debug printing],
- [DEFINES="$DEFINES -DNPRINT"])
-AC_ARG_ENABLE(checking,
- [ --enable-checking set debug checks],
- [DEFINES="$DEFINES -DNDEBUG"])
-AC_ARG_ENABLE(debug,
- [ --enable-debug set debug info],
- [DEFINES="$DEFINES -g"], [DEFINES="$DEFINES -O2"])
-
-dnl COMPILEINFO="$HOST $host $TARGET $target"
-AUTOHEADER="This file was automatically generated by configure"
-CXXFLAGS=${CXXFLAGS:-""} # don't want -g -O junk
-AC_PROG_CXX
-
-AC_SUBST(DEFINES)
-AC_SUBST(COMPILEINFO)
-AC_SUBST(AUTOHEADER)
-AC_SUBST(BISON)
-AC_SUBST(FLEX)
-
-AC_CHECK_PROGS(BISON, bison, error)
-AC_CHECK_PROGS(FLEX, flex, error)
-AC_CHECK_PROGS(MAKE, make, error)
-AC_CHECK_PROGS(PODMAN, pod2man, error)
-
-if test $MAKE = "error"
-then
- echo Please install GNU make
-else
- $MAKE -v| grep -q GNU
- if test "$?" = 1
- then
- AC_MSG_ERROR(Please install *GNU* make)
- fi
-fi
-
-if test $BISON = "error"
-then
- AC_MSG_ERROR(can't find bison. Please install Bison (1.24 or better))
-fi
-
-if test $PODMAN = "error"
-then
- AC_MSG_WARN(can't find pod. You should install Perl (version 5 or better))
-fi
-
-if test $FLEX = "error"
-then
- AC_MSG_ERROR(can't find flex. Please install Flex (2.5 or better))
-fi
-
-if $CXX --version | grep -q '2\.7'
-then
- true
-else
- AC_MSG_ERROR(can't find g++ 2.7)
-fi
-
-AC_CHECK_HEADER(FlexLexer.h, true,
- AC_MSG_ERROR(can't find flex header. Please install Flex headers correctly))
-
-
-
-
-AC_OUTPUT(make/out/ACVariables.make:make/ACVariables.make.in)
-
-
-dnl AC_OUTPUT(config.hh)
-
-
-cat << END
-
-Finished configuring. Please do the following command before
-attempting to build anything:
-
- make -C make/ -f Initial.make #make is GNU make, of course.
-
-
-END
-
+++ /dev/null
-Description: LilyPond is a program which converts a music-script (mudela) into\
-TeX output, or MIDI to produce multi-staff scores. Feature include multiple\
-meters, clefs, keys, lyrics, versatile input-language, cadenzas\
-beams, slurs, triplets\
-multiple voices within one staff.
-Name: lilypond
-Version: 0.0.39.hwn2
-Release: 1
-Copyright: GPL
-Group: Applications/Publishing
-Source0: pcnov095.win.tue.nl:/pub/lilypond/lilypond-0.0.39.hwn2.tar.gz
-Summary: A preprocessor to make TeX typeset music.
-
-%prep
-%setup
-%build
-PREFIX=/usr/lib ./configure
-make all OPTIFLAG="-O2"
-%install
-make install
-%files
-%doc Documentation/README.txt Documentation/CodingStyle.txt
-%doc Documentation/lilygut.txt Documentation/lilyinput.txt
-%doc Documentation/error.txt Documentation/faq.txt Documentation/index.txt
-%doc Documentation/language.txt Documentation/lelie_logo.png
-/usr/bin/lilypond
-/usr/bin/mi2mu
-/usr/lib/lilypond/init/bare.ini
-/usr/lib/lilypond/init/dutch.ini
-/usr/lib/lilypond/init/english.ini
-/usr/lib/lilypond/init/script.ini
-/usr/lib/lilypond/init/swedish.ini
-/usr/lib/lilypond/init/symbol.ini
-/usr/lib/lilypond/init/table_sixteen.ini
-/usr/lib/lilypond/init/table_twenty.ini
-/usr/lib/lilypond/titledefs.tex
-/usr/lib/lilypond/lilyponddefs.tex
-
-
-
--- /dev/null
+Name: lilypond
+Version: @TOPLEVEL_VERSION@
+Release: 1
+Copyright: GPL
+Group: Applications/Publishing
+Source0: pcnov095.win.tue.nl:/pub/lilypond/lilypond-@TOPLEVEL_VERSION@.tar.gz
+Summary: A preprocessor to make TeX typeset music.
+URL: http://www.stack.nl/~hanwen/lilypond
+Packager: Han-Wen Nienhuys <hanwen@stack.nl>
+Icon: lelie_logo.gif
+
+%description
+LilyPond is a program which converts a music-script (mudela) into
+TeX output, or MIDI to produce multi-staff scores. Feature include multiple
+meters, clefs, keys, lyrics, versatile input-language, cadenzas
+beams, slurs, triplets
+
+%prep
+%setup
+%build
+configure --enable-checking --enable-optimise --enable-printing --prefix=/usr
+make all
+%install
+make install
+
+%files
+%doc Documentation/out/index.text Documentation/out/CodingStyle.text
+%doc Documentation/out/lilygut.text Documentation/out/lilyinput.text
+%doc Documentation/out/error.text Documentation/out/faq.text
+%doc Documentation/out/INSTALL.text
+%doc Documentation/out/language.text Documentation/out/lelie_logo.png
+/usr/bin/lilypond
+/usr/bin/mi2mu
+/usr/man/man1/lilypond.1
+/usr/lib/texmf/texmf/tex/lilypond/*
+/usr/share/lilypond/*
+
+%post
+texhash
+%post
+texhash
+
MINOR_VERSION = 0
PATCH_LEVEL = 12
# use to send patches, always empty for released version:
-MY_PATCH_LEVEL = # include separator: "-1" or ".a"
+MY_PATCH_LEVEL = .1# include separator: "-1" or ".a"
#
NAME = mi2mu
MODULE_NAME = mi2mu
include $(mi2mu-dir)/.version
-build = $(mi2mu-dir)/.build
+build = $(mi2mu-dir)/$(outdir)/.build
#
# descent order into subdirectories:
# list of c++ header files:
#
-HHFILES = $(shell ls *.hh $(ERROR_LOG))
+HHFILES := $(wildcard *.hh )
#
# list of c++ source files:
#
-CCFILES = $(shell ls *.cc $(ERROR_LOG))
+CCFILES := $(wildcard *.cc )
#
# list of other source files:
#
-EXTRA_SOURCE_FILES = $(shell ls *.y *.l $(ERROR_LOG))
+EXTRA_SOURCE_FILES := $(wildcard *.y *.l )
#
# list of distribution files:
#
# MAINTARGET = $(EXECUTABLE)
# MAINTARGET = $(LIBRARY)
-MAINTARGET = $(bindir)/$(EXECUTABLE)# huh?
+MAINTARGET = $(lily_bindir)/$(EXECUTABLE)# huh?
# MAINTARGET = $(libdir)/$(LIBRARY)# huh?
default: $(MAINTARGET)
# explicit dependencies: (how to do auto?)
#
midi-lexer.l: $(outdir)/midi-parser.hh
-version.cc: check-flower-version $(mi2mu-version)
-#
-
-# version:
-#
-mi2mu-version: $(mi2mu-dir)/$(genout) $(mi2mu-version)
-$(mi2mu-version): $(mi2mu-dir)/$(genout) $(mi2mu-dir)/.version ./$(bindir)/make_version $(build)
- ./$(bindir)/make_version "$(MAJOR_VERSION)" "$(MINOR_VERSION)" "$(PATCH_LEVEL)" "$(MY_PATCH_LEVEL)" "$(BUILD)" "$(CXX) $(CXXVER)" > $@
-#
# list of depend files:
#
# auto dependencies:
#
--include $(DEPFILES)
+-include /dev/null $(DEPFILES)
#
PATCH_LEVEL = $(TOPLEVEL_PATCH_LEVEL)
# use to send patches, always empty for released version:
MY_PATCH_LEVEL = $(TOPLEVEL_MY_PATCH_LEVEL)
-build = ./$(depth)/lily/.build
+build = ./$(depth)/mi2mu/$(outdir)/.build
#
# generic stuff/Makefile
#ifdef NPRINT
#define dtor if ( 0 ) *monitor_p_g
#define mtor if ( 0 ) *monitor_p_g
+#define vtor if ( level_ver >= VERBOSE_ver ) *monitor_p_g
+#define btor if ( level_ver >= BRIEF_ver ) *monitor_p_g
+#define qtor if ( level_ver >= QUIET_ver ) *monitor_p_g
#else
#define dtor if ( level_ver >= DEBUG_ver ) *monitor_p_g
#define vtor if ( level_ver >= VERBOSE_ver ) *monitor_p_g
void warning( String message_str, char const* context_ch_c_l );
void error( String message_str, char const* context_ch_c_l );
-String version_str();
+String mi2mu_version_str();
#endif // MIDI_GLOBAL_HH
if ( column_i_ > 8 * indent_i_ ) {
newline();
if ( comment_mode_bo_ && ( str[ 0 ] != '%' ) )
- str = '%' + str;
+ str = "%" + str;
continue;
}
else { // cannot break neatly...
void
Lily_stream::header()
{
- *os_p_ << "% Creator: " << version_str() << "\n";
+ *os_p_ << "% Creator: " << mi2mu_version_str() << "\n";
*os_p_ << "% Automatically generated, at ";
time_t t( time( 0 ) );
*os_p_ << ctime( &t );
void
help()
{
- btor <<
+ mtor <<
"--be-blonde, -b use exact, blonde durations, e.g.: a[385]\n"
"--debug, -d be really verbose\n"
"--help, -h this help\n"
void
identify()
{
- mtor << version_str() << endl;
+ mtor << mi2mu_version_str() << endl;
}
void
-//
-// version.cc -- implement inexpensive versioning
-//
-// copyright 1997 Jan Nieuwenhuizen <jan@digicash.com>
-
#include "mi2mu.hh"
-#include "fversion.hh"
-#include "version.hh"
+
+const char * mi2mu_version_sz();
// should simply have Root class...
String
-version_str()
+mi2mu_version_str()
{
- return String ( "This is mi2mu " ) + VERSIONSTR
- + "/FlowerLib " + FVERSIONSTR
+ return String ( "This is " ) + mi2mu_version_sz()
+ + flower_version_sz()
+ " of " + __DATE__ + " " + __TIME__;
}
depth = ..
#
-build = ./$(depth)/lily/.build
+build = ./$(depth)/lily/$(outdir)/.build
# generic stuff/Makefile
#
DISTFILES = Makefile $(TEXFILES)
#
+localinstall:
+ $(INSTALL) -d $(TEXPREFIX)/lilypond
+ $(INSTALL) -m 755 $(TEXFILES) $(TEXPREFIX)/lilypond/
+
+localuninstall:
+ for i in $(TEXFILES) ; do rm -f $(TEXPREFIX)/lilypond/$$i; done
+ -rmdir $(TEXPREFIX)/lilypond/
\ No newline at end of file