Re: GUB buiding from a local source tree?

2010-01-27 Thread Jan Nieuwenhuizen
Op donderdag 14-01-2010 om 09:49 uur [tijdzone -0500], schreef Boris
Shingarov:

 But right now, we are not even there, as even simply building the 
 current official head from the main lilypond repository, does not work. 
   It hangs when trying to download from the standard url:

Why do you think that?

 $ make -f lilypond.make lilypond-installers
 
 
 python bin/gub --platform=linux-64 
 'git://git.sv.gnu.org/lilypond.git?branch=master' 
 mingw::'git://git.sv.gnu.org/lilypond.git?branch=master'
 
 calculating dependencies
 
 cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

Yes, these are slightly annoying, possibly we should remove these
warnings.  The LilyPond source tree hasn't been cloned, so on
initial run, you get this.

 ^C

Hmm, impatient, are we? ;-)

It's interesting how you quote this message, but it seems that
you nor anyone else read it?  Look at the command that you assume
to be hanging:

 Tail of log/gub.log 

  invoking cd .  git clone --depth 10 --bare 
 git://git.sv.gnu.org/lilypond.git 
 /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

you really should give this some time; if it really hangs
you'll have to debug that yourself, ie firewall, http_proxy.

HTH

Greetings,
Jan.

-- 
Jan Nieuwenhuizen jann...@gnu.org | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl| http://lilypond.org



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


Re: GUB buiding from a local source tree?

2010-01-20 Thread Boris Shingarov

Quoting Graham Percival gra...@percival-music.ca:


I'm completely serious.  My GUB tree is *filled* with ugly hacks like
this.  It would be nice if they weren't needed, but it'll probably
take 20-50 more hours of work until this is the case. 


Oh, I completely understand this.  And this is the exact reason why I 
am asking questions, because when the code is this rough, there are 
things that are better to just ask, rather than to try to figure out 
why -- because we are not dealing with something finished but a 
thought-in-progress. 


If you're frustrated already, then I honestly think you
should give up now, because it will only get worse from now on


I completely realize what kind of complexity we are talking about.  And 
no, I am not at all frustrated.  Not from a technical viewpoint anyway. 
 But for me the whole thing about GUB is driven by the organizational 
side: as a developer, I am completely happy with the Linux development 
platform, and am much more interested in furthering Lilypond rather 
than trying to deploy it on a platform I don't even use.  But then 
there is the end-users who want to see it on Windows, but then again 
they want to see progress in Lilypond development, and the prospect of 
losing weeks to porting to Windows, makes them want to reconsider their 
platform preferences.  We'll see.  As I already said, at this point 
it's about organizational questions, not technical ones. 


Boris Shingarov
Work on Lilypond under grant from Sonus Paradisi / Jiri Zurek (Prague),
Czech Science Foundation, Project No. 401/09/0419




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


Re: GUB buiding from a local source tree?

2010-01-20 Thread Graham Percival
On Wed, Jan 20, 2010 at 11:01:24AM -0500, Boris Shingarov wrote:
 But for me the whole thing about GUB is driven by the organizational  
 side: as a developer, I am completely happy with the Linux development  
 platform, and am much more interested in furthering Lilypond rather than 
 trying to deploy it on a platform I don't even use.  But then there is 
 the end-users who want to see it on Windows, but then again they want to 
 see progress in Lilypond development, and the prospect of losing weeks to 
 porting to Windows, makes them want to reconsider their platform 
 preferences.

2.13 releases happen approximately every two weeks.  If there's
more development, I'm happy to reduce that to every week.  If
there's a *lot* of development, and no (or few) broken regtests, I
wouldn't mind doing it twice a week.

Granted, this is all based on patches accepted to the main
repository, and such patches need to go through extra scrutiny and
discussion.  If you're doing a lot of rough hacking, without a lot
of thought about code style or unintended side effects, then
releases from master won't help you.  But if you do careful,
quality work, then the extra scrutiny from developers won't be a
big hurdle, and your patches will be accepted into master.  In
that case, you wouldn't need to fuss with GUB at all; I could make
the releases as appropriate, and your collaborators / end-users
could just use the regular 2.13.x mingw versions.

