mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
recreate a working iOS device build
The current XCode and Qt 5.15.2 (the newest version that we can use due to Kirigami and the lack of binaries for the later open source releases of Qt 5.15) have some issues. Work around those. Also, don't create fat armv7/arm64 binaries anymore for iOS - there are no supported armv7 devices anymore. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
de5311033c
commit
b67aebd462
2 changed files with 123 additions and 105 deletions
|
@ -419,11 +419,11 @@ ios {
|
|||
Q_ENABLE_BITCODE.value = NO
|
||||
QMAKE_MAC_XCODE_SETTINGS += Q_ENABLE_BITCODE
|
||||
|
||||
LIBS += ../install-root/ios/lib/libdivecomputer.a \
|
||||
../install-root/ios/lib/libgit2.a \
|
||||
../install-root/ios/lib/libzip.a \
|
||||
../install-root/ios/lib/libxslt.a \
|
||||
../install-root/ios/lib/qml/org/kde/kirigami.2/libkirigamiplugin.a \
|
||||
LIBS += ../install-root/ios/$${QT_ARCH}/lib/libdivecomputer.a \
|
||||
../install-root/ios/$${QT_ARCH}/lib/libgit2.a \
|
||||
../install-root/ios/$${QT_ARCH}/lib/libzip.a \
|
||||
../install-root/ios/$${QT_ARCH}/lib/libxslt.a \
|
||||
../install-root/ios/$${QT_ARCH}/lib/qml/org/kde/kirigami.2/libkirigamiplugin.a \
|
||||
../googlemaps-build/libqtgeoservices_googlemaps.a \
|
||||
-liconv \
|
||||
-lsqlite3 \
|
||||
|
@ -431,14 +431,14 @@ ios {
|
|||
|
||||
LIBS += -framework MessageUI
|
||||
|
||||
INCLUDEPATH += ../install-root/ios/include/ \
|
||||
../install-root/lib/libzip/include \
|
||||
../install-root/ios/include/libxstl \
|
||||
../install-root/ios/include/libexstl \
|
||||
../install-root/ios/include/openssl \
|
||||
INCLUDEPATH += ../install-root/ios/$${QT_ARCH}/include/ \
|
||||
../install-root/ios/$${QT_ARCH}/include \
|
||||
../install-root/ios/$${QT_ARCH}/include/libxstl \
|
||||
../install-root/ios/$${QT_ARCH}/include/libexstl \
|
||||
../install-root/ios/$${QT_ARCH}/include/openssl \
|
||||
. \
|
||||
./core \
|
||||
./mobile-widgets/3rdparty/kirigami/src/libkirigami \
|
||||
/usr/include/libxml2
|
||||
../install-root/ios/$${QT_ARCH}/include/libxml2
|
||||
|
||||
}
|
||||
|
|
|
@ -1,13 +1,15 @@
|
|||
#!/bin/bash
|
||||
# shellcheck disable=SC2155
|
||||
#
|
||||
# show what you are doing and stop when things break
|
||||
set -x
|
||||
set -e
|
||||
|
||||
DEBUGRELEASE="Release"
|
||||
ARCHS="armv7 arm64 x86_64"
|
||||
ARCH="arm64"
|
||||
TARGET="iphoneos"
|
||||
TARGET2="Device"
|
||||
|
||||
# deal with all the command line arguments
|
||||
while [[ $# -gt 0 ]] ; do
|
||||
arg="$1"
|
||||
|
@ -23,10 +25,14 @@ while [[ $# -gt 0 ]] ; do
|
|||
;;
|
||||
-simulator)
|
||||
# build for the simulator instead of for a device
|
||||
ARCHS="x86_64"
|
||||
ARCH="x86_64"
|
||||
TARGET="iphonesimulator"
|
||||
TARGET2="simulator"
|
||||
;;
|
||||
-device)
|
||||
# build for device instead of for the simulator
|
||||
ARCH="arm64"
|
||||
;;
|
||||
-all)
|
||||
# build both debug and release for all devices
|
||||
DEBUGRELEASE="All"
|
||||
|
@ -49,17 +55,30 @@ cd ..
|
|||
export PARENT_DIR=$PWD
|
||||
popd
|
||||
|
||||
IOS_QT=~/Qt
|
||||
QT_VERSION=$(cd "$IOS_QT"; ls -d [1-9]* | awk -F. '{ printf("%02d.%02d.%02d\n", $1,$2,$3); }' | sort -n | tail -1 | sed -e 's/\.0/\./g;s/^0//')
|
||||
|
||||
if [ -z $QT_VERSION ] ; then
|
||||
IOS_QT=${IOS_QT:-~/Qt}
|
||||
if [ -z "$QT_VERSION" ] ; then
|
||||
QT_VERSION=$(cd "$IOS_QT"; ls -d [1-9]* | awk -F. '{ printf("%02d.%02d.%02d\n", $1,$2,$3); }' | sort -n | tail -1 | sed -e 's/\.0/\./g;s/^0//')
|
||||
fi
|
||||
if [ -z "$QT_VERSION" ] ; then
|
||||
echo "Couldn't determine Qt version; giving up"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Xcode / SDK 14 and later trigger a bug in Qt 5.15
|
||||
QMAKE="${IOS_QT}/${QT_VERSION}/ios/bin/qmake"
|
||||
if [[ $QT_VERSION = 5.15* ]] ; then
|
||||
QMAKEARG=" -early QMAKE_DEFAULT_LIBDIRS=$(xcrun -show-sdk-path)/usr/lib"
|
||||
|
||||
# also, one Python script in Qt 5.15 still references the unversioned Python interpreter;
|
||||
# let's fix that...
|
||||
if ! grep -q /usr/bin/python3 "${IOS_QT}/${QT_VERSION}/ios/mkspecs/features/uikit/devices.py" ; then
|
||||
sed -i.bak 's/\/usr\/bin\/python/\/usr\/bin\/python3/' "${IOS_QT}/${QT_VERSION}/ios/mkspecs/features/uikit/devices.py"
|
||||
fi
|
||||
fi
|
||||
|
||||
# set up the Subsurface versions by hand
|
||||
GITVERSION=$(cd "$SUBSURFACE_SOURCE" ; git describe --match "v[0-9]*" --abbrev=12)
|
||||
CANONICALVERSION=$(echo $GITVERSION | sed -e 's/-g.*$// ; s/^v//' | sed -e 's/-/./')
|
||||
CANONICALVERSION=$(echo "$GITVERSION" | sed -e 's/-g.*$// ; s/^v//' | sed -e 's/-/./')
|
||||
MOBILEVERSION=$(grep MOBILE "$SUBSURFACE_SOURCE"/cmake/Modules/version.cmake | cut -d\" -f 2)
|
||||
echo "#define GIT_VERSION_STRING \"$GITVERSION\"" > "$SUBSURFACE_SOURCE"/ssrf-version.h
|
||||
echo "#define CANONICAL_VERSION_STRING \"$CANONICALVERSION\"" >> "$SUBSURFACE_SOURCE"/ssrf-version.h
|
||||
|
@ -72,6 +91,7 @@ fi
|
|||
|
||||
pushd "$SUBSURFACE_SOURCE"/packaging/ios
|
||||
# create Info.plist with the correct versions
|
||||
# shellcheck disable=SC2002
|
||||
cat Info.plist.in | sed "s/@MOBILE_VERSION@/$MOBILEVERSION/;s/@CANONICAL_VERSION@/$CANONICALVERSION/;s/@PRODUCT_BUNDLE_IDENTIFIER@/$BUNDLE/" > Info.plist
|
||||
|
||||
popd
|
||||
|
@ -79,9 +99,6 @@ if [ "$versionOnly" = "1" ] ; then
|
|||
exit 0
|
||||
fi
|
||||
|
||||
# Build Subsurface-mobile by default
|
||||
SUBSURFACE_MOBILE=1
|
||||
|
||||
pushd "$SUBSURFACE_SOURCE"
|
||||
bash scripts/mobilecomponents.sh
|
||||
popd
|
||||
|
@ -94,13 +111,11 @@ popd
|
|||
|
||||
if [ "$QUICK" != "1" ] ; then
|
||||
|
||||
for ARCH in $ARCHS; do
|
||||
echo "building dependencies for $ARCH"
|
||||
|
||||
echo next building for $ARCH
|
||||
|
||||
INSTALL_ROOT=$PARENT_DIR/install-root/ios/$ARCH
|
||||
mkdir -p "$INSTALL_ROOT"/lib "$INSTALL_ROOT"/bin "$INSTALL_ROOT"/include
|
||||
PKG_CONFIG_LIBDIR="$INSTALL_ROOT"/lib/pkgconfig
|
||||
INSTALL_ROOT="${PARENT_DIR}/install-root/ios/${ARCH}"
|
||||
mkdir -p "${INSTALL_ROOT}/lib" "${INSTALL_ROOT}/bin" "${INSTALL_ROOT}/include"
|
||||
PKG_CONFIG_LIBDIR="${INSTALL_ROOT}/lib/pkgconfig"
|
||||
|
||||
declare -x PKG_CONFIG_PATH=$PKG_CONFIG_LIBDIR
|
||||
declare -x PREFIX=$INSTALL_ROOT
|
||||
|
@ -129,15 +144,23 @@ for ARCH in $ARCHS; do
|
|||
declare -x LDFLAGS="$CFLAGS -lsqlite3 -lpthread -lc++ -L$SDK_DIR/usr/lib -fembed-bitcode"
|
||||
|
||||
# openssl build stuff.
|
||||
export DEVELOPER=$(xcode-select --print-path)\
|
||||
export IPHONEOS_SDK_VERSION=$(xcrun --sdk iphoneos --show-sdk-version)
|
||||
export IPHONEOS_DEPLOYMENT_VERSION="6.0"
|
||||
export IPHONEOS_PLATFORM=$(xcrun --sdk iphoneos --show-sdk-platform-path)
|
||||
export IPHONEOS_SDK=$(xcrun --sdk iphoneos --show-sdk-path)
|
||||
export IPHONESIMULATOR_PLATFORM=$(xcrun --sdk iphonesimulator --show-sdk-platform-path)
|
||||
export IPHONESIMULATOR_SDK=$(xcrun --sdk iphonesimulator --show-sdk-path)
|
||||
export DEVELOPER=$(xcode-select --print-path)
|
||||
export IPHONEOS_DEPLOYMENT_VERSION="12.0"
|
||||
if [ "$ARCH" = "arm64" ] ; then
|
||||
export IPHONEOS_SDK_VERSION=$(xcrun --sdk iphoneos --show-sdk-version)
|
||||
export IPHONEOS_PLATFORM=$(xcrun --sdk iphoneos --show-sdk-platform-path)
|
||||
export IPHONEOS_SDK=$(xcrun --sdk iphoneos --show-sdk-path)
|
||||
export IPHONESIMULATOR_PLATFORM=""
|
||||
export IPHONESIMULATOR_SDK=""
|
||||
else
|
||||
export IPHONEOS_SDK_VERSION=""
|
||||
export IPHONEOS_PLATFORM=""
|
||||
export IPHONEOS_SDK=""
|
||||
export IPHONESIMULATOR_PLATFORM=$(xcrun --sdk iphonesimulator --show-sdk-platform-path)
|
||||
export IPHONESIMULATOR_SDK=$(xcrun --sdk iphonesimulator --show-sdk-path)
|
||||
fi
|
||||
export OSX_SDK_VERSION=$(xcrun --sdk macosx --show-sdk-version)
|
||||
export OSX_DEPLOYMENT_VERSION="10.8"
|
||||
export OSX_DEPLOYMENT_VERSION="11.0"
|
||||
export OSX_PLATFORM=$(xcrun --sdk macosx --show-sdk-platform-path)
|
||||
export OSX_SDK=$(xcrun --sdk macosx --show-sdk-path)
|
||||
|
||||
|
@ -153,7 +176,7 @@ for ARCH in $ARCHS; do
|
|||
"$PARENT_DIR"/libxml2/configure --host=${BUILDCHAIN} --prefix="$PREFIX" --without-lzma --without-python --without-iconv --enable-static --disable-shared
|
||||
perl -pi -e 's/runtest\$\(EXEEXT\)//' Makefile
|
||||
perl -pi -e 's/testrecurse\$\(EXEEXT\)//' Makefile
|
||||
make
|
||||
make -j
|
||||
make install
|
||||
popd
|
||||
fi
|
||||
|
@ -163,10 +186,10 @@ for ARCH in $ARCHS; do
|
|||
autoreconf --install
|
||||
popd
|
||||
if [ ! -e "$PKG_CONFIG_LIBDIR"/libxslt.pc ] ; then
|
||||
mkdir -p "$PARENT_DIR"/libxslt-build-$ARCH
|
||||
pushd "$PARENT_DIR"/libxslt-build-$ARCH
|
||||
mkdir -p "${PARENT_DIR}/libxslt-build-${ARCH}"
|
||||
pushd "${PARENT_DIR}/libxslt-build-${ARCH}"
|
||||
"$PARENT_DIR"/libxslt/configure --host=$BUILDCHAIN --prefix="$PREFIX" --with-libxml-include-prefix="$INSTALL_ROOT"/include/libxml2 --without-python --without-crypto --enable-static --disable-shared
|
||||
make
|
||||
make -j
|
||||
make install
|
||||
popd
|
||||
fi
|
||||
|
@ -175,8 +198,8 @@ for ARCH in $ARCHS; do
|
|||
pushd "$PARENT_DIR"/libzip
|
||||
# don't waste time on building command line tools, examples, manual, and regression tests - and don't build the BZIP2 support we don't need
|
||||
sed -i.bak 's/ADD_SUBDIRECTORY(src)//;s/ADD_SUBDIRECTORY(examples)//;s/ADD_SUBDIRECTORY(man)//;s/ADD_SUBDIRECTORY(regress)//' CMakeLists.txt
|
||||
mkdir -p "$PARENT_DIR"/libzip-build-$ARCH
|
||||
pushd "$PARENT_DIR"/libzip-build-$ARCH
|
||||
mkdir -p "${PARENT_DIR}/libzip-build-${ARCH}"
|
||||
pushd "${PARENT_DIR}/libzip-build-${ARCH}"
|
||||
cmake -DBUILD_SHARED_LIBS="OFF" \
|
||||
-DCMAKE_TOOLCHAIN_FILE="$TOOLCHAIN_FILE" \
|
||||
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
|
||||
|
@ -184,10 +207,10 @@ for ARCH in $ARCHS; do
|
|||
-DCMAKE_DISABLE_FIND_PACKAGE_BZip2=TRUE \
|
||||
-DENABLE_OPENSSL=FALSE \
|
||||
-DENABLE_GNUTLS=FALSE \
|
||||
"$PARENT_DIR"/libzip
|
||||
"${PARENT_DIR}/libzip"
|
||||
# quiet the super noise warnings
|
||||
sed -i.bak 's/C_FLAGS = /C_FLAGS = -Wno-nullability-completeness -Wno-expansion-to-defined /' lib/CMakeFiles/zip.dir/flags.make
|
||||
make
|
||||
make -j
|
||||
make install
|
||||
popd
|
||||
mv CMakeLists.txt.bak CMakeLists.txt
|
||||
|
@ -199,10 +222,10 @@ for ARCH in $ARCHS; do
|
|||
sed -i.bak 's/ADD_C_FLAG_IF_SUPPORTED(-W/# ADD_C_FLAG_IF_SUPPORTED(-W/' CMakeLists.txt
|
||||
popd
|
||||
|
||||
if [ ! -e $PKG_CONFIG_LIBDIR/libgit2.pc ] ; then
|
||||
mkdir -p "$PARENT_DIR"/libgit2-build-$ARCH
|
||||
pushd "$PARENT_DIR"/libgit2-build-$ARCH
|
||||
cmake "$PARENT_DIR"/libgit2 \
|
||||
if [ ! -e "${PKG_CONFIG_LIBDIR}/libgit2.pc" ] ; then
|
||||
mkdir -p "${PARENT_DIR}/libgit2-build-${ARCH}"
|
||||
pushd "${PARENT_DIR}/libgit2-build-${ARCH}"
|
||||
cmake "${PARENT_DIR}/libgit2" \
|
||||
-G "Unix Makefiles" \
|
||||
-DBUILD_SHARED_LIBS="OFF" \
|
||||
-DCMAKE_TOOLCHAIN_FILE="$TOOLCHAIN_FILE" \
|
||||
|
@ -212,16 +235,16 @@ for ARCH in $ARCHS; do
|
|||
-DCMAKE_PREFIX_PATH="$PREFIX" \
|
||||
-DCURL=OFF \
|
||||
-DUSE_SSH=OFF \
|
||||
"$PARENT_DIR"/libgit2/
|
||||
"${PARENT_DIR}/libgit2/"
|
||||
sed -i.bak 's/C_FLAGS = /C_FLAGS = -Wno-nullability-completeness -Wno-expansion-to-defined /' src/CMakeFiles/git2.dir/flags.make
|
||||
make
|
||||
make -j
|
||||
make install
|
||||
# Patch away pkg-config dependency to zlib, its there, i promise
|
||||
perl -pi -e 's/^(Requires.private:.*)zlib(.*)$/$1 $2/' $PKG_CONFIG_LIBDIR/libgit2.pc
|
||||
perl -pi -e 's/^(Requires.private:.*)zlib(.*)$/$1 $2/' "${PKG_CONFIG_LIBDIR}/libgit2.pc"
|
||||
popd
|
||||
fi
|
||||
|
||||
# build libdivecomputer
|
||||
# build libdivecomputer
|
||||
if [ ! -d "$SUBSURFACE_SOURCE"/libdivecomputer/src ] ; then
|
||||
pushd "$SUBSURFACE_SOURCE"
|
||||
git submodule init
|
||||
|
@ -234,69 +257,63 @@ for ARCH in $ARCHS; do
|
|||
autoreconf --install
|
||||
popd
|
||||
fi
|
||||
mkdir -p "$PARENT_DIR"/libdivecomputer-build-$ARCH
|
||||
if [ ! -f "$PARENT_DIR"/libdivecomputer-build-$ARCH/git.SHA ] ; then
|
||||
echo "" > "$PARENT_DIR"/libdivecomputer-build-$ARCH/git.SHA
|
||||
mkdir -p "${PARENT_DIR}/libdivecomputer-build-${ARCH}"
|
||||
if [ ! -f "${PARENT_DIR}/libdivecomputer-build-${ARCH}/git.SHA" ] ; then
|
||||
echo "" > "${PARENT_DIR}/libdivecomputer-build-${ARCH}/git.SHA"
|
||||
fi
|
||||
CURRENT_SHA=$(cd "$SUBSURFACE_SOURCE"/libdivecomputer ; git describe)
|
||||
PREVIOUS_SHA=$(cat "$PARENT_DIR"/libdivecomputer-build-$ARCH/git.SHA)
|
||||
CURRENT_SHA=$(cd "${SUBSURFACE_SOURCE}/libdivecomputer" ; git describe)
|
||||
PREVIOUS_SHA=$(cat "${PARENT_DIR}/libdivecomputer-build-${ARCH}/git.SHA")
|
||||
if [ ! "$CURRENT_SHA" = "$PREVIOUS_SHA" ] ; then
|
||||
echo $CURRENT_SHA > "$PARENT_DIR"/libdivecomputer-build-$ARCH/git.SHA
|
||||
pushd "$PARENT_DIR"/libdivecomputer-build-$ARCH
|
||||
${SUBSURFACE_SOURCE}/libdivecomputer/configure --host=${BUILDCHAIN} --prefix="$PREFIX" --enable-static --disable-shared --enable-examples=no --without-libusb --without-hidapi --enable-ble
|
||||
make
|
||||
echo "$CURRENT_SHA" > "${PARENT_DIR}/libdivecomputer-build-${ARCH}/git.SHA"
|
||||
pushd "${PARENT_DIR}/libdivecomputer-build-${ARCH}"
|
||||
"${SUBSURFACE_SOURCE}/libdivecomputer/configure" --host=${BUILDCHAIN} --prefix="$PREFIX" --enable-static --disable-shared --enable-examples=no --without-libusb --without-hidapi
|
||||
make -j
|
||||
make install
|
||||
popd
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
# build googlemaps
|
||||
mkdir -p "$PARENT_DIR"/googlemaps-build
|
||||
pushd "$PARENT_DIR"/googlemaps-build
|
||||
"$IOS_QT"/"$QT_VERSION"/ios/bin/qmake "$PARENT_DIR"/googlemaps/googlemaps.pro CONFIG+=release
|
||||
make
|
||||
if [ "$DEBUGRELEASE" != "Release" ] ; then
|
||||
"$IOS_QT"/"$QT_VERSION"/ios/bin/qmake "$PARENT_DIR"/googlemaps/googlemaps.pro CONFIG+=debug
|
||||
make clean
|
||||
# build googlemaps
|
||||
mkdir -p "$PARENT_DIR"/googlemaps-build
|
||||
pushd "$PARENT_DIR"/googlemaps-build
|
||||
# yes, shellcheck will complain that we don't enclose QMAKEARG in quotes when we use it
|
||||
# that's intentional so that the command line argument actually works
|
||||
# shellcheck disable=SC2086
|
||||
"$QMAKE" $QMAKEARG "$PARENT_DIR"/googlemaps/googlemaps.pro \
|
||||
-spec macx-ios-clang CONFIG+=$TARGET CONFIG+=$TARGET2 CONFIG+=release
|
||||
make
|
||||
fi
|
||||
popd
|
||||
if [ "$DEBUGRELEASE" != "Release" ] ; then
|
||||
# shellcheck disable=SC2086
|
||||
"$QMAKE" $QMAKEARG "$PARENT_DIR"/googlemaps/googlemaps.pro \
|
||||
-spec macx-ios-clang CONFIG+=$TARGET CONFIG+=$TARGET2 CONFIG+=debug
|
||||
make clean
|
||||
make -j
|
||||
fi
|
||||
popd
|
||||
|
||||
# build Kirigami
|
||||
mkdir -p "$PARENT_DIR"/kirigami-release-build
|
||||
pushd "$PARENT_DIR"/kirigami-release-build
|
||||
"$IOS_QT"/"$QT_VERSION"/ios/bin/qmake "$SUBSURFACE_SOURCE"/mobile-widgets/3rdparty/kirigami/kirigami.pro CONFIG+=release
|
||||
make
|
||||
# since the install prefix for qmake is rather weirdly implemented, let's copy things by hand into the multiarch destination
|
||||
mkdir -p "$INSTALL_ROOT"/../lib/qml/
|
||||
cp -a org "$INSTALL_ROOT"/../lib/qml/
|
||||
popd
|
||||
if [ "$DEBUGRELEASE" != "Release" ] ; then
|
||||
mkdir -p "$PARENT_DIR"/kirigami-debug-build
|
||||
pushd "$PARENT_DIR"/kirigami-debug-build
|
||||
"$IOS_QT"/"$QT_VERSION"/ios/bin/qmake "$SUBSURFACE_SOURCE"/mobile-widgets/3rdparty/kirigami/kirigami.pro CONFIG+=debug
|
||||
make
|
||||
# build Kirigami
|
||||
mkdir -p "$PARENT_DIR"/kirigami-release-build
|
||||
pushd "$PARENT_DIR"/kirigami-release-build
|
||||
# shellcheck disable=SC2086
|
||||
"$QMAKE" $QMAKEARG "$SUBSURFACE_SOURCE"/mobile-widgets/3rdparty/kirigami/kirigami.pro \
|
||||
-spec macx-ios-clang CONFIG+=$TARGET CONFIG+=$TARGET2 CONFIG+=release
|
||||
make -j
|
||||
# since the install prefix for qmake is rather weirdly implemented, let's copy things by hand into the multiarch destination
|
||||
mkdir -p "$INSTALL_ROOT"/../lib/qml/
|
||||
cp -a org "$INSTALL_ROOT"/../lib/qml/
|
||||
mkdir -p "$INSTALL_ROOT"/lib/qml/
|
||||
cp -a org "$INSTALL_ROOT"/lib/qml/
|
||||
popd
|
||||
fi
|
||||
|
||||
# now combine the libraries into fat libraries
|
||||
ARCH_ROOT=$PARENT_DIR/install-root/ios
|
||||
cp -a "$ARCH_ROOT"/x86_64/* "$ARCH_ROOT"
|
||||
if [ "$TARGET" = "iphoneos" ] ; then
|
||||
pushd "$ARCH_ROOT"/lib
|
||||
for LIB in $(find . -type f -name \*.a); do
|
||||
# libkirigamiplugin is already a fat library
|
||||
if grep -v -q "kirigami" <<< "$LIB" ; then
|
||||
lipo "$ARCH_ROOT"/armv7/lib/"$LIB" "$ARCH_ROOT"/arm64/lib/"$LIB" "$ARCH_ROOT"/x86_64/lib/"$LIB" -create -output "$LIB"
|
||||
fi
|
||||
done
|
||||
popd
|
||||
fi
|
||||
|
||||
if [ "$DEBUGRELEASE" != "Release" ] ; then
|
||||
mkdir -p "$PARENT_DIR"/kirigami-debug-build
|
||||
pushd "$PARENT_DIR"/kirigami-debug-build
|
||||
# shellcheck disable=SC2086
|
||||
"$QMAKE" $QMAKEARG "$SUBSURFACE_SOURCE"/mobile-widgets/3rdparty/kirigami/kirigami.pro \
|
||||
-spec macx-ios-clang CONFIG+=$TARGET CONFIG+=$TARGET2 CONFIG+=debug
|
||||
make -j
|
||||
# since the install prefix for qmake is rather weirdly implemented, let's copy things by hand into the multiarch destination
|
||||
mkdir -p "$INSTALL_ROOT"/lib/qml/
|
||||
cp -a org "$INSTALL_ROOT"/lib/qml/
|
||||
popd
|
||||
fi
|
||||
fi
|
||||
|
||||
pushd "$SUBSURFACE_SOURCE"/translations
|
||||
|
@ -328,9 +345,10 @@ for BUILD_NOW in $BUILD_LOOP; do
|
|||
pushd "$BUILDX"
|
||||
rm -f ssrf-version.h
|
||||
ln -s "$SUBSURFACE_SOURCE"/ssrf-version.h .
|
||||
"$IOS_QT"/"$QT_VERSION"/ios/bin/qmake "$SUBSURFACE_SOURCE"/Subsurface-mobile.pro \
|
||||
# shellcheck disable=SC2086
|
||||
"$QMAKE" $QMAKEARG "$SUBSURFACE_SOURCE"/Subsurface-mobile.pro \
|
||||
-spec macx-ios-clang CONFIG+=$TARGET CONFIG+=$TARGET2 CONFIG+=$DRCONFIG
|
||||
|
||||
make
|
||||
make -j
|
||||
popd
|
||||
done
|
||||
|
|
Loading…
Reference in a new issue