From e4f2fe1116762bcc8919747a212ddbc112ea5c1a Mon Sep 17 00:00:00 2001 From: fred Date: Tue, 26 Mar 2002 22:23:44 +0000 Subject: [PATCH] lilypond-1.1.60 --- Documentation/ntweb/index.yo | 53 +++++++++--- aclocal.m4 | 2 + flower/include/scalar.hh | 2 + flower/scalar.cc | 13 +++ input/test/volta.fly | 9 +-- lily/abbreviation-beam.cc | 2 + lily/align-note-column-engraver.cc | 8 +- lily/dot-column.cc | 2 +- lily/include/atom.hh | 4 + lily/include/axis-group-element.hh | 20 ++++- lily/include/lily-proto.hh | 126 ++++++++++++++--------------- lily/include/local-key-engraver.hh | 9 ++- lily/include/note-head-side.hh | 3 +- lily/lookup.cc | 14 ++-- lily/note-head-side.cc | 4 +- ly/engraver.ly | 7 +- ly/property.ly | 34 -------- stepmake/aclocal.m4 | 2 + stepmake/bin/package-zip32.sh | 22 ++++- 19 files changed, 202 insertions(+), 134 deletions(-) diff --git a/Documentation/ntweb/index.yo b/Documentation/ntweb/index.yo index 1c7f252385..5d6701b7e8 100644 --- a/Documentation/ntweb/index.yo +++ b/Documentation/ntweb/index.yo @@ -18,6 +18,40 @@ clearpage() subsect(NEWS) label(news) +description( + dit(BUG FIXES) + itemize( + it() Error: Python path: Python installation is required nl() + Users reported problems with the installer finding the python + path for some versions of Python namely 1.5. I am using a + slightly different approach so that problem should be solved. + Thanks to Mats Bengtsson and Wolfgang Fischler reporting and + helping with this issue. + it() Unable to find lilyponddefs.tex nl() + This was due to using version version 1.07 of MiKTeX. I have + add known working versions for all of the required software + packages, per Mats suggestion. See link(Required + Packages)(packages). + ) +) + +description( + dit(NOTES) + itemize( + it() Please use the Add/Remove program control panel entry to + unistall your current version of Lilypond before you attempt to + install this one. + + it() If you are upgrading from a previous version of lilypond you will most + likely need to flush your font cache. I generally just toss + file(D:\localtexmf\fonts\tfm\public\ehrhardt) and + file(D:\localtexmf\fonts\pk\ljfour\public\ehrhardt) in the Recyle + Bin. Your local font directory may be different, please refer to your + local installation of code(TeX). + ) +) + + The FAT16, FAT32, and NTFS file system problems have been corrected. I have tested various installations that are known to be operational. The following configurations that have been tested. @@ -85,15 +119,9 @@ itemize( it()convert-mudela it()mudela-book it()lilypond - it()mi2mu + it()midi2ly ) -If you are upgrading from a previous version of lilypond you will most -likely need to flush your font cache. I generally just toss -file(D:\localtexmf\fonts\tfm\public\ehrhardt) and -file(D:\localtexmf\fonts\pk\ljfour\public\ehrhardt) in the Recyle -Bin. Your local font directory may be different, please refer to your -local installation of code(TeX). I have also converted the Manual Pages for the above tools to HTML for easy browsing. This release has been tested on Windows NT 4.0sp3 and @@ -111,7 +139,7 @@ link(Back to top)(contents) clearpage() -subsect(Required packages) label(packages) +subsect(Required Packages) label(packages) LilyPond uses the code(TeX) package as its rendering engine. code(TeX) represents the state-of-the-art in computer typesetting. It is used to @@ -127,9 +155,12 @@ Gsview is used to display and print the music scores created by LilyPond. itemize( - it()url(code(MiKTeX))(http://www.snafu.de/~cschenk/miktex/) - it()url(code(Python))(http://www.python.org) - it()url(code(gsview))(http://www.cs.wisc.edu/~ghost/gsview/index.html) + it()url(code(MiKTeX))(http://www.snafu.de/~cschenk/miktex/). Versions + 1.10b, 1.11, and 1.20b are known to work. + it()url(code(Python))(http://www.python.org). Version 1.5.1 and + possibly 1.5 work. + it()url(code(gsview))(http://www.cs.wisc.edu/~ghost/gsview/index.html). + Version 5.10 is known to work. ) link(Back to top)(contents) diff --git a/aclocal.m4 b/aclocal.m4 index caee78ed68..a86a37f121 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -4,6 +4,8 @@ dnl WARNING WARNING WARNING WARNING dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 dnl WARNING WARNING WARNING WARNING dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 +dnl WARNING WARNING WARNING WARNING +dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 dnl aclocal.m4 -*-shell-script-*- dnl StepMake subroutines for configure.in diff --git a/flower/include/scalar.hh b/flower/include/scalar.hh index e2750c9e1a..e76841b561 100644 --- a/flower/include/scalar.hh +++ b/flower/include/scalar.hh @@ -26,6 +26,8 @@ struct Scalar : public String operator Rational(); Scalar() {} bool isnum_b() const; + bool isdir_b() const; + bool isint_b() const; operator Real(); operator int(); bool to_bool () const; diff --git a/flower/scalar.cc b/flower/scalar.cc index c0ef60d744..6e97eedf8f 100644 --- a/flower/scalar.cc +++ b/flower/scalar.cc @@ -35,6 +35,19 @@ Scalar::to_rat () const return Rational (s1.value_i (), s2.value_i ()); } +bool +Scalar::isdir_b () const +{ + int conv = length_i (); + if (conv) + { + long l =0; + conv = sscanf (strh_.ch_C (), "%ld", &l); + conv = conv && (l >= -1 && l <= 1); + } + return conv; +} + bool Scalar::isnum_b () const { diff --git a/input/test/volta.fly b/input/test/volta.fly index 9386a43669..86a57ed0d5 100644 --- a/input/test/volta.fly +++ b/input/test/volta.fly @@ -3,16 +3,15 @@ c' d e f | \repeat semi 2 { g a b c } -\alternative { { c b a g a g a g} { f e d c } } \break -%c, d e f | % Assertion failure if this line is removed!! +\alternative { { c b a g a g a g} { f e d c } } \repeat semi 2 { g a b c } -\alternative { { c b a g \break a g a g} { f e d c } } \break +\alternative { { c b a g \break a g a g} { f e d c } } c, d e f | \repeat semi 2 { g a b c } -\alternative { { c b a g \break a g a g \break a b a b } { f e d c } } \break +\alternative { { c b a g \break a g a g \break a b a b } { f e d c } } c, d e f | \repeat semi 2 { g a b c } -\alternative { { c b a g } { f e d c \break a g a g} } \break +\alternative { { c b a g } { f e d c \break a g a g} } c, d e f | \repeat semi 2 { g a b c } \alternative { { c b a g a g a g} { f e d c \bar "|.";} } diff --git a/lily/abbreviation-beam.cc b/lily/abbreviation-beam.cc index b0307f2e6f..cc10968278 100644 --- a/lily/abbreviation-beam.cc +++ b/lily/abbreviation-beam.cc @@ -1,3 +1,4 @@ +#if 0 /* abbreviation-beam.cc -- implement Abbreviation_beam @@ -58,3 +59,4 @@ Abbreviation_beam::stem_beams (Stem *here, Stem *next, Stem *prev) const */ return Beam::stem_beams (here, next, prev); } +#endif diff --git a/lily/align-note-column-engraver.cc b/lily/align-note-column-engraver.cc index 4e00da6840..70d08a62e1 100644 --- a/lily/align-note-column-engraver.cc +++ b/lily/align-note-column-engraver.cc @@ -18,7 +18,7 @@ */ class Align_note_column_engraver: public Engraver { - Axis_align_item * align_item_p_; + Grace_align_item * align_item_p_; Note_column * now_column_l_; Local_key_item * accidental_l_; @@ -50,6 +50,12 @@ Align_note_column_engraver::do_creation_processing () void Align_note_column_engraver::do_removal_processing () { + Scalar al = get_property ("graceAlignPosition", 0); + if (al.isdir_b ()) + { + align_item_p_->notehead_align_dir_ = int (al); + } + typeset_element (align_item_p_); align_item_p_ =0; } diff --git a/lily/dot-column.cc b/lily/dot-column.cc index 4bcaff4a67..56ffe94762 100644 --- a/lily/dot-column.cc +++ b/lily/dot-column.cc @@ -51,7 +51,7 @@ Dot_column::do_pre_processing () Dot_column::Dot_column () { - align_dir_ = RIGHT; + notehead_align_dir_ = RIGHT; set_axes(X_AXIS,X_AXIS); } diff --git a/lily/include/atom.hh b/lily/include/atom.hh index ab67d0881d..9f8c4ef097 100644 --- a/lily/include/atom.hh +++ b/lily/include/atom.hh @@ -24,6 +24,10 @@ public: representing a musical notation symbol. */ Protected_scm func_; Protected_scm font_; + + /* + TODO: move this into the font_ field. + */ Protected_scm magn_; }; diff --git a/lily/include/axis-group-element.hh b/lily/include/axis-group-element.hh index d57069b256..c3221a0ec2 100644 --- a/lily/include/axis-group-element.hh +++ b/lily/include/axis-group-element.hh @@ -20,15 +20,29 @@ class Axis_group_element : public virtual Score_element, public virtual Graphical_axis_group { + Link_array extra_elems_; + protected: virtual void do_print() const; virtual Link_array get_extra_dependencies() const; - virtual Interval do_height () const; - virtual Interval do_width () const; -public: virtual void do_substitute_element_pointer (Score_element*,Score_element*); virtual Link_array elem_l_arr() const; + + virtual Interval do_height () const; + virtual Interval do_width () const; + + +Interval extra_extent (Axis a ) const; + +public: + /** + add an element that only influences size, but does not have X/Y parent + relationship with THIS. + */ + void add_extra_element (Score_element*); + + Axis_group_element (); virtual void set_axes (Axis,Axis); diff --git a/lily/include/lily-proto.hh b/lily/include/lily-proto.hh index e702c3334b..e360dbfa62 100644 --- a/lily/include/lily-proto.hh +++ b/lily/include/lily-proto.hh @@ -10,39 +10,40 @@ #define LILY_PROTO_HH #include "proto.hh" -struct Absolute_dynamic_req; -struct Stem_tremolo; + + struct Abbreviation_beam; -struct Abbreviation_beam_req; struct Abbreviation_beam_engraver; -struct Tremolo_req; -struct Adobe_font_metric; +struct Abbreviation_beam_req; +struct Absolute_dynamic_req; struct Adobe_font_char_metric; +struct Adobe_font_metric; +struct Align_element; struct All_font_metrics; struct Articulation_req; struct Atom; +struct Audio_column; struct Audio_element; struct Audio_element_info; -struct Audio_column; -struct Audio_item; struct Audio_instrument; +struct Audio_item; struct Audio_key; -struct Audio_text; -struct Audio_time_signature; struct Audio_note; struct Audio_note_off; -struct Audio_tie; struct Audio_staff; struct Audio_tempo; +struct Audio_text; +struct Audio_tie; +struct Audio_time_signature; struct Auto_beam_engraver; -struct Axis_group_element; -struct Axis_group_spanner; -struct Axis_group_item; struct Axis_align_item; struct Axis_group; +struct Axis_group_element; +struct Axis_group_item; +struct Axis_group_spanner; struct Bar; -struct Bar_column_engraver; struct Bar_column; +struct Bar_column_engraver; struct Bar_engraver; struct Bar_req; struct Barcheck_req; @@ -56,30 +57,28 @@ struct Box; struct Bracket_req; struct Break_align_item; struct Break_req; +struct CHyphen_req; struct Cadenza_req; struct Change_iterator; struct Change_translator; struct Chord; struct Chord_name_engraver; -struct CHyphen_req; struct Clef_change_req; -struct Clef_item; struct Clef_engraver; +struct Clef_item; struct Clef_performer; -struct Column_x_positions; -struct Column_info; -struct Column_spring; struct Collision; struct Collision_engraver; +struct Column_info; +struct Column_spring; +struct Column_x_positions; struct Command_req; struct Command_script_req; struct Command_tie_engraver; -struct Time_scaled_music; -struct Time_scaled_music_iterator; struct Crescendo ; -struct Dots; -struct Dot_column; struct Directional_spanner; +struct Dot_column; +struct Dots; struct Durational_req; struct Dynamic; struct Dynamic_req; @@ -89,27 +88,23 @@ struct Engraver; struct Engraver_group_engraver; struct Extender; struct Extender_req; -struct Script; -struct Script_req; -struct Staff_side_item; -struct Text_item; +struct Folded_repeat_iterator; struct General_script_def; -struct Graphical_element; - -struct Graphical_axis_group; struct Global_translator; -struct Hara_kiri_line_group_engraver; +struct Grace_align_item; +struct Graphical_axis_group; +struct Graphical_element; struct Hara_kiri_group_spanner; +struct Hara_kiri_line_group_engraver; struct Head_column; - struct Idealspacing; struct Identifier; struct Input_file; struct Item; struct Key; struct Key_change_req; -struct Key_item; struct Key_engraver; +struct Key_item; struct Key_performer; struct Keyword; struct Keyword_table; @@ -120,8 +115,8 @@ struct Line_of_staff; struct Line_spacer; struct Linestaff; struct Local_key; -struct Local_key_item; struct Local_key_engraver; +struct Local_key_item; struct Lookup; struct Lyric_item; struct Lyric_req; @@ -133,7 +128,6 @@ struct Midi_duration; struct Midi_header; struct Midi_item; struct Midi_key; -struct Midi_time_signature; struct Midi_note; struct Midi_note_event; struct Midi_note_off; @@ -141,38 +135,36 @@ struct Midi_output; struct Midi_score; struct Midi_stream; struct Midi_tempo; +struct Midi_time_signature; struct Midi_track; struct Midi_walker; struct Mixed_qp; struct Molecule; struct Multi_measure_rest; -struct Multi_measure_rest_req; struct Multi_measure_rest_engraver; +struct Multi_measure_rest_req; struct Music; struct Music_iterator; -struct Musical_req; -struct Musical_span_req; -struct Musical_script_req; struct Music_list; struct Music_list_iterator; struct Music_output; struct Music_output_def; -struct Musical_pitch; struct Music_sequence; struct Music_wrapper; struct Music_wrapper_iterator; +struct Musical_pitch; +struct Musical_req; +struct Musical_script_req; +struct Musical_span_req; struct My_lily_lexer; struct My_lily_parser; struct Note_column; struct Note_column_engraver; -struct Note_performer; -struct Note_req; struct Note_head; struct Note_head_engraver; +struct Note_performer; +struct Note_req; struct Notename_table; -struct Repeated_music; -struct Unfolded_repeat_iterator; -struct Folded_repeat_iterator; struct Offset; struct Paper_column; struct Paper_def; @@ -182,34 +174,38 @@ struct Paper_stream; struct Partial_measure_req; struct Performance; struct Performer; -struct Tuplet_spanner; -struct Piano_brace; struct Performer; struct Performer_group_performer; +struct Piano_brace; struct Property_iterator; struct Rational; -struct Request; -struct Request_column; -struct Relative_octave_music; struct Re_rhythmed_music; +struct Relative_octave_music; struct Repeat_engraver; struct Repeated_music; +struct Repeated_music; struct Repeated_music_iterator; +struct Request; +struct Request_chord; +struct Request_column; struct Rest; struct Rest_collision; struct Rest_collision_engraver; struct Rest_req; struct Rhythmic_grouping; -struct Rhythmic_head; struct Rhythmic_grouping_req; +struct Rhythmic_head; struct Rhythmic_req; struct Scope; -struct Separating_group_spanner; struct Score; struct Score_column; struct Score_element; struct Score_element_info; struct Score_performer; +struct Script; +struct Script_req; +struct Separating_group_spanner; +struct Sequential_music; struct Simple_music; struct Simultaneous_music; struct Single_malt_grouping_item; @@ -218,54 +214,58 @@ struct Slur; struct Slur_engraver; struct Spacing_spanner; struct Span_bar; -struct Span_score_bar; struct Span_req; +struct Span_score_bar; struct Spanner; struct Spring; struct Spring_spacer; struct Staff_bracket; struct Staff_performer; struct Staff_side; +struct Staff_side_item; struct Staff_symbol; struct Stem; struct Stem_beam_engraver; struct Stem_req; +struct Stem_tremolo; struct String; +struct Super_element; struct Symtable; struct Symtables; -struct Super_element; -struct Translation_property; struct Tempo_req; struct Tex_font_char_metric; struct Tex_font_metric; struct Tex_font_metric_reader; struct Text_def; +struct Text_engraver; struct Text_gob; struct Text_item ; -struct Text_engraver; +struct Text_item; struct Text_req; struct Text_spanner; struct Tie; struct Tie_engraver; struct Tie_req; struct Time_description; +struct Time_scaled_music; +struct Time_scaled_music_iterator; struct Time_signature; struct Time_signature_change_req; struct Time_signature_engraver; struct Time_signature_performer; +struct Timing_engraver; +struct Timing_req; +struct Timing_translator; struct Tonic_req; +struct Translation_property; struct Translator; struct Translator_group; -struct Timing_req; -struct Timing_translator; -struct Timing_engraver; +struct Tremolo_req; +struct Tuplet_spanner; +struct Unfolded_repeat_iterator; struct Vertical_brace; struct Vertical_spanner; - struct Volta_spanner; -struct Align_element; -struct Sequential_music; -struct Request_chord; typedef Rational Moment; typedef Scope Header; diff --git a/lily/include/local-key-engraver.hh b/lily/include/local-key-engraver.hh index bba7b4cadd..260496bd0c 100644 --- a/lily/include/local-key-engraver.hh +++ b/lily/include/local-key-engraver.hh @@ -11,7 +11,12 @@ #include "engraver.hh" #include "key.hh" #include "parray.hh" - +/** + Make accidentals. Catches note heads, ties and notices key-change + events. Due to interaction with ties (which don't come together + with note heads), this needs to be in a context higher than Tie_engraver. + (FIXME). + */ struct Local_key_engraver : Engraver { Local_key_item *key_item_p_; protected: @@ -32,7 +37,7 @@ public: Link_array tied_l_arr_; Local_key_engraver(); bool self_grace_b_; - + Grace_align_item * grace_align_l_; }; #endif // LOCALKEYGRAV_HH diff --git a/lily/include/note-head-side.hh b/lily/include/note-head-side.hh index c5f7b0167c..421ad9c57d 100644 --- a/lily/include/note-head-side.hh +++ b/lily/include/note-head-side.hh @@ -21,7 +21,8 @@ class Note_head_side: public virtual Item { Link_array support_l_arr_; public: - Direction align_dir_; + // naming to avoid conflict with Align_element + Direction notehead_align_dir_; Note_head_side (); void add_support (Item*); diff --git a/lily/lookup.cc b/lily/lookup.cc index 9dee0018d2..00354d3c2d 100644 --- a/lily/lookup.cc +++ b/lily/lookup.cc @@ -503,12 +503,16 @@ Lookup::staff_brace (Real y, int staff_size) const ) */ + Real step = 1.0; + int minht = 2 * staff_size; + int maxht = 7 * minht; + int idx = ((maxht - step) ? 0; - Atom at (gh_list (pianobrace_scm_sym, - gh_double2scm (y), - gh_int2scm (staff_size), - SCM_UNDEFINED - )); + SCM f = ly_symbol (String ("feta-braces" + to_str (staff_size))); + SCM e =gh_list (char_scm_sym, gh_int2scm (idx), SCM_UNDEFINED); + Atom at (e); + at.font_ = f; m.dim_[Y_AXIS] = Interval (-y/2,y/2); m.dim_[X_AXIS] = Interval (0,0); diff --git a/lily/note-head-side.cc b/lily/note-head-side.cc index 0d360c4d02..785da0c332 100644 --- a/lily/note-head-side.cc +++ b/lily/note-head-side.cc @@ -36,7 +36,7 @@ Note_head_side::do_pre_processing () if (x_int.empty_b ()) x_int = Interval(0,0); - translate_axis (-extent(X_AXIS)[-align_dir_] + x_int[align_dir_], X_AXIS); + translate_axis (-extent(X_AXIS)[-notehead_align_dir_] + x_int[notehead_align_dir_], X_AXIS); } void @@ -48,5 +48,5 @@ Note_head_side::do_substitute_element_pointer (Score_element*o,Score_element*n) Note_head_side:: Note_head_side() { - align_dir_ = LEFT; + notehead_align_dir_ = LEFT; } diff --git a/ly/engraver.ly b/ly/engraver.ly index dfd6ca731e..645f0946a7 100644 --- a/ly/engraver.ly +++ b/ly/engraver.ly @@ -19,6 +19,8 @@ StaffContext=\translator { \consists "Staff_symbol_engraver"; \consists "Collision_engraver"; \consists "Rest_collision_engraver"; + \consists "Local_key_engraver"; + \consistsend "Axis_group_engraver"; @@ -82,8 +84,8 @@ VoiceContext = \translator { \type "Engraver_group_engraver"; \consists "Dynamic_engraver"; % must come before text_engraver. \name Voice ; - \consists "Local_key_engraver"; - + + \consists "Tie_engraver"; \consists "Breathing_sign_engraver"; \consists "Rest_engraver"; \consists "Dot_column_engraver"; @@ -102,7 +104,6 @@ VoiceContext = \translator { \consists "Rhythmic_column_engraver"; \consists "Font_size_engraver"; \consists "Slur_engraver"; - \consists "Tie_engraver"; \consists "Tuplet_engraver"; \consists "Grace_position_engraver"; \consists "Skip_req_swallow_translator"; diff --git a/ly/property.ly b/ly/property.ly index 4ecbd24678..7ebb134115 100644 --- a/ly/property.ly +++ b/ly/property.ly @@ -102,9 +102,6 @@ slurdotted = \property Voice.slurdash = 1 -%{ - for grace note hack, see input/test/grace.ly -%} tupletoff = { \property Voice.tupletVisibility = 0 } @@ -113,7 +110,6 @@ tupleton = { } tiny = { \property Voice.fontSize= "-2" - \tupletoff %urg } small = { @@ -122,38 +118,8 @@ small = { normalsize = { \property Voice.fontSize= "0" - \tupleton %urg -} - -%{ - [urg: try at] temporary grace note hack - the total visible duration of the grace notes must be half - the duration of the 'at' note: e.g.: - - \grace b8 \graceat c4 \ecarg - \grace c16 b16 \graceat c4 \ecarg - -grace = { - \tiny -% it would be so cool not to have to specify these factors each time... -% :-( - \property Voice.tupletVisibility = 0 - \[1/16 } -graceat = \melodic { - \normalsize - \property Voice.tupletVisibility = 0 - \] \[31/32 -} - -ecarg = \melodic { - \property Voice.tupletVisibility = 0 - \] - \property Voice.tupletVisibility = 3 -} -%} - normalkey = { \property Staff.keyoctaviation = 1 } diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4 index 602d77213a..caee78ed68 100644 --- a/stepmake/aclocal.m4 +++ b/stepmake/aclocal.m4 @@ -2,6 +2,8 @@ dnl WARNING WARNING WARNING WARNING dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 dnl WARNING WARNING WARNING WARNING dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 +dnl WARNING WARNING WARNING WARNING +dnl do not edit! this is aclocal.m4, generated from stepmake/aclocal.m4 dnl aclocal.m4 -*-shell-script-*- dnl StepMake subroutines for configure.in diff --git a/stepmake/bin/package-zip32.sh b/stepmake/bin/package-zip32.sh index 164faa1519..fbe52f3d95 100644 --- a/stepmake/bin/package-zip32.sh +++ b/stepmake/bin/package-zip32.sh @@ -38,9 +38,12 @@ fi distdir=/tmp/${name} -rm -f ${srcdir}/config.cache -PYTHON=${PYTHON:-python} ${srcdir}/configure --prefix=${distdir} \ - --srcdir=${srcdir} +# +# Maybe we can get away without reconfiguring +# +# rm -f ${srcdir}/config.cache +# PYTHON=${PYTHON:-python} ${srcdir}/configure --prefix=${distdir} \ +# --srcdir=${srcdir} if ! make ; then echo "make failed" @@ -109,6 +112,19 @@ mv $distdir/bin/mudela-book $distdir/bin/mudela-book.py # mkdir $distdir/doc cp Documentation/man/out/*.html $distdir/doc + +# +# copy web documentation to web directory +# +mkdir $distdir/web +for i in index.html guile.patch angels.ly +do + cp Documentation/ntweb/out/$i $distdir/web || exit 1 +done + +# +# Zip it up +# cd $distdir/.. $ZIP_CMD $ZIP_FILE $name echo "Wrote $ZIP_FILE" -- 2.39.5