mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-24 02:43:11 +00:00
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.
66 lines
1.6 KiB
Bash
Executable file
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
|