about summary refs log tree commit diff
path: root/test/build
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-04-25T15·33+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-04-25T15·33+0000
commit0ef4b6d0f8dcaec093e3db366b6dfb6ba47f73a6 (patch)
treee36801703e1203a057acfc21b3408d3ddb5c9f18 /test/build
parentd6d930a975cf0bfacb8a3117752452b89921b6ee (diff)
* Cleaned up the semantics of Fix expressions.
* Conditionals and variables in Fix expressions.  This allows, e.g.,

    Descr(
    [ Bind("pkgId", "subversion-0.21.0")

    , Bind("httpsClient", Bool(True))
    , Bind("httpServer", Bool(True))

    , Bind("ssl", If(Var("httpsClient"), Fix("./openssl-0.9.7b.fix"), ""))

    , Bind("httpd", If(Var("httpServer"), Fix("./httpd-2.0.45.fix"), ""))
    ...
    ])

  which introduces domain feature variables httpsClient and httpServer
  (i.e., whether Subversion is built with https client and webdav
  server support); the values of the variables influences package
  dependencies and the build scripts.

  The next step is to allow that packages can express constraints on
  each other.  E.g., StrategoXT is dependent on an ATerm library with
  the "gcc" variant enabled.  In fact, this may cause several
  Nix instantiations to be created from a single Fix descriptor.  If
  possible, Fix should try to find the least set of instantiations
  that obeys the constraints.


Diffstat (limited to 'test/build')
-rwxr-xr-xtest/build/httpd-build.sh12
-rwxr-xr-xtest/build/openssl-build.sh12
-rwxr-xr-xtest/build/subversion-build.sh16
3 files changed, 38 insertions, 2 deletions
diff --git a/test/build/httpd-build.sh b/test/build/httpd-build.sh
new file mode 100755
index 000000000000..a5b43d744329
--- /dev/null
+++ b/test/build/httpd-build.sh
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+export PATH=/bin:/usr/bin
+
+top=`pwd`
+tar xvfz $src || exit 1
+cd httpd-* || exit 1
+./configure --prefix=$top --enable-ssl --with-ssl=$ssl --enable-mods-shared=all || exit 1
+make || exit 1
+make install || exit 1
+cd $top || exit 1
+rm -rf httpd-* || exit 1
diff --git a/test/build/openssl-build.sh b/test/build/openssl-build.sh
new file mode 100755
index 000000000000..23437a37b336
--- /dev/null
+++ b/test/build/openssl-build.sh
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+export PATH=/bin:/usr/bin
+
+top=`pwd`
+tar xvfz $src || exit 1
+cd openssl-* || exit 1
+./config --prefix=$top || exit 1
+make || exit 1
+make install || exit 1
+cd $top || exit 1
+rm -rf openssl-* || exit 1
diff --git a/test/build/subversion-build.sh b/test/build/subversion-build.sh
index cc1eba214e4f..3d1922c98ad5 100755
--- a/test/build/subversion-build.sh
+++ b/test/build/subversion-build.sh
@@ -5,10 +5,22 @@ export PATH=/bin:/usr/bin
 export LDFLAGS=-s
 
 top=`pwd`
+
+if test $httpsClient; then
+    extraflags="--with-ssl --with-libs=$ssl $extraflags"
+fi
+
+if test $httpServer; then
+    extraflags="--with-apxs=$httpd/bin/apxs --with-apr=$httpd --with-apr-util=$httpd $extraflags"
+    extrainst="APACHE_LIBEXECDIR=$top/modules $extrainst"
+fi
+
+echo "extra flags: $extraflags"
+
 tar xvfz $src || exit 1
 cd subversion-* || exit 1
-./configure --prefix=$top --with-ssl || exit 1
+./configure --prefix=$top $extraflags || exit 1
 make || exit 1
-make install || exit 1
+make install $extrainst || exit 1
 cd $top || exit 1
 rm -rf subversion-* || exit 1