Re: (Not) mentioning that URW fonts are distributetd with LilyPond

2023-10-27 Thread Matthias Kilian
Hi,

On Thu, Oct 26, 2023 at 09:36:24PM +0200, Jean Abou Samra wrote:
> > https://lilypond.org/doc/v2.25/Documentation/notation/font-families
> > 
> > still claims that LilyPond still includes URW fonts, which it doesn't
> > since 2.24.
> 
> It does — otherwise, they could not be set as the default fonts.
> 
> If you're thinking about the change mentioned
> on 
> http://lilypond.org/doc/v2.24/Documentation/changes/index.html#notes-for-source-compilation-and-packagers
>  , it only means that LilyPond's build system will not take care of installing
> text fonts by itself anymore.

Thanks.

> Redistributors need to do that by themselves
> (which they probably already wanted to do, for deduplication between 
> packages).
> In this way of thinking, the scripts that generate the binaries distributed on
> lilypond.org are a "redistributor", and indeed they do package the fonts.

I think I'll just add the URW fonts to the lilypond package for now
(doing an update of it for OpenBSD).

Ciao,
Kili



(Not) mentioning that URW fonts are distributetd with LilyPond

2023-10-26 Thread Matthias Kilian
Hi,

https://lilypond.org/doc/v2.25/Documentation/notation/font-families

still claims that LilyPond still includes URW fonts, which it doesn't
since 2.24.

I'm not sure wether it's ok to just remove the 'distributed with
LilyPond' in the corresponding paragraph or wether this would let people
wonder why the URW fonts are mentioned at all. That paragraph is still
useful, so completely removing it would probably not the best option.

Any thoughts or suggestions?

Ciao,
Kili



Re: grand copyright replacement

2019-01-25 Thread Matthias Kilian
On Fri, Jan 25, 2019 at 07:43:10AM +0100, Werner LEMBERG wrote:
> I'm going to run `scripts/build/grand-replace' to update all copyright
> years.

I'm not completely sure, but shouldn't the copyright year(s) in a work
only cover the years when the work was originally written or modified?

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output (final)

2011-08-10 Thread Matthias Kilian
On Tue, Aug 09, 2011 at 04:26:00PM +0100, Wols Lists wrote:
> > out/parser.cc:2392: warning: conversion to 'short int' from 'int' may
> > alter its value
[...]
> [...] That "out/parser" is a perfect example - it *may*
> be innocuous, or it *may* be a serious problem. It really ought to be
> checked out and fixed, and if I were a boss, I would have no qualms
> whatever about saying "fix it".

It depends on the bison version. I don't get this warning with
bison-2.3.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output (final)

2011-08-10 Thread Matthias Kilian
On Tue, Aug 09, 2011 at 04:34:57PM +0100, Phil Holmes wrote:
> >I'm afraid I'm with Reinhold. As a *programmer*, I consider it very bad
> >practice to ignore warnings. For the system to hide them from me, well !!!
> 
> 
> They're not being ignored.  They're not even being seen.  Please address my 
> point of how you would see them in 37,000 lines of console output.

Many people are building *any* large projects with something like

make 2>&1 | tee m.log

and then look at m.log after the build. I do so, and I do so by
default.  When building distribution packages for OpenBSD, I also
log the complete output of extracting, patching, configuring,
building and installing and look at that log file. I won't look at
any project specific logfiles.

Important stuff *has* to go to stdout or stderr. If every project
would invent its own way to hide important messages from stdout/stderr
*by default* and put them into project specific logfiles, it would
a hell for everyone who's porting those project to specific operating
system distributions.

I don't want to have to look *where* too look for warnings and
errors.

However, the normal build output won't be touched, as Graham wrote.
It's only about the doc output for now, if I understood Graham
correctly.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output

2011-07-10 Thread Matthias Kilian
On Sun, Jul 10, 2011 at 01:10:05PM +0200, Reinhold Kainhofer wrote:
> But we don't solve the problem of the log output. I mean, how many people 
> really **want** the full output from the build system?

What about a *default* output similar to what you now get with
QUIET_BUILD=1? That is currently a little bit too quiet (for example,
it hides ghostscript invocations), but with the missing bits added,
would people really miss something?

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output

2011-07-10 Thread Matthias Kilian
On Sun, Jul 10, 2011 at 11:53:08AM +0100, Phil Holmes wrote:
> >Little bit difficult as it seems, so here's a simple version (without
> >the combined log). You can invoke it like this:
> >
> >lilylog.sh o.log e.log ls -l . dontexist
> >
> >which is the `verbose' mode (i.e. you still see stdout and stderr, but
> >both get logged to the given files) or like this:
> >
> >lilylog.sh -q o.log e.log ls -l . dontexist
> >
> >which is the `quiet' mode (output goes only to the files).
> 
> Could you explain for someone with no Unix background what this does, 
> please?

Well, it lets you run a command, logging stdout and stderr to the
logfiles given in the first two arguments, and exits with the same
exit code as the cmmand did. Unless you invoke it with -q, you'll
also see stdout and stderr on your screen as usual.

The idea is to tweak the build system to run commands that produce
too much output with this script instead, so you get less output,
and, in case of a failure, get a message which log files too look
at.

Unfortunately, I still didn't get enough time to hack on the build
system itself.

Also, it looks like there are different opinions of wether to split
stdout and stderr into two different log files or not. (personally,
I'd just go with a single file, which would also simplify my script
much).

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output

2011-07-08 Thread Matthias Kilian
On Fri, Jul 08, 2011 at 08:24:37AM +0200, Jan Nieuwenhuizen wrote:
> Almost right.  However, try not to invent something new.  Please just
> use the autoconf/automake behaviour, which follows mostly the convention
> that Linux and Git git have set.
> 
>http://www.gnu.org/s/hello/manual/automake/Options.html
> 
> To summarize
> 
> the user of the package may influence the verbosity at configure run
> time as well as at make run time:
> 
> * Passing --enable-silent-rules to configure will cause build rules to
>   be less verbose; the option --disable-silent-rules is the default and
>   will cause normal verbose output.
> 
> [we could change this default]

Please no.

The problem with the too verbose build output in lilypond is not
related at all to the *make* output, IMHO. --enable-silent-rules
only hides crucial information. Heck, at OpenBSD we even spent time
to force --disable-silent-rules on all software packages by default,
because it just sucks if a build fails and you don't see the exact
command line parameters passed to the compiler or the linker.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output

2011-07-07 Thread Matthias Kilian
On Thu, Jul 07, 2011 at 02:59:37PM +0200, Matthias Kilian wrote:
> Wouldn't it be better to either collect both stdout and stderr in
> the same log file or to use three log files .err.log, .out.log and
> .log, where the latter contains the combined streams? Otherwise you are
> loosing the context between the two, which sometimes may be important.

Little bit difficult as it seems, so here's a simple version (without
the combined log). You can invoke it like this:

lilylog.sh o.log e.log ls -l . dontexist

which is the `verbose' mode (i.e. you still see stdout and stderr, but
both get logged to the given files) or like this:

lilylog.sh -q o.log e.log ls -l . dontexist

which is the `quiet' mode (output goes only to the files).

If the command given fails (exit code != 0) so does this script.
In addition, it writes (to stderr) the command that failed and the
logfiles.

Ciao,
Kili

ps: i usually use tabs in my scripts, but as you guys obviously
consider tabs evil, i've run expand(1) on it ;-)


lilylog.sh
Description: Bourne shell script
___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 5: build system output

2011-07-07 Thread Matthias Kilian
On Thu, Jul 07, 2011 at 01:16:21PM +0100, Graham Percival wrote:
> * Wherever possible, stderr output should go to *.err.log and
>   stdout output to *.log

Wouldn't it be better to either collect both stdout and stderr in
the same log file or to use three log files .err.log, .out.log and
.log, where the latter contains the combined streams? Otherwise you are
loosing the context between the two, which sometimes may be important.

(Now hacking on a simple script for doing such logging; similar to
http://tratt.net/laurie/src/supuner/, but simpler and better matching
lilypond needs)

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: stdout vs. stderr (was: Patch: small reduction in output from make doc)

2011-06-25 Thread Matthias Kilian
On Sat, Jun 25, 2011 at 05:27:03PM +0100, Graham Percival wrote:
> 1. what's the official unix definition of STDERR vs. STDOUT?

Quoting the standard:

3.358 Standard Error

An output stream usually intended to be used for diagnostic messages.

[...]

3.360 Standard Output

An output stream usually intended to be used for primary data output.


Of course, this definition is meant for typical unix command line
tools, where you want to pipe the output of one program as input
into another program and still see "diagnostic messages" from the
first program. Lilypond is a little bit different.


Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Replace Tab with 8 Spaces for .py files (issue4627062)

2011-06-24 Thread Matthias Kilian
[slightly offtopic tab size rant ;-)]

On Fri, Jun 24, 2011 at 04:44:21PM +0100, Graham Percival wrote:
> In the old/bad style that emacs produced, one tab was used to
> represent 8 spaces.  Yes, it was doubly confusing.

Well, no. People and/or editors who used one tab per indentation
level (and probably fiddling with the displayed *tab* width other
than 8 spaces) where confused.

Whenever I see any file that needs a tab width other than 8 spaces
to display correctly (be it programs, be it configuration files),
I get *very* upset.

That said, as people today don't know the difference between tab
width and indentation, it's still good to forbid tabs at all in
lilypond ;-)

Ciao,
Kili

ps: when I started working on unix (in the late 80ths), I abused
tabs for indentation, too. But it took me only a few months to
recognize that error.

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: echo but return false in make (was: Logfiles from build)

2011-06-17 Thread Matthias Kilian
On Fri, Jun 17, 2011 at 07:35:19PM +0100, Graham Percival wrote:
> > >Again, on the shell, it would be something like this:
> > >  make ...blah... || echo "build failed" && tail logfile
> > >but there might be a nicer way to do it.
> > 
> > but then when blah fails, make will not stop, since the return
> > status from echo && tail is a success (assuming the log file
> > exists). How would you return failure and force make to stop?

make ...blah... || { echo "build failed"; tail logfile; false; }

> Interesting, I hadn't considered that.  Hmm, is there such a thing
> as functions in bach?  If so, it would be easy to return something
> after doing the echo.
> 
> Of course, we can't guaranteed that bash will be present... does
> sh(1) allow functions? 

Of course. Shell functions are demanded by POSIX ;-)

> Or can we write functions in make, or stepmake?  Or do the same
> thing with macros somehow, if make has
> macros but not functions?

Please don't. Fiddling with (gnu) make macros (which aren't real
macros but just variables `invoked' in a special way) doesn't make
the makefiles more readable.

What should be possible (I can work on this in about one and a half
week, when I've two weeks of vacation) is something like this:

RUN_CHECK_LOG = foo() { logfile=$1; shift; ...; } && foo

...

a_target:
${RUN_CHECK_LOG} a_target.log ${MAKE} whatever

where the `...' in the definition of foo() in RUN_CHECK_LOG would
execute "$@" (i.e. the remaining arguments to foo() after the log
file name had been shifted away), and do the echo/tail/false combo
if it failed.

> The short answer is that I cannot believe that we've exhausted all
> options yet.  I want Phil to look into those options; of course I
> welcome any suggestions from people on this list.  But off the top
> of my head, I'd say that we can't possibly say that we're out of
> ideas until we've spent at least 5 hours googling and/or reading
> documentation about make and/or experimenting with make and
> stepmake.

Just wait a few days until I've some spare time available to help
you with this, will you?

I'll also have to read all this `silence the build' mails more
closely, because silencing the build *in geneeral* is a very bad
idea. If this all is about locating failures during the lilypond
(which *is* difficult IIRC), then the build system may be the
completely wrong place. (I can remember spending hours on tracking
down some errors coming out of ghostscript or metafont or fontforge
some years ago).  If this is the case, the tools should be fixed,
not the build system.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: GOP-PROP 1: python formatting - probable decision

2011-06-15 Thread Matthias Kilian
On Wed, Jun 15, 2011 at 12:11:37AM +0100, Graham Percival wrote:
> There should be absolutely no tab characters for indentation in
> any .py file in lilypond git. All such files should be converted
> to use spaces only.

I'd go a step further and recommend (for python files) that no tabs
are used at all. Because, if you're using some editor like nvi or
vim and set only shiftwidth to 4 (*enver ever set tabsize to something
else than 8!*), you then just can pipe the whole buffer through
expand(1) and you are done. If there were tabs in the file (other
than in indentations), this would introduce spurious white space
changes cluttering the diffs.

NB: personally, I prefer a style where initial spaces are unexpanded
to (8 column) tabs, regardless of the indentation, but unfortunately
there are editors (and people) around that don't get the difference
between indentation and tab width.

Ciao,
Kili

ps: IIRC, the editor in eclipse is (or was?) an example for badly
mixing up tab size and indentation.

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


[PATCH] find(1) needs a path before any expression.

2011-04-24 Thread Matthias Kilian
This unbreaks the build in a separate directory on OpenBSD.
---
 stepmake/aclocal.m4 |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4
index c062247..8fe2ddd 100644
--- a/stepmake/aclocal.m4
+++ b/stepmake/aclocal.m4
@@ -406,7 +406,7 @@ EOF
fi
 
for d in 2 3 4 ; do
-   for mf in `cd $srcdir ; find -maxdepth $d -mindepth $d -name 
GNUmakefile`; do
+   for mf in `cd $srcdir ; find . -maxdepth $d -mindepth $d -name 
GNUmakefile`; do
mkdir -p $(dirname $mf)
cat < $mf
 print 'depth=' + ('../' * ( $d-1 ) )
@@ -415,7 +415,7 @@ print 'include \$(configure-srcdir)/$mf'
 print 'MODULE_INCLUDES += \$(src-dir)/\$(outbase)'
 EOF
done
-   for mf in `cd $srcdir ; find -maxdepth $d -mindepth $d -name 
'*.make' | grep -v config.make `; do
+   for mf in `cd $srcdir ; find . -maxdepth $d -mindepth $d -name 
'*.make' | grep -v config.make `; do
mkdir -p $(dirname $mf)
cat < $mf
 print 'include \$(depth)/config\$(if \$(conf),-\$(conf),).make'
-- 
1.7.3.5


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: branching

2011-04-15 Thread Matthias Kilian
[random notes from soneone who is *not* actively hacking on LilyPond,
so feel free to ignore it ;-)]

