]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
Add support for QT5 in windows build
authorEric Bollengier <eric@baculasystems.com>
Mon, 16 Mar 2020 14:11:50 +0000 (15:11 +0100)
committerEric Bollengier <eric@baculasystems.com>
Thu, 24 Mar 2022 08:03:04 +0000 (09:03 +0100)
bacula/src/qt-console/tray-monitor/win32/qmake.conf
bacula/src/win32/Makefile.inc.in
bacula/src/win32/build-depkgs-mingw-w64
bacula/src/win32/build-depkgs-mingw32

index 7a4c04be25b15033a4cbce2262fe4075cdb9d0a3..efde4a8fc6485aed142e8cf0923a801338ffd157 100644 (file)
@@ -8,7 +8,7 @@ MAKEFILE_GENERATOR      = MINGW
 TEMPLATE                = app
 CONFIG                  += qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header cross-win32
 QT                      += core gui
-DEFINES                 += UNICODE QT_LARGEFILE_SUPPORT
+DEFINES                 += UNICODE
 QMAKE_COMPILER_DEFINES  += __GNUC__ WIN32
 
 QMAKE_EXT_OBJ           = .o
index e46e98828b40ddce7a0b4b70ef735b7ea1805929..458edc1159045e8ffad5d5c8216abf3ddab7ac6c 100644 (file)
@@ -79,16 +79,16 @@ LDFLAGS := -g -Wall
 ifeq ($(MINGW_BASE),i686-w64-mingw32)
    CFLAGS += -DHAVE_MINGW_W64
    WINDRESFLAGS := -DHAVE_MINGW_W64
-   LIBS_PTHREADS := $(DEPKGS)/lib/libpthreadGCE2.a
+   LIBS_PTHREADS := -lwinpthread
 
 else ifeq ($(MINGW_BASE),x86_64-w64-mingw32)
    CFLAGS += -DHAVE_MINGW_W64
    WINDRESFLAGS := -DHAVE_MINGW_W64
-   LIBS_PTHREADS := $(DEPKGS)/lib/libpthreadGCE2.a
+   LIBS_PTHREADS := -lwinpthread
 
 else 
    # old mingw
-   LIBS_PTHREADS := $(DEPKGS)/lib/libpthreadGCE.a
+   LIBS_PTHREADS := -lwinpthread
    LDFLAGS += -mno-cygwin -Wl,--disable-auto-import
 endif
 
@@ -111,7 +111,7 @@ OBJDIRS := obj32 obj64
 
 INCLUDE_DDK := -I$(MINGW_INCLUDE)/ddk
 INCLUDE_BACULA := -I$(MAINDIR)/src -I$(BUILDDIR)/compat
-INCLUDE_PTHREADS := -I$(DEPKGS)/include/pthreads
+INCLUDE_PTHREADS :=
 INCLUDE_ZLIB := -I$(DEPKGS)/include
 INCLUDE_VSS := -I$(DEPKGS)/vss
 INCLUDE_ICONS := -I../libwin32
