2015-12-20 13:28:12 +00:00
|
|
|
|
|
|
|
#!/bin/sh
|
|
|
|
#
|
|
|
|
# Installed MinGW needed.
|
2016-01-06 12:07:26 +00:00
|
|
|
# Ubuntu : sudo apt-get install g++-mingw-w64-i686
|
2015-12-20 13:28:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if [ -z $1 ]
|
|
|
|
then
|
|
|
|
echo "Usage: xmingw <path to LyX sources>"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
lyxsrcdir=$1
|
|
|
|
builddir=$PWD
|
|
|
|
|
2016-01-06 12:07:26 +00:00
|
|
|
# ---------------------------------------------------------
|
|
|
|
# set 'versionname' to overwrite generated one based on 'ver'
|
|
|
|
#
|
|
|
|
ver=2.2
|
2015-12-20 13:28:12 +00:00
|
|
|
date=`date --utc '+%Y.%m.%d-%H.%M'`
|
2016-01-06 12:07:26 +00:00
|
|
|
if [ -z $versionname ]; then
|
|
|
|
versionname=LyX$ver-$date
|
|
|
|
fi
|
2015-12-20 13:28:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
#
|
|
|
|
|
2016-01-06 12:07:26 +00:00
|
|
|
mergefile=-DLYX_MERGE_FILES=1
|
2015-12-20 13:28:12 +00:00
|
|
|
#pch=-DLYX_PCH=1
|
|
|
|
|
2016-01-06 12:07:26 +00:00
|
|
|
cmake $lyxsrcdir \
|
|
|
|
-DCMAKE_VERBOSE_MAKEFILE=1 \
|
2015-12-20 13:28:12 +00:00
|
|
|
-DLYX_CPACK=1 \
|
|
|
|
-DLYX_PROGRAM_SUFFIX="" \
|
|
|
|
-DLYX_CONSOLE=FORCE \
|
|
|
|
-DLYX_XMINGW=$compiler \
|
|
|
|
-DLYX_USE_QT=QT5 \
|
|
|
|
-DLYX_QUIET=1 \
|
2016-02-11 08:03:07 +00:00
|
|
|
-DLYX_ENABLE_CXX11=ON \
|
2015-12-20 13:28:12 +00:00
|
|
|
-DLYX_HUNSPELL=1 \
|
|
|
|
-DLYX_3RDPARTY_BUILD=1 \
|
|
|
|
$pch $mergefile
|
|
|
|
|
|
|
|
checkExitCode
|
|
|
|
|
|
|
|
|
2016-01-06 12:07:26 +00:00
|
|
|
processors=3
|
|
|
|
lyxmake() {
|
|
|
|
make -j$processors $1
|
|
|
|
checkExitCode
|
|
|
|
}
|
|
|
|
|
2015-12-20 13:28:12 +00:00
|
|
|
|
2016-01-06 12:07:26 +00:00
|
|
|
lyxmake translations
|
|
|
|
lyxmake doc
|
|
|
|
lyxmake LyX
|
|
|
|
lyxmake tex2lyx
|
2015-12-20 13:28:12 +00:00
|
|
|
|
2016-01-06 13:24:22 +00:00
|
|
|
make install
|
|
|
|
checkExitCode
|
2015-12-20 13:28:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
# ---------------------------------------------------------
|
|
|
|
#
|
|
|
|
# deploy
|
|
|
|
#
|
|
|
|
make package
|
|
|
|
checkExitCode
|
|
|
|
|