On Fri, Apr 15, 2011 at 03:29:52PM +0100, Graham Percival wrote:
> The reason that I'm pessimistic is that we racked up a huge amount
> of "technical debt" (i.e. bugs) during 2.11 and the early phase of
> 2.13.  I'm concerned that if we don't have regular releases, the
> unstable branch is going to accumilate bugs.

Well, I think I've written this a few months ago: (stable) releases
*must* happen more often (at least one or two times a year) if you
want to be able to cope with stable and unstable.

> I am also too tired to fight over it right now, but I also think
> that this is the wrong model of branching.  There's basically two
> ways:
> 1. keep master in a "ready-to-release" mode at all times; any
> serious bug gets reverted or fixed ASAP.  Unstable development
> happens on separate branches, which are merged to master when
> they're ready.
> 2. toss whatever garbage you want onto master, and make a "stable"
> branch where a bunch of poor suckers cleans up the branch until
> it's ready for a release.

1. is the way to go. Sure, it would put some pressure on people
working on big changes, which kind of sucks (it could even slow
down implementing cool new stuff). On the other hand, it enforces
smaller steps towards new features, which is good (easier to track
down regressions, easier to *understand* what's going on).

For maintaining a stable branch and cherry picking: the more stable
and master diverge, and the bigger the changes in master are, the
more difficult merges will be.

I'm note sure wether something like an "unstable" branch make sense
at all, because it may encourage to do big changes diverging from
master over a period too long to be mergable without problems later.

Just my 2p.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: lilypond logging (Re: lilypond too noisy on the cmd line)

2011-01-03 Thread Matthias Kilian
On Mon, Jan 03, 2011 at 06:16:08AM -0500, David Santamauro wrote:
> The first thing that jumps out at me is Apache log4cxx. It is a robust
> logging framework based on Java log4j. It introduces dependencies on
> the apache portable runtime library

That together makes 29708 lines of code just for logging, only
including the unix specific parts of apr and not including tests,
examples and build stuff (and not including comments, lines with
only single opening or closing braces etc.).

The (C++) parts of LilyPond in contrast have 53860 lines of code using
the same counting script.

Lines of code for the OpenBSD syslogd: 2226. And for the client parts,
i.e. syslog(3) & friends: 232.

So, ignoring any potential licensing issue between the apache stuff
and the GPLv3 for now, log4cxx doesn't look appropriate by mere
size.

> The opposite end of the spectrum, is a much simpler logging class that
> I cook myself based on syslogd. It is controlled by command-line
> argument (--level | -l), exists as a global object and exposes the
> traditional methods:
>   error()
>   warn()
>   notice()
>   info()
>   etc...

Just keep it as simple as possible. And as unconfigurable as possible
(use sane default settings). For LIlyPond, I don't even see any
need for ditinquishing between notice() and info().

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: issue 1464 (was: a plea to new contributors)

2011-01-02 Thread Matthias Kilian
On Sun, Jan 02, 2011 at 04:18:17PM -, Phil Holmes wrote:
> "In your original backtrace, is the X_AXIS parent of the Item in frame #2 
> 0x0? If so, I'm fine with the patch."
> 
> I've been using this as a learning exercise, and can say that 
> Item::spanned_rank_interval calls Item::get_column to return the parent, as 
> below.
> 
> Paper_column *
> Item::get_column () const
> {
>  Item *parent = dynamic_cast (get_parent (X_AXIS));
>  return parent ? parent->get_column () : 0;
> }
> 
> The call to get_parent above does return 0x0.

Yes, but not immediately for the Item in question (namely the one in
frame #2):

#0  0x0041a5f0 in Paper_column::get_rank (this=0x0) at 
paper-column.hh:47
47  paper-column.hh: No such file or directory.
in paper-column.hh
(gdb) up
#1  0x004ff5f4 in Item::spanned_rank_interval (this=0x20d20d900) at 
item.cc:199
199   int c = get_column ()->get_rank ();
(gdb) 
#2  0x00437f7b in Axis_group_interface::adjacent_pure_heights 
(smob=0x2142a0a20) at axis-group-interface.cc:197
197   Interval_t rank_span = g->spanned_rank_interval ();
(gdb) print g
$1 = (Grob *) 0x20d20d900
(gdb) print g->dim_cache_[0].parent_
$2 = (Grob *) 0x20d219a00
(gdb) print g->dim_cache_[0].parent_->dim_cache_[0].parent_
$3 = (Grob *) 0x20590b700
(gdb) print 
g->dim_cache_[0].parent_->dim_cache_[0].parent_->dim_cache_[0].parent_
$4 = (Grob *) 0x202c11200
(gdb) print 
g->dim_cache_[0].parent_->dim_cache_[0].parent_->dim_cache_[0].parent_->dim_cache_[0].parent_
$5 = (Grob *) 0x0

Honestly, I'm not very comfortable with the LIlyPond internals; I
was several years ago, but after not doing much with the sources
for 5 years or even longer (I don't remember), this is all black
magic for me (except on the very low-level C++ level).

Maybe some day I find more time to work on it, and even to continue
my work on the Back partitas and the Bach/Busoni Chaconne I abandoned
some years ago ;-)

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: issue 1464 (was: a plea to new contributors)

2011-01-02 Thread Matthias Kilian
On Sun, Jan 02, 2011 at 12:35:28PM +0100, Matthias Kilian wrote:
> > In your original backtrace, is the X_AXIS parent of the Item in frame #2
> > 0x0? If so, I'm fine with the patch.
> 
> You mean the g in line 197 of axis-group-interface.cc?
> 
>   Interval_t rank_span = g->spanned_rank_interval ();
> 
> No, it's not 0x0.

To clarify: g->dim_cache_[0].parent_ isn't 0x0.

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: issue 1464 (was: a plea to new contributors)

2011-01-02 Thread Matthias Kilian
On Sun, Jan 02, 2011 at 08:39:03AM +0700, Joe Neeman wrote:
> > I tried the diff below, which `fixed' the segfault, but it may be
> > completely wrong (I'm currently not familiar with the LilyPond code
> > at all). Unfortunately, I don't have a new enough ImageMagick on my
> > system, so I can't run the regression tests.
> >
> > diff --git a/lily/metronome-engraver.cc b/lily/metronome-engraver.cc
> > index 0a41fc9..e34c0ad 100644
> > --- a/lily/metronome-engraver.cc
> > +++ b/lily/metronome-engraver.cc
> > @@ -95,7 +95,10 @@ Metronome_mark_engraver::acknowledge_break_aligned
> > (Grob_info info)
> >   && safe_is_member (g->get_property ("break-align-symbol"),
> >  text_->get_property ("break-align-symbols"))
> >   && Item::break_visible (g))
> > -support_ = g;
> > +{
> > +  support_ = g;
> > +  text_->set_parent (g, X_AXIS);
> > +}
> >  }
> >
> 
> In your original backtrace, is the X_AXIS parent of the Item in frame #2
> 0x0? If so, I'm fine with the patch.

You mean the g in line 197 of axis-group-interface.cc?

Interval_t rank_span = g->spanned_rank_interval ();

No, it's not 0x0.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: issue 1464 (was: a plea to new contributors)

2011-01-02 Thread Matthias Kilian
On Sun, Jan 02, 2011 at 12:55:45AM +, Graham Percival wrote:
> > Bisected to this one (cc'd Neil):
> 
> Fantastic!  Bisecting is one of the most useful, yet also
> time-consuming, parts of fixing regressions.

Maybe time-consuming, but in theory, everyone able to build lilypond
from git can write a little shell script that does the make clean
/ autogen.sh / make all / run the test combo and pass this script
to git bisect run. I didn't to this the other day, but next time I
will do.

> > I tried the diff below, which `fixed' the segfault, but it may be
> > completely wrong (I'm currently not familiar with the LilyPond code
> > at all). Unfortunately, I don't have a new enough ImageMagick on my
> > system, so I can't run the regression tests.
> 
> Sorry, my fault.  You can run the regtest comparison is you revert
> 49dc60e9 , or just remove "-dissimilarity-threshold" from
> scripts/build/output-distance.py

I've already started work on an update of the ImageMagick package for
OpenBSD, and the regtest comparision already works here, too.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: issue 1464 (was: a plea to new contributors)

2011-01-01 Thread Matthias Kilian
On Sat, Jan 01, 2011 at 02:10:04PM +0100, Matthias Kilian wrote:
> I don't know why gdb doesn't find paper-column.hh, but anyaway...
> it looks like Item::get_column() returns NULL, because its parent's
> get_column() returns NULL (I checked that the parent on the X_AXIS
> itself is not NULL).

Bisected to this one (cc'd Neil):


commit 6d28aebbaaab1be9961a00bf15a1ef93acb91e30
Author: Neil Puttock 
Date:   Mon Sep 6 22:49:28 2010 +0100

Fix metronome alignment.

Don't align on KeySignature unless explicitly requested via
'break-align-symbols and make order of 'break-align-symbols
significant.

* remove `key-signature' from 'break-align-symbols

* acknowledge break_alignment, and set this as X-parent
  instead of break_aligned, but only if found break_aligned
  is visible

* add regression test to test ordering

* tweak existing test to reflect change in default for
  'break-align-symbols

[...]


I tried the diff below, which `fixed' the segfault, but it may be
completely wrong (I'm currently not familiar with the LilyPond code
at all). Unfortunately, I don't have a new enough ImageMagick on my
system, so I can't run the regression tests.

diff --git a/lily/metronome-engraver.cc b/lily/metronome-engraver.cc
index 0a41fc9..e34c0ad 100644
--- a/lily/metronome-engraver.cc
+++ b/lily/metronome-engraver.cc
@@ -95,7 +95,10 @@ Metronome_mark_engraver::acknowledge_break_aligned 
(Grob_info info)
   && safe_is_member (g->get_property ("break-align-symbol"),
  text_->get_property ("break-align-symbols"))
   && Item::break_visible (g))
-support_ = g;
+{
+  support_ = g;
+  text_->set_parent (g, X_AXIS);
+}
 }
 
 void

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


issue 1464 (was: a plea to new contributors)

2011-01-01 Thread Matthias Kilian
On Sat, Jan 01, 2011 at 06:51:49AM +, Graham Percival wrote:
> The next step in issue 1464 is just to create a backtrace. 

See the blurb below this mail (no, I'm not going to sign up at google
for adding it there).

I don't know why gdb doesn't find paper-column.hh, but anyaway...
it looks like Item::get_column() returns NULL, because its parent's
get_column() returns NULL (I checked that the parent on the X_AXIS
itself is not NULL).

{ = {_vptr$Grob = 0x7e75b0, static smob_name_ = 0x7e4af3
"Grob", static smob_tag_ = 16767, self_scm_ = 0x214b69740,
protection_cons_ = 0x404, dim_cache_ = {{extent_ = 0x0, offset_ =
0x0, parent_ = 0x210133500}, {extent_ = 0x0, offset_ = 0x0, parent_
= 0x210133000}}, layout_ = 0x20f3c7880, original_ = 0x0,
immutable_property_alist_ = 0x21504cf40, mutable_property_alist_ =
0x214b64db0, object_alist_ = 0x214b60600, interfaces_ = 0x214fcdfc0,
static x_parent_positioning_proc = 0x20f176600, static
y_parent_positioning_proc = 0x20f175a10, static stencil_height_proc
= 0x20f174960, static stencil_width_proc = 0x20f177520, static
interface_symbol_ = 0x210c36d40}, broken_to_drul_ = {array_ =
{0x210124900, 0x210124d00}}, static interface_symbol_ = 0x210c3a560,
cached_pure_height_valid_ = false, cached_pure_height_ =
{> = {array_ = {0, -0}}, }}

And here's the parent in question (*this->dim_cache_[0].parent_):

{_vptr$Grob = 0x804c90, static smob_name_ = 0x7e4af3 "Grob", static
smob_tag_ = 16767, self_scm_ = 0x214b69fd0, protection_cons_ =
0x404, dim_cache_ = {{extent_ = 0x0, offset_ = 0x0, parent_ =
0x207824b00}, {extent_ = 0x0, offset_ = 0x2075ae240, parent_ =
0x210133000}}, layout_ = 0x20f3c7880, original_ = 0x0,
immutable_property_alist_ = 0x21504d310, mutable_property_alist_ =
0x2149c7540, object_alist_ = 0x214b63410, interfaces_ = 0x214fcb720,
static x_parent_positioning_proc = 0x20f176600, static
y_parent_positioning_proc = 0x20f175a10, static stencil_height_proc
= 0x20f174960, static stencil_width_proc = 0x20f177520, static
interface_symbol_ = 0x210c36d40}

It could be possible to check the result of get_column() in
Item::spanned_rank_interval(), but I'm not sure wether this is the
*proper* bug fix (nor what interval should be returned in this
case).

Ciao,
Kili


#0  0x0041a7b0 in Paper_column::get_rank (this=0x0) at 
paper-column.hh:47
47  paper-column.hh: No such file or directory.
in paper-column.hh
(gdb) bt
#0  0x0041a7b0 in Paper_column::get_rank (this=0x0) at 
paper-column.hh:47
#1  0x004ff7b4 in Item::spanned_rank_interval (this=0x210133600) at 
item.cc:199
#2  0x0043813b in Axis_group_interface::adjacent_pure_heights 
(smob=0x214b64d80) at axis-group-interface.cc:197
#3  0x0002047115cf in scm_dapply () from /usr/local/lib/libguile.so.20.0
#4  0x004e326f in Grob::try_callback_on_alist (this=0x210133000, 
alist=0x210133060, sym=0x211eb9b00, proc=0x20f0d13e0) at grob-property.cc:231
#5  0x004e3e9c in Grob::internal_get_property (this=0x210133000, 
sym=0x211eb9b00) at grob-property.cc:188
#6  0x00438a04 in Axis_group_interface::begin_of_line_pure_height 
(me=0x210133000, start=0) at axis-group-interface.cc:116
#7  0x00438be6 in Axis_group_interface::cached_pure_height 
(me=0x210133000, start=0, end=2147483647) at axis-group-interface.cc:95
#8  0x00438ce5 in Axis_group_interface::relative_pure_height 
(me=0x210133000, start=0, end=2147483647) at axis-group-interface.cc:263
#9  0x004390c9 in Axis_group_interface::pure_group_height 
(me=0x210133000, start=0, end=2147483647) at axis-group-interface.cc:494
#10 0x004f45c1 in Hara_kiri_group_spanner::pure_height 
(smob=0x214b64d80, start_scm=0x2, end_scm=0x1fffe) at 
hara-kiri-group-spanner.cc:58
#11 0x000204711ca3 in scm_dapply () from /usr/local/lib/libguile.so.20.0
#12 0x000204716c84 in deval () from /usr/local/lib/libguile.so.20.0
#13 0x000204711cbf in scm_dapply () from /usr/local/lib/libguile.so.20.0
#14 0x004e2cd8 in call_pure_function (unpure=0x20f17ab30, 
args=0x2149c2960, start=0, end=2147483647) at grob-property.cc:331
#15 0x004e2ff6 in Grob::internal_get_pure_property (this=0x210133000, 
sym=0x211ec4be0, start=0, end=2147483647) at grob-property.cc:200
#16 0x004ee4e4 in Grob::pure_height (this=0x210133000, 
refp=0x210133000, start=0, end=2147483647) at grob.cc:464
#17 0x0041b49d in get_skylines (me=0x210133f00, 
elements=0x7f7e7350, a=Y_AXIS, pure=true, start=0, end=2147483647, 
ret=0x7f7e7330) at align-interface.cc:102
#18 0x0041b9c9 in Align_interface::internal_get_minimum_translations 
(me=0x210133f00, all_gro...@0x2046169e0, a=Y_AXIS, include_fixed_spacing=true, 
pure=true, start=0, end=2147483647)
at align-interface.cc:191
#19 0x0041c25b in Align_interface::get_pure_minimum_translations 
(me=0x210133f00, all_gro...@0x2046169e0, a=Y_AXIS, start=0, end=2147483647) at 
align-interface.cc:159
#20 0x0041c2f7 in Align_inter

