Author: thebeing
Date: Wed Jul 13 10:43:56 2016
New Revision: 39994
URL: http://svn.gna.org/viewcvs/gnustep?rev=39994&view=rev
Log:
Add build scripts for travis-ci
Added:
libs/base/trunk/.travis.yml
libs/base/trunk/travis-deps.sh (with props)
Added: libs/base/trunk/.travis.yml
URL:
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/.travis.yml?rev=39994&view=auto
==============================================================================
--- libs/base/trunk/.travis.yml (added)
+++ libs/base/trunk/.travis.yml Wed Jul 13 10:43:56 2016
@@ -0,0 +1,61 @@
+language: cpp
+dist: trusty
+compiler:
+ - clang
+ - gcc
+env:
+ - LIBRARY_COMBO=gnu-gnu-gnu
+ - LIBRARY_COMBO=gnu-gnu-gnu SORT_ALG=timsort
+ - LIBRARY_COMBO=ng-gnu-gnu
+ - LIBRARY_COMBO=ng-gnu-gnu SORT_ALG=timsort
+ - LIBRARY_COMBO=ng-gnu-gnu BASE_ABI=--disable-mixed-abi
+ - LIBRARY_COMBO=ng-gnu-gnu BASE_ABI=--disable-mixed-abi SORT_ALG=timsort
+matrix:
+ exclude:
+ - compiler: gcc
+ env: LIBRARY_COMBO=ng-gnu-gnu
+ - compiler: gcc
+ env: LIBRARY_COMBO=ng-gnu-gnu SORT_ALG=timsort
+ - compiler: gcc
+ env: LIBRARY_COMBO=ng-gnu-gnu BASE_ABI=--disable-mixed-abi
+ - compiler: gcc
+ env: LIBRARY_COMBO=ng-gnu-gnu BASE_ABI=--disable-mixed-abi
SORT_ALG=timsort
+ - compiler: clang
+ env: LIBRARY_COMBO=gnu-gnu-gnu
+ - compiler: clang
+ env: LIBRARY_COMBO=gnu-gnu-gnu SORT_ALG=timsort
+sudo: required
+before_install:
+ - sudo apt-get -qq update
+ - sudo apt-get install -y cmake pkg-config libgnutls28-dev libgmp-dev
libffi-dev libicu-dev libxml2-dev libxslt1-dev libssl-dev libavahi-client-dev
zlib1g-dev
+ - >
+ if [ $LIBRARY_COMBO = 'gnu-gnu-gnu' ];
+ then
+ if [ $CC = 'gcc' ];
+ then
+ sudo apt-get install -y gobjc;
+ fi;
+ sudo apt-get install -y libobjc-4.8-dev;
+ else
+ sudo apt-get install -y libkqueue-dev libpthread-workqueue-dev;
+ fi;
+install: ./travis-deps.sh
+before_script: >
+ export LIBRARY_PATH=$HOME/staging/lib:$LIBRARY_PATH;
+ export LD_LIBRARY_PATH=$HOME/staging/lib:$LD_LIBRARY_PATH;
+ if [ $LIBRARY_COMBO = 'ng-gnu-gnu' ];
+ then
+ export CPATH=$HOME/staging/include;
+ else
+ export CPATH=/usr/lib/gcc/x86_64-linux-gnu/4.8/include;
+ fi;
+ export PATH=$HOME/staging/bin:$PATH;
+ export GNUSTEP_MAKEFILES=$HOME/staging/share/GNUstep/Makefiles;
+ . $HOME/staging/share/GNUstep/Makefiles/GNUstep.sh;
+script: >
+ if [ -z "$SORT_ALG" ];
+ then
+ SORT_ALG=shellsort
+ fi;
+ ./configure --with-sort-algorithm=$SORT_ALG $BASE_ABI;
+ make && make install && make check || (cat Tests/tests.log && false);
Added: libs/base/trunk/travis-deps.sh
URL:
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/travis-deps.sh?rev=39994&view=auto
==============================================================================
--- libs/base/trunk/travis-deps.sh (added)
+++ libs/base/trunk/travis-deps.sh Wed Jul 13 10:43:56 2016
@@ -0,0 +1,53 @@
+#! /usr/bin/env sh
+
+set -ex
+
+DEP_SRC=$HOME/dependency_source/
+
+install_gnustep_make() {
+ cd $DEP_SRC
+ git clone https://github.com/gnustep/make.git
+ cd make
+ if [ $LIBRARY_COMBO = 'ng-gnu-gnu' ]
+ then
+ ADDITIONAL_FLAGS="--enable-objc-nonfragile-abi"
+ else
+ ADDITIONAL_FLAGS=""
+ fi
+ ./configure --prefix=$HOME/staging --with-library-combo=$LIBRARY_COMBO
$ADDITIONAL_FLAGS
+ make install
+}
+
+install_ng_runtime() {
+ cd $DEP_SRC
+ git clone https://github.com/gnustep/libobjc2.git
+ mkdir libobjc2/build
+ cd libobjc2/build
+ export CC="clang"
+ export CXX="clang++"
+ cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DGNUSTEP_INSTALL_TYPE=NONE
-DCMAKE_INSTALL_PREFIX:PATH=$HOME/staging ../
+ make install
+}
+
+install_libdispatch() {
+ cd $DEP_SRC
+ git clone https://github.com/ngrewe/libdispatch.git
+ mkdir libdispatch/build
+ cd libdispatch/build
+ export CC="clang"
+ export CXX="clang++"
+ export LIBRARY_PATH=$HOME/staging/lib;
+ export LD_LIBRARY_PATH=$HOME/staging/lib:$LD_LIBRARY_PATH;
+ export CPATH=$HOME/staging/include;
+ cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo
-DCMAKE_INSTALL_PREFIX:PATH=$HOME/staging ../
+ make install
+}
+
+mkdir -p $DEP_SRC
+if [ $LIBRARY_COMBO = 'ng-gnu-gnu' ]
+then
+ install_ng_runtime
+ install_libdispatch
+fi
+
+install_gnustep_make
Propchange: libs/base/trunk/travis-deps.sh
------------------------------------------------------------------------------
svn:executable = *
_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs