mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
build-system: changed build.sh to use get-dep-lib
get-dep-lib has been integrated into build.sh, which ensures different platforms use the same versions etc. travis is a frequent user of build.sh, but on a mac it runs without -build-deps and instead used cached versions of the library. This setup is alo supported Signed-off-by: Jan Iversen <jani@apache.org>
This commit is contained in:
parent
1ed8c87d63
commit
1a86c17e28
1 changed files with 22 additions and 73 deletions
|
@ -69,15 +69,6 @@ while [[ $# -gt 0 ]] ; do
|
||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
# most of these will only be needed with -build-deps on a Mac
|
|
||||||
CURRENT_LIBZIP="1.2.0"
|
|
||||||
CURRENT_HIDAPI="hidapi-0.7.0"
|
|
||||||
CURRENT_LIBCURL="curl-7_54_1"
|
|
||||||
CURRENT_LIBUSB="v1.0.21"
|
|
||||||
CURRENT_OPENSSL="OpenSSL_1_1_0f"
|
|
||||||
CURRENT_LIBSSH2="libssh2-1.8.0"
|
|
||||||
CURRENT_LIBGIT2="v0.26.0"
|
|
||||||
|
|
||||||
# Verify that the Xcode Command Line Tools are installed
|
# Verify that the Xcode Command Line Tools are installed
|
||||||
if [ $PLATFORM = Darwin ] ; then
|
if [ $PLATFORM = Darwin ] ; then
|
||||||
if [ -d /Developer/SDKs ] ; then
|
if [ -d /Developer/SDKs ] ; then
|
||||||
|
@ -202,23 +193,18 @@ if [[ $PLATFORM = Darwin || "$LIBGIT" < "24" ]] ; then
|
||||||
# feature). So we painfully need to build the dependencies ourselves.
|
# feature). So we painfully need to build the dependencies ourselves.
|
||||||
|
|
||||||
if [ "$BUILD_DEPS" == "1" ] ; then
|
if [ "$BUILD_DEPS" == "1" ] ; then
|
||||||
if [ ! -d libzip-${CURRENT_LIBZIP} ] ; then
|
./subsurface/scripts/get-dep-lib.sh single . libzip
|
||||||
curl -O https://libzip.org/download/libzip-${CURRENT_LIBZIP}.tar.gz
|
pushd libzip
|
||||||
tar xzf libzip-${CURRENT_LIBZIP}.tar.gz
|
|
||||||
fi
|
|
||||||
cd libzip-${CURRENT_LIBZIP}
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
../configure CFLAGS="$OLDER_MAC" --prefix=$INSTALL_ROOT
|
../configure CFLAGS="$OLDER_MAC" --prefix=$INSTALL_ROOT
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
|
|
||||||
cd $SRC
|
|
||||||
|
|
||||||
if [ ! -d hidapi ] ; then
|
./subsurface/scripts/get-dep-lib.sh single . hidapi
|
||||||
git clone https://github.com/signal11/hidapi
|
pushd hidapi
|
||||||
fi
|
|
||||||
cd hidapi
|
|
||||||
# there is no good tag, so just build master
|
# there is no good tag, so just build master
|
||||||
bash ./bootstrap
|
bash ./bootstrap
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
|
@ -226,17 +212,10 @@ if [[ $PLATFORM = Darwin || "$LIBGIT" < "24" ]] ; then
|
||||||
CFLAGS="$OLDER_MAC" ../configure --prefix=$INSTALL_ROOT
|
CFLAGS="$OLDER_MAC" ../configure --prefix=$INSTALL_ROOT
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
|
|
||||||
cd $SRC
|
./subsurface/scripts/get-dep-lib.sh single . libcurl
|
||||||
|
pushd libcurl
|
||||||
if [ ! -d libcurl ] ; then
|
|
||||||
git clone https://github.com/curl/curl libcurl
|
|
||||||
fi
|
|
||||||
cd libcurl
|
|
||||||
if ! git checkout $CURRENT_LIBCURL ; then
|
|
||||||
echo "Can't find the right tag in libcurl - giving up"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
bash ./buildconf
|
bash ./buildconf
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
|
@ -244,34 +223,20 @@ if [[ $PLATFORM = Darwin || "$LIBGIT" < "24" ]] ; then
|
||||||
--disable-tftp --disable-ftp --disable-ldap --disable-ldaps --disable-imap --disable-pop3 --disable-smtp --disable-gopher --disable-smb --disable-rtsp
|
--disable-tftp --disable-ftp --disable-ldap --disable-ldaps --disable-imap --disable-pop3 --disable-smtp --disable-gopher --disable-smb --disable-rtsp
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
|
|
||||||
cd $SRC
|
./subsurface/scripts/get-dep-lib.sh single . libusb
|
||||||
|
pushd libusb
|
||||||
if [ ! -d libusb ] ; then
|
|
||||||
git clone https://github.com/libusb/libusb
|
|
||||||
fi
|
|
||||||
cd libusb
|
|
||||||
if ! git checkout $CURRENT_LIBUSB ; then
|
|
||||||
echo "Can't find the right tag in libusb - giving up"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
bash ./bootstrap.sh
|
bash ./bootstrap.sh
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
CFLAGS="$OLDER_MAC" ../configure --prefix=$INSTALL_ROOT --disable-examples
|
CFLAGS="$OLDER_MAC" ../configure --prefix=$INSTALL_ROOT --disable-examples
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
|
|
||||||
cd $SRC
|
./subsurface/scripts/get-dep-lib.sh single . openssl
|
||||||
|
pushd openssl
|
||||||
if [ ! -d openssl ] ; then
|
|
||||||
git clone https://github.com/openssl/openssl
|
|
||||||
fi
|
|
||||||
cd openssl
|
|
||||||
if ! git checkout $CURRENT_OPENSSL ; then
|
|
||||||
echo "Can't find the right tag in openssl - giving up"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
../Configure --prefix=$INSTALL_ROOT --openssldir=$INSTALL_ROOT $OLDER_MAC darwin64-x86_64-cc
|
../Configure --prefix=$INSTALL_ROOT --openssldir=$INSTALL_ROOT $OLDER_MAC darwin64-x86_64-cc
|
||||||
|
@ -279,22 +244,16 @@ if [[ $PLATFORM = Darwin || "$LIBGIT" < "24" ]] ; then
|
||||||
# all the tests fail because the assume that openssl is already installed. Odd? Still thinks work
|
# all the tests fail because the assume that openssl is already installed. Odd? Still thinks work
|
||||||
make -j4 -k
|
make -j4 -k
|
||||||
make -k install
|
make -k install
|
||||||
|
popd
|
||||||
|
|
||||||
cd $SRC
|
./subsurface/scripts/get-dep-lib.sh single . libssh2
|
||||||
|
pushd libssh2
|
||||||
if [ ! -d libssh2 ] ; then
|
|
||||||
git clone https://github.com/libssh2/libssh2
|
|
||||||
fi
|
|
||||||
cd libssh2
|
|
||||||
if ! git checkout $CURRENT_LIBSSH2 ; then
|
|
||||||
echo "Can't find the right tag in libssh2 - giving up"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
cmake $OLDER_MAC_CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_ROOT -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF ..
|
cmake $OLDER_MAC_CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_ROOT -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DBUILD_TESTING=OFF -DBUILD_EXAMPLES=OFF ..
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
else
|
else
|
||||||
# we are getting libusb and hidapi from pkg-config and that goes wrong
|
# we are getting libusb and hidapi from pkg-config and that goes wrong
|
||||||
# or more specifically, the way libdivecomputer references
|
# or more specifically, the way libdivecomputer references
|
||||||
|
@ -307,25 +266,14 @@ if [[ $PLATFORM = Darwin || "$LIBGIT" < "24" ]] ; then
|
||||||
|
|
||||||
cd $SRC
|
cd $SRC
|
||||||
|
|
||||||
if [ ! -d libgit2 ] ; then
|
./subsurface/scripts/get-dep-lib.sh single . libgit2
|
||||||
if [[ $1 = local ]] ; then
|
pushd libgit2
|
||||||
git clone $SRC/../libgit2 libgit2
|
|
||||||
else
|
|
||||||
git clone https://github.com/libgit2/libgit2.git
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
cd libgit2
|
|
||||||
# let's build with a recent enough version of master for the latest features
|
|
||||||
git fetch origin
|
|
||||||
if ! git checkout $CURRENT_LIBGIT2 ; then
|
|
||||||
echo "Can't find the right tag in libgit2 - giving up"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
cd build
|
cd build
|
||||||
cmake $OLDER_MAC_CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_ROOT -DCMAKE_BUILD_TYPE=Release -DBUILD_CLAR=OFF ..
|
cmake $OLDER_MAC_CMAKE -DCMAKE_INSTALL_PREFIX=$INSTALL_ROOT -DCMAKE_BUILD_TYPE=Release -DBUILD_CLAR=OFF ..
|
||||||
make -j4
|
make -j4
|
||||||
make install
|
make install
|
||||||
|
popd
|
||||||
|
|
||||||
if [ $PLATFORM = Darwin ] ; then
|
if [ $PLATFORM = Darwin ] ; then
|
||||||
# in order for macdeployqt to do its job correctly, we need the full path in the dylib ID
|
# in order for macdeployqt to do its job correctly, we need the full path in the dylib ID
|
||||||
|
@ -456,6 +404,7 @@ if [ "$SKIP_GOOGLEMAPS" != "1" ] ; then
|
||||||
git pull --rebase
|
git pull --rebase
|
||||||
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
|
mkdir -p J10build
|
||||||
cd build
|
cd build
|
||||||
$QMAKE -query
|
$QMAKE -query
|
||||||
$QMAKE "INCLUDEPATH=$INSTALL_ROOT/include" ../googlemaps.pro
|
$QMAKE "INCLUDEPATH=$INSTALL_ROOT/include" ../googlemaps.pro
|
||||||
|
|
Loading…
Add table
Reference in a new issue