libs-gui/travis-deps.sh
Daniel Ferreira 83e505c8a8 chore: add Travis CI build to GUI
Add a Travis CI build to gnustep-gui to check if everything is really
okay before accepting patches.

Recent events have shown that bad patches have passed through the review
process, specially when it comes to breaking compatibility with GCC. A
CI routine would distinctly avoid these cases.
2017-08-06 18:48:26 +00:00

66 lines
1.6 KiB
Bash
Executable file

#! /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
}
install_gnustep_base() {
export GNUSTEP_MAKEFILES=$HOME/staging/share/GNUstep/Makefiles
. $HOME/staging/share/GNUstep/Makefiles/GNUstep.sh
cd $DEP_SRC
git clone https://github.com/gnustep/libs-base.git
cd libs-base
./configure
make
make install
}
mkdir -p $DEP_SRC
if [ $LIBRARY_COMBO = 'ng-gnu-gnu' ]
then
install_ng_runtime
install_libdispatch
fi
install_gnustep_make
install_gnustep_base