Cheers,
- Graham


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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Graham Percival
On Wed, Jan 13, 2010 at 9:36 PM, Boris Shingarov b...@shingarov.com wrote:
 Oh, and make sure you're using the latest GUB; IIRC there are 2 or
 3 different git repositories floating around.  You want the one at
 github.

 git://github.com/janneke/gub.git -- this one, right?

Yes.

 I believe you'll want something like
 make -f lilypond.make LILYPOND_REPO=/location/of/your/tree lilypond

 Looks like LILYPOND_REPO was removed from recent revisions?

Didn't you read the part where I said you had to read the source, and
that there was probably something wrong in the above line?

Line 17 of lilypond.make is:
LILYPOND_REPO_URL=git://git.sv.gnu.org/lilypond.git

That's not hard to find, and I think it's pretty clear that this is
what I meant.  Now, I don't guarantee that it'll work, but that's a
separate issue.

- Graham


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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Boris Shingarov

Quoting Graham Percival gra...@percival-music.ca:


Didn't you read the part where I said you had to read the source, and
that there was probably something wrong in the above line?

Line 17 of lilypond.make is:
LILYPOND_REPO_URL=git://git.sv.gnu.org/lilypond.git

That's not hard to find, and I think it's pretty clear that this is
what I meant. 


That's the very first thing I found, but that's NOT what you were 
talking about in the first e-mail. 
It is LILYPOND_REPO, which is a separate variable. 
You see, I read both the head revision and 2.11.64-1, and they both 
contain LILYPOND_REPO_URL.  But 2.11.64-1 contains LILYPOND_REPO as 
well as LILYPOND_REPO_URL, and it is LILYPOND_REPO that got removed. 

Now, my real question is, does LILYPOND_REPO_URL help, i.e. did it 
absorb the functionality which used to be achieved via LILYPOND_REPO.  
My understanding is that LILYPOND_REPO_URL is passed as an argument to 
git, and then the easiest way is to create a local git server and 
commit the changes to it. 

But right now, we are not even there, as even simply building the 
current official head from the main lilypond repository, does not work. 
 It hangs when trying to download from the standard url:


$ make -f lilypond.make lilypond-installers


python bin/gub --platform=linux-64 
'git://git.sv.gnu.org/lilypond.git?branch=master' 
mingw::'git://git.sv.gnu.org/lilypond.git?branch=master'


calculating dependencies

cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

read_pipe failed: cd 
/home/boris/work/lilypond/gub/gub/downloads/lilypond/git  git show 
git.sv.gnu.org/lilypond.git/master:VERSION


cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

read_pipe failed: cd 
/home/boris/work/lilypond/gub/gub/downloads/lilypond/git  git show 
git.sv.gnu.org/lilypond.git/master:VERSION


cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

read_pipe failed: cd 
/home/boris/work/lilypond/gub/gub/downloads/lilypond/git  git show 
git.sv.gnu.org/lilypond.git/master:VERSION



^C


Tail of log/gub.log 

Running read_pipe

  ('cd /home/boris/work/lilypond/gub/gub/downloads/lilypond/git  
git show git.sv.gnu.org/lilypond.git/master:VERSION',)


  {'ignore_errors': False, 'env': {'PATH': 
'/home/boris/work/lilypond/gub/gub/target/tools/root/usr/bin:/home/boris/work/lilypond/gub/gub/target/tools/root/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/cuda/bin:/usr/jdk1.6.0_10/bin:/usr/local/cuda/bin:/usr/jdk1.6.0_10/bin', 'LD_LIBRARY_PATH': 
'/home/boris/work/lilypond/gub/gub/target/tools/root/usr/lib'}}


invoking cd .  git clone --depth 10 --bare 
git://git.sv.gnu.org/lilypond.git 
/home/boris/work/lilypond/gub/gub/downloads/lilypond/git


 Tail of log/gub.log



Traceback (most recent call last):

  File bin/gub, line 233, in exceptional_build

build (settings, options, files)

  File bin/gub, line 199, in build

specs[name].download ()

  File bin/../gub/build.py, line 242, in download

logging.default_logger.write_log (self.stage_message ('download'),

  File bin/../gub/build.py, line 108, in stage_message

env=locals ())

  File bin/../gub/context.py, line 179, in expand

d = self.get_substitution_dict (env)

  File bin/../gub/target.py, line 182, in get_substitution_dict

d = build.AutoBuild.get_substitution_dict (self, dict).copy ()

  File bin/../gub/build.py, line 232, in get_substitution_dict

d = context.RunnableContext.get_substitution_dict (self, dict).copy ()

  File bin/../gub/context.py, line 146, in get_substitution_dict

self._substitution_dict = self.get_constant_substitution_dict ()

  File bin/../gub/context.py, line 125, in get_constant_substitution_dict

val = method ()

  File bin/../gub/build.py, line 260, in source_checksum

return self.source.checksum ()

  File bin/../gub/repository.py, line 657, in checksum

self.download ()

  File bin/../gub/repository.py, line 639, in download

self.git ('clone --depth 10 --bare %(source)s %(dir)s' % locals 
(), dir='.')


  File bin/../gub/repository.py, line 605, in git

ignore_errors=ignore_errors, env=self.get_env ())

  File bin/../gub/repository.py, line 213, in logged