Re: Distributions upgrading to Python 3

2010-10-22 Thread Matthias Kilian
On Tue, Oct 19, 2010 at 12:07:29AM +0100, Graham Percival wrote:
> >> python/ yes, since it's not something that people call manually.
> >> But stuff in scripts/build/ shouldn't have @PYTHON@, otherwise
> >> it'll bork if you call it manually.
> >
> > But are those scripts supposed to be used without runnig autogen.sh
> > (and implied configure) first?
> 
> Anything that's used to build the website (as opposed to the html
> version of the docs) cannot rely on configure.  This affects
> scripts/build/ create-*.py website_post.py bib2texi.py
> 
> ... admittedly, those are getting called with
> python scripts/build/foo.py
> , probably precisely to avoid this problem.  So I guess that's not a concern.

Oh, it would still be better to use something like

PYTHON?=python
...
WEB_POST=${PYTHON} $(script-dir)/website_post.py

in files like make/website.make (but probably only of people using
this part start to complain about annoyances).


> > #!/usr/bin/env YOUR_FAVORITE_INTERPRETER
> >
> > should not be used ever. At least not for scripts that will be
> > installed system-wide.
> 
> Why not?  IIRC, we had to add this to work around some problem in OSX.
>  The discussion is in the email archives... hopefully somebody can dig
> it out for us.

I didn't dig it yet, but for OSX (and every system where people
have to rely on binary installers provided by lilypond.org) it may
be that different OSX versions have python installed in different
locations. If my guess is correct, it would be nice if someone could
hack on the OSX binary to do some post-install patching on the
installed python scripts.

> If there's a good reason not to do this, and a better way of solving
> whatever problem we solved with /usr/bin/env python, I welcome a
> change.

The good reason is: whatever you install system-wide with a
#!/usr/bin/env line is out of your control. It immediately depends
on the users PATH. Ignoring security issues for now, #!/usr/bin/env
may trigger completely unexpected (for lilypond developers, or OS
package maintainers) behaviour on a users system.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Distributions upgrading to Python 3

2010-10-18 Thread Matthias Kilian
(unlurking, i didn't spend much time on lilypond recently)

On Mon, Oct 18, 2010 at 01:59:15AM +0100, Graham Percival wrote:
> > --) Two scripts still have "/usr/bin/python" lines
> > (python/auxiliar/manuals_definitions.py, and scripts/build/pytt.py).
> > Those should be changed to "@PYTHON@", right?
> 
> python/ yes, since it's not something that people call manually.
> But stuff in scripts/build/ shouldn't have @PYTHON@, otherwise
> it'll bork if you call it manually.

But are those scripts supposed to be used without runnig autogen.sh
(and implied configure) first?

I may have some time during the next two weeks and arrange things
so those scripts will use the python detected by (or passed via
environment to) configure. If you want it.

> > Would it be feasible to use "#!/usr/bin/env @PYTHON@" or
> > "#!/usr/bin/env @TARGET_PYTHON@" for all Python scripts, using the
> > basename of the appropriate Python executable in place of the Make
> > variables?

#!/usr/bin/env YOUR_FAVORITE_INTERPRETER

should not be used ever. At least not for scripts that will be
installed system-wide. And if possible, not even for local scripts
(like scripts/build in lilypond).

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


2.12.3 source tarball changed (back in january)

2010-08-30 Thread Matthias Kilian
Hi,

a fellow openbsd developer noticed that the 2.12.3 source tarball
(http://download.linuxaudio.org/lilypond/sources/v2.12/lilypond-2.12.3.tar.gz)
differs from the same version from late december (december, 20th,
I think).

Please avoid such changes in the future, they make the live of
port/packages maintainers very hard, because checksums are changing,
mirrors of the source tarballs have to be noticed etc.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: imprecise Taktlinie in german doc (NR)

2010-05-13 Thread Matthias Kilian
On Wed, May 12, 2010 at 09:35:26PM +0200, Henning Plumeyer wrote:
> >I'm not an active musician, and only decades ago I did do music
> >with others (orchestra, choir), so I may be wrong, but I've a strong
> >feeling towards `Taktnummern'. It's less ambigous.
> 
> I've been in hundreds of rehearsals and never heard the word Taktnummern,
> only Taktzahlen.

Then I'm probably wrong. As said, I'm not an active musician ;-)

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: imprecise Taktlinie in german doc (NR)

2010-05-12 Thread Matthias Kilian
On Wed, May 12, 2010 at 06:02:38PM +0200, David Kastrup wrote:
> > yes, but the term Taktzahl is mainly found in technical contexts!
> 
> I was talking about "Taktzahlen".  Let's see where this leads Google:
> 
> Results for: taktzahlen
> #
> Musiksoftware Forum: Taktzahlen bei Sibelius
> 
> One for me.

Well, the term `Taktzahlen' in this context still sounds really odd
to me, and I'm a german native speaker, which is also an explanation
for my broken english ;-)

> Ulrich Siegele: Taktzahlen als Ordnungsfaktor in Suiten- und ...
> 
> Nontechnical, but measure count.

Right. The problem with `Zahlen' is that it's often a synonym for
`Anzahl' (amount / count).

> #
> Prozzessor mit den höchsten Taktzahlen - Forum - CHIP Online
> Technical.

And a completely different context (clock speed of the CPU).

[... snip ...]

Even if www.googlefight.com shows more results for `Taktzahlen',
it still doesn't mean that it's the correct word ;-)

I'm not an active musician, and only decades ago I did do music
with others (orchestra, choir), so I may be wrong, but I've a strong
feeling towards `Taktnummern'. It's less ambigous.

Ciao,
Kili

___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-30 Thread Matthias Kilian
On Wed, Dec 30, 2009 at 09:59:51AM +0100, David Kastrup wrote:
> >>>   find $(outdir)/offline-root -type -l -exec rm -f -- '{}' +
[...]
> >> Well, if that's part of POSIX, then adding it can't be a bad
> >> thing.  :)
> >
> > Isn't AFAIK.
> 
> The '+' thing appears to be POSIX if I am reading the GNU documentation
> correctly.  I have my doubts regarding the veracity of this information
> (but one could look that up),


http://www.opengroup.org/onlinepubs/9699919799/utilities/find.html

> and about how widely it is implemented.

Free- and NetBSD implement it, all GNU-based Linuxes (and cygwin)
are using GNU find. MacOS X uses large parts of FreeBSD userland,
so it should support that feature, too (someone should check this).

I'll try to unslack and implement it for OpenBSD. If all else fails,
I can maintain a local patch in my LilyPond port for OpenBSD that
still uses xargs.

For other systems (OpenSolaris, older Solarises and SunOS, HPUX,
AIX, IRIX, ...) I'd like to hear from anyone who at least tried to
build LilyPond (and required tools and libraries) on them.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread Matthias Kilian
[this is becoming slightly offtopic, but anyway...]

On Tue, Dec 29, 2009 at 08:19:57PM +, Graham Percival wrote:
> > > > -   find $(outdir)/offline-root -type l -delete
> > > > +   find $(outdir)/offline-root -type l | xargs rm -f
[...]
> > The `-delete' primary isn't very portable, it's a GNU extension.
> 
> IMHO, that's all we need to hear.  -delete must be removed.

`must' is such a strong word. There are other GNUisms (or non-portable
extensions) hidden in the build system, like that `grep -L' at some
places.

If you guys hesitate to apply patches like the one I sent (and David
is right in that my patch introduces a potential risk), that's
perfectly ok for me. I've two branches on my disk: `mystuff'
(containing patches I think may be helpful for all systems), and
`openbsdhacks' (copntaining additional patches I need to get LilyPond
built on OpenBSD, and that are probably less important for you). I
could just move the find(1) diff to my `openbsdhacks' branch.

> > > and less secure
> > > (if somebody places files with spaces or newlines into the latter
> > > directory, things may get ugly).
> 
> That's a fairly esoteric concern; I can't imagine anybody having
> the lilypond build tree in a world-writeable location unless they
> also had the source tree in a world-writeable location.  If they
> did that (say, a shared computer where the users trusted each
> other), then there's many other ways to do nasty stuff (like
> changing the makefiles themselves).

Yes, but David is right in that my patch was spreading bad practice.

It's probably an esoteric issue for LilyPond, but someone may copy
and use this unsafe command for his own project or in some random
shell script.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-29 Thread Matthias Kilian
On Tue, Dec 29, 2009 at 08:16:37AM +0100, David Kastrup wrote:
> > -   find $(outdir)/offline-root -type l -delete
> > +   find $(outdir)/offline-root -type l | xargs rm -f
> >  endif # ifeq ($(out),www)
> 
> What's the rationale? 

The `-delete' primary isn't very portable, it's a GNU extension.

> The latter form is less efficient

I doubt it's measurable. Using find ... -exec ... {} ... ; would
be inefficient, but using find and xargs should be fast.

> and less secure
> (if somebody places files with spaces or newlines into the latter
> directory, things may get ugly).

Then change it to something like this:

find $(outdir)/offline-root -type l -print0 | xargs -0 rm -f --

Or even this (completely POSIX compliant):

find $(outdir)/offline-root -type -l -exec rm -f -- '{}' +

(but then I've to patch it again, since find(1) on OpenBSD doesn't yet
support the `-exec command {} +' primary).

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: make/doc-i18n-root-rules.make: grep --label=""

2009-12-28 Thread Matthias Kilian
On Mon, Dec 28, 2009 at 10:05:51PM +0100, John Mandereau wrote:
> > What's the reason for that `--label=""'? It's breaking the build
[...]
> The commit that added "--label" is
> 
> commit d4401de33195113a8859629b4bd9483a03d9ab5c
> Author: Werner Lemberg 
> Date:   Thu Dec 14 15:28:27 2006 +0100
> 
> (lang-merge): Protect against grep's `(standard input)' output if there is
> no input.

I'd like to see some example. IMHO, this can't happen in the

find ... | xargs grep ...

pipe (there's now stdin for grep, since stdin is consumed by xargs).

> It seems to me that the fact there is no input, i.e. that "find
> $(outdir) -name '*.html'", is the sign of a build error, so I've removed
> --label.  Just in case we need to reintroduce it, or more hopefully for
> my curiosity, does your implementation of grep support the option -h
> a.k.a. --no-filename?

Copy&Waste from our grep(1) manpage:

-h  Never print filename headers (i.e. filenames) with output lines.

But as you write, this `(standard input)' should never happen.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


[PATCH] Use find ... | xargs rm -f instead of find ... -delete

2009-12-28 Thread Matthias Kilian
---
 GNUmakefile.in |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/GNUmakefile.in b/GNUmakefile.in
index 6574e65..6c2c54f 100644
--- a/GNUmakefile.in
+++ b/GNUmakefile.in
@@ -123,7 +123,7 @@ WWW-post:
$(buildscript-dir)/mutopia-index -o $(outdir)/examples.html input/
find $(outdir) -name '*-root' | xargs rm -rf
$(buildscript-dir)/www_post $(PACKAGE_NAME) $(TOPLEVEL_VERSION) 
$(outdir) "$(WEB_TARGETS)"
-   find $(outdir)/offline-root -type l -delete
+   find $(outdir)/offline-root -type l | xargs rm -f
 endif # ifeq ($(out),www)
 
 # For those who cannot for the life in them remember to type
-- 
1.6.5.7



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


make/doc-i18n-root-rules.make: grep --label=""

2009-12-28 Thread Matthias Kilian
There are two make rules using a command like

find $(outdir)/$* -name '*.html' |
xargs grep -L --label="" 'UNTRANSLATED NODE: IGNORE ME' | ...

What's the reason for that `--label=""'? It's breaking the build
with OpenBSDs native grep (in /usr/bin/grep), and I don't see any
difference when using GNU grep with and without --label="", so I'd
like to just drop that option.

Ciao,
Kili



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Always use $(PYTHON) scriptname.py.

2009-12-27 Thread Matthias Kilian
On Sun, Dec 27, 2009 at 06:45:14PM +0100, John Mandereau wrote:
> > It still needs the $(PYTHON), regardless wether it's in scripts/auxiliar
> > or scripts/build.
> 
> For build scripts, the $(PYTHON) is put into the shebang when writing
> the script (and makeing it executable) from scripts/build to
> scripts/build/out, so that's OK (modulo a fix I just pushed).

Ah, thanks!

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [PATCH] Always use $(PYTHON) scriptname.py.

2009-12-27 Thread Matthias Kilian
On Sun, Dec 27, 2009 at 06:09:15PM +0100, John Mandereau wrote:
> > -   $(auxscript-dir)/yyout2grammar.py $(outdir)/parser.output $@
> > +   $(PYTHON) $(auxscript-dir)/yyout2grammar.py $(outdir)/parser.output $@
> 
> Oops, this script should be in scripts/build, not scripts/auxiliar, but
> this is my fault, not yours :-D

It still needs the $(PYTHON), regardless wether it's in scripts/auxiliar
or scripts/build. Actually this target caused a build on OpenBSD
to fail ;-)

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


