CVSROOT: /cvsroot/lilypond Module name: lilypond Branch: Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/07/19 12:57:33
Modified files: . : ChangeLog config.make.in configure.in Documentation/user: advanced-notation.itely input : typography-demo.ly lily : GNUmakefile lyric-combine-music-iterator.cc melisma-translator.cc new-lyric-combine-music-iterator.cc performer-group-performer.cc recording-group-engraver.cc score-engraver.cc make : lilypond.fedora.spec.in scm : define-music-types.scm Log message: * configure.in (reloc_b): add --enable-static-gxx to statically link to libstdc++ * lily/GNUmakefile (static-gxx-libs): new target static-gxx-libs. Create link to libstdc++.a * lily/new-lyric-combine-music-iterator.cc: rename to Lyric_combine_music_iterator * lily/lyric-combine-music-iterator.cc (Old_lyric_combine_music_iterator): rename to Old_lyric_combine_music_iterator CVSWeb URLs: http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?tr1=1.3893&tr2=1.3894&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/config.make.in.diff?tr1=1.81&tr2=1.82&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/configure.in.diff?tr1=1.158&tr2=1.159&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/Documentation/user/advanced-notation.itely.diff?tr1=1.42&tr2=1.43&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/input/typography-demo.ly.diff?tr1=1.7&tr2=1.8&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/GNUmakefile.diff?tr1=1.55&tr2=1.56&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/lyric-combine-music-iterator.cc.diff?tr1=1.50&tr2=1.51&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/melisma-translator.cc.diff?tr1=1.15&tr2=1.16&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/new-lyric-combine-music-iterator.cc.diff?tr1=1.34&tr2=1.35&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/performer-group-performer.cc.diff?tr1=1.58&tr2=1.59&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/recording-group-engraver.cc.diff?tr1=1.27&tr2=1.28&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/score-engraver.cc.diff?tr1=1.148&tr2=1.149&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/make/lilypond.fedora.spec.in.diff?tr1=1.18&tr2=1.19&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/scm/define-music-types.scm.diff?tr1=1.59&tr2=1.60&r1=text&r2=text Patches: Index: lilypond/ChangeLog diff -u lilypond/ChangeLog:1.3893 lilypond/ChangeLog:1.3894 --- lilypond/ChangeLog:1.3893 Tue Jul 19 10:37:51 2005 +++ lilypond/ChangeLog Tue Jul 19 12:57:28 2005 @@ -1,5 +1,16 @@ 2005-07-19 Han-Wen Nienhuys <[EMAIL PROTECTED]> + * configure.in (reloc_b): add --enable-static-gxx to statically + link to libstdc++ + + * lily/GNUmakefile (static-gxx-libs): new target + static-gxx-libs. Create link to libstdc++.a + + * lily/new-lyric-combine-music-iterator.cc: rename to Lyric_combine_music_iterator + + * lily/lyric-combine-music-iterator.cc + (Old_lyric_combine_music_iterator): rename to Old_lyric_combine_music_iterator + * lily/*-engraver.cc (various): remove double use of PRECOMPUTED_VIRTUAL function: only use start_translation_timestep() and stop_translation_timestep(), not Index: lilypond/Documentation/user/advanced-notation.itely diff -u lilypond/Documentation/user/advanced-notation.itely:1.42 lilypond/Documentation/user/advanced-notation.itely:1.43 --- lilypond/Documentation/user/advanced-notation.itely:1.42 Tue Jul 19 11:41:58 2005 +++ lilypond/Documentation/user/advanced-notation.itely Tue Jul 19 12:57:32 2005 @@ -1354,7 +1354,7 @@ when the original part takes over again, this should be marked with the name of the original instrument. - @c really? Are you sure about that last point? I'll check after 3.0 -gp [EMAIL PROTECTED] really? Are you sure about that last point? I'll check after 3.0 -gp @c Yes, this is good practice. Otherwise, the start of the original @c part can only be seen from the font size. This is not good enough @@ -1364,7 +1364,7 @@ @c -hwn - any other changes introduced by the cued part should also be +Any other changes introduced by the cued part should also be undone. For example, if the cued instrument plays in a different clef, the original clef should be stated once again. Index: lilypond/config.make.in diff -u lilypond/config.make.in:1.81 lilypond/config.make.in:1.82 --- lilypond/config.make.in:1.81 Tue Jun 21 23:19:28 2005 +++ lilypond/config.make.in Tue Jul 19 12:57:32 2005 @@ -111,3 +111,5 @@ YACC = @YACC@ ZIP = @ZIP@ FLEXLEXER_PATH = @FLEXLEXER_PATH@ + +LINK_GXX_STATICALLY = @LINK_GXX_STATICALLY@ Index: lilypond/configure.in diff -u lilypond/configure.in:1.158 lilypond/configure.in:1.159 --- lilypond/configure.in:1.158 Fri Jul 8 20:00:14 2005 +++ lilypond/configure.in Tue Jul 19 12:57:32 2005 @@ -32,6 +32,12 @@ [ --enable-relocation compile with dynamic relocation. Default: off], [reloc_b=$enableval]) +AC_SUBST(LINK_GXX_STATICALLY) +LINK_GXX_STATICALLY=no +AC_ARG_ENABLE(static-gxx, + [ --enable-static-gxx link libstdc++.a statically. Default: off], + [LINK_GXX_STATICALLY=$enableval]) + # must come before any header checks STEPMAKE_COMPILE @@ -103,7 +109,7 @@ # New makeinfo for multi-page website docs Simply always require new # makeinfo should avoid bug reports; if people want to build lily # without the docs, they can find this comment and use an older -# makeinfo -- but hopefully won't report makeinfo problems. +# makeinfo--but hopefully won't report makeinfo problems. STEPMAKE_PROGS(MAKEINFO, makeinfo, REQUIRED, 4.7) if test "$optimise_b" = yes; then Index: lilypond/input/typography-demo.ly diff -u lilypond/input/typography-demo.ly:1.7 lilypond/input/typography-demo.ly:1.8 --- lilypond/input/typography-demo.ly:1.7 Sat Jul 16 12:23:33 2005 +++ lilypond/input/typography-demo.ly Tue Jul 19 12:57:33 2005 @@ -127,7 +127,7 @@ \context Staff #(set-accidental-style 'modern) \melody >> \lyricsto "singer" \new Lyrics \firstVerse -% \lyricsto "singer" \new Lyrics \secondVerse + \lyricsto "singer" \new Lyrics \secondVerse \new PianoStaff << \set PianoStaff.instrument = \markup { \bold Index: lilypond/lily/GNUmakefile diff -u lilypond/lily/GNUmakefile:1.55 lilypond/lily/GNUmakefile:1.56 --- lilypond/lily/GNUmakefile:1.55 Sat Jul 16 12:23:33 2005 +++ lilypond/lily/GNUmakefile Tue Jul 19 12:57:33 2005 @@ -6,8 +6,11 @@ MODULE_LIBS= $(depth)/flower $(depth)/kpath-guile MODULE_INCLUDES= $(depth)/flower/include + +# need this to convert between function pointers and member function pointers. MODULE_CXXFLAGS= -Wno-pmf-conversions + HELP2MAN_EXECS = lilypond STEPMAKE_TEMPLATES=c c++ executable po help2man @@ -16,8 +19,12 @@ include $(depth)/make/stepmake.make ifeq ($(HAVE_LIBKPATHSEA_SO),no) -MODULE_LDFLAGS+= $(KPATHSEA_LIBS) +MODULE_LDFLAGS += $(KPATHSEA_LIBS) endif +ifeq ($(LINK_GXX_STATICALLY),yes) +MODULE_LDFLAGS += -L$(outdir) -static-libgcc +endif + # for profiling, link guile statically: @@ -45,6 +52,14 @@ ETAGS_FLAGS += --regex='{c++}/^LY_DEFINE *([^"]*"\([^"]+\)"/\1/' default: + + +$(outdir)/libstdc++.a: + ln -s `$(CXX) -print-file-name=libstdc++.a` $(outdir)/ + +ifeq ($(LINK_GXX_STATICALLY),yes) +$(outdir)/lilypond: $(outdir)/libstdc++.a +endif # force these: Make can't know these have to be generated in advance $(outdir)/lily-parser.o: $(outdir)/parser.hh Index: lilypond/lily/lyric-combine-music-iterator.cc diff -u lilypond/lily/lyric-combine-music-iterator.cc:1.50 lilypond/lily/lyric-combine-music-iterator.cc:1.51 --- lilypond/lily/lyric-combine-music-iterator.cc:1.50 Wed Jul 13 18:22:34 2005 +++ lilypond/lily/lyric-combine-music-iterator.cc Tue Jul 19 12:57:33 2005 @@ -1,5 +1,5 @@ /* - lyric-combine-music-iterator.cc -- implement Lyric_combine_music_iterator + lyric-combine-music-iterator.cc -- implement Old_lyric_combine_music_iterator source file of the GNU LilyPond music typesetter @@ -12,11 +12,11 @@ #include "grob.hh" #include "music-iterator.hh" -class Lyric_combine_music_iterator : public Music_iterator +class Old_lyric_combine_music_iterator : public Music_iterator { public: - Lyric_combine_music_iterator (); - Lyric_combine_music_iterator (Lyric_combine_music_iterator const &src); + Old_lyric_combine_music_iterator (); + Old_lyric_combine_music_iterator (Old_lyric_combine_music_iterator const &src); DECLARE_SCHEME_CALLBACK (constructor, ()); protected: virtual void construct_children (); @@ -29,7 +29,7 @@ virtual void derived_mark () const; virtual void derived_substitute (Context *, Context *); private: - bool get_busy_status ()const; + bool get_busy_status () const; bool melisma_busy (); Music *get_combine_lyrics () const; Music *get_combine_music () const; @@ -57,7 +57,7 @@ Music *busy_req; Music *melisma_playing_req; -Lyric_combine_music_iterator::Lyric_combine_music_iterator () +Old_lyric_combine_music_iterator::Old_lyric_combine_music_iterator () { music_iter_ = 0; lyric_iter_ = 0; @@ -72,20 +72,20 @@ } Moment -Lyric_combine_music_iterator::pending_moment () const +Old_lyric_combine_music_iterator::pending_moment () const { Moment musnext = music_iter_->pending_moment (); return musnext; } bool -Lyric_combine_music_iterator::ok () const +Old_lyric_combine_music_iterator::ok () const { return music_iter_->ok (); } void -Lyric_combine_music_iterator::derived_mark ()const +Old_lyric_combine_music_iterator::derived_mark ()const { if (music_iter_) scm_gc_mark (music_iter_->self_scm ()); @@ -94,7 +94,7 @@ } void -Lyric_combine_music_iterator::derived_substitute (Context *f, Context *t) +Old_lyric_combine_music_iterator::derived_substitute (Context *f, Context *t) { if (music_iter_) music_iter_->substitute_outlet (f, t); @@ -103,7 +103,7 @@ } Music * -Lyric_combine_music_iterator::get_combine_music () const +Old_lyric_combine_music_iterator::get_combine_music () const { SCM l = get_music ()->get_property ("elements"); if (!scm_is_pair (l)) @@ -112,7 +112,7 @@ } Music * -Lyric_combine_music_iterator::get_combine_lyrics () const +Old_lyric_combine_music_iterator::get_combine_lyrics () const { SCM l = get_music ()->get_property ("elements"); if (!scm_is_pair (l)) @@ -124,14 +124,14 @@ } void -Lyric_combine_music_iterator::construct_children () +Old_lyric_combine_music_iterator::construct_children () { music_iter_ = unsmob_iterator (get_iterator (get_combine_music ())); lyric_iter_ = unsmob_iterator (get_iterator (get_combine_lyrics ())); } bool -Lyric_combine_music_iterator::get_busy_status () const +Old_lyric_combine_music_iterator::get_busy_status () const { /* We have to use both the event and the busyGrobs queue. The @@ -161,7 +161,7 @@ } bool -Lyric_combine_music_iterator::melisma_busy () +Old_lyric_combine_music_iterator::melisma_busy () { /* We cannot read the property, since music_iter_->get_outlet () might not be the context that sets the melisma properties, but rather a @@ -170,7 +170,7 @@ } void -Lyric_combine_music_iterator::process (Moment m) +Old_lyric_combine_music_iterator::process (Moment m) { Moment my_next = music_iter_->pending_moment (); if (my_next > m) @@ -186,7 +186,7 @@ } void -Lyric_combine_music_iterator::do_quit () +Old_lyric_combine_music_iterator::do_quit () { if (music_iter_) music_iter_->quit (); @@ -195,7 +195,7 @@ } Music_iterator * -Lyric_combine_music_iterator::try_music_in_children (Music *m) const +Old_lyric_combine_music_iterator::try_music_in_children (Music *m) const { Music_iterator *i = music_iter_->try_music (m); if (i) @@ -204,4 +204,4 @@ return lyric_iter_->try_music (m); } -IMPLEMENT_CTOR_CALLBACK (Lyric_combine_music_iterator); +IMPLEMENT_CTOR_CALLBACK (Old_lyric_combine_music_iterator); Index: lilypond/lily/melisma-translator.cc diff -u lilypond/lily/melisma-translator.cc:1.15 lilypond/lily/melisma-translator.cc:1.16 --- lilypond/lily/melisma-translator.cc:1.15 Mon Jul 18 23:37:25 2005 +++ lilypond/lily/melisma-translator.cc Tue Jul 19 12:57:33 2005 @@ -9,6 +9,7 @@ #include "engraver.hh" #include "grob.hh" #include "context.hh" +#include "translator.icc" /** Signal existence of melismas. @@ -65,7 +66,6 @@ event_ = 0; } -#include "translator.icc" ADD_TRANSLATOR (Melisma_translator, /* descr */ "This translator collects melisma information about ties, beams, and user settings (@code{melismaBusy}, and signals it to the @code{\addlyrics} code. ", Index: lilypond/lily/new-lyric-combine-music-iterator.cc diff -u lilypond/lily/new-lyric-combine-music-iterator.cc:1.34 lilypond/lily/new-lyric-combine-music-iterator.cc:1.35 --- lilypond/lily/new-lyric-combine-music-iterator.cc:1.34 Wed Jul 13 18:22:34 2005 +++ lilypond/lily/new-lyric-combine-music-iterator.cc Tue Jul 19 12:57:33 2005 @@ -1,5 +1,5 @@ /* - new-lyric-combine-iterator.cc -- implement New_lyric_combine_music_iterator + new-lyric-combine-iterator.cc -- implement Lyric_combine_music_iterator source file of the GNU LilyPond music typesetter @@ -12,11 +12,11 @@ #include "music-iterator.hh" #include "input.hh" -class New_lyric_combine_music_iterator : public Music_iterator +class Lyric_combine_music_iterator : public Music_iterator { public: - New_lyric_combine_music_iterator (); - New_lyric_combine_music_iterator (New_lyric_combine_music_iterator const &src); + Lyric_combine_music_iterator (); + Lyric_combine_music_iterator (Lyric_combine_music_iterator const &src); DECLARE_SCHEME_CALLBACK (constructor, ()); protected: virtual void construct_children (); @@ -48,7 +48,7 @@ static Music *start_ev; static Music *melisma_playing_ev; -New_lyric_combine_music_iterator::New_lyric_combine_music_iterator () +Lyric_combine_music_iterator::Lyric_combine_music_iterator () { music_found_ = false; made_association_ = false; @@ -71,7 +71,7 @@ } bool -New_lyric_combine_music_iterator::start_new_syllable () +Lyric_combine_music_iterator::start_new_syllable () { bool b = music_context_->try_music (busy_ev); @@ -92,7 +92,7 @@ } Moment -New_lyric_combine_music_iterator::pending_moment () const +Lyric_combine_music_iterator::pending_moment () const { Moment m; @@ -102,19 +102,19 @@ } bool -New_lyric_combine_music_iterator::run_always () const +Lyric_combine_music_iterator::run_always () const { return true; } bool -New_lyric_combine_music_iterator::ok () const +Lyric_combine_music_iterator::ok () const { return lyric_iter_ && lyric_iter_->ok (); } void -New_lyric_combine_music_iterator::derived_mark ()const +Lyric_combine_music_iterator::derived_mark ()const { if (lyric_iter_) scm_gc_mark (lyric_iter_->self_scm ()); @@ -125,7 +125,7 @@ } void -New_lyric_combine_music_iterator::derived_substitute (Context *f, Context *t) +Lyric_combine_music_iterator::derived_substitute (Context *f, Context *t) { if (lyric_iter_) lyric_iter_->substitute_outlet (f, t); @@ -136,7 +136,7 @@ } void -New_lyric_combine_music_iterator::construct_children () +Lyric_combine_music_iterator::construct_children () { Music *m = unsmob_music (get_music ()->get_property ("element")); lyric_iter_ = unsmob_iterator (get_iterator (m)); @@ -157,7 +157,7 @@ } void -New_lyric_combine_music_iterator::find_voice () +Lyric_combine_music_iterator::find_voice () { SCM voice_name = lyricsto_voice_name_; SCM running = lyrics_context_ ? lyrics_context_->get_property ("associatedVoice") : SCM_EOL; @@ -199,7 +199,7 @@ } void -New_lyric_combine_music_iterator::process (Moment) +Lyric_combine_music_iterator::process (Moment) { find_voice (); if (!music_context_) @@ -228,7 +228,7 @@ } void -New_lyric_combine_music_iterator::do_quit () +Lyric_combine_music_iterator::do_quit () { if (!music_found_) { @@ -247,9 +247,9 @@ } Music_iterator * -New_lyric_combine_music_iterator::try_music_in_children (Music *m) const +Lyric_combine_music_iterator::try_music_in_children (Music *m) const { return lyric_iter_->try_music (m); } -IMPLEMENT_CTOR_CALLBACK (New_lyric_combine_music_iterator); +IMPLEMENT_CTOR_CALLBACK (Lyric_combine_music_iterator); Index: lilypond/lily/performer-group-performer.cc diff -u lilypond/lily/performer-group-performer.cc:1.58 lilypond/lily/performer-group-performer.cc:1.59 --- lilypond/lily/performer-group-performer.cc:1.58 Mon Jul 18 23:37:25 2005 +++ lilypond/lily/performer-group-performer.cc Tue Jul 19 12:57:33 2005 @@ -13,8 +13,6 @@ #include "audio-element.hh" #include "warn.hh" -#include "translator.icc" - ADD_TRANSLATOR_GROUP (Performer_group_performer, /* descr */ "", /* creats*/ "", Index: lilypond/lily/recording-group-engraver.cc diff -u lilypond/lily/recording-group-engraver.cc:1.27 lilypond/lily/recording-group-engraver.cc:1.28 --- lilypond/lily/recording-group-engraver.cc:1.27 Tue Jul 19 10:42:49 2005 +++ lilypond/lily/recording-group-engraver.cc Tue Jul 19 12:57:33 2005 @@ -72,8 +72,6 @@ ptrs[STOP_TRANSLATION_TIMESTEP] = &recording_engraver; } -#include "translator.icc" - ADD_TRANSLATOR_GROUP (Recording_group_engraver, "Engraver_group_engraver that records all music events " "for this context. Calls the procedure " Index: lilypond/lily/score-engraver.cc diff -u lilypond/lily/score-engraver.cc:1.148 lilypond/lily/score-engraver.cc:1.149 --- lilypond/lily/score-engraver.cc:1.148 Mon Jul 18 23:37:25 2005 +++ lilypond/lily/score-engraver.cc Tue Jul 19 12:57:33 2005 @@ -164,8 +164,6 @@ return false; } -#include "translator.icc" - ADD_TRANSLATOR_GROUP (Score_engraver, /* descr */ "Top level engraver. Takes care of generating columns and the complete system (ie. System) " "\n\n " Index: lilypond/make/lilypond.fedora.spec.in diff -u lilypond/make/lilypond.fedora.spec.in:1.18 lilypond/make/lilypond.fedora.spec.in:1.19 --- lilypond/make/lilypond.fedora.spec.in:1.18 Wed Jun 22 13:59:57 2005 +++ lilypond/make/lilypond.fedora.spec.in Tue Jul 19 12:57:33 2005 @@ -52,7 +52,8 @@ # In fact, do not take out the spaces between % and { in the above comment, # because RPM will gladly do a substitution anyway. -./configure --without-kpathsea --disable-checking --prefix=%{_prefix} --enable-optimising +# compile with static libstdc++ for better platform portability. +./configure --enable-static-gxx --without-kpathsea --disable-checking --prefix=%{_prefix} --enable-optimising make all Index: lilypond/scm/define-music-types.scm diff -u lilypond/scm/define-music-types.scm:1.59 lilypond/scm/define-music-types.scm:1.60 --- lilypond/scm/define-music-types.scm:1.59 Wed Jul 13 19:31:02 2005 +++ lilypond/scm/define-music-types.scm Tue Jul 19 12:57:33 2005 @@ -239,7 +239,7 @@ (types . (general-music lyric-combine-music)) (length-callback . ,Lyric_combine_music::length_callback) (start-callback . ,Music_sequence::first_start_callback) - (iterator-ctor . ,Lyric_combine_music_iterator::constructor) + (iterator-ctor . ,Old_lyric_combine_music_iterator::constructor) )) (LyricCombineMusic @@ -249,7 +249,7 @@ Syntax @var{\\lyricsto [EMAIL PROTECTED] @var{lyrics}.") (length . ,(ly:make-moment 0 1)) (types . (general-music lyric-combine-music)) - (iterator-ctor . ,New_lyric_combine_music_iterator::constructor) + (iterator-ctor . ,Lyric_combine_music_iterator::constructor) )) (LyricEvent _______________________________________________ Lilypond-cvs mailing list Lilypond-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-cvs