add script to cross-compile for Windows

This commit is contained in:
Peter Kümmel 2015-12-20 14:28:12 +01:00
parent bd74a15ebd
commit 2a112d8a65

123
development/cmake/scripts/xmingw Executable file
View File

@ -0,0 +1,123 @@
#!/bin/sh
#
# Installed MinGW needed.
# Ubuntu : sudo apt-get install gcc-mingw-w64-i686
if [ -z $1 ]
then
echo "Usage: xmingw <path to LyX sources>"
exit 1
fi
lyxsrcdir=$1
builddir=$PWD
date=`date --utc '+%Y.%m.%d-%H.%M'`
versionname=LyX$ver-$date
echo ---------------------------------------------------------
echo ---------- Building $versionname
echo ---------------------------------------------------------
# ---------------------------------------------------------
#
# helper function to check return code
#
checkExitCode() {
exitcode=$?
if [ $exitcode -ne 0 ]; then
echo Command failed
exit 1
fi
}
dep=$lyxsrcdir/../lyx-dependencies
mkdir -p $dep
server=http://sourceforge.net/projects/kst/files/3rdparty
if [ "$2" = "x64" ]; then
mingw=x86_64-w64-mingw32
win=win64
branch=LyX$ver-master-win64
else
win=win32
mingw=i686-w64-mingw32
branch=LyX$ver-master-win32
fi
qtver=5.5.1
qtver=Qt-$qtver-$mingw
compiler=$mingw
LTS=14.04
echo Checking mingw installation ...
$compiler-gcc -dumpversion
checkExitCode
# ---------------------------------------------------------
#
# download and unpack Qt
#
if [ ! -d $dep/$qtver ]; then
qttar=$qtver-Ubuntu64-$LTS$tarver.tar
wget $server/$qttar.xz
checkExitCode
xz -d $qttar.xz
cd $dep
tar xf $builddir/$qttar
checkExitCode
echo -e "[Paths]\nPrefix = $dep/$qtver" > $dep/$qtver/bin/qt.conf
cd $builddir
fi
export PATH=$dep/$qtver/bin:$PATH
echo Checking Qt installation ...
which qmake
checkExitCode
# ---------------------------------------------------------
#
# build LyX
#
#mergefile=-DLYX_MERGE_FILE
#pch=-DLYX_PCH=1
$cmakebin $lyxsrcdir \
-DLYX_CPACK=1 \
-DLYX_PROGRAM_SUFFIX="" \
-DLYX_CONSOLE=FORCE \
-DLYX_XMINGW=$compiler \
-DLYX_USE_QT=QT5 \
-DLYX_QUIET=1 \
-DLYX_ENABLE_CXX11=1 \
-DLYX_HUNSPELL=1 \
-DLYX_3RDPARTY_BUILD=1 \
$pch $mergefile
checkExitCode
#processors=2
make -j $processors
checkExitCode
# ---------------------------------------------------------
#
# deploy
#
make package
checkExitCode