hi Hans:
If you don't mind, maybe we could do these email discussions on pd- dev, so that it's recorded and others can chime in and/or learn from it. I am also still up for doing IRC meetings for things too.
sure, so i cc this reply to the list.
On Dec 7, 2007, at 1:15 PM, chun@goto10.org wrote:
hi Hans:
hope you are well.
i finally got time to play with the auto build system, its really impressive:) good stuff!
Glad you think it is useful. It works, but it's pretty hacked together. So if you want to make improvements, I am all for it, and I'll help where I can.
just have a bug and few questions for now.
my starting point was a empty directory that contains cvs checkouts of:
abstractions doc extensions externals packages pd scripts
You'll need to check out Gem from the pd-gem CVS currently. For the next pd-extended release, I am planning on importing a stable version of the Gem sources into branch-v0-40-extended in pure-data CVS, then building it from there.
ok i see.
then i ran pd-puredyne-auto-builder.sh.
first question: i had to checkout Gem and GemLibs by hand for the script to build Gem, is there another script that can take care of fetching this? is this meant to be taken cared by the rsync?
For the autobuilds, it's handled by rsync. Looking at the rsync source files, they are there:
pd@debian-stable-i386:pd-puredyne > pwd /home/pd/rsync/pd-puredyne pd@debian-stable-i386:pd-puredyne > ls -l total 36 drwxr-xr-x 13 pd pd 4096 Jun 7 2007 Gem/ drwxr-xr-x 7 pd pd 4096 Dec 7 10:05 GemLibs/ drwxr-xr-x 24 pd pd 4096 Dec 7 10:04 abstractions/ drwxr-xr-x 8 pd pd 4096 May 16 2007 doc/ drwxr-xr-x 5 pd pd 4096 Sep 25 2006 extensions/ drwxr-xr-x 83 pd pd 4096 Dec 7 10:05 externals/ drwxr-xr-x 9 pd pd 4096 Dec 7 10:05 packages/ drwxr-xr-x 12 pd pd 4096 Dec 7 10:05 pd/ drwxr-xr-x 6 pd pd 4096 Dec 7 10:05 scripts/
They are also being rsynced to the Debian/testing build machine:
pd@debian-testing-i386:pd > cd /home/pd/auto-build/pd-puredyne/ pd@debian-testing-i386:pd-puredyne > ls -l total 36 drwxr-xr-x 13 pd pd 4096 Jun 7 2007 Gem/ drwxr-xr-x 7 pd pd 4096 Dec 7 01:37 GemLibs/ drwxr-xr-x 24 pd pd 4096 Dec 7 01:36 abstractions/ drwxr-xr-x 8 pd pd 4096 May 16 2007 doc/ drwxr-xr-x 5 pd pd 4096 Sep 25 2006 extensions/ drwxr-xr-x 83 pd pd 4096 Dec 7 01:37 externals/ drwxr-xr-x 9 pd pd 4096 Dec 7 01:37 packages/ drwxr-xr-x 12 pd pd 4096 Dec 7 01:37 pd/ drwxr-xr-x 6 pd pd 4096 Dec 7 01:37 scripts/
There are two scripts that handle this if you want to do it manually on your own machine:
pure-data/scripts/checkout-developer-layout.sh pure-data/scripts/update-developer-layout.sh
yes, i took a brief look at the above scripts, i will have another looks again.
The last one is actually used to update the rsync source files every night on the main server (debian-stable-i386/128.238.56.50).
then, everything works fine. however, pidip failed to build (because of the dependency), but the script carries on, which leads to an error at the end that complains that there is no pidip/*.pd_linux. which i guess the auto build script should have existed with error when pidip failed to build, instead of right at the end when installing.
My guess is that pidip is failing because pdp maybe failed. Otherwise, maybe there is a pidip dependency missing on the machine you are building on. Everything is building on debian-testing-i386, so all the needed deps are in Debian.
yes, it was a dependency problem. but i was reporting that the built script should have exited (at the ./configure stage) with an error instead of carried on and exited at the install stage.
cheers
chun
http://autobuild.puredata.info/auto-build/2007-12-07/logs/ 2007-12-07_06.27.48_linux_debian-testing-i386_pd-puredyne_run- automated-builder.txt
This might be helpful for that:
http://puredata.info/docs/developer/Debian
second question: how do i pass custom ./configure options with the build system? for example, when building Gem, the ./configure output looks like its just running plain "./configure". what if i like to add additional options?
For Gem, the gem targets in packages/Makefile have the ./configure flags, there are quite a few. For pdp and pidip, the ./configure flags are in externals/Makefile in the pdp and pidip targets.
.hc
"It is convenient to imagine a power beyond us because that means we don't have to examine our own lives.", from "The Idols of Environmentalism", by Curtis White