Fix Travis build

Make Travis fetch and build Clownfish before building Lucy.


Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/2c58db89
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/2c58db89
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/2c58db89

Branch: refs/heads/master
Commit: 2c58db89172b73950093d2f404829597901fdf79
Parents: 021dcb5
Author: Nick Wellnhofer <wellnho...@aevum.de>
Authored: Sat Jul 11 17:53:51 2015 +0200
Committer: Nick Wellnhofer <wellnho...@aevum.de>
Committed: Sat Jul 11 17:54:55 2015 +0200

----------------------------------------------------------------------
 .travis.yml              | 24 ++++++++------
 devel/bin/travis-test.sh | 74 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucy/blob/2c58db89/.travis.yml
----------------------------------------------------------------------
diff --git a/.travis.yml b/.travis.yml
index dd676de..a84cc40 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -14,16 +14,20 @@
 # limitations under the License.
 
 language: perl
-perl:
-  - "5.19"
-  - "5.18"
-  - "5.16"
-  - "5.14"
-  - "5.12"
-  - "5.10"
-  - "5.8"
+sudo: required
+# Override Travis' default Perl installation script.
+install: 'true'
+script: devel/bin/travis-test.sh
+env:
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=c
+#  - LUCY_DEBUG=1 CLOWNFISH_HOST=go
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.20
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.18
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.16
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.14
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.12
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.10
+  - LUCY_DEBUG=1 CLOWNFISH_HOST=perl PERL_VERSION=5.8
 git:
   depth: 10
-before_install:
-  - cd perl
 

http://git-wip-us.apache.org/repos/asf/lucy/blob/2c58db89/devel/bin/travis-test.sh
----------------------------------------------------------------------
diff --git a/devel/bin/travis-test.sh b/devel/bin/travis-test.sh
new file mode 100755
index 0000000..624bb86
--- /dev/null
+++ b/devel/bin/travis-test.sh
@@ -0,0 +1,74 @@
+#!/bin/bash
+
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Exit if any command returns non-zero.
+set -e
+
+# Print all commands before executing.
+set -x
+
+test_c() {
+    # Install Clownfish.
+    git clone -q https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git
+    cd lucy-clownfish/runtime/c
+    ./configure
+    make
+    sudo ./install.sh --prefix /usr/local
+    sudo ldconfig
+
+    cd ../../../c
+    ./configure
+    make -j test
+}
+
+test_perl() {
+    perlbrew switch $PERL_VERSION
+
+    # Install Clownfish.
+    git clone -q https://git-wip-us.apache.org/repos/asf/lucy-clownfish.git
+    cd lucy-clownfish/runtime/perl
+    perl Build.PL
+    ./Build
+    sudo ./Build install
+    cd ../../compiler/perl
+    sudo ./Build install
+
+    cd ../../../perl
+    perl Build.PL
+    ./Build test
+}
+
+test_go() {
+    # TODO
+    exit 1
+}
+
+case $CLOWNFISH_HOST in
+    perl)
+        test_perl
+        ;;
+    c)
+        test_c
+        ;;
+    go)
+        test_go
+        ;;
+    *)
+        echo "unknown CLOWNFISH_HOST: $CLOWNFISH_HOST"
+        exit 1
+esac
+

Reply via email to