mirror of
https://github.com/qTox/qTox.git
synced 2024-03-22 14:00:36 +08:00
parent
a59c960d81
commit
7803a7e0d6
|
@ -130,10 +130,12 @@ apt-get update
|
|||
apt-get install -y --no-install-recommends \
|
||||
autoconf \
|
||||
automake \
|
||||
build-essential \
|
||||
bsdtar \
|
||||
build-essential \
|
||||
ca-certificates \
|
||||
cmake \
|
||||
curl \
|
||||
extra-cmake-modules \
|
||||
git \
|
||||
libtool \
|
||||
nsis \
|
||||
|
@ -142,10 +144,8 @@ apt-get install -y --no-install-recommends \
|
|||
tclsh \
|
||||
texinfo \
|
||||
unzip \
|
||||
curl \
|
||||
yasm \
|
||||
zip \
|
||||
extra-cmake-modules
|
||||
zip
|
||||
|
||||
if [[ "$ARCH" == "i686" ]]
|
||||
then
|
||||
|
@ -664,6 +664,7 @@ else
|
|||
echo "Using cached build of Exif `cat $EXIF_PREFIX_DIR/done`"
|
||||
fi
|
||||
|
||||
|
||||
# Snorenotify
|
||||
|
||||
SNORE_PREFIX_DIR="$DEP_DIR/snorenotify"
|
||||
|
@ -680,45 +681,46 @@ then
|
|||
bsdtar --no-same-owner --no-same-permissions -xf $SNORE_FILENAME
|
||||
rm $SNORE_FILENAME
|
||||
cd snorenotify*
|
||||
|
||||
mkdir _build && cd _build
|
||||
|
||||
PKG_CONFIG_PATH=""
|
||||
PKG_CONFIG_LIBDIR=""
|
||||
CMAKE_FIND_ROOT_PATH=""
|
||||
for PREFIX_DIR in $DEP_DIR/*; do
|
||||
if [ -d $PREFIX_DIR/lib/pkgconfig ]
|
||||
then
|
||||
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$PREFIX_DIR/lib/pkgconfig"
|
||||
export PKG_CONFIG_LIBDIR="$PKG_CONFIG_LIBDIR:$PREFIX_DIR/lib/pkgconfig"
|
||||
fi
|
||||
CMAKE_FIND_ROOT_PATH="$CMAKE_FIND_ROOT_PATH $PREFIX_DIR"
|
||||
done
|
||||
export PKG_CONFIG_PATH="$QT_PREFIX_DIR/lib/pkgconfig"
|
||||
export PKG_CONFIG_LIBDIR="/usr/$ARCH-w64-mingw32"
|
||||
|
||||
echo "
|
||||
SET(CMAKE_SYSTEM_NAME Windows)
|
||||
SET(CMAKE_C_COMPILER $ARCH-w64-mingw32-gcc)
|
||||
SET(CMAKE_CXX_COMPILER $ARCH-w64-mingw32-g++)
|
||||
SET(CMAKE_RC_COMPILER $ARCH-w64-mingw32-windres)
|
||||
SET(CMAKE_FIND_ROOT_PATH /usr/$ARCH-w64-mingw32 $CMAKE_FIND_ROOT_PATH)
|
||||
" > toolchain.cmake
|
||||
echo "
|
||||
SET(CMAKE_SYSTEM_NAME Windows)
|
||||
|
||||
cmake -DCMAKE_TOOLCHAIN_FILE=./toolchain.cmake \
|
||||
SET(CMAKE_C_COMPILER $ARCH-w64-mingw32-gcc)
|
||||
SET(CMAKE_CXX_COMPILER $ARCH-w64-mingw32-g++)
|
||||
SET(CMAKE_RC_COMPILER $ARCH-w64-mingw32-windres)
|
||||
|
||||
SET(CMAKE_FIND_ROOT_PATH /usr/$ARCH-w64-mingw32 $QT_PREFIX_DIR)
|
||||
" > toolchain.cmake
|
||||
|
||||
cmake -DCMAKE_INSTALL_PREFIX="$SNORE_PREFIX_DIR" \
|
||||
-DCMAKE_BUILD_TYPE=Relase \
|
||||
-DCMAKE_INSTALL_PREFIX="$SNORE_PREFIX_DIR" \
|
||||
-DBUILD_daemon=OFF \
|
||||
-DBUILD_settings=OFF \
|
||||
-DBUILD_snoresend=OFF \
|
||||
-DCMAKE_TOOLCHAIN_FILE=./toolchain.cmake \
|
||||
..
|
||||
|
||||
make
|
||||
make install
|
||||
cd ..
|
||||
echo -n $SNORE_VERSION > $SNORE_PREFIX_DIR/done
|
||||
|
||||
unset PKG_CONFIG_PATH
|
||||
unset PKG_CONFIG_LIBDIR
|
||||
|
||||
cd ..
|
||||
|
||||
cd ..
|
||||
rm -rf ./snorenotify*
|
||||
else
|
||||
echo "Using cached build of snorenotify `cat $SNORE_PREFIX_DIR/done`"
|
||||
fi
|
||||
|
||||
|
||||
# Opus
|
||||
|
||||
OPUS_PREFIX_DIR="$DEP_DIR/libopus"
|
||||
|
@ -1285,6 +1287,7 @@ cp -r $QT_PREFIX_DIR/plugins/imageformats \
|
|||
$QT_PREFIX_DIR/plugins/iconengines \
|
||||
$QTOX_PREFIX_DIR
|
||||
cp {$OPENSSL_PREFIX_DIR,$SQLCIPHER_PREFIX_DIR,$FFMPEG_PREFIX_DIR,$OPENAL_PREFIX_DIR,$QRENCODE_PREFIX_DIR,$EXIF_PREFIX_DIR,$OPUS_PREFIX_DIR,$SODIUM_PREFIX_DIR,$VPX_PREFIX_DIR,$TOXCORE_PREFIX_DIR}/bin/*.dll $QTOX_PREFIX_DIR
|
||||
|
||||
cp "$SNORE_PREFIX_DIR/bin/libsnore-qt5.dll" $QTOX_PREFIX_DIR
|
||||
mkdir -p "$QTOX_PREFIX_DIR/libsnore-qt5"
|
||||
cp "$SNORE_PREFIX_DIR/lib/plugins/libsnore-qt5/libsnore_backend_windowstoast.dll" "$QTOX_PREFIX_DIR/libsnore-qt5"
|
||||
|
@ -1304,7 +1307,7 @@ then
|
|||
fi
|
||||
winecfg
|
||||
|
||||
# dll checks
|
||||
# qtox.exe dll checks (32-bit on i686, 64-bit on x86_64)
|
||||
python3 $MINGW_LDD_PREFIX_DIR/bin/mingw-ldd.py $QTOX_PREFIX_DIR/qtox.exe --dll-lookup-dirs $QTOX_PREFIX_DIR ~/.wine/drive_c/windows/system32 > /tmp/$ARCH-qtox-ldd
|
||||
find "$QTOX_PREFIX_DIR" -name '*.dll' > /tmp/$ARCH-qtox-dll-find
|
||||
# dlls loded at run time that don't showup as a link time dependency
|
||||
|
@ -1346,6 +1349,26 @@ do
|
|||
done < /tmp/$ARCH-qtox-dll-find
|
||||
|
||||
|
||||
# SnoreToast.exe dll checks (always 32-bit)
|
||||
if [[ "$ARCH" == "i686" ]]
|
||||
then
|
||||
SNORETOAST_WINE_DLLS=/root/.wine/drive_c/windows/system32
|
||||
elif [[ "$ARCH" == "x86_64" ]]
|
||||
then
|
||||
SNORETOAST_WINE_DLLS=/root/.wine/drive_c/windows/syswow64
|
||||
fi
|
||||
|
||||
python3 $MINGW_LDD_PREFIX_DIR/bin/mingw-ldd.py $QTOX_PREFIX_DIR/SnoreToast.exe --dll-lookup-dirs $SNORETOAST_WINE_DLLS > /tmp/$ARCH-SnoreToast-ldd
|
||||
|
||||
# Check that all dlls are in place
|
||||
if grep 'not found' /tmp/$ARCH-SnoreToast-ldd
|
||||
then
|
||||
cat /tmp/$ARCH-SnoreToast-ldd
|
||||
echo "Error: Missing some dlls."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# Run tests (only on Travis)
|
||||
set +u
|
||||
if [[ -n "$TRAVIS_CI_STAGE" ]]
|
||||
|
|
Loading…
Reference in New Issue
Block a user