X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fcontributor%2Fbuild-notes.itexi;h=b8dff79c1fae6f26dc8fff54e3da40e19946efe0;hb=d2c221f6d589ad75568cb6a9a9eb6ba67196af51;hp=7891063c202e5eaa50e6ca00bd577f6f32becfc7;hpb=9bef4c41f80988822469f80337c3c007e4adb4d1;p=lilypond.git diff --git a/Documentation/contributor/build-notes.itexi b/Documentation/contributor/build-notes.itexi index 7891063c20..b8dff79c1f 100644 --- a/Documentation/contributor/build-notes.itexi +++ b/Documentation/contributor/build-notes.itexi @@ -15,7 +15,6 @@ chapter.} * Doc build:: * Website build:: * Building an Ubuntu distro:: -* Building GUB:: @end menu @@ -199,9 +198,15 @@ which expands to the following files: One little feature to notice here - these are all absolute file locations - the line prior to this used relative locations. And -none of these files exist, either. (Further note - I'm assuming -all these lines of make I'm following are autogenerated, but -that'll be something else to discover.) +none of these files exist, either. + +(Further note - I'm assuming all these lines of make I'm following are +autogenerated, but that'll be something else to discover.) + +JM: @emph{``No, these lines are not useful in LilyPond (this is why +you think they are autogenerated), but they are part of StepMake, +which was meant to be a package to be installed as a build system over +autoconf/make in software project source trees.''} Next in @file{stepmake.make}: @@ -289,11 +294,11 @@ are: @example $(outdir)/%.ly: %.lym4 - $(M4) $< | sed "s/\`/,/g" > $@ + $(M4) $< | sed "s/\`/,/g" > $@@ $(outdir)/%: %.in - rm -f $@ - cat $< | sed $(sed-atfiles) | sed $(sed-atvariables) > $@ + rm -f $@@ + cat $< | sed $(sed-atfiles) | sed $(sed-atvariables) > $@@ @end example I believe the first rule is for *.ly files, and has a prerequisite @@ -445,10 +450,10 @@ From git grep: stepmake/stepmake/generic-vars.make has this: @smallexample -LOOP=+$(foreach i, $(SUBDIRS), $(MAKE) PACKAGE=$(PACKAGE) package=$(package) -C $(i) $@ &&) true +LOOP=+$(foreach i, $(SUBDIRS), $(MAKE) PACKAGE=$(PACKAGE) package=$(package) -C $(i) $@@ &&) true @end smallexample -$@ is the name of the target - WWW-1 in this case. +$@@ is the name of the target - WWW-1 in this case. In GNUmakefile.in we find: @@ -557,13 +562,16 @@ they're up to date. (From the make manual: -To this end, after reading in all makefiles, make will consider each as a goal target and -attempt to update it. If a makefile has a rule which says how to update it (found either -in that very makefile or in another one) or if an implicit rule applies to it (see Chapter 10 -[Using Implicit Rules], page 103), it will be updated if necessary. After all makefiles have -been checked, if any have actually been changed, make starts with a clean slate and reads -all the makefiles over again. (It will also attempt to update each of them over again, but -normally this will not change them again, since they are already up to date.) +To this end, after reading in all makefiles, make will consider each +as a goal target and attempt to update it. If a makefile has a rule +which says how to update it (found either in that very makefile or in +another one) or if an implicit rule applies to it (see Chapter 10 +[Using Implicit Rules], page 103), it will be updated if +necessary. After all makefiles have been checked, if any have actually +been changed, make starts with a clean slate and reads all the +makefiles over again. (It will also attempt to update each of them +over again, but normally this will not change them again, since they +are already up to date.) So my assumption seems correct) @@ -1502,68 +1510,3 @@ Test iso by installing in VM and repeating steps above for getting source files and building lp and docs. @end enumerate - -@node Building GUB -@section Building GUB - -GUB - the Grand Unified Builder - is used to build the release -versions of LilyPond. For background information, see -@ref{Grand Unified Builder (GUB)}. The simplest way to set up a -GUB build environment is to use a virtual machine with LilyDev -(@ref{LilyDev}). Follow the instructions on that page to set this -up. Make sure that your virtual machine has enough disk space - -a GUB installation takes over 30 GBytes of disk space, and if you -allocate too little, it will fail during the setting up stage and -you will have to start again. 64 GBytes should be sufficient. - -While GUB is being built, any interruptions are likely to make it -almost impossible to restart. If at all possible, leave the build -to continue uniterrupted. - -Download GUB and start the set up: - -@example -git clone git://github.com/gperciva/gub/gub.git -cd gub -make bootstrap -@end example - -This downloads and installs a number of packages. You may find -some fail during download and you will need to download them -manually. For example, the perl archive. If this happens, -download it from -@uref{http://www.cpan.org/src/5.0/perl-5.10.0.tar.gz}, saving the -archive to @file{gub/downloads/perl/}. Continue the set up with: - -@example -make bootstrap -@end example - -Once this has completed successfully, you can build the LilyPond -release package. However, this uses an archived version of the -regression tests, so it is better to download this first. -Download the test output from lilypond.org: - -@smallexample -@uref{http://lilypond.org/download/binaries/test-output/lilypond-2.15.33-1.test-output.tar.bz2} -@end smallexample - -Copy the tarball into @file{gub/regtests/}, and tell the build -system that you have done this: - -@example -touch regtests/ignore -@end example - -Now start the GUB build: - -@example -make lilypond -@end example - -That's it. This will build LilyPond from current master. To build -the current unstable release, run: - -@example -make LILYPOND_BRANCH=release/unstable lilypond -@end example