[PATCH] Always use $(PYTHON) scriptname.py.

2009-12-27 Thread Matthias Kilian
The often-used idiom #!/usr/bin/env python not only is potentially
dangerous, but it also fails if there are several versions of python
installed, with the python binaries named python2.4, python2.5,
python2.6, ...

This patch hopefully catches all remaining cases of a missing $(PYTHON).
---
 Documentation/GNUmakefile|   20 ++--
 Documentation/po/GNUmakefile |2 +-
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/Documentation/GNUmakefile b/Documentation/GNUmakefile
index 24bd966..30187d7 100644
--- a/Documentation/GNUmakefile
+++ b/Documentation/GNUmakefile
@@ -219,7 +219,7 @@ $(outdir)/notation.texi: $(outdir)/ly-grammar.txt
 ## Rules for the automatically generated documentation
 $(outdir)/ly-grammar.txt: $(top-src-dir)/lily/parser.yy
cd $(outdir) && $(BISON) -v $<
-   $(auxscript-dir)/yyout2grammar.py $(outdir)/parser.output $@
+   $(PYTHON) $(auxscript-dir)/yyout2grammar.py $(outdir)/parser.output $@
 
 # There used to be a dependency on a dummy target, to force a rebuild
 # of internals every time.  however, this triggers
@@ -249,7 +249,7 @@ new-lang-dir:
cp fr/$(DIR)/GNUmakefile $(ISOLANG)/$(DIR)
sed -i -e 's/ISOLANG *= *fr/ISOLANG = $(ISOLANG)/' 
$(ISOLANG)/GNUmakefile $(ISOLANG)/$(DIR)/GNUmakefile
rm -f $(outdir)/*.*tely $(outdir)/*.*texi
-   $(auxscript-dir)/texi-langutils.py -d $(outdir) -l $(ISOLANG) -o 
doc.pot --skeleton --gettext $$(cd $(ISOLANG) && ls -1 ../$(DIR).tely 
../$(DIR).texi)
+   $(PYTHON) $(auxscript-dir)/texi-langutils.py -d $(outdir) -l $(ISOLANG) 
-o doc.pot --skeleton --gettext $$(cd $(ISOLANG) && ls -1 ../$(DIR).tely 
../$(DIR).texi)
for i in $$(cd $(outdir) && ls -1 $(DIR).tely $(DIR).texi); do\
test -e $(ISOLANG)/$$i || mv $(outdir)/$$i $(ISOLANG)/$$i;\
done
@@ -274,11 +274,11 @@ TRANSLATION_FILES = $(shell git ls-files $(ISOLANG) | 
grep -v GNUmakefile)
 TELY_FILES = $(call src-wildcard,$(ISOLANG)/*.tely)
 skeleton-update:
mkdir -p $(ISOLANG)
-   $(auxscript-dir)/texi-langutils.py -d $(outdir) -l $(ISOLANG) 
--skeleton $(TELY_FILES:$(ISOLANG)/%.tely=../%.tely)
-   $(auxscript-dir)/texi-skeleton-update.py $(ISOLANG) $(outdir)
+   $(PYTHON) $(auxscript-dir)/texi-langutils.py -d $(outdir) -l $(ISOLANG) 
--skeleton $(TELY_FILES:$(ISOLANG)/%.tely=../%.tely)
+   $(PYTHON) $(auxscript-dir)/texi-skeleton-update.py $(ISOLANG) $(outdir)
 
 snippet-update:
-   $(auxscript-dir)/update-snippets.py user $(ISOLANG) '*.itely'
+   $(PYTHON) $(auxscript-dir)/update-snippets.py user $(ISOLANG) '*.itely'
 
 DOCUMENTS_INCLUDES:=-I $(ISOLANG) \
 -I $(top-build-dir)/Documentation/$(ISOLANG)/out-www \
@@ -297,21 +297,21 @@ DOCUMENTS_INCLUDES:=-I . \
 endif # ISOLANG
 
 check-xrefs:
-   $(auxscript-dir)/check_texi_refs.py --batch \
+   $(PYTHON) $(auxscript-dir)/check_texi_refs.py --batch \
$(DOCUMENTS_INCLUDES) $(auxpython-dir)/manuals_definitions.py
 
 fix-xrefs:
-   $(auxscript-dir)/check_texi_refs.py --auto-fix \
+   $(PYTHON) $(auxscript-dir)/check_texi_refs.py --auto-fix \
$(DOCUMENTS_INCLUDES) $(auxpython-dir)/manuals_definitions.py
 
 check-translation:
-   ISOLANG=$(ISOLANG) $(auxscript-dir)/check_translation.py 
$(CHECK_TRANSLATION_FLAGS) $(TRANSLATION_FILES)
+   ISOLANG=$(ISOLANG) $(PYTHON) $(auxscript-dir)/check_translation.py 
$(CHECK_TRANSLATION_FLAGS) $(TRANSLATION_FILES)
 
 update-translation:
-   ISOLANG=$(ISOLANG) $(auxscript-dir)/check_translation.py --update 
$(CHECK_TRANSLATION_FLAGS) $(TRANSLATION_FILES)
+   ISOLANG=$(ISOLANG) $(PYTHON) $(auxscript-dir)/check_translation.py 
--update $(CHECK_TRANSLATION_FLAGS) $(TRANSLATION_FILES)
 
 translation-status:
make -C po out=www messages
-   $(auxscript-dir)/translations-status.py
+   $(PYTHON) $(auxscript-dir)/translations-status.py
 
 .SECONDARY:
diff --git a/Documentation/po/GNUmakefile b/Documentation/po/GNUmakefile
index 9224f2c..65d7e3a 100644
--- a/Documentation/po/GNUmakefile
+++ b/Documentation/po/GNUmakefile
@@ -25,7 +25,7 @@ $(outdir)/messages: $(MO_FILES)
touch $@
 
 po-update:
-   $(auxscript-dir)/texi-langutils.py -d $(outdir) -o texi.pot --gettext 
$(TELY_FILES:%.tely=../%.tely)
+   $(PYTHON) $(auxscript-dir)/texi-langutils.py -d $(outdir) -o texi.pot 
--gettext $(TELY_FILES:%.tely=../%.tely)
$(foreach i, $(DOC_PO_SOURCES), cp $(top-src-dir)/$(i) $(outdir) &&) 
true
cd $(outdir) && sed -i -e s/_doc/_/g $(foreach i, $(DOC_PO_SOURCES), 
$(notdir $(i)))
cd $(outdir) && xgettext -cjn -L Python -o buildscripts.pot $(foreach 
i, $(DOC_PO_SOURCES), $(notdir $(i)))
-- 
1.6.5.7



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: race condition in writing lilypond-book filenames

2009-12-15 Thread Matthias Kilian
[sorry for mumbling to myself too much]

On Sun, Dec 13, 2009 at 06:53:57PM +0100, Matthias Kilian wrote:
[...]
> -out = file (path + '.ly', 'w')
> +out = tempfile.NamedTemporaryFile(mode = 'w', suffix = '.lytmp',
> +  dir = directory, delete = False)

Unfortunately, this doesn't work with python < 2.6 (because the
`delete' parameter is new since python-2.6).

But if you gyys think that the approach of writing (and later
renaming) temporary files may help, i'll make a better diff tomorrow.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Fix STEPMAKE_GET_VERSION for OpenBSD

2009-12-15 Thread Matthias Kilian
On Tue, Dec 15, 2009 at 04:33:14PM +0100, Jan Nieuwenhuizen wrote:
> > (I really
> > don't remember the reason, too much time has passed since I made
> > this patch)
> 
> It would be nice to know why we need this, esp. as this fix
> does not make the logic more readible.

Not necessary, I aready had a closer look. It's failing in grep(1)
for \|, which is undefined by POSIX (for basic regular expressions) and
obviously support by GNU grep but not by OpenBSDs grep.

So a much simpler fix is to use

grep -E '(^| )[0-9][0-9]*\.[0-9]'

instead of

grep -E '\(^\| \)[0-9][0-9]*\.[0-9]'

Here's a diff that does exactly this:


diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4
index 83c07c3..5bd8b73 100644
--- a/stepmake/aclocal.m4
+++ b/stepmake/aclocal.m4
@@ -32,9 +32,9 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [
 ## for compatibility reasons.
 
 ## grab the first version number in  --version output.
-eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep '\(^\| 
\)[0-9][0-9]*\.[0-9]' \
+eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep -E '(^| 
)[0-9][0-9]*\.[0-9]' \
 | head -n 1 \
-   | tr ' ' '\n' | sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | grep 
'\(^\| \)[0-9][0-9]*\.[0-9]' | head -n 1\`\"
+   | tr ' ' '\n' | sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | grep -E 
'(^| )[0-9][0-9]*\.[0-9]' | head -n 1\`\"
 
 if test -z "$_ver"; then
 ## If empty, try date [fontforge]


An alternative diff, which just adds some linebreaks and avoids line
continuations using backslash-newline: (for improving readability a
little bit):


diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4
index 83c07c3..09afbff 100644
--- a/stepmake/aclocal.m4
+++ b/stepmake/aclocal.m4
@@ -32,9 +32,13 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [
 ## for compatibility reasons.
 
 ## grab the first version number in  --version output.
-eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep '\(^\| 
\)[0-9][0-9]*\.[0-9]' \
-| head -n 1 \
-   | tr ' ' '\n' | sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | grep 
'\(^\| \)[0-9][0-9]*\.[0-9]' | head -n 1\`\"
+eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 |
+   grep -E '(^| )[0-9][0-9]*\.[0-9]' |
+   head -n 1 |
+   tr ' ' '\n' |
+   sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' |
+   grep -E '(^| )[0-9][0-9]*\.[0-9]' |
+   head -n 1\`\"
 
 if test -z "$_ver"; then
 ## If empty, try date [fontforge]


Tested with both /bin/sh (which is a ksh here) and /usr/local/bin/bash
(bash-4.0.35).

Pick your choice.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Use $(PYTHON), not python, to create version.itexi

2009-12-14 Thread Matthias Kilian

diff --git a/stepmake/stepmake/texinfo-rules.make 
b/stepmake/stepmake/texinfo-rules.make
index 84f2894..6be8c5f 100644
--- a/stepmake/stepmake/texinfo-rules.make
+++ b/stepmake/stepmake/texinfo-rules.make
@@ -63,7 +63,7 @@ $(outdir)/version.%: $(top-src-dir)/VERSION
echo $(TOPLEVEL_VERSION)>> $@
echo '@end macro'>> $@
echo ''>> $@
-   python $(top-src-dir)/scripts/build/create-version-itexi.py >> $@
+   $(PYTHON) $(top-src-dir)/scripts/build/create-version-itexi.py >> $@
 
 .SECONDARY: $(outdir)/version.itexi $(outdir)/version.texi \
   $(outdir)/$(INFO_IMAGES_DIR).info-images-dir-dep \


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Don't use __attribute__ ((pure)) for unsmob

2009-12-13 Thread Matthias Kilian
This one makes lilypond build with good old gcc-3.3.5 (which is the
default compiler on OpenBSD). It's probably debatable wether it'll
slow down lilypond runtime and accelerate global warming, so if you
don't like it, let me know; I could also add some #ifdefs (or just
keep the patch file in the OpenBSD port).

Ciao,
Kili

diff --git a/configure.in b/configure.in
index 6253b66..c1cd146 100644
--- a/configure.in
+++ b/configure.in
@@ -90,10 +90,10 @@ AC_MSG_RESULT($NCSB_SOURCE_FILES)
 
 
 STEPMAKE_PYTHON(REQUIRED, 2.4)
-STEPMAKE_GCC(REQUIRED, 3.4)
+STEPMAKE_GCC(REQUIRED, 3.3.5)
 
 STEPMAKE_CXX(REQUIRED)
-STEPMAKE_GXX(REQUIRED, 3.4)
+STEPMAKE_GXX(REQUIRED, 3.3.5)
 STEPMAKE_CXXTEMPLATE
 STEPMAKE_STL_DATA_METHOD
 STEPMAKE_LIB(REQUIRED)
diff --git a/lily/include/smobs.hh b/lily/include/smobs.hh
index 27f9ff4..8b8e4c3 100644
--- a/lily/include/smobs.hh
+++ b/lily/include/smobs.hh
@@ -114,7 +114,7 @@
   static int print_smob (SCM s, SCM p, scm_print_state*);  \
   public:  \
   static SCM equal_p (SCM a, SCM b);   \
-  static CL *unsmob (SCM s) __attribute__((pure))  \
+  static CL *unsmob (SCM s)\
   {\
 if (SCM_NIMP (s) && SCM_CELL_TYPE (s) == smob_tag_)\
   return (CL *) SCM_CELL_WORD_1 (s);   \


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Fix STEPMAKE_GET_VERSION for OpenBSD

2009-12-13 Thread Matthias Kilian
Hi,

I have this as a patch in the lilypond port of OpenBSD for years
(since 2006, IIRC), and it looks like I still need it for the
development branch. Without this, configure isn't able to detect
the versions of at least texi2html, makeinfo and bison. (I really
don't remember the reason, too much time has passed since I made
this patch)

Please be sure that it doesn't blow up configure on other systems.

Ciao,
Kili


diff --git a/stepmake/aclocal.m4 b/stepmake/aclocal.m4
index 83c07c3..59a2267 100644
--- a/stepmake/aclocal.m4
+++ b/stepmake/aclocal.m4
@@ -32,9 +32,14 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [
 ## for compatibility reasons.
 
 ## grab the first version number in  --version output.
-eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep '\(^\| 
\)[0-9][0-9]*\.[0-9]' \
-| head -n 1 \
-   | tr ' ' '\n' | sed 's/\([0-9][0-9]*\.[0-9][0-9.]*\).*/\1/g' | grep 
'\(^\| \)[0-9][0-9]*\.[0-9]' | head -n 1\`\"
+eval '_ver=\`'"$1"' --version 2>&1\` || _ver=\`'"$1"' -V 2>&1\` &&
+_ver=\`echo $_ver |
+   grep '\''[0-9]\.[0-9]'\'' |
+   head -n 1 |
+   tr '\'' '\'' '\''\n'\'' |
+   grep '\''[0-9]\.[0-9]'\'' |
+   head -n 1 |
+   sed '\''s/\([0-9.]*\).*/\1/g'\''\`'
 
 if test -z "$_ver"; then
 ## If empty, try date [fontforge]


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: race condition in writing lilypond-book filenames

2009-12-13 Thread Matthias Kilian
On Sun, Dec 13, 2009 at 05:49:13PM +0100, Matthias Kilian wrote:
> If the a file with the same name always has the same content,
> regardless from which document it has been generated, would something
> like the following help (no real code, i'm not good at all if it
> comes to python)?

Don't laugh at me -- I can't even test this here on OpenBSD, because
I don't have all prerequisites available in the necessery versions.


diff --git a/scripts/lilypond-book.py b/scripts/lilypond-book.py
index 392ddd0..35a1d8a 100644
--- a/scripts/lilypond-book.py
+++ b/scripts/lilypond-book.py
@@ -1273,8 +1273,17 @@ left-margin-default right-margin-default)"
 directory = os.path.split(path)[0]
 if not os.path.isdir (directory):
 os.makedirs (directory)
-out = file (path + '.ly', 'w')
+out = tempfile.NamedTemporaryFile(mode = 'w', suffix = '.lytmp',
+  dir = directory, delete = False)
 out.write (self.full_ly ())
+out.close()
+filename = path + '.ly'
+if os.path.exists(filename):
+# What else? Print a warning? Compare both files and error
+# out if they differ?
+os.remove(out.name)
+else:
+os.rename(out.name, filename)
 file (path + '.txt', 'w').write ('image of music')
 
 def relevant_contents (self, ly):


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: race condition in writing lilypond-book filenames

2009-12-13 Thread Matthias Kilian
Hi,

On Sun, Dec 13, 2009 at 03:55:00PM +, Graham Percival wrote:
> diff --git a/scripts/lilypond-book.py b/scripts/lilypond-book.py
> index 392ddd0..b9731f1 100644
> --- a/scripts/lilypond-book.py
> +++ b/scripts/lilypond-book.py
> @@ -1273,7 +1273,11 @@ left-margin-default right-margin-default)"
>  directory = os.path.split(path)[0]
>  if not os.path.isdir (directory):
>  os.makedirs (directory)
> -out = file (path + '.ly', 'w')
> +filename = path + '.ly'
> +if os.path.exists(filename):
> +print "PANIC!  ", filename, "already exists!"
> +sys.exit(1)
> +out = file (filename, 'w')
>  out.write (self.full_ly ())
>  file (path + '.txt', 'w').write ('image of music')

It's still possible that a file gets overwritten, for example if
one process creates the output file *after* another process checked
wether it exists, but *before* that other process actually creates
the file.

Anyway, I had an idea after seeing that diff...

> In any case, we definitely have the same filename being used multiple
> times when building lilypond.  Is this a problem?  I can't say for
> certainty, but I *do* know that unpredictable race conditions occur in
> the docs when building with more than one process.

If the a file with the same name always has the same content,
regardless from which document it has been generated, would something
like the following help (no real code, i'm not good at all if it
comes to python)?


- write the output to a temporary file (with a unique filename, but
  within the same directory)

- after writing the temporary file, test wether a file with the final
  name (path + '.ly') already exists

- if not, just rename the tempory file to the final name

- if it already existed, remove the temporary file (here one could
  additionally compare the two files and error out if they differ)

There's still a race here (again, between the check wether the final
file exists and the actual renaming). However, if equally named
files are expected to have the same content, this race doesn't
matter, because renaming a file is an atomic operation, and because
the final file will always be complete.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Make doc failure

2009-11-13 Thread Matthias Kilian
On Fri, Nov 13, 2009 at 09:36:44PM +, Neil Puttock wrote:
> > I guess I could test this tomorrow.
> 
> Doesn't work for me unfortunately:
> 
> WARNING: Unable to find node 'Scheme tutorial' in book learning.
> cp /home/neil/lilypond/Documentation/css/*.css out-www/contributor/
> cp /home/neil/lilypond/Documentation/css/*.css out-www/notation/
> # fix links from other manuals to general
> find ./out-www -name "*.html" | xargs sed  -e 's/..\/general\//..\//' -i ''
> sed: can't read : No such file or directory
> make[2]: *** [local-WWW-2] Error 123

Of course, both lines with this find .. | xargs sed ... -i pattern
have to be changed, not only the one i mentioned in my mail.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Make doc failure

2009-11-13 Thread Matthias Kilian
On Fri, Nov 13, 2009 at 08:31:34PM +, Carl Sorensen wrote:
> @@ -146,8 +146,8 @@ local-WWW-1: $(OUT_TEXINFO_MANUALS) 
> $(PDF_FILES) info
>  
>  local-WWW-2: txt-to-html $(OUT_HTML_FILES) $(DEEP_HTML_FILES) 
> $(source-links) $(OM
> # fix links from other manuals to general
> -   find $(outdir) -name "*.html" | xargs sed -i 's/..\/general\//..\//'
> -   ls $(outdir)/*.html | xargs sed -i 's/ +   find $(outdir) -name "*.html" | xargs sed  -e 
> 's/..\/general\//..\//' -i ''
> +   ls $(outdir)/*.html | xargs sed  -e 's/ ''
>  endif

Please don't use -i on sed(1), it's not portable (so it wasn't
portable in the original version). If you're brave, and if there
are no files with "funny" names (containing linebreaks), you can
use something like

ls $(outdir)/*.html | while read f; do sed -e ... "$$f" > _ && mv _ 
"$$f" done

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: serious doubts about waf

2009-11-11 Thread Matthias Kilian
On Wed, Nov 11, 2009 at 02:38:12PM -0800, Patrick McCarty wrote:
> I don't have much experience *using* automake, but from what I've
> read:
> 
>   - A Makefile.am is easier to maintain than an equivalent handcoded
> makefile.
>   - The generated makefiles will be very portable (not reliant on GNU
> make).
>   - Automake integrates well with Autoconf, probably more so than the
> current stepmake system.

One problem with automake (and autoconf) is that it's incredibly
difficult to debug if something goes wrong.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Overview of copyright issues

2009-09-20 Thread Matthias Kilian
On Sat, Sep 19, 2009 at 11:28:11PM +0100, Anthony W. Youngman wrote:
> >The snippets are taken from the LSR and a condition of submission to the
> >LSR is that you consign your work to the public domain (and that you
> >have the right to do so).  I know, because I submitted a couple of
> >snippets to the LSR and they later made it into the Lilypond docs'
> >selection of snippets.
> 
> What happens if you're German :-)
> 
> (I don't know, but there's been a fair bit of discussion, on and off, on 
> debian legal as to whether it is even *possible* for some people to 
> consign their work to the public domain - the *law* apparently says they 
> *can't*)

"public domain" in germany (and maybe other european countries)
doesn't exist in the sense that an author can't drop authorship and
decline all responsibility for his work.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Overview of copyright issues

2009-09-09 Thread Matthias Kilian
On Wed, Sep 09, 2009 at 06:04:17PM +0200, Joseph Wakeling wrote:
> So, having read the past discussion and looked through source code etc.
> it seems like there are several general observations, some conclusions,
> and some questions.
> 
> Observations:
> 
>(1) Lilypond isn't violating any copyright/license requirements.

So what's the point of this discussion?


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Iphone

2009-08-26 Thread Matthias Kilian
On Wed, Aug 26, 2009 at 10:32:49PM +, Phil Allred wrote:
> Could lilypond be packaged up for the iPhone? Has anyone explored this?

I may be wrong, but doesn't the iPhone use a CPU similar to that
of a Sharp Zaurus CL3200 or some of the cheap Thecus storage devices,
i.e.  some ARM/xscale processor running at 400 -- 600 MHz without
an FPU? If I'm not wrong, I won't expect much fun from running
LilyPond on the iPhone. It's really dead-slow the other machines I
mentioned.

Another problem may be the memory footprint. I don't know how much
RAM an iPhone has, but on the Zaurus (with 64MB RAM) I can only
render very simple and small tunes. More complex stuff (like the
bach/busoni chaconne i still didn't finish) uses too much memory.
However, if an iPhone comes with several hundred MB of RAM, the
only bottleneck would be the CPU performance.

Ciao,
Kili

-- 
>> Programme, die mit "k" anfangen benutze ich nicht ;-)
> Und was machst Du, wenn Du mal einem Prozess ein Signal schicken willst?
Dann nimmt er den Gnome-Ableger "gill" (aus Sachsen?).
-- Martin Bucher, Matthias Kilian & Ralf Döblitz in der LUG-BS


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Broken make

2009-07-14 Thread Matthias Kilian
On Tue, Jul 14, 2009 at 09:32:16AM -0600, Carl Sorensen wrote:
> > Just drop it. If the destination file has to be updated whenever
> > the source file changes, let make(1) handle it.
> 
> I dropped it in my local copy, and make succeeded.  But I have not pushed
> the change to git, and won't.  I don't have enough confidence that I know
> the build process well to be sure I'm not breaking something.  I'll let John
> Mandereau get to it when he has the time.

Yep, it may be helpful to know *what* he was trying to fix with cp -u.

Ciao,
Kili

-- 
Automake and autoconf deserve to wither and die, but unfortunately noone
at GNU seems to make much of an effort to euthanasize them.
-- Han-Wen Nienhuys, on Lilypond-devel mailing list


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Broken make

2009-07-13 Thread Matthias Kilian
On Mon, Jul 13, 2009 at 09:18:58PM -0700, Patrick McCarty wrote:
> I found this interesting link:
> 
> https://savannah.cern.ch/bugs/?35556
> 
> It looks like "cp -u" will only work under Linux.  John added the "-u"
> flag earlier this month to avoid some error messages (likely different
> from yours).
> 
> So, we can either remove the "-u" flag or find a different solution
> that still provides the fix John made.

Just drop it. If the destination file has to be updated whenever
the source file changes, let make(1) handle it.

Oh, and for general information what options are available for
standard tools:

http://www.opengroup.org/onlinepubs/9699919799/toc.htm



___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Out of memory not properly detected on scm_* functions

2009-02-25 Thread Matthias Kilian
Hi,

when running

$ gmake web

on OpenBSD/amd64, lilypond tends to bail out in a very misleading
and confusing way -- it segfaults. This is probably reproducible
on Linux when you limit the data size using ulimit -Sd 524288 (it's
really not necessary that someone actually tries to reproduce it,
but if you're bored...).

The problem is that when memory is tight, several of the scm_*
functions like the scm_call_? family just return NULL. Indeed, some
debugging and tracing showed that guiles garbage collectro tries
to realloc(2), which fails, and then you just get get the NULL.

Unfortunately, lilypond doesn't check the return values of the scm_*
functions, so all you see is the mentioned segfault *somewhere*,
probably after the realloc(2) failed several times.

I'm not a libguile guru, but is there any way to force libguile to
abort(2) immediately if the gc can't gc anything and also can't
request more space from the system? Checking all the SCM's returned
by scm_* function seems to be too cumbersome IMHO.

Ciao,
Kili

ps: of course this all may be caused by a memory leak in lilypond,
but before checking that, I'd prefer to see lilypond aborting when
the realloc failure happens.


-- 
If your program isn't worth documenting,
it probably isn't worth running.
-- Nagler


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: which fontforge version?

2009-02-25 Thread Matthias Kilian
On Wed, Feb 11, 2009 at 10:42:19PM +0100, Jan Nieuwenhuizen wrote:
> > while working on an update of the openbsd port of lilypond, i see
> > lots of fontforge whinings like this one:
> 
> > Internal Error in accidentals.flat.arrowdown: monotonic is both needed and 
> > unneeded.
> 
> Indeed, these glyphs were recently added and seem to have issues.
[...]
> > And: does anyone using fontforge-20080927 on other operating systems
> > running into those errors?
> 
> I see them in my logs too.

Good (in the sense of: it's not an OS specific bug).

Since George seems to be quite busy with non-fontforge things, I'll
just work with the CVS version for now.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


which fontforge version?

2009-02-11 Thread Matthias Kilian
Hi,

while working on an update of the openbsd port of lilypond, i see
lots of fontforge whinings like this one:

Invoking "fontforge -script feta13.pe feta13.pfb"...
Copyright (c) 2000-2008 by George Williams.
 Executable based on sources from 02:38 GMT 27-Sep-2008.
 Library based on sources from 15:05 GMT 25-Sep-2008.
Internal Error in accidentals.flat.arrowdown: monotonic is both needed and 
unneeded.
Internal Error in accidentals.flat.arrowdown: monotonic is both needed and 
unneeded.
Internal Error in accidentals.flat.arrowdown: Expected needed monotonic.
Internal Error in accidentals.flat.arrowboth: monotonic is both needed and 
unneeded.
Internal Error in accidentals.flat.arrowboth: monotonic is both needed and 
unneeded.
Internal Error in accidentals.flat.arrowboth: Expected needed monotonic.


What (hopefully newer) version fontforge is typically used for lilypond?

And: does anyone using fontforge-20080927 on other operating systems
running into those errors?

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: *Newbie question* Can I use Gcc 3.4 for compiling?

2008-05-06 Thread Matthias Kilian
On Tue, May 06, 2008 at 01:32:12AM +, Mark wrote:
> Can I use GCC 3.4. to compile the code? 

For LilyPond-2.10.*, try the patches at
http://www.openbsd.org/cgi-bin/cvsweb/ports/print/lilypond/patches/


-- 
All the distortion came from the amp.
-- Paul Gilbert


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


[patch] zap wrong assert() in lily/ttf.cc

2007-05-21 Thread Matthias Kilian
[Applies to lilypond-2.10.25]

Seems like all you guys build with -DNDEBUG ;-)

That cur_chunk_idx isn't defined at this point of code.

Ciao,
Kili


--- lily/ttf.cc.origSat May 19 16:49:56 2007
+++ lily/ttf.cc Mon May 21 11:33:48 2007
@@ -174,7 +174,6 @@ void t42_write_table (void *out, FT_Face face, unsigne
  {
chunks.push_back (last_offset - last_chunk);
last_chunk = last_offset;
-   assert (cur_chunk_idx < 100);/* FIXME: only for static arrays */
  }
 
last_offset = offset;

-- 
Unless your mouth is still frozen from a trip to the dentist, you
CANNOT utter the term "mibibyte" without feeling like an idiot.
-- Kjell Wooding about IEC 60027-2


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: misdetection of mftrace in 2.10.1

2006-12-09 Thread Matthias Kilian
[list cc: changed to -devel, since it's more appropriate]

On Sat, Dec 09, 2006 at 12:36:24PM +0100, Han-Wen Nienhuys wrote:
> The version checking is particularly fragile; this was a fix to make the
> checking work with another package. We're once again reevaluating 
> SCons, but the latest versions seem to have some serious problems
> that prevent us from switching.

Just beeing curious: did anyone ever think about using cmake? I'm
not sure wether it would be a proper replacement for autotools +
stepmake, but AFAIK the KDE guys are quite happy with it.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Fix: file descriptor leak in scm/framework-eps.scm

2006-11-14 Thread Matthias Kilian
On Mon, Nov 13, 2006 at 11:48:18PM +0100, Matthias Kilian wrote:
> Found when trying to build on OpenBSD:

Fix another fd leak. To reproduce those leaks on Linux, try
ulimit -n 128 (or even 64) before running make all web.

BTW: this all is about LilyPond 2.10.0.


--- scm/backend-library.scm.origFri Nov 10 14:44:26 2006
+++ scm/backend-library.scm Tue Nov 14 22:02:42 2006
@@ -158,7 +158,9 @@
  (if (equal? "-" file-name) "" file-name))
   (if (equal? file-name "-")
   (display value)
-  (display value (open-file file-name "w")))
+  (let ((port (open-file file-name "w")))
+ (display value port)
+ (close-port port)))
   (ly:progress "\n")
   "")
 
Ciao,
Kili

ps: anyone using OpenBSD who wants to help please contact me offlist;
you'll need some patches not yet committed to the OpenBSD trees
(especially for makeinfo and guile, but also for LilyPond itself).


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Fix: file descriptor leak in scm/framework-eps.scm

2006-11-13 Thread Matthias Kilian
Found when trying to build on OpenBSD:

--- scm/framework-eps.scm.orig  Fri Nov 10 14:44:26 2006
+++ scm/framework-eps.scm   Mon Nov 13 21:53:37 2006
@@ -97,6 +97,8 @@ stencil, so LaTeX includegraphics doesn'
 (display "@c eof - 'eof' is a Makefile marker; do not remove. " 
texi-system-port)
 (display "% eof - 'eof' is Makefile marker; do not remove. " 
tex-system-port)
 
+(close-output-port texi-system-port)
+(close-output-port tex-system-port)
 (dump-infinite-stack-EPS stencils)
 (postprocess-output book framework-eps-module
(format "~a.eps" basename) (ly:output-formats


-- 
Zesterdaz, all mz kezboards were so far awaz. (Beatles)
-- Claus-Peter Warnecke, dtj, 12.3.2001


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: stable docs build failure

2006-10-08 Thread Matthias Kilian
Hi,

On Tue, Jul 04, 2006 at 03:54:19AM -0700, Graham Percival wrote:
> The build fails on this snippet, lily-910891298.ly on my system:

well, I'm right now trying to bring lilypond 2.8.7 to OpenBSD, and
get exactly the same error on the same file (see quote below),
except here it's line 488, not 487.

Any ideas?

Ciao,
Kili

> 
> % 
> % ly snippet:
> % 
> \score {
>   \transpose c c' {
> \set Score.timing = ##f
> \set Score.defaultBarType = "empty"
> \override NoteHead #'style = #'neomensural
> \override Staff.TimeSignature #'style = #'neomensural
> \clef "petrucci-g"
> \[ c'\maxima g \]
> s4
> \[ d\longa c\breve f e d \]
> s4
> \[ c'\maxima d'\longa \]
> s4
> \[ e'1 a g\breve \]
>   }
>   \layout {
> \context {
>   \Voice
>   \remove Ligature_bracket_engraver
>   \consists Mensural_ligature_engraver
> }
>   }
> }
> 
> 
> 
> Error messages:
> 
> Calculating line breaks...
> programming error: Note_spacing::get_spacing(): Common refpoint incorrect
> continuing, cross fingers
> programming error: Note_spacing::get_spacing(): Common refpoint incorrect
> continuing, cross fingers
> ...
> Layout output to 
> `lily-910891298-1.eps'.../home/gperciva/usr/src/stable-lilypond/lilypond/out/share/lilypond/current/scm/framework-ps.scm:487:24:
>  
> In procedure inexact->exact in expression (inexact->exact (round #)):
> /home/gperciva/usr/src/stable-lilypond/lilypond/out/share/lilypond/current/scm/framework-ps.scm:487:24:
>  
> Numerical overflow
> ...


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: confusion about version numbers

2006-08-03 Thread Matthias Kilian
On Thu, Jul 27, 2006 at 10:42:29AM +0200, Han-Wen Nienhuys wrote:
> It was released, mostly with minor layout fixes. I'll do a 2.8.6

Any timeline for this?

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Source release 2.8.4, documentation 2.8.5?

2006-07-16 Thread Matthias Kilian
Hi,

I'm just trying to give the OpenBSD port prepared by Matt Jibson
some final polish.

Unfortunately, we can't build the documentation on OpenBSD (due to
an old version of makeinfo in the base system), so I decided to use
the downloadable tarball, which is versioned 2.8.5 -- in contrast
to the source tarball (2.8.4).

Is there any official release 2.8.5 of the sources planned? The
current OpenBSD port would be a real kludge, mixing LilyPond 2.8.4
and the documentation versioned 2.8.5. I could also include patches
between 2.8.4 and the CVS branch 2.8, but that doesn't seem very
elegant, either.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: configure find wrong python path

2006-06-26 Thread Matthias Kilian
On Mon, Jun 26, 2006 at 12:29:24PM +0200, Karl Hammar wrote:
> > ps: do we really still have to use backticks instead of $(...)?
> > Anyone running LilyPond on old systems with rotten shells?
> 
> configure is about portability, why not keep the backticks?
> The same goes for shells with 32bit int arith.

Gotcha ;-)

