~ salmonella-environment-setup (master) b3b0200ed98e3d8bc9b40559bbce9230a1457c36


commit b3b0200ed98e3d8bc9b40559bbce9230a1457c36
Author:     Mario Domenech Goulart <mario@parenteses.org>
AuthorDate: Sat Dec 23 15:32:09 2017 +0100
Commit:     Mario Domenech Goulart <mario@parenteses.org>
CommitDate: Sun Dec 24 12:48:12 2017 +0100

    salmonella-linux-x86-64: adjust configs for the chicken-5 -> master move
    
    For CHICKEN-5, use eggs from the chicken-5-eggs repo.
    
    Also some cleanup & reorganization:
    
    - Don't add chicken-related stuff to PATH: salmonella-run-publish
      should know where to get things from.
    
    - Remove non-argvector-related code, as everything we use now is
      argvector-based.
    
    - Remove stability.conf
    
    - Add chicken-4-common.scm with common stuff for CHICKEN-4 only
    
    - Add chicken-5-common.scm with common stuff for CHICKEN-5 only

diff --git a/salmonella-linux-x86-64/master-clang.conf b/salmonella-linux-x86-64/chicken-4-clang.conf
similarity index 65%
rename from salmonella-linux-x86-64/master-clang.conf
rename to salmonella-linux-x86-64/chicken-4-clang.conf
index 66d8974..258ce12 100644
--- a/salmonella-linux-x86-64/master-clang.conf
+++ b/salmonella-linux-x86-64/chicken-4-clang.conf
@@ -1,4 +1,5 @@
 (load-relative "./common.scm")
+(load-relative "./chicken-4-common.scm")
 
 (c-compiler "clang")
 (c++-compiler "clang++")
diff --git a/salmonella-linux-x86-64/chicken-4-common.scm b/salmonella-linux-x86-64/chicken-4-common.scm
new file mode 100644
index 0000000..ae16e65
--- /dev/null
+++ b/salmonella-linux-x86-64/chicken-4-common.scm
@@ -0,0 +1,11 @@
+(use salmonella-run-publish-params)
+
+(chicken-core-branch "chicken-4")
+
+(chicken-bootstrap-prefix
+ (make-pathname (list (get-environment-variable "HOME") "local")
+                "chicken"))
+
+(skip-eggs
+ (append '(pledge spatial-trees)
+         (skip-eggs)))
diff --git a/salmonella-linux-x86-64/master-debugbuild.conf b/salmonella-linux-x86-64/chicken-4-debugbuild.conf
similarity index 77%
rename from salmonella-linux-x86-64/master-debugbuild.conf
rename to salmonella-linux-x86-64/chicken-4-debugbuild.conf
index ed86a98..839876e 100644
--- a/salmonella-linux-x86-64/master-debugbuild.conf
+++ b/salmonella-linux-x86-64/chicken-4-debugbuild.conf
@@ -1,4 +1,5 @@
 (load-relative "./common.scm")
