subsurface/packaging/windows/mingw-make.sh
Claudiu Olteanu d3d3cd9e35 Update the documentation with dependencies for cross-building on Linux to Windows
Update the documentation with dependencies for cross-building on Linux
to Windows for OpenSuse platform and correct some building instructions.
Moreover fix the windows building script to use the architectural specific
binary.

Signed-off-by: Claudiu Olteanu <olteanu.claudiu@ymail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2015-03-17 13:59:59 -07:00

79 lines
2.5 KiB
Bash
Executable file

#!/bin/sh
#
# just a small shell script that is used to invoke make with the right
# parameters to cross compile a binary for Windows
#
# the paths work for the default mingw32 install on Fedora - adjust as
# necessary
# this assumes that local cross builds for libdivecomputer and libgit2
# are in ../libdivecomputer and ../libgit2
# force recreation of the nsi file and Subsurface version header file
# in order to get the correct version number
BASEDIR=$(dirname $0)
rm $BASEDIR/subsurface.nsi > /dev/null 2>&1
rm $BASEDIR/../../ssrf-version.h > /dev/null 2>&1
if [[ $1 == "Qt5-64" ]] ; then
export PATH=/usr/x86_64-w64-mingw32/sys-root/mingw/bin:$PATH
MINGW_MAKE="mingw64-make"
else
export PATH=/usr/i686-w64-mingw32/sys-root/mingw/bin:$PATH
MINGW_MAKE="mingw32-make"
fi
export objdump=mingw-objdump
if [[ $1 == "Qt5-64" ]] ; then
shift
mingw64-qmake-qt5 \
CROSS_PATH=/usr/x86_64-w64-mingw32/sys-root/mingw \
QMAKE_LRELEASE=/usr/x86_64-w64-mingw32/bin/qt5/lrelease \
QMAKE_MOC=/usr/x86_64-w64-mingw32/bin/qt5/moc \
QMAKE_UIC=/usr/x86_64-w64-mingw32/bin/qt5/uic \
QMAKE_RCC=/usr/x86_64-w64-mingw32/bin/qt5/rcc \
LIBMARBLEDEVEL=../marble \
LIBGIT2DEVEL=../libgit2 CONFIG+=libgit21-api \
QMAKE_LIBDIR+=../openssl \
CONFIG+=win64target \
CONFIG+=brokenQt532win \
$BASEDIR/../../subsurface.pro
elif [[ $1 == "Qt5" ]] ; then
shift
mingw32-qmake-qt5 \
CROSS_PATH=/usr/i686-w64-mingw32/sys-root/mingw \
QMAKE_LRELEASE=/usr/i686-w64-mingw32/bin/qt5/lrelease \
QMAKE_MOC=/usr/i686-w64-mingw32/bin/qt5/moc \
QMAKE_UIC=/usr/i686-w64-mingw32/bin/qt5/uic \
QMAKE_RCC=/usr/i686-w64-mingw32/bin/qt5/rcc \
LIBDCDEVEL=../libdivecomputer \
LIBMARBLEDEVEL=../marble \
LIBGIT2DEVEL=../libgit2 CONFIG+=libgit21-api \
$BASEDIR/../../subsurface.pro
elif [[ $1 == "Qt5debug" ]] ; then
shift
mingw32-qmake-qt5 \
CROSS_PATH=/usr/i686-w64-mingw32/sys-root/mingw \
QMAKE_LRELEASE=/usr/i686-w64-mingw32/bin/qt5/lrelease \
QMAKE_MOC=/usr/i686-w64-mingw32/bin/qt5/moc \
QMAKE_UIC=/usr/i686-w64-mingw32/bin/qt5/uic \
QMAKE_RCC=/usr/i686-w64-mingw32/bin/qt5/rcc \
QMAKE_CFLAGS_RELEASE='$$QMAKE_CFLAGS_DEBUG -O0 -g' \
QMAKE_CXXFLAGS_RELEASE='$$QMAKE_CXXFLAGS_DEBUG -O0 -g' \
LIBDCDEVEL=../libdivecomputer \
LIBMARBLEDEVEL=../marble \
LIBGIT2DEVEL=../libgit2 CONFIG+=libgit21-api \
V=1 \
$BASEDIR/../../subsurface.pro
else
mingw32-qmake-qt4 \
CROSS_PATH=/usr/i686-w64-mingw32/sys-root/mingw \
LIBMARBLEDEVEL=../marble \
LIBGIT2DEVEL=../libgit2 CONFIG+=libgit21-api \
$BASEDIR/../../subsurface.pro
fi
$MINGW_MAKE $@