Building a release with LilyDev
Figuring out the build commands
- 14:42
- Investigating the correct incantations.
- 14:48
- Issued command to build native installer
time (bin/gub lilypond-installer 2>1 > /dev/null )
- 14:54
- Checking for presence of linux kernel headers
- 15:38
- No time to finish this today. Have to get on with prep for audit tomorrow.
More figuring out of the commands
- 00:14
- New docs are wip but see here for the code review edition: http://codereview.appspot.com/6199045/diff/1/Documentation/contributor/build-notes.itexi
- 00:20
- Found the URL for the regression tests tarball http://lilypond.org/download/binaries/test-output/lilypond-2.15.38-1.test-output.tar.bz2
Have those kernel archives come back on line?
- 12:50
- Checking Apple web site is live.
- 12:47
- Confirm that anl.gov is still bad.
- 13:15
- The above org-babel code isn't working. Going to install latest org-mode and try again.
- 14:17
- Still not working. I'll maybe post to the list for help.
Download regtest tarball and issue build command
- 14:18
- Started download
- 14:34
- Download completed successfully
Installing regtests into Lilydev
- 14:35
- Following these instructions from the Reitveld site.
- 14:40
- Installed openssh-server on lilydev.
- 14:43
- Started downloading regression test tarball to lilydev machine.
- 14:46
- Issued the command
cd /home/colin/gub time (make lilypond)
- 14:50
- Restarted the make within a screen session.
- 14:53
- Build failed on perl.
Sat afternoon session
- 15:03
- The build stopped due to a partial build. Deleted status file, reissued make lilypond command.
- 15:14
- Build barfed on tar.
- 15:18
- Deleted status file as directed and reissued make lilypond
- 15:20
- Build chugging on with tool builds for darwin.
- 15:32
- Building mingw::cross/gcc. All good so far.
- 15:42
- linux-86 cross tools building.
- 15:50
- Just realised I'm building branch master and I should be using release/unstable
- 15:51
- Interrupted build.
- 15:54
- Here is the complete command to build a lilypond release:
time ( rm -rf gub && git clone git://github.com/gperciva/gub.git && cd gub && make bootstrap && make LILYPOND_BRANCH=release/unstable lilypond)
- 15:56
- Decided not to build now as I'll be hogging the internet. Run it this evening.
Sat evening session
- 22:45
- Build barfed on downloading the Linux headers, as before.
- 22:50
- Fixed up gub/gub/specs/linux-headers.py
- 23:30
- Created a local git branch dev/linuxheaders and formed a patch against master
- 00:10
- Forked Graham Percival's gub repo
- 00:35
- Looks I need to give github my public key before I can push.
Created Github account
GUB build on lilydev Mon 21st May session
- 08:33
- Starting up lilydev VM
- 08:35
- Initiated a fresh GUB clone and build
- 08:46
- Build proceeding ok
- 09:12
- As expected build failed on linux header download. The time command reports 10m of total cpu time
- 09:14
- Edited gub/specs/linux-headers.py to change mirror from anl.giv to UK mirror service.
- 09:15
- Resumed build with the make bootstrap command.
- 09:16
- Build proceeding ok.
- 09:54
- Build still going well. Building darwin cross tool chain.
- 10:04
- Still building
- 11:34
- As expected, build halted due to missing regtests tarball. The time command reports 138m of total cpu time
- 14:18
- Downloaded regression test tarball as follows:
wget http://lilypond.org/download/binaries/test-output/lilypond-2.15.38-1.test-output.tar.bz2 mv lilypond-2.15.38-1.test-output.tar.bz2 gub/regtests touch gub/regtests/ignore
- 14:22
- Resumed build with the make lilypond command.
- 15:07
- Still building
- 17:04
- Still building cross toolchains
GUB build on lilydev Tue 22nd May session
- 09:05
- Resuming build. All the bootstrap is done so just re-issued the make lilypond command:
make LILYPOND_BRANCH=release/unstable lilypond
- 09:08
- Build failed. GUB complaining about a status file. Deleted it.
rm /home/colin/gub/target/linux-64/status/lilypond-2.15.39-d8dd7eeec9b0b30d5ce5dcc8fca5eb8472e4b0cc make LILYPOND_BRANCH=release/unstable lilypond
- 14:01
- Build failed while building dependencies of
darwin-86::lilypond due to a network connection
timing out. Simply re-issued the make command.
make LILYPOND_BRANCH=release/unstable lilypond
- 14:52
- Looks like the installers are built.
address@hidden ~$ address@hidden ~$ (ls -lh gub/uploads/ ; echo ; file gub/uploads/* ) total 274M -rw-r--r-- 1 colin colin 17M 2012-05-22 14:01 lilypond-2.15.39-1.darwin-ppc.tar.bz2 -rw-r--r-- 1 colin colin 18M 2012-05-22 14:01 lilypond-2.15.39-1.darwin-x86.tar.bz2 -rwxr-xr-x 1 colin colin 21M 2012-05-22 14:41 lilypond-2.15.39-1.freebsd-64.sh -rwxr-xr-x 1 colin colin 20M 2012-05-22 14:40 lilypond-2.15.39-1.freebsd-x86.sh -rwxr-xr-x 1 colin colin 21M 2012-05-22 14:39 lilypond-2.15.39-1.linux-64.sh -rwxr-xr-x 1 colin colin 21M 2012-05-22 14:39 lilypond-2.15.39-1.linux-ppc.sh -rwxr-xr-x 1 colin colin 21M 2012-05-22 14:00 lilypond-2.15.39-1.linux-x86.sh -rw-r--r-- 1 colin colin 25M 2012-05-22 14:38 lilypond-2.15.39-1.mingw.exe -rw-r--r-- 1 colin colin 98M 2012-05-22 14:52 lilypond-2.15.39-1.test-output.tar.bz2 -rw-r--r-- 1 colin colin 16M 2012-05-22 14:41 lilypond-2.15.39.tar.gz drwxr-xr-x 2 colin colin 4.0K 2012-05-22 14:54 signatures drwxr-xr-x 3 colin colin 4.0K 2012-05-22 14:54 webtest gub/uploads/lilypond-2.15.39-1.darwin-ppc.tar.bz2: bzip2 compressed data, block size = 900k gub/uploads/lilypond-2.15.39-1.darwin-x86.tar.bz2: bzip2 compressed data, block size = 900k gub/uploads/lilypond-2.15.39-1.freebsd-64.sh: POSIX shell script text executable gub/uploads/lilypond-2.15.39-1.freebsd-x86.sh: POSIX shell script text executable gub/uploads/lilypond-2.15.39-1.linux-64.sh: POSIX shell script text executable gub/uploads/lilypond-2.15.39-1.linux-ppc.sh: POSIX shell script text executable gub/uploads/lilypond-2.15.39-1.linux-x86.sh: POSIX shell script text executable gub/uploads/lilypond-2.15.39-1.mingw.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit gub/uploads/lilypond-2.15.39-1.test-output.tar.bz2: bzip2 compressed data, block size = 900k gub/uploads/lilypond-2.15.39.tar.gz: gzip compressed data, from Unix, last modified: Tue May 22 14:41:21 2012, max compression gub/uploads/signatures: directory gub/uploads/webtest: directory address@hidden ~$ address@hidden ~$
- 14:59
- Build seemed to error out after the test target.
- 17:00
- Seems to be a problem with untarring the netpbm distribution.
Set up ssh keys for GitHub
- 16:51
- Created ssh keypair and uploaded to GitHub
# All very standard ssh stuff. To generate the keys: ssh-keygen # To get the agent process running inside my bash session eval `ssh-agent -s` # To add the key to the agent I used ssh-add and enter the passphrase ssh-add # List the keys the agent knows about: ssh-add -L # Make the commit locally cd gub git add . git commit -m "Removed comment for github trial" git status # Now I can use git commands on the remote repo with automated # authentication. git pull git push origin master
- 15:45
- Modified my fork of GUB in local repo.
- 18:30
- Successfully pushed to my GUB fork on GitHub a couple of times
Doing some writing up
Switching GUB build git remote to my fork
The GUB build directory was created using Graham Percival's fork of GUB. I need to have the remote repo be my fork of GUB so that I can commit my modifications and send a pull request to Graham.
So I'm going to attempt to change my remote from Graham's fork to mine using git commands. Here goes.
- 11:47
- Getting started
- 11:50
- Switched remotes using this authority:
http://git-scm.com/book/en/Git-Basics-Working-with-Remotes
Here are the commands I used:
# Delete origin git remote rm origin # Only local branch listed git branch -a # Add the new remote git remote add origin address@hidden:colinghall/gub.git git config master.remote origin git config master.merge refs/heads/master # Now have local branch and the new remote git branch -a
- 12:03
- Using this authority on writing good commit messages: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
- 12:15
- Pushed changes up to colinghall/GUB
- 12:24
- Sent a pull request to Graham Percival.