> It builds and runs ok (using debian v3.1).

Yep, the build on OpenBSD I started later was fine, too.

Ciao,
Kili

-- 
Als Katholik muss man halt auch mal auf ein Opfer verzichten können.
-- Benedikt Spranger in der lug-bs ml


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: configure find wrong python path

2006-06-25 Thread Matthias Kilian
On Wed, May 24, 2006 at 11:51:01PM +0200, Karl Hammar wrote:
> Given:
>   $ ls -l /usr/bin/python*
>   lrwxrwxrwx  1 root root   9 May 24 15:51 /usr/bin/python -> python2.3
>   -rwxr-xr-x  1 root root  958764 Mar  6 11:32 /usr/bin/python2.3
>   -rwxr-xr-x  1 root root 1024460 Apr 23 01:34 /usr/bin/python2.4

Similar setup here on OpenBSD:

$ ls -l /usr/local/bin/python*
lrwxr-xr-x  1 root  wheel  9 Jun  4 23:02 /usr/local/bin/python -> python2.3
-r-xr-xr-x  1 root  bin20028 Jun  4 23:00 /usr/local/bin/python2.3
-r-xr-xr-x  1 root  bin20028 Jun  4 18:07 /usr/local/bin/python2.4

> configure will report wrong path of python:
> 
>   $ ./configure
>   ...
>   checking for bash... /bin/sh
>   checking for python... python
>   checking python version... 2.3.5
>   checking for python... /usr/bin/python
>   checking for gcc... gcc
>   ...
>   checking New Century Schoolbook PFB files... /usr/share/fonts/type...
>   checking for python... /usr/bin/python
>   checking /usr/bin/python version... 2.3.5
[...]
> Attached patch corrects the error above.

Unfortunately, configure completely bails out then using something like

$ PYTHON=/usr/local/bin/python2.4 ./configure ...

The problem is in STEPMAKE_GETVERSION, since it takes the first
line that looks like it contains a version number of the output
from [Path stripped to take the line shorter]:

$ python2.4 --version 2>&1 || python2.4 -V 2>&1

which is

Unknown option: --
usage: python2.4 [option] ... [-c cmd | -m mod | file | -] [arg] ...
Try `python -h' for more information.
Python 2.4.3

The net result is that, for whatever reason, configure first detects
2.4.3, but later 2.3.5.

I think the attached patch fixes this. (Works at least when configuring
on OpenBSD).

Note that the patch contains another quick hack to let the version
check work on OpenBSD and other systems where the shell has 32 bit
integer arithmetic (without it, you'll get too large version numbers
for fontforge, letting configure think that 20060413 is smaller
than the requested version).

Ciao,
Kili

ps: do we really still have to use backticks instead of $(...)?
Anyone running LilyPond on old systems with rotten shells?

pps: I *only* tested the configure step yet. No idea wether it will
actually build and run.

ppps: Matt J., I assume you're subscribed to this list, so I don'y cc: ;-)

-- 
Windows is so bootyful...
$OpenBSD$
--- stepmake/aclocal.m4.origThu Jun  1 13:30:35 2006
+++ stepmake/aclocal.m4 Sun Jun 25 20:34:47 2006
@@ -31,9 +31,14 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [
 ## for compatibility reasons.
 
 ## grab the first version number in  --version output.
-eval _ver=\"\`("$1" --version || "$1" -V) 2>&1 | grep '[0-9]\.[0-9]' \
-| head -n 1 \
-   | tr ' ' '\n' | grep '[0-9]\.[0-9]' | head -n 1 | sed 
's/\([0-9.]*\).*/\1/g'\`\"
+eval '_ver=\`'"$1"' --version 2>&1\` || _ver=\`'"$1"' -V 2>&1\` &&
+_ver=\`echo $_ver |
+   grep '\''[0-9]\.[0-9]'\'' |
+   head -n 1 |
+   tr '\'' '\'' '\''\n'\'' |
+   grep '\''[0-9]\.[0-9]'\'' |
+   head -n 1 |
+   sed '\''s/\([0-9.]*\).*/\1/g'\''\`'
 
 if test -z "$_ver"; then
 ## If empty, try date [fontforge]
@@ -48,12 +53,9 @@ AC_DEFUN(STEPMAKE_GET_VERSION, [
 # Calculate simplistic numeric version from version string ($1)
 # As yet, we have no need for something more elaborate.
 AC_DEFUN(STEPMAKE_NUMERIC_VERSION, [
-echo "$1" | awk -F. '
-{
-  if ([$]3) {three = [$]3}
-  else {three = 0}
-}
-{printf "%.0f\n", [$]1*100 + [$]2*1000 + three}'
+   echo "$1" | awk -F. '
+ NF==1 {print; next}
+ {printf "%.0f\n", [$]1*100 + [$]2*1000 + [$]3}'
 ])
 
 
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: configure: readlink problem

2006-06-04 Thread Matthias Kilian
On Sun, Jun 04, 2006 at 02:26:22PM -0700, Graham Percival wrote:
> > The -f option tells readlink to rekursively resolv all links and find
> >the file which the link finally points to. Without the -f readlink just
> >just gives you what this link points to.
> 
> Hmm.  FreeBSD's readlink doesn't have any option like that.

Workaround (untested):

f=(whatever)
while [ -h "$f" ]; do
f=$(readlink "$f")
done

Ciao,
Kili

-- 
GDB has a 'break' feature; why doesn't it have 'fix' too?


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: "too many open files" returns

2006-03-12 Thread Matthias Kilian
On Sat, Mar 11, 2006 at 04:43:43PM -0800, Graham Percival wrote:
> I'm getting the "too many open files" problem again.  Using make  
> external_binary web  now.
[...]
> This arose a few months ago; there was a patch to texinfo that fixed  
> it.

Yes, I actually found and fixed many flaws in texinfo (partially
for OpenBSD). I sent all patches to Karl Berry, but he didn't yet
make a new texinfo release.

Patches are attached.

Ciao,
Kili

-- 
if you can't read a man page, you aren't qualified to read my emails
either.
-- Ted Unangst


patches.tgz
Description: application/tar-gz
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: make web (documents) on OSX

2005-05-11 Thread Matthias Kilian
On Wed, May 11, 2005 at 01:57:55AM -0700, Graham Percival wrote:
> OSX ulimit -n is set to to 256 by default.  A while ago, I increased 
> that
> to 512 to allow lilypond to build.  I'm not certain if this is still 
> necessary,
> and I'd completely forgotten about that line in my ~/.profile
> I tried setting it to 2048 and the docs built successfully.

If it's makeinfo that's bailing out, tuning the limits is the wrong
solution to the right problem :-)

There's a file descriptor leak in the official texinfo-4.8. Below's
a patch for it (and some other bugs). Note that there are more small
indexing bugs; I allready sent all my patches to Karl Berry.

Ciao,
Kili

--- makeinfo/html.c.origMon Dec  6 02:13:06 2004
+++ makeinfo/html.c Tue Apr  5 17:17:15 2005
@@ -167,6 +167,8 @@ process_css_file (char *filename)
   lastchar = c;
 }
 
+  fclose(f);
+
   /* Reached the end of the file.  We should not be still in a comment.  */
   if (state == comment_state)
 warning (_("%s:%d: --css-file ended in comment"), filename, lineno);
@@ -437,7 +439,9 @@ rollback_empty_tag (char *tag)
   int check_position = output_paragraph_offset;
   int taglen = strlen (tag);
   int rollback_happened = 0;
-  char *contents = "";
+  char *contents = ""; /* FIXME (ptr to constant, later
+  assigned to malloc'd address).
+*/
   char *contents_canon_white = "";
 
   /* If output_paragraph is empty, we cannot rollback :-\  */
@@ -445,7 +449,7 @@ rollback_empty_tag (char *tag)
 return 0;
 
   /* Find the end of the previous tag.  */
-  while (output_paragraph[check_position-1] != '>' && check_position > 0)
+  while (check_position > 0 && output_paragraph[check_position-1] != '>')
 check_position--;
 
   /* Save stuff between tag's end to output_paragraph's end.  */
@@ -462,7 +466,7 @@ rollback_empty_tag (char *tag)
 }
 
   /* Find the start of the previous tag.  */
-  while (output_paragraph[check_position-1] != '<' && check_position > 0)
+  while (check_position > 0 && output_paragraph[check_position-1] != '<')
 check_position--;
 
   /* Check to see if this is the tag.  */


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


ec-fonts-mftraced (was: Runtime errors on OpenBSD)

2005-03-18 Thread Matthias Kilian
On Thu, Mar 17, 2005 at 07:44:31PM -0500, David Jedlinsky wrote:
> ec-fonts-mftraced takes *forever* to run.  Is this normal?  Or should
> I have installed potrace, because it's better than autotrace in some
> way?

You could do it the way Matt did it: fetch the .deb package, extract
this and put ec-mftrace.map to the appropriate place
(texmf/fonts/map/ec-fonts-mftraced).

For your other problems, I really recommend to upgrade to a recent
OS version and use my or Matt's ports, if you don't have too much
private ports/nonstandard software on your system. 3.7-beta runs
fine for me, but backporting our ports to 3.6 shouldn't be too
difficult. I just won't do this because I don't have any 3.6 installed
here (and my server will be upgraded soon).

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: More makefile oddities (was: Suspicious path issues...)

2005-03-11 Thread Matthias Kilian
Again selfquoting...

On Fri, Mar 11, 2005 at 05:18:16PM +0100, Matthias Kilian wrote:
> Date: Fri, 11 Mar 2005 17:18:16 +0100
> From: Matthias Kilian <[EMAIL PROTECTED]>
> To: lilypond-devel@gnu.org
> Message-ID: <[EMAIL PROTECTED]>
> Subject: More makefile oddities (was: Suspicious path issues...)
> X-CRM114-Status: Good  ( pR: 195.7705 )
> 
> Hi,
> 
> On Thu, Mar 10, 2005 at 08:00:18PM +0100, Matthias Kilian wrote:
> However, I now have the problem that gmake doesn't correctly recognize
> the dependency below resp. does really odd things to $(OUT_*_IMAGES)
[...]
> $ gmake out=www bar
> gmake: *** No rule to make target `/baer-flat-bw.eps', needed by `bar'.  Stop.