return loggedos_func (self.logger, *args, **kwargs)

  File bin/../gub/loggedos.py, line 80, in system

line = proc.stdout.readline ()

KeyboardInterrupt

make: *** [packages] Error 1






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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Graham Percival
On Thu, Jan 14, 2010 at 2:49 PM, Boris Shingarov b...@shingarov.com wrote:
 That's the very first thing I found, but that's NOT what you were talking
 about in the first e-mail. It is LILYPOND_REPO, which is a separate
 variable.

And I said I was guessing.

 You see, I read both the head revision and 2.11.64-1, and they
 both contain LILYPOND_REPO_URL.  But 2.11.64-1 contains LILYPOND_REPO as
 well as LILYPOND_REPO_URL, and it is LILYPOND_REPO that got removed.

Ok.  No clue why.  Take a look at the commit messages; they might
suggest something.  Or they might not.  *shrug*

 Now, my real question is, does LILYPOND_REPO_URL help, i.e. did it absorb
 the functionality which used to be achieved via LILYPOND_REPO.

No clue.  Try reading the source, try running it a few times, try
adding extra print commands to the python, try running it again.

I'm not trying to be unhelpful here.  The fact is that GUB is
extremely complicated (almost 20,000 lines of python!), and not really
understood by most people.

A few lilypond developers have tried running GUB, and they all failed.
 I'm the only lilypond developer other than Han-Wen and Jan that's
gotten this to work, and I have spent literally over 100 hours in the
past few months on this task.

 But right now, we are not even there, as even simply building the current
 official head from the main lilypond repository, does not work.

Ok.  Then let's stop thinking about changing the repo, and get this to work.

  It hangs
 when trying to download from the standard url:

 $ make -f lilypond.make lilypond-installers

Try doing
  make lilypond
first.  Yes, lilypond-installers should probably depend on building
lilypond, but I'm not at all certain that it does,.

 cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git

Ok.  If make lilypond doesn't work, then try creating this directory manually.

I'm completely serious.  My GUB tree is *filled* with ugly hacks like
this.  It would be nice if they weren't needed, but it'll probably
take 20-50 more hours of work until this is the case.


As I said earlier, GUB is extremely complicated and not for the faint
of heart.  If you're frustrated already, then I honestly think you
should give up now, because it will only get worse from now on.  If
you feel like cursing me and Jan for not fixing obvious problems, then
I also think it would be best if you gave up now, because it will only
get worse from now on.  I wish I could be more encouraging, but I
can't.  I can't even promise that I'll respond promptly to other
problems you have, because there's a lot of jobs I need to do, and
this isn't the most critical.

On the other hand, if you keep careful notes of problems and how to
solve them, and ideally also create patches to fix them, then it'll
help the *next* person who tries to use GUB.

Good luck,
- Graham


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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Mats Bengtsson
By the way, do you have a good reason to build using GUB anyway? If you 
just want to build and install LilyPond on your own machine, it's by far 
much easier to just build LilyPond directly.


I did actually manage to use GUB some year ago, when I wanted to try 
some patches on the Windows installer, but there have been probably been 
tons of changes to GUB since then.


 /Mats

Graham Percival wrote:

On Thu, Jan 14, 2010 at 2:49 PM, Boris Shingarov b...@shingarov.com wrote:
  

