mirror of
https://github.com/gnustep/libs-base.git
synced 2025-06-01 09:02:01 +00:00
Add build scripts for travis-ci
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39994 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
c9e0bddfd3
commit
34d39727f0
2 changed files with 114 additions and 0 deletions
61
.travis.yml
Normal file
61
.travis.yml
Normal file
|
@ -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);
|
53
travis-deps.sh
Executable file
53
travis-deps.sh
Executable file
|
@ -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
|
Loading…
Add table
Add a link
Reference in a new issue