Solved. I used to run MAKEINFO=/usr/local/bin/makeinfo sh autogen.sh,
since OpenBSD's own texinfo is too old and I'd to install a newer
one in /usr/local.

This, however, breaks the check for SPLITTING_MAKEINFO in aclocal.m4
(see patch below), which in turn disables the rule

$(outdir)/lilypond.dvi: $(OUT_EPS_IMAGES) $(OUT_PNG_IMAGES)

and the png and eps rules in Documentation/user/GNUmakefile, since
those rules are in an ifeq($(SPLITTING_MAKEINFO),yes) block.

My quick hack just changes the aclocal check (note that there are
some more such tests in aclocal), but IMHO, the ifeq magic in the
GNUmakefile is wrong and should be removed. But I could be wrong.

--- stepmake/aclocal.m4.origSat Feb 12 13:05:02 2005
+++ stepmake/aclocal.m4 Fri Mar 11 18:07:07 2005
@@ -846,7 +846,7 @@ AC_DEFUN(STEPMAKE_LOCALE, [
 
 AC_DEFUN(STEPMAKE_MAKEINFO, [
 STEPMAKE_PROGS(MAKEINFO, makeinfo, $1)
-if test "$MAKEINFO" = "makeinfo"; then
+if test `basename "$MAKEINFO"` = "makeinfo"; then
AC_MSG_CHECKING(whether makeinfo can split html by @node)
mkdir -p out
makeinfo --html --output=out/split <http://lists.gnu.org/mailman/listinfo/lilypond-devel


More makefile oddities (was: Suspicious path issues...)

2005-03-11 Thread Matthias Kilian
Hi,

On Thu, Mar 10, 2005 at 08:00:18PM +0100, Matthias Kilian wrote:
> b) references a target `outimages' which isn't defined anywhere, thus
> breaking make web.

I just saw that you've removed this for 2.5, so did I on my local
working copy of 2.4.

However, I now have the problem that gmake doesn't correctly recognize
the dependency below resp. does really odd things to $(OUT_*_IMAGES)

$(outdir)/lilypond.dvi: $(OUT_EPS_IMAGES) $(OUT_PNG_IMAGES)

I added the following targets for debugging:

| .PHONY: foo bar
| foo:
|   @echo $(OUT_EPS_IMAGES)
| 
| bar:  $(OUT_EPS_IMAGES)

This gives the following result.

$ gmake out=www foo
./out-www/baer-flat-bw.eps ./out-www/henle-flat-bw.eps 
./out-www/lily-flat-bw.eps
$ gmake out=www bar
gmake: *** No rule to make target `/baer-flat-bw.eps', needed by `bar'.  Stop.

Note that this independent of --no-builtin-rules.

Now comes the fun: With a Makefile stripped down to exactly this
problem, it works:

| depth=../..
| 
| IMAGES=$(wildcard *.png)
| 
| OUT_EPS_IMAGES=$(addprefix $(outdir)/,$(IMAGES:.png=.eps))
| 
| .PHONY: foo bar
| foo:
|   @echo $(OUT_EPS_IMAGES)
| 
| bar: $(OUT_EPS_IMAGES)
| 
| $(outdir)/%.png: %.png
|   convert -geometry 50x50% $< $@
| 
| $(outdir)/%.eps: %.png
|   convert $< $@
| 
| include $(depth)/make/stepmake.make 

Has anyone an idea what's going on here?

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Suspicious path issues in Makefiles ;-)

2005-03-10 Thread Matthias Kilian
On Wed, Mar 09, 2005 at 08:27:08PM +0100, Jan Nieuwenhuizen wrote:
> > Sorry for any confusion I may have caused.
> 
> That's ok, this should be fixed; I'll apply your patches.

Here's yet another one I missed (I had to install a recent makeinfo
before building documentation):


--- stepmake/stepmake/texinfo-vars.make.origSun Oct 24 15:47:36 2004
+++ stepmake/stepmake/texinfo-vars.make Thu Mar 10 17:36:17 2005
@@ -17,7 +17,7 @@ MAKEINFO = LANG= $(MAKEINFO_PROGRAM)  --
 # info stuff
 INFO_INSTALL_FILES = $(wildcard $(addsuffix *, $(INFO_FILES)))
 INFO_INSTALL_COMMAND =$(if $(INFO_INSTALL_FILES),\
-   $(INSTALL) -d $(DESTDIR)$(package_infodir) ; \
-   $(MAKE) INSTALLATION_OUT_DIR=$(DESTDIR)$(package_infodir) \
+   $(INSTALL) -d $(package_infodir) ; \
+   $(MAKE) INSTALLATION_OUT_DIR=$(package_infodir) \
depth=$(depth) INSTALLATION_OUT_FILES="$(INFO_INSTALL_FILES)" \
-f $(stepdir)/install-out.sub.make,true)


Further under focus is Documentation/user/GNUmakefile, which

a) also seems to use DESTDIR (I just find/xargs/grep for DESTDIR),

b) references a target `outimages' which isn't defined anywhere, thus
breaking make web.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Suspicious path issues in Makefiles ;-)

2005-03-09 Thread Matthias Kilian
On Tue, Mar 08, 2005 at 09:23:11AM +0100, Jan Nieuwenhuizen wrote:
> Hmm, that's strange.  I can't seem to find where
> local_lilypond_datadir would get the DESTDIR prefix, unless it would
> be from $prefix.

Well, I just see that I didn't mention that I'm working on
LilyPond-2.4.x. There you have prefix = $(DESTDIR)@prefix@ in
config.make.in, so pretty everything is prefixed by DESTDIR.

Sorry for any confusion I may have caused.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Suspicious path issues in Makefiles ;-)

2005-03-08 Thread Matthias Kilian
On Tue, Mar 08, 2005 at 09:23:11AM +0100, Jan Nieuwenhuizen wrote:
> Hmm, that's strange.  I can't seem to find where
> local_lilypond_datadir would get the DESTDIR prefix, unless it would
> be from $prefix.  You wouldn't be specifying them both, like
> 
> make install prefix=../fake-i386/usr/ports  DESTDIR=../fake-i136/usr/ports
> 
> that won't work.

It sets both PREFIX (all caps) and DESTDIR. I'll try to find out
what exactly goes on.

Ciao,
Kili

-- 
Zesterdaz, all mz kezboards were so far awaz. (Beatles)
[Claus-Peter Warnecke, dtj, 12.3.2001]


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Suspicious path issues in Makefiles ;-)

2005-03-07 Thread Matthias Kilian
On Mon, Mar 07, 2005 at 11:40:21PM +0100, Jan Nieuwenhuizen wrote:
> > -   -$(INSTALL) -d $(DESTDIR)$(local_lilypond_datadir)/dvips
> > -   (cd $(DESTDIR)$(local_lilypond_datadir)/dvips && ln -sf ../fonts/map .)
> > +   -$(INSTALL) -d $(local_lilypond_datadir)/dvips
> > +   (cd $(local_lilypond_datadir)/dvips && ln -sf ../fonts/map .)
> 
> I don't get this.  Why do you need it?

It's used during the OpenBSD fake installation -- they set up a
temporary installation hierarchy and make install with, for example,
DESTDIR=/usr/ports/print/lilypond/w-lilypond-2.4.5/fake-i386. This
temporary hierarchy is then used to make a binary package.

Without the patch, some file go to
/usr/ports//fake-i386/usr/ports//fake-i386, i.e. DESTDIR
seems to be allready contained in local-lilypond_datadir.

Mostly harmless, but maybe other packagers have similar problems.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Suspicious path issues in Makefiles ;-)

2005-03-07 Thread Matthias Kilian
On Mon, Mar 07, 2005 at 10:54:58PM +0100, Matthias Kilian wrote:
> could anyone check wether the attached diffs are sane? I need them
> for Matt's OpenBSD ports.

Sorry, I'm probably a little bit too drunk ;-) here are the patches.
$OpenBSD$
--- mf/GNUmakefile.orig Sat Feb 12 13:04:41 2005
+++ mf/GNUmakefile  Mon Mar  7 20:09:59 2005
@@ -215,9 +215,9 @@ $(outdir)/%.enc.in: %.enc
 
 # teTeX-2.0.x compatibility.
 local-install:
-   -$(INSTALL) -d $(DESTDIR)$(local_lilypond_datadir)/dvips
-   (cd $(DESTDIR)$(local_lilypond_datadir)/dvips && ln -sf ../fonts/map .)
+   -$(INSTALL) -d $(local_lilypond_datadir)/dvips
+   (cd $(local_lilypond_datadir)/dvips && ln -sf ../fonts/map .)
 
 local-uninstall:
-   -rm -f $(DESTDIR)$(local_lilypond_datadir)/dvips/map
-   -rmdir $(DESTDIR)$(local_lilypond_datadir)/dvips
+   -rm -f $(local_lilypond_datadir)/dvips/map
+   -rmdir $(local_lilypond_datadir)/dvips
$OpenBSD$
--- tex/GNUmakefile.origSat Feb 12 13:05:11 2005
+++ tex/GNUmakefile Mon Mar  7 20:09:59 2005
@@ -26,12 +26,12 @@ $(outdir)/latin1.enc: GNUmakefile
 
 # teTeX-2.0.x compatibility.
 local-install:
-   -$(INSTALL) -d $(DESTDIR)$(local_lilypond_datadir)/tex
-   (cd $(DESTDIR)$(local_lilypond_datadir)/tex && ln -sf ../fonts/enc .)
+   -$(INSTALL) -d $(local_lilypond_datadir)/tex
+   (cd $(local_lilypond_datadir)/tex && ln -sf ../fonts/enc .)
 
 local-uninstall:
-   -rm -f $(DESTDIR)$(local_lilypond_datadir)/tex/enc
-   -rmdir $(DESTDIR)$(local_lilypond_datadir)/tex
+   -rm -f $(local_lilypond_datadir)/tex/enc
+   -rmdir $(local_lilypond_datadir)/tex
 
 all: $(INSTALLATION_FILES) $(INSTALLATION_OUT_FILES1)
 
$OpenBSD$
--- stepmake/stepmake/help2man-targets.make.origMon Jun 23 00:36:47 2003
+++ stepmake/stepmake/help2man-targets.make Mon Mar  7 20:09:59 2005
@@ -3,9 +3,9 @@ default: man
 local-install: install-help2man
 
 install-help2man: man
-   -$(INSTALL) -d $(DESTDIR)$(mandir)/man1
+   -$(INSTALL) -d $(mandir)/man1
$(foreach a,  $(HELP2MAN_GROFFS), \
-   $(INSTALL) -m 644 $(a) $(DESTDIR)$(mandir)/man1 && ) true
+   $(INSTALL) -m 644 $(a) $(mandir)/man1 && ) true
 
 man: $(HELP2MAN_GROFFS)
 
___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Suspicious path issues in Makefiles ;-)

2005-03-07 Thread Matthias Kilian
Hi,

could anyone check wether the attached diffs are sane? I need them
for Matt's OpenBSD ports.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Missing CVS release tags

2005-03-05 Thread Matthias Kilian
Hi,

is there any good reason that lilypond releases aren't tagged in
the CVS since 2_4_2?

$ cvs -qz7 status -v VERSION | sed 15q
===
File: VERSION   Status: Up-to-date

   Working revision:1.621
   Repository revision: 1.621   /cvsroot/lilypond/lilypond/VERSION,v
   Sticky Tag:  (none)
   Sticky Date: (none)
   Sticky Options:  (none)

   Existing Tags:
lilypond_2_4_2  (revision: 1.602.2.2)
lilypond_2_4(branch: 1.602.2)
lilypond_2_3_25 (revision: 1.600)
lilypond_2_3_24 (revision: 1.599)
lilypond_2_3_23 (revision: 1.598)

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Compilation on FreeBSD

2005-02-28 Thread Matthias Kilian
On Mon, Feb 28, 2005 at 11:54:54AM +0100, Jan Nieuwenhuizen wrote:
> > FreeBSD maintainer of Lilypond is irresponsive :-(
> 
> That's too bad.

FYI: Matt Jibson currently works on an OpenBSD port (of LilyPond
and related tools), that I hope to test and watch over soon.

May be that this can be backported to FreeBSD.

Ciao,
Kili


___
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Guile use

2004-06-01 Thread Matthias Kilian
On Tue, Jun 01, 2004 at 01:58:08PM -0300, Pedro Kroger wrote:
> http://www.gnu.org/software/guile/gnu-guile-projects.html
> 
> "snd" uses guile heavily, for sure as extensively as lilypond. I don't
> know about the others.

The big difference between LilyPond and Snd is: LilyPond itself is
partially implemented in guile, but Snd uses guile just for extending it.

For Snd, you can even ./configure --without-guile  (for whatever reason).

Ciao,
Kili


___
lilypond-devel mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Guile use

2004-06-01 Thread Matthias Kilian
On Tue, Jun 01, 2004 at 08:09:22PM +0200, Han-Wen Nienhuys wrote:
> > Just curious: Is there any other project which uses Guile as
> > extensively as LilyPond?  I would like to have a comparison.
> 
> Not sure.  You might want to look at Gnucash and texmacs.  Also, I
> believe GUILE is the primary platform for common music/notation
> nowadays, but they running on top of GUILE, not using it as an
> extension language.

Snd (see http://ccrma.stanford.edu/software/snd/) may be an exception;
it makes use of guile (and nowadays optionally ruby) for extension and
control. Guile is for snd what emacs-lisp is for emacs.

However, I didn't do much wich snd an nothing at all with snd+guile,
since I'm a victim of the bad big time-eating monster ;-)

Ciao,
Kili

ps: I hope to get my hands back on my ciaconna project(s) next month.


___
lilypond-devel mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Why not to implement everything in scheme?

2004-03-23 Thread Matthias Kilian
On Mon, Mar 22, 2004 at 09:33:34PM +0100, Nicolas Sceaux wrote:
> You're unfair, you have deleted my smiley when quoting me. It was the
> short way for expressing your last paragraph (sort of).

Sorry, I probably was in a bad mood (for reasons not related to LilyPond).

Ciao,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: 'make all' still fails ChangeLog 1.1942 --follow-up

2004-03-23 Thread Matthias Kilian
On Tue, Mar 23, 2004 at 06:12:03PM +, David Bobroff wrote:
> > please double check,- fixed this error a long time ago. If unsure, rm
> > accidental-engraver.cc and update from CVS.
> 
> Tried again with a fresh checkout.  Same story:
>   -o out/accidental-engraver.o accidental-engraver.cc
> accidental-engraver.cc: In member function `virtual void
>Accidental_engraver::acknowledge_grob(Grob_info)':
> accidental-engraver.cc:444: cannot convert `const char*' to
> `scm_unused_struct*
>' for argument `1' to `bool to_boolean(scm_unused_struct*)'
[...]

Same here. A (cvs) diff between HEAD and 2.1.33 (or 2.1.34 and
2.1.33) shows that the call in question is new. Seems to be a missing
get_property()?

Ciao,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: Why not to implement everything in scheme?

2004-03-22 Thread Matthias Kilian
On Mon, Mar 22, 2004 at 08:37:24PM +0100, Nicolas Sceaux wrote:
> I'm not sure that there will be pletor of volonteers for recoding
> thousands of C++ LOC in whatever other language.

You just have to write a C++2scm translator ;-)

> hmmm, thinking of it... I volonteer for LilyPond in Common Lisp!!!
> cliclypond is so easier to pronounce.

I'd prefer RubyPond :-)

To be serious: the current implementation is o.k., and, IIRC, Han-Wen
mentioned in the interview at linuxmusician.com that the C++ part is
planned to shrink away.

I also thought a lot of wether using scheme/guile as semi-backend is the
best choice. It's a matter of taste and readability. Personally, I don't
like scheme very much; allthough it's small and easy to learn, it's IMHO
difficult to read and looks ugly. Thus, using something like Ruby *may*
be an alternative, possibly attracting more volunteers, possibly not.

Anyways. Wether you like/disklike C++, Scheme, Ruby, Python, Haskell,
whatever: those who do participate in active LilyPond development should
concentrate on improving LilyPond, not in using endless time by changing
the languages used. At least not until a certain point of stabilization
has been reached.

Ciao,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


script-abbreciations.ly: text attatchments broken

2004-03-22 Thread Matthias Kilian
Hi,

I just built 2.1.33, and since the script-abbreviations.ly is still
completely broken, I kind of "repaired" it (see attachment).

Unfortunately, it's still incorrect (wrong characters for `|' and `>'
due to math mode), but at least now it displays something reasonable.