That's the very first thing I found, but that's NOT what you were talking
about in the first e-mail. It is LILYPOND_REPO, which is a separate
variable.



And I said I was guessing.

  

You see, I read both the head revision and 2.11.64-1, and they
both contain LILYPOND_REPO_URL.  But 2.11.64-1 contains LILYPOND_REPO as
well as LILYPOND_REPO_URL, and it is LILYPOND_REPO that got removed.



Ok.  No clue why.  Take a look at the commit messages; they might
suggest something.  Or they might not.  *shrug*

  

Now, my real question is, does LILYPOND_REPO_URL help, i.e. did it absorb
the functionality which used to be achieved via LILYPOND_REPO.



No clue.  Try reading the source, try running it a few times, try
adding extra print commands to the python, try running it again.

I'm not trying to be unhelpful here.  The fact is that GUB is
extremely complicated (almost 20,000 lines of python!), and not really
understood by most people.

A few lilypond developers have tried running GUB, and they all failed.
 I'm the only lilypond developer other than Han-Wen and Jan that's
gotten this to work, and I have spent literally over 100 hours in the
past few months on this task.

  

But right now, we are not even there, as even simply building the current
official head from the main lilypond repository, does not work.



Ok.  Then let's stop thinking about changing the repo, and get this to work.

  

 It hangs
when trying to download from the standard url:

$ make -f lilypond.make lilypond-installers



Try doing
  make lilypond
first.  Yes, lilypond-installers should probably depend on building
lilypond, but I'm not at all certain that it does,.

  

cd: 1: can't cd to /home/boris/work/lilypond/gub/gub/downloads/lilypond/git



Ok.  If make lilypond doesn't work, then try creating this directory manually.

I'm completely serious.  My GUB tree is *filled* with ugly hacks like
this.  It would be nice if they weren't needed, but it'll probably
take 20-50 more hours of work until this is the case.


As I said earlier, GUB is extremely complicated and not for the faint
of heart.  If you're frustrated already, then I honestly think you
should give up now, because it will only get worse from now on.  If
you feel like cursing me and Jan for not fixing obvious problems, then
I also think it would be best if you gave up now, because it will only
get worse from now on.  I wish I could be more encouraging, but I
can't.  I can't even promise that I'll respond promptly to other
problems you have, because there's a lot of jobs I need to do, and
this isn't the most critical.

On the other hand, if you keep careful notes of problems and how to
solve them, and ideally also create patches to fix them, then it'll
help the *next* person who tries to use GUB.

Good luck,
- Graham


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


--
=
Mats Bengtsson
Signal Processing
School of Electrical Engineering
Royal Institute of Technology (KTH)
SE-100 44  STOCKHOLM
Sweden
Phone: (+46) 8 790 8463 
   Fax:   (+46) 8 790 7260
Email: mats.bengts...@ee.kth.se
WWW: http://www.s3.kth.se/~mabe
=



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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Boris Shingarov

By the way, do you have a good reason to build using GUB anyway?


Because I read on the maillist that it was not possible to do a native 
build of lilypond for win32. 




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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Graham Percival
On Thu, Jan 14, 2010 at 3:56 PM, Boris Shingarov b...@shingarov.com wrote:
 By the way, do you have a good reason to build using GUB anyway?

 Because I read on the maillist that it was not possible to do a native build
 of lilypond for win32.

Umm.  It would be *way*, ***way*** easier to download lilybuntu and do
a normal compile in there.  If that's not possible for whatever
reason, then I would try it in cygwin next.  You'll probably need to
install a bunch of dependencies inside cygwin (manually compiling from
source), but that's still easier.

I really don't think you want to mess with GUB.

Cheers,
- Graham


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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Boris Shingarov

Umm.  It would be *way*, ***way*** easier to download lilybuntu and do
a normal compile in there


