mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-24 13:38:55 +00:00
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 -DTESTS=off -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
|