https://svn.lrde.epita.fr/svn/lrde-tools/trunk/build-farm
Index: ChangeLog
from Roland Levillain <roland(a)lrde.epita.fr>
Factor PATH population.
* buildfarm_worker/build_test.fns (host_type): New variable.
(path_prepend): New function.
* buildfarm_worker/antalya.fns, buildfarm_worker/caracas.fns,
* buildfarm_worker/marvejols.fns, buildfarm_worker/istanbul.fns,
* buildfarm_worker/tanis.fns: Use it to alter PATH.
antalya.fns | 9 ++++-----
build_test.fns | 27 +++++++++++++++++++++++++++
caracas.fns | 8 ++++----
istanbul.fns | 7 ++++---
marvejols.fns | 8 ++++----
tanis.fns | 7 ++++---
6 files changed, 47 insertions(+), 19 deletions(-)
Index: buildfarm_worker/caracas.fns
--- buildfarm_worker/caracas.fns (revision 394)
+++ buildfarm_worker/caracas.fns (working copy)
@@ -1,10 +1,10 @@
# caracas. -*- shell-script -*-
-
# Used to continuously build Tiger and Vaucanson.
-# Add some programs from /lrde/bin to the PATH.
-export PATH="/lrde/dev/linux-x86/sarge/autoconf-2.60/bin:$PATH"
-export PATH="/lrde/dev/linux-x86/sarge/bison-2.3/bin:$PATH"
+host_type=linux-x86/sarge
+
+# Add some programs from /lrde/dev to the PATH.
+path_prepend autoconf-2.60 bison-2.3
# The ccache dir is located in the /work file system. As ~/.zshenv is
# not sourced by the build script, this environment variable is
Index: buildfarm_worker/build_test.fns
--- buildfarm_worker/build_test.fns (revision 394)
+++ buildfarm_worker/build_test.fns (working copy)
@@ -10,6 +10,33 @@
# default maximum runtime for any command, about 6H
MAXTIME=21600
+# Host type. Empty by default.
+# FIXME: This value should be guessed, using system.fns for example.
+host_type=
+
+
+# PATH_PREPEND PACKAGE1 ...
+# -------------------------
+# Add one package or more to the PATH. The added directory is derived
+# from the package name, and has the form
+#
+# /lrde/dev/$host_type/$package/bin
+#
+# where $host_type is a variable set from the host configuration file
+# (e.g., antalya.fns).
+
+path_prepend() {
+ if test -z "$host_type"; then
+ echo "\$host_type no set."
+ exit 1
+ fi
+
+ for package; do
+ export PATH="/lrde/dev/$host_type/$package/bin:$PATH"
+ done
+}
+
+
#############################
# build a signature of a tree, used to see if we
# need to rebuild
Index: buildfarm_worker/marvejols.fns
--- buildfarm_worker/marvejols.fns (revision 394)
+++ buildfarm_worker/marvejols.fns (working copy)
@@ -1,11 +1,11 @@
# marvejols. -*- shell-script -*-
+host_type=linux-x86/sarge
+
# Nix settings.
. /nix/etc/profile.d/nix.sh
-
-# Add some programs from /lrde/bin to the PATH.
-export PATH="/lrde/dev/linux-x86/sarge/autoconf-2.60/bin:$PATH"
-export PATH="/lrde/dev/linux-x86/sarge/bison-2.3/bin:$PATH"
+# Add some programs from /lrde/dev to the PATH.
+path_prepend autoconf-2.60 bison-2.3
# The ccache dir is located in the /work file system on. As
# ~/.zshenv is not sourced by the build script, this environment
Index: buildfarm_worker/tanis.fns
--- buildfarm_worker/tanis.fns (revision 394)
+++ buildfarm_worker/tanis.fns (working copy)
@@ -1,9 +1,10 @@
# tanis. -*- shell-script -*-
-
# Used to build Vaucanson.
-# Add some programs from /lrde/bin to the PATH.
-export PATH="/lrde/dev/linux-x86/sarge/bison-2.3/bin:$PATH"
+host_type=linux-x86/sarge
+
+# Add some programs from /lrde/dev to the PATH.
+path_prepend bison-2.3
# The ccache dir is located in the /work file system. As ~/.zshenv is
# not sourced by the build script, this environment variable is
Index: buildfarm_worker/istanbul.fns
--- buildfarm_worker/istanbul.fns (revision 394)
+++ buildfarm_worker/istanbul.fns (working copy)
@@ -1,8 +1,9 @@
# istanbul. -*- shell-script -*-
-# Add some programs from /lrde/bin to the PATH.
-export PATH="/lrde/dev/linux-sparc64/sarge/autoconf-2.60/bin:$PATH"
-export PATH="/lrde/dev/linux-sparc64/sarge/bison-2.3/bin:$PATH"
+host_type=linux-sparc64
+
+# Add some programs from /lrde/dev to the PATH.
+path_prepend autoconf-2.60 bison-2.3
export CCACHE_DIR="/work/build/var/ccache"
Index: buildfarm_worker/antalya.fns
--- buildfarm_worker/antalya.fns (revision 394)
+++ buildfarm_worker/antalya.fns (working copy)
@@ -1,15 +1,14 @@
# antalya. -*- shell-script -*-
+host_type=darwin-powerpc/panther
+
# Nix settings.
. /nix/etc/profile.d/nix.sh
# Fink and local binaries.
export PATH="/work/build/bin:/sw/bin:$PATH"
-# Add some programs from /lrde/bin to the PATH.
-export PATH="/lrde/dev/darwin-powerpc/panther/autoconf-2.60/bin:$PATH"
-export PATH="/lrde/dev/darwin-powerpc/panther/automake-1.9.6/bin:$PATH"
-export PATH="/lrde/dev/darwin-powerpc/panther/bison-2.3/bin:$PATH"
-export PATH="/lrde/dev/darwin-powerpc/panther/swig-1.3.29/bin:$PATH"
+# Add some programs from /lrde/dev to the PATH.
+path_prepend autoconf-2.60 automake-1.9.6 bison-2.3 swig-1.3.29
# Set up Libtool (from Fink).
export ACLOCAL="aclocal -I /sw/share/aclocal"