Then I probably had misunderstood the purpose of Lilybuntu -- I thought 
this was for people who did not have a real linux setup for doing 
lilypond development -- like, having all the prerequisites in place 
etc.  For *development*, I am completely fine and happy.  It's that I 
am now happy with the development results and need to deploy, and the 
ultimate users do not use linux.  How does lilybuntu produce the win32 
binary anyway?  wouldn't it need to do the exact same crosscompile as 
what would happen in a physical ubuntu box?



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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Graham Percival
On Thu, Jan 14, 2010 at 4:17 PM, Boris Shingarov b...@shingarov.com wrote:
 Umm.  It would be *way*, ***way*** easier to download lilybuntu and do
 a normal compile in there

 Then I probably had misunderstood the purpose of Lilybuntu -- I thought this
 was for people who did not have a real linux setup for doing lilypond
 development -- like, having all the prerequisites in place etc.  For
 *development*, I am completely fine and happy.  It's that I am now happy
 with the development results and need to deploy, and the ultimate users do
 not use linux.  How does lilybuntu produce the win32 binary anyway?
  wouldn't it need to do the exact same crosscompile as what would happen in
 a physical ubuntu box?

I see.

Well, if you are determined to build executables for win32, then GUB
is the only way.  I welcome more help with it, but my warnings still
stand.  My initial guess is that it will take 10 hours to build a
win32 installer (called mingw in gub) using the standard method.  To
build from your own git tree, I estimate another 5 hours after the
standard installer is working.

The next step is to try make lilypond and see if/when it breaks.

Good luck!
- Graham


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


Re: GUB buiding from a local source tree?

2010-01-14 Thread Graham Percival
A few more thoughts:
- you can build just the mingw installer by doing
bin/gub mingw::lilypond-installer

- you can also give it a different git repo, and presumably a file
  location(?), on the command-line, but I can't remember the
  syntax.

- the release work chapter of the CG in git (*NOT* online) has
  some more hints about using GUB.  IIRC it even has the
  different-git-url thingie.

- that said, the bin/gub lilypond-installer  command will
  currently *always* use the master branch from the default
  lilypond repo.  I've sent a patch to Jan that fixes it, but
  I don't know when or if it'll be accepted.  I think I sent
  it 1-3 days ago, and it was CC'd to -devel, so if you look at
  my emails during that period you should be able to find it
  and add it to your local gub git repo.

Cheers,
- Graham


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


GUB buiding from a local source tree?

2010-01-13 Thread Boris Shingarov

Hi,

How do I tell GUB to build Lilypond from a modified source tree which I 
have locally, instead of getting it from git?  In general, where is the 
best place to start reading more on GUB, the info on the GUB page is 
very sketchy, and GUB-related messages on lilypond-devel seem far apart 
and browsing the list archive for a while, did not get me very far. 
My immediate need is to test out my patches on the mingw platform. 



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


Re: GUB buiding from a local source tree?

2010-01-13 Thread Graham Percival
On Wed, Jan 13, 2010 at 02:51:47PM -0500, Boris Shingarov wrote:
 How do I tell GUB to build Lilypond from a modified source tree which I  
 have locally, instead of getting it from git?

Wow, you're brave!  Look at lilypond.make; I believe you'll want
something like
make -f lilypond.make LILYPOND_REPO=/location/of/your/tree lilypond

but I'm almost positive the command is slightly different.

  In general, where is the  
 best place to start reading more on GUB,

The source code.  Sorry, but that's it.  Well, there's the README
file in the gub dir, but other than that, read the source.

The most important makefiles are lilypond.make and gub.make.
These tend to set up some variables, then call
  bin/gub ...
to do stuff.  bin/gub is a python program.  Main python stuff is
in gub/*.py.  Individual programs are in gub/specs/*.py


Oh, and make sure you're using the latest GUB; IIRC there are 2 or
3 different git repositories floating around.  You want the one at
github.

Good luck!
- Graham


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


Re: GUB buiding from a local source tree?

2010-01-13 Thread Boris Shingarov

Oh, and make sure you're using the latest GUB; IIRC there are 2 or
3 different git repositories floating around.  You want the one at
github. 


git://github.com/janneke/gub.git -- this one, right?


I believe you'll want something like
make -f lilypond.make LILYPOND_REPO=/location/of/your/tree lilypond


Looks like LILYPOND_REPO was removed from recent revisions?  I can see 
it being in lilypond.make as of 2.11.64-1:

http://github.com/janneke/gub/blob/build/lilypond-gub/2.11.64-1/lilypond.make

but simple 'git clone git://github.com/janneke/gub.git' ends up with a 
revision not having it. 




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