index ee7e9e1e75629fd9d76f305fb6a83d20eb2f8fd9..44fa8a119d9ed7b058f1bee1e173490cef0820c8 100755 (executable)
@@ -326,8 +326,9 @@ process_qt4()
    cp -rf lib/* ${DEPPKG_DIR}/lib/qt
    cp -rf src/corelib ${DEPPKG_DIR}/src/
    cp -rf src/gui ${DEPPKG_DIR}/src/
-   cp -rf lib/QtCore4.dll lib/QtGui4.dll ${DEPPKG_DIR}/bin/
-   cp -rf lib/QtCore4.dll lib/QtGui4.dll ${DEPPKG_DIR}/lib/qt/
+   cp -rf src/network ${DEPPKG_DIR}/src/
+   cp -rf bin/Qt5Widgets.dll bin/libqtmain.a lib/Qt5Core.dll lib/Qt5Gui.dll lib/Qt5Network.dll ${DEPPKG_DIR}/bin/
+   cp -rf bin/Qt5Widgets.dll bin/libqtmain.a lib/Qt5Core.dll lib/Qt5Gui.dll lib/Qt5Network.dll ${DEPPKG_DIR}/lib/qt/
 }
 
 
index 727e00251f40f846651e1749595ae5b52744621d..d3733b9e26adfd261981b5aab971cc6110402091 100755 (executable)
@@ -550,6 +550,39 @@ process_dvd_rw_tools()
    m4 -DOS=XMINGW32 Makefile.m4 | make -f - prefix=${DEPPKG_DIR} manprefix=${DEPPKG_DIR} install >>make.log 2>&1
 }
 
+process_qt5()
+{
+    if get_source "${URL_Qt5}" "${DIR_Qt5}" "${MKD_Qt5}"
+   then
+      echo Patching Qt5
+   fi
+    ./configure -xplatform win32-g++ -device-option CROSS_COMPILE=/usr/bin/x86_64-w64-mingw32- \
+                -prefix ${DEPPKG_DIR}/qt-out -opensource  -no-compile-examples \
+                -no-openvg -no-sm -no-opengl \
+                -skip qtactiveqt -skip qtcharts -skip qtdoc -skip qtlocation \
+                -skip qtremoteobjects -skip qtserialbus -skip qtwebchannel \
+                -skip qtwebview -skip qtandroidextras -skip qtconnectivity \
+                -skip qtgamepad -skip qtmacextras -skip qtpurchasing -skip qtscript \
+                -skip qttranslations -skip qtwebengine -skip qtwinextras \
+                -skip qtdatavis3d -skip qtgraphicaleffects -skip qtmultimedia \
+                -skip qtquickcontrols -skip qtscxml -skip qtspeech \
+                -skip qtvirtualkeyboard -skip qtwebglplugin -skip qtx11extras \
+                -skip qt3d -skip qtcanvas3d -skip qtdeclarative \
+                -skip qtimageformats -skip qtnetworkauth -skip qtquickcontrols2 \
+                -skip qtsensors -skip qtwayland -skip qtwebsockets -silent -nomake examples
+
+    make
+    rm -rf ${DEPPKG_DIR}/include/qt ${DEPPKG_DIR}/lib/qt
+    mkdir -p ${DEPPKG_DIR}/include/qt ${DEPPKG_DIR}/lib/qt
+    cd $DEPPKG_DIR/qt-out
+    cp -rf include/* ${DEPPKG_DIR}/include/qt
+    cp -rf lib/* ${DEPPKG_DIR}/lib/qt
+    cp -rf src/corelib ${DEPPKG_DIR}/src/
+    cp -rf src/gui ${DEPPKG_DIR}/src/
+    cp -rf bin/Qt5Widgets.dll bin/libqtmain.a bin/Qt5Core.dll bin/Qt5Gui.dll bin/Qt5Network.dll ${DEPPKG_DIR}/bin/
+    cp -rf bin/Qt5Widgets.dll bin/libqtmain.a bin/Qt5Core.dll bin/Qt5Gui.dll bin/Qt5Network.dll ${DEPPKG_DIR}/lib/qt/
+}
+
 process_qt4()
 {
    if get_source "${URL_Qt4}" "${DIR_Qt4}" "${MKD_Qt4}"
@@ -562,7 +595,7 @@ process_qt4()
       patch -p1 < ${SCRIPT_DIR}/patches/qt4-compilation.patch
    fi
    echo "Configuring Qt4"
-   ./configure -opensource -confirm-license -fast -xplatform win32-g++-4.6 \
+   ./configure -opensource -confirm-license -fast -xplatform win32-g++-8.3 \
    -device-option CROSS_COMPILE=i686-w64-mingw32- -device-option \
    PKG_CONFIG='i686-w64-mingw32-pkg-config' -force-pkg-config -release \
    -exceptions -shared -prefix ${DEPPKG_DIR}/qt-out -prefix-install -no-script \
@@ -576,15 +609,6 @@ process_qt4()
    -no-javascript-jit -no-qt3support -nomake tools \
    -no-xmlpatterns -no-multimedia -nomake tools -silent
 
-   local qt_source_dir=`pwd`
-   # Required libz.dll.a, zlib.h and zconf.h for proper Qt build purpose
-   process_zlib
-   cd "${qt_source_dir}"
-   local zlib_dir=`basename "${URL_ZLIB}" | sed 's/.tar.gz//'`
-   cp "../${zlib_dir}/libz.dll.a" ./lib/
-   cp "../${zlib_dir}/zlib.h" ./include/
-   cp "../${zlib_dir}/zconf.h" ./include/
-
    make
 
    echo "Installing Qt4"