+(load-relative "./chicken-4-common.scm")
 
 (keep-repo? #f)
 
diff --git a/salmonella-linux-x86-64/chicken-4.conf b/salmonella-linux-x86-64/chicken-4.conf
new file mode 100644
index 0000000..38c4aa7
--- /dev/null
+++ b/salmonella-linux-x86-64/chicken-4.conf
@@ -0,0 +1,2 @@
+(load-relative "./common.scm")
+(load-relative "./chicken-4-common.scm")
diff --git a/salmonella-linux-x86-64/chicken-5-common.scm b/salmonella-linux-x86-64/chicken-5-common.scm
new file mode 100644
index 0000000..ddd1237
--- /dev/null
+++ b/salmonella-linux-x86-64/chicken-5-common.scm
@@ -0,0 +1,49 @@
+(chicken-release 5)
+
+(chicken-bootstrap-prefix
+ (make-pathname (list (get-environment-variable "HOME") "local")
+                "chicken-5"))
+
+(salmonella-path
+ (make-pathname (list (get-environment-variable "HOME")
+                      "local" "chicken-5" "bin")
+                "salmonella"))
+
+
+;; Use the chicken-5-eggs repo
+
+(define chicken-5-eggs-directory
+  (make-pathname (list (get-environment-variable "HOME") "src")
+                 "chicken-5-eggs"))
+
+(list-eggs
+ (lambda ()
+   (map (lambda (egg)
+          (string->symbol
+           (pathname-strip-directory (pathname-directory egg))))
+        (find-files chicken-5-eggs-directory
+                    test: (irregex ".*\\.egg$")))))
+
+(before-make-bootstrap-hook
+ (lambda (sources-dir)
+   (let ((here (current-directory)))
+     (cond ((directory-exists? chicken-5-eggs-directory)
+            (change-directory chicken-5-eggs-directory)
+            (system* "git checkout -f")
+            (system* "git clean -dxf")
+            (system* "git checkout master")
+            (system* "git pull --rebase"))
+           (else
+            (change-directory (pathname-directory chicken-5-eggs-directory))
+            (system* "git clone git://code.call-cc.org/chicken-5-eggs")))
+     (change-directory here))))
+
+(after-make-check-hook
+ (lambda (installation-prefix)
+   (with-output-to-file
+       (make-pathname (list installation-prefix "share" "chicken")
+                      "setup.defaults")
+     (lambda ()
+       (pp `(location ,chicken-5-eggs-directory)))
+     append:)
+   (system* "rm -rf /home/chicken/.chicken-install.cache")))
diff --git a/salmonella-linux-x86-64/chicken-5.conf b/salmonella-linux-x86-64/chicken-5.conf
index 92858ef..df5aed1 100644
--- a/salmonella-linux-x86-64/chicken-5.conf
+++ b/salmonella-linux-x86-64/chicken-5.conf
@@ -1,5 +1,4 @@
 (load-relative "./common.scm")
+(load-relative "./chicken-5-common.scm")
 
-(chicken-core-branch "chicken-5")
-
-(chicken-release 5)
+(chicken-core-branch "master")
diff --git a/salmonella-linux-x86-64/common.scm b/salmonella-linux-x86-64/common.scm
index 75f9c7a..eff37f6 100644
--- a/salmonella-linux-x86-64/common.scm
+++ b/salmonella-linux-x86-64/common.scm
@@ -1,7 +1,5 @@
 (use salmonella-run-publish-params posix files)
 
-(chicken-core-branch "chicken-4")
-
 (keep-repo? #t)
 
 (compress-report? #f)
@@ -12,8 +10,4 @@
                       "salmonella")
                 "reports"))
 
-(skip-eggs
- (append '(pledge spatial-trees)
-         (skip-eggs)))
-
 (feeds-server "salmonella-linux-x86-64.call-cc.org")
diff --git a/salmonella-linux-x86-64/master.conf b/salmonella-linux-x86-64/master.conf
deleted file mode 100644
index e2a1460..0000000
--- a/salmonella-linux-x86-64/master.conf
+++ /dev/null
@@ -1 +0,0 @@
-(load-relative "./common.scm")
diff --git a/salmonella-linux-x86-64/run-salmonella.sh b/salmonella-linux-x86-64/run-salmonella.sh
index aca61ef..c57ea65 100755
--- a/salmonella-linux-x86-64/run-salmonella.sh
+++ b/salmonella-linux-x86-64/run-salmonella.sh
@@ -1,7 +1,5 @@
 #! /bin/sh
 
-set -x
-
 logfile="$HOME/salmonella/watchdog.log"
 
 # Run salmonella from ~/salmonella/build
@@ -21,7 +19,7 @@ done
 ### Actually run salmonella
 ###
 
-export PATH=$HOME/local/chicken/bin:/usr/local/bin:$PATH
+export PATH=$PATH:/usr/local/bin/
 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
 export BVSPIS_PATH=/usr/local/bvspis
 export LC_ALL=C
@@ -29,36 +27,19 @@ export LANG=C
 
 rm -rf salmonella-run-publish
 
-#
-# argvector chickens
-#
-export PATH=$HOME/local/chicken-argvector/bin:$PATH
-
 debugbuild=
-for branch in master-debugbuild chicken-5 master-clang master; do
+for conf in chicken-5 chicken-4-debugbuild chicken-4-clang prerelease; do
     # The inline egg writes some stuff to the home dir
     rm -rf ~/.chicken-inline
 
-    rm -rf salmonella-$branch
-    if [ "$branch" = "master-debugbuild" ]; then
-	debugbuild=1
+    rm -rf salmonella-$conf
+    if echo "$conf" | grep -q debugbuild; then
+        debugbuild=1
     else
-	debugbuild=
+        debugbuild=
     fi
-    DEBUGBUILD=$debugbuild salmonella-run-publish ~/src/chicken-infrastructure/salmonella/salmonella-linux-x86-64/${branch}.conf
-    mv salmonella-run-publish salmonella-$branch
-done
-
-#
-# no-argvector chickens
-#
-export PATH=$HOME/local/chicken/bin:$PATH
-
-for branch in prerelease; do
-    # The inline egg writes some stuff to the home dir
-    rm -rf ~/.chicken-inline
-
-    rm -rf salmonella-$branch
-    salmonella-run-publish ~/src/chicken-infrastructure/salmonella/salmonella-linux-x86-64/${branch}.conf
-    mv salmonella-run-publish salmonella-$branch
+    DEBUGBUILD=$debugbuild \
+        ~/local/chicken/bin/salmonella-run-publish \
+        ~/src/chicken-infrastructure/salmonella/salmonella-linux-x86-64/${conf}.conf
+    mv salmonella-run-publish salmonella-$conf
 done
diff --git a/salmonella-linux-x86-64/stability.conf b/salmonella-linux-x86-64/stability.conf
deleted file mode 100644
index 015d95c..0000000
--- a/salmonella-linux-x86-64/stability.conf
+++ /dev/null
@@ -1,8 +0,0 @@
-;; -*- scheme -*-
-(load-relative "./common.scm")
-
-(chicken-core-branch "stability/4.9.0")
-
-(branch-publish-transformer
-  (lambda (branch)
-    "stability-4.9.0.x"))
Trap