1#!/usr/bin/bash 2 3set -x 4set -e 5 6name=torrent-file-editor 7 8exclude="debug debug-qt4 debug-qt5 release release-qt4 release-qt5 linux linux-qt4 linux-qt5 CMakeLists.txt.user build-mxe-shared.sh build-mxe-static.sh" 9exclude=$(echo $exclude | sed -r 's/[^ ]+/-e &/g') 10 11git clean -dfx . $exclude 12 13if [ -x "$(command -v i686-w64-mingw32.shared-qmake-qt4)" ]; then 14 mkdir mxe32-qt4-shared 15 pushd mxe32-qt4-shared 16 i686-w64-mingw32.shared-cmake -DCMAKE_BUILD_TYPE=Release .. 17 make -j5 18 version=$(cat version) 19 destdir=../${name}-${version}-mxe-qt4-shared-x32 20 mkdir $destdir 21 mv ${name}.exe $destdir 22 libdir=$(i686-w64-mingw32.shared-qmake-qt4 -query QT_INSTALL_BINS) 23 cp $libdir/QtCore4.dll $destdir 24 cp $libdir/QtGui4.dll $destdir 25 cp $libdir/../../bin/libgcc_s_sjlj-1.dll $destdir 26 cp $libdir/../../bin/libpng16-16.dll $destdir 27 cp $libdir/../../bin/libqjson.dll $destdir 28 cp $libdir/../../bin/libstdc++-6.dll $destdir 29 cp $libdir/../../bin/zlib1.dll $destdir 30 popd 31fi 32 33if [ -x "$(command -v i686-w64-mingw32.shared-qmake-qt5)" ]; then 34 mkdir mxe32-qt5-shared 35 pushd mxe32-qt5-shared 36 i686-w64-mingw32.shared-cmake -DCMAKE_BUILD_TYPE=Release -DQT5_BUILD=ON .. 37 make -j5 38 version=$(cat version) 39 destdir=../${name}-${version}-mxe-qt5-shared-x32 40 mkdir $destdir 41 mv ${name}.exe $destdir 42 libdir=$(i686-w64-mingw32.shared-qmake-qt5 -query QT_INSTALL_BINS) 43 cp $libdir/Qt5Core.dll $destdir 44 cp $libdir/Qt5Gui.dll $destdir 45 cp $libdir/Qt5Widgets.dll $destdir 46 cp $libdir/../../bin/libbz2.dll $destdir 47 cp $libdir/../../bin/libfreetype-6.dll $destdir 48 cp $libdir/../../bin/libgcc_s_sjlj-1.dll $destdir 49 cp $libdir/../../bin/libglib-2.0-0.dll $destdir 50 cp $libdir/../../bin/libharfbuzz-0.dll $destdir 51 cp $libdir/../../bin/libiconv-2.dll $destdir 52 cp $libdir/../../bin/libintl-8.dll $destdir 53 cp $libdir/../../bin/libpcre-1.dll $destdir 54 cp $libdir/../../bin/libpcre2-16-0.dll $destdir 55 cp $libdir/../../bin/libpng16-16.dll $destdir 56 cp $libdir/../../bin/libstdc++-6.dll $destdir 57 cp $libdir/../../bin/zlib1.dll $destdir 58 mkdir $destdir/platforms 59 cp $libdir/../plugins/platforms/qwindows.dll $destdir/platforms 60 mkdir $destdir/styles 61 cp $libdir/../plugins/styles/qwindowsvistastyle.dll $destdir/styles 62 popd 63fi 64 65if [ -x "$(command -v x86_64-w64-mingw32.shared-qmake-qt4)" ]; then 66 mkdir mxe64-qt4-shared 67 pushd mxe64-qt4-shared 68 x86_64-w64-mingw32.shared-cmake -DCMAKE_BUILD_TYPE=Release .. 69 make -j5 70 version=$(cat version) 71 destdir=../${name}-${version}-mxe-qt4-shared-x64 72 mkdir $destdir 73 mv ${name}.exe $destdir 74 libdir=$(x86_64-w64-mingw32.shared-qmake-qt4 -query QT_INSTALL_BINS) 75 cp $libdir/QtCore4.dll $destdir 76 cp $libdir/QtGui4.dll $destdir 77 cp $libdir/../../bin/libgcc_s_seh-1.dll $destdir 78 cp $libdir/../../bin/libpng16-16.dll $destdir 79 cp $libdir/../../bin/libqjson.dll $destdir 80 cp $libdir/../../bin/libstdc++-6.dll $destdir 81 cp $libdir/../../bin/zlib1.dll $destdir 82 popd 83fi 84 85if [ -x "$(command -v x86_64-w64-mingw32.shared-qmake-qt5)" ]; then 86 mkdir mxe64-qt5-shared 87 pushd mxe64-qt5-shared 88 x86_64-w64-mingw32.shared-cmake -DCMAKE_BUILD_TYPE=Release -DQT5_BUILD=ON .. 89 make -j5 90 version=$(cat version) 91 destdir=../${name}-${version}-mxe-qt5-shared-x64 92 mkdir $destdir 93 mv ${name}.exe $destdir 94 libdir=$(x86_64-w64-mingw32.shared-qmake-qt5 -query QT_INSTALL_BINS) 95 cp $libdir/Qt5Core.dll $destdir 96 cp $libdir/Qt5Gui.dll $destdir 97 cp $libdir/Qt5Widgets.dll $destdir 98 cp $libdir/../../bin/libbz2.dll $destdir 99 cp $libdir/../../bin/libfreetype-6.dll $destdir 100 cp $libdir/../../bin/libgcc_s_seh-1.dll $destdir 101 cp $libdir/../../bin/libglib-2.0-0.dll $destdir 102 cp $libdir/../../bin/libharfbuzz-0.dll $destdir 103 cp $libdir/../../bin/libiconv-2.dll $destdir 104 cp $libdir/../../bin/libintl-8.dll $destdir 105 cp $libdir/../../bin/libpcre-1.dll $destdir 106 cp $libdir/../../bin/libpcre2-16-0.dll $destdir 107 cp $libdir/../../bin/libpng16-16.dll $destdir 108 cp $libdir/../../bin/libstdc++-6.dll $destdir 109 cp $libdir/../../bin/zlib1.dll $destdir 110 mkdir $destdir/platforms 111 cp $libdir/../plugins/platforms/qwindows.dll $destdir/platforms 112 mkdir $destdir/styles 113 cp $libdir/../plugins/styles/qwindowsvistastyle.dll $destdir/styles 114 popd 115fi 116