Ciao,
Kili

% this chart is used in the manual too.

\version "2.1.33"
\header { texidoc = "@cindex Script Abbreviations

Some articulations may be entered using an abbreviation.

"
  
}

\score {
\notes \context Voice {
  \override TextScript  #'font-family = #'typewriter
  \override TextScript  #'font-shape = #'upright
  c''4-._"c-."  s4
  c''4--_"c-{}-"s4
  c''4-+_"c-+"  s4
  c''4-|_"c-$|$"s4
  c''4->_"c-$>$"s4
  c''4-^_"c-\^~"s4
  c''4-__"c-\_" s4  
}
  }

___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: anomalies with 2.1.32

2004-03-21 Thread Matthias Kilian
[Changed to development list, since it's really a bleeding-edge issue]

On Sat, Mar 20, 2004 at 04:43:34PM +, David Bobroff wrote:
> I'm still getting those same anomalies with v2.1.32; that is, dismbodied
> beams, multimeasure rest numbers displaced to the right, etc. [...]

Me, too :-(

For example, both 2.1.32 and the head revision (ChangeLog 1.1917) give
me very strange results for script-abbreviations.ly (and others). See
attached files (script-abbreviations.ly and script-abbreviations.png).

There are other, even more strange errors on my chaconne example, such
as noteheads at completely wrong places, overlapping systems, randomly
misplaced accidentals, etc. Unfortunately, I didn't manage to reproduce
those effects with a small file.

Ciao,
Kili

% this chart is used in the manual too.

\version "2.1.30"
\header { texidoc = "@cindex Script Abbreviations

Some articulations may be entered using an abbreviation.

"
  
}

\score {
\notes \context Voice {
  \override TextScript  #'font-family = #'typewriter
  \override TextScript  #'font-shape = #'upright
  c''4-._"c-."  s4
  c''4--_"c-{}-"s4
  c''4-+_"c-+"  s4
  c''4-|_"c-|"  s4
  c''4->_"c->"  s4
  c''4-^_"c\\^{ }" s4
  c''4-__"c\_" s4  
}
  }

<>___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: CVS problems (savannah down?)

2004-03-19 Thread Matthias Kilian
On Fri, Mar 19, 2004 at 01:29:47AM +0100, Han-Wen Nienhuys wrote:
> > is it only me who can't access the CVS server at savannah.gnu.org for
> > the last three days?
[...]
> For me, it's been up again since this morning.

Thanks. I can access it again, too.

Ciao,
Kili

-- 
Könn't man kyrillisch, wär's echt idyllisch.
["hwicht" in de.rec.motorrad]


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


CVS problems (savannah down?)

2004-03-18 Thread Matthias Kilian
Hi,

is it only me who can't access the CVS server at savannah.gnu.org for
the last three days?

Even ping or traceroute don't get a response. However, some recent mails
on the LilyPond lists made me think that some people get connections
to the server. That's really odd, and it's not a problem of my provider
(a friend had the same problem from a t-online access).

Ciao,
Kili, suffering LilyPond-Junkie

-- 
Just wait. My crystal ball is infallible.
[Linux Torvalds, 20.1.2001]


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: Less restrictive LilyPond identifiers?

2004-03-10 Thread Matthias Kilian
On Sun, Mar 07, 2004 at 03:03:30PM +0100, Matthias Kilian wrote:
[Letters and digits in identifiers]
> If there's no other reason for disallowing digits than to keep
> parser/scanner, I could try to write a patch.

Quick hack alert! The patch below appears to work. However, it applies
only to scanner rules using NOTECOMMAND. And, of course, documentation
and emacs and vim configuration would have to be changed. I'd work on
documentation and vim configuration if this patch is accepted.

Ciao,
Kili


diff -x CVS -rNup ../lilypond-2.1.29/lily/lexer.ll ./lily/lexer.ll
--- ../lilypond-2.1.29/lily/lexer.ll2004-02-24 21:00:57.0 +0100
+++ ./lily/lexer.ll 2004-03-07 18:25:38.0 +0100
@@ -112,12 +112,13 @@ SCM (* scm_parse_error_handler) (void *)
 A  [a-zA-Z]
 AA {A}|_
 N  [0-9]
-AN {AA}|{N}
+AN {A}|{N}
+AAN{AA}|{N}
 PUNCT  [?!:'`]
 ACCENT \\[`'"^]
 NATIONAL   [\001-\006\021-\027\031\036\200-\377]
 TEX{AA}|-|{PUNCT}|{ACCENT}|{NATIONAL}
-WORD   {A}{AN}*
+WORD   {A}{AAN}*
 ALPHAWORD  {A}+
 DIGIT  {N}
 UNSIGNED   {N}+
@@ -130,7 +131,7 @@ WHITE   [ \n\t\f\r]
 HORIZONTALWHITE[ \t]
 BLACK  [^ \n\t\f\r]
 RESTNAME   [rs]
-NOTECOMMAND\\{A}+
+NOTECOMMAND\\{A}{AN}*
 MARKUPCOMMAND  \\({A}|[-_])+
 LYRICS ({AA}|{TEX})[^0-9 \t\n\r\f]*
 ESCAPED[nt\\'"]
diff -x CVS -rNup ../lilypond-2.1.29/lily/parser.yy ./lily/parser.yy
--- ../lilypond-2.1.29/lily/parser.yy   2004-02-26 22:59:50.0 +0100
+++ ./lily/parser.yy2004-03-07 18:27:21.0 +0100
@@ -123,11 +123,10 @@ is_regular_identifier (SCM id)
   String str = ly_scm2string (id);
   char const *s = str.to_str0 () ;
 
-  bool v = true;
-  while (*s && v)
+  bool v = *s && isalpha(*s);
+  while (*++s && v)
{
-v = v && isalpha (*s);
-s++;
+v = v && isalnum (*s);
}
   return v;
 }



___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Less restrictive LilyPond identifiers?

2004-03-10 Thread Matthias Kilian
Hi,

are there any reasons to restrict identifiers in LilyPond to contain only
letters? IMO, it would be nice to at least also allow digits.  That would
make it easier to write large pieces by defining small chuncs of music:

Part1Voice1 = \notes {...}
Part1Voice2 = \notes {...}
...

At least for allowing digits, nothing of the tests, examples and
documentation of LilyPond would be broken, since a quick

$ find . -type f | xargs grep -l '\\[[:alpha:]]\+[[:digit:]]'

only lists some non-ly files.

Allowing _ or - would certainly break existing LilyPond input (for
example, the \fermata_"Cadenza ad lib." in the Mozart example).

If there's no other reason for disallowing digits than to keep
parser/scanner, I could try to write a patch.

Ciao,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: compilation error

2004-03-10 Thread Matthias Kilian
On Sat, Mar 06, 2004 at 12:44:13AM +0100, Matthias Kilian wrote:
> introducing "exotic" dependencies like makeinfo CVS, there should be
> also workarounds that make LilyPond (and it's documenation) compile with
> standard versions (i.e. good-old makeinfo-4.5 or 4.6).

Please forget what I wrote. Using makeinfo-4.6 the compilation succeeds.

Ciao,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: compilation error

2004-03-09 Thread Matthias Kilian

Hi!

On Mon, Mar 01, 2004 at 06:36:46PM +0100, Jan Nieuwenhuizen wrote:
> > Even then -- I tried to compile the texinfo CVS, which relies on a
> > brand new automake version which
> 
> Point taken; you don't need texinfo CVS.

Using the current LilyPond CVS (seems to be an upcoming 2.1.29) and
makeinfo-4.5, I still get "Too many errors!" and a core dump :-(

On Wed, Mar 03, 2004 at 12:44:53AM +0100, Jan Nieuwenhuizen wrote:
[Discourage users from compiling LilyPond]
> You are right.  Maybe we are sending conflicting messages: do not
> compile Lily!  Help us (with the docs), send patches!
> 
> What to do?  Maybe we should just change the 'do not compile' attitude
> a bit, and have 'supported' development platforms with a detailed
> recipe to compile lily.  The contributers of binary releases should
> make sure that the recipe stays up to date.  Would this work?

Well, I've *no* distribution at all. Nevertheless, LilyPond builds
without problems (with the exception of the makeinfo problems).

Requirements are mentioned in INSTALL.texi (BTW: makeinfo CVS is missing),
so there's no reasaon to discourage people from compiling LilyPond at
all or to restrict them to use "certified" environments.

"Use the Source, Luke!"

That's what open source is about. LilyPond says "Better don't use the
Source, it may cause fear, fear causes anger, anger causes hate, and
hate leads you to he dark side of the power^WSource." :-)

IMO, whoever wants to contribute *should* be able to use (and build
from) the sources, and (s)he should be encouraged to do so. Thus, when
introducing "exotic" dependencies like makeinfo CVS, there should be
also workarounds that make LilyPond (and it's documenation) compile with
standard versions (i.e. good-old makeinfo-4.5 or 4.6).

Ciao,
Kili

ps: I'll try to make `make web' working with old `standard' makeinfo
(4.5) installations. Expect patches on sunday.

-- 
"How do I read this file?" -  "You uudecode it."  - "I I I decode it?"


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Re: How to debug/play with scheme code?

2004-03-01 Thread Matthias Kilian
On Mon, Mar 01, 2004 at 08:43:55PM +0100, Nicolas Sceaux wrote:
[interactive Scheme]
>  > try #(top-repl)
> 
> that's cute :-)

Indeed. Allthough it's a guile-feature, it should be mentioned somewhere
in the documentation.

I'll record all glitches/pitfalls/tricks while learning LilyPond
internals. This could be a base for starting a "LilyPond-Hacking-HOWTO".

Regards,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


How to debug/play with scheme code?

2004-02-29 Thread Matthias Kilian
Hi,

since I'd like to become a "brilliant LilyPond hacker", and I currently
want to do some more ore less evil scheme hacking, I wonder wether
there's an easy way to debug scheme code or to get something like an
interactive scheme interpreter with LilyPond's extensions allready loaded.
Starting with .ly files isn't very convenient.

Thanks in advance.

Regards,
Kili


___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel


Documentation patch (Vim mode)

2004-02-29 Thread Matthias Kilian
Hi,

the configuration instructions for the Vim mode contain a small error
(at least when using vim-6.2). See attached patch.

Regards,
Kili
diff -rNup ../lilypond-2.1.28/Documentation/topdocs/INSTALL.texi 
./Documentation/topdocs/INSTALL.texi
--- ../lilypond-2.1.28/Documentation/topdocs/INSTALL.texi   2004-01-21 
22:07:35.0 +0100
+++ ./Documentation/topdocs/INSTALL.texi2004-02-29 17:47:21.0 +0100
@@ -253,7 +253,7 @@ and appending the following to @file{~/.
endif
augroup filetypedetect
  au! BufRead,BufNewFile  *.ly  setfiletype lilypond
-   augroup
+   augroup END
 @end example
 @end quotation
 
___
Lilypond-devel mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/lilypond-devel