Installing MXE
cd /opt
git clone https://github.com/mxe/mxe.git
cd mxe
make qt5 MXE_TARGETS=i686-w64-mingw32.static
# or .shared but I have only used static now
Configuring the Build step in Jenkins
Build steps:
# Env variables
export target=i686-w64-mingw32.static
export mxedir=/opt/mxe/
export releasedir=$PWD/$JOB_NAME.$BUILD_ID/
export PATH=$mxedir/usr/bin:$PATH
# Build
sed -i "s/^#DEFINES/DEFINES/" cutecw.pro
$mxedir/usr/bin/$target-qmake-qt5 cutecw.pro
make
# Creating release dir and copying assets
mkdir -p $releasedir
cp release/cutecw.exe $releasedir/
cp -r books $releasedir/
cp -r icons $releasedir/
cp LICENSE $releasedir/LICENSE.txt
cp *.qm $releasedir/
cp cutecw.cfg.sample $releasedir/cutecw.cfg
# Build info
echo "Build infos" > $releasedir/BUILD.txt
echo "Built with MXE [git:master] and qt5 with target $target" >> $releasedir/BUILD.txt
echo "Jenkins build: $BUILD_TAG" >> $releasedir/BUILD.txt
echo "Build ID $BUILD_ID: " >> $releasedir/BUILD.txt
# Create a zip archive
zip -r $JOB_NAME.$BUILD_ID.zip $JOB_NAME.$BUILD_ID/
# Creating checksums
md5sum $JOB_NAME.$BUILD_ID.zip > $JOB_NAME.$BUILD_ID.sums
sha256sum $JOB_NAME.$BUILD_ID.zip >> $JOB_NAME.$BUILD_ID.sums
Archivate artifacts:
cutecw.zip, cutecw.sums
I have also used the Copy Artifacts over SSH plugin to copy the archive and checksums over the public repository.
Comments
No comments yet. Be the first to react!