[mingw-qt5-qtbase] Update to 5.1.0 and use external pcre
Erik van Pienbroek
epienbro at fedoraproject.org
Thu Jul 11 20:11:26 UTC 2013
commit 7a3562e7c38aa0ef998cf3389b069a3ad5b92ef4
Author: Erik van Pienbroek <epienbro at fedoraproject.org>
Date: Thu Jul 11 22:10:53 2013 +0200
Update to 5.1.0 and use external pcre
- Update to 5.1.0
- Fix detection of external pcre library
- Added BR: mingw32-pcre mingw64-pcre
.gitignore | 1 +
mingw-qt5-qtbase.spec | 118 ++++++++++++--------
qmake.conf.win32 | 18 ++--
qmake.conf.win64 | 18 ++--
qt5-add-angle-support.patch | 18 ++--
qt5-dwrite-compile-fix.patch | 30 -----
...-compilation-when-freetype-isnt-available.patch | 15 +++
qt5-qtbase-fix-linking-against-static-pcre.patch | 13 ++
qt5-use-external-angle-library.patch | 23 +++-
sources | 2 +-
10 files changed, 146 insertions(+), 110 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 0c53aef..408f9e6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/qtbase-opensource-src-5.0.0.tar.xz
/qtbase-opensource-src-5.0.1.tar.xz
/qtbase-opensource-src-5.0.2.tar.xz
+/qtbase-opensource-src-5.1.0.tar.xz
diff --git a/mingw-qt5-qtbase.spec b/mingw-qt5-qtbase.spec
index aa31707..a39a719 100644
--- a/mingw-qt5-qtbase.spec
+++ b/mingw-qt5-qtbase.spec
@@ -18,9 +18,12 @@
%global source_folder qtbase-opensource-src-%{version}%{?pre:-%{pre}}
%endif
+# first two digits of version
+%global release_version %(echo %{version} | awk -F. '{print $1"."$2}')
+
Name: mingw-qt5-qtbase
-Version: 5.0.2
-Release: 3%{?pre:.%{pre}}%{?snapshot_date:.git%{snapshot_date}.%{snapshot_rev}}%{?dist}
+Version: 5.1.0
+Release: 1%{?pre:.%{pre}}%{?snapshot_date:.git%{snapshot_date}.%{snapshot_rev}}%{?dist}
Summary: Qt5 for Windows - QtBase component
License: GPLv3 with exceptions or LGPLv2 with exceptions
@@ -32,17 +35,13 @@ URL: http://www.qtsoftware.com/
# wget http://qt.gitorious.org/qt/qtbase/archive-tarball/%{snapshot_rev} -O qt5-qtbase-%{snapshot_rev}.tar.gz
Source0: qt5-qtbase-%{snapshot_rev}.tar.gz
%else
-Source0: http://releases.qt-project.org/qt5/%{version}/submodules/qtbase-opensource-src-%{version}%{?pre:-%{pre}}.tar.xz
+Source0: http://download.qt-project.org/official_releases/qt/%{release_version}/%{version}/submodules/qtbase-opensource-src-%{version}%{?pre:-%{pre}}.tar.xz
%endif
# Special cross-compilation qmake target.
Source1: qmake.conf.win32
Source2: qmake.conf.win64
-# Try harder to locate external OpenSSL libraries
-# https://codereview.qt-project.org/#change,47079
-Patch2: qt5-fix-detection-of-openssl.patch
-
# When building Qt as static library some files have a different content
# when compared to the static library. Merge those changes manually.
# This patch also applies some additional changes which are required to make
@@ -81,14 +80,25 @@ Patch14: qt5-prevent-conflict-with-interface-keyword.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=858080
Patch15: qt5-workaround-pkgconfig-install-issue.patch
-# Fix compilation of the DirectWrite specific code
-# Commit 9a89d614f26262fcb6895d1dab93519d732ba011
-Patch16: qt5-dwrite-compile-fix.patch
+# Fix the compilation when freetype isn't available
+# i686-w64-mingw32-g++ -g -shared -Wl,--out-implib,/home/erik/fedora/mingw-qt5-qtbase/build_release_shared_win32/plugins/platforms/libqoffscreen.a -o ../../../../plugins/platforms/qoffscreen.dll .obj/release-shared/main.o .obj/release-shared/qoffscreenintegration.o .obj/release-shared/qoffscreenwindow.o .obj/release-shared/qoffscreencommon.o .obj/release-shared/qoffscreenintegration_dummy.o -L/home/erik/fedora/mingw-qt5-qtbase/build_release_shared_win32/lib -lQt5PlatformSupport -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -ljpeg -lpng -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -lkernel32 -lz -lQt5Gui -lQt5Core -lEGL -lGLESv2 -lgdi32 -luser32
+# .obj/release-shared/qoffscreenintegration.o: In function `QBasicFontDatabase':
+# /home/erik/fedora/mingw-qt5-qtbase/build_release_shared_win32/src/plugins/platforms/offscreen/../../../../include/QtPlatformSupport/5.1.0/QtPlatformSupport/private/../../../../../../qtbase-opensource-src-5.1.0-beta1/src/platformsupport/fontdatabases/basic/qbasicfontdatabase_p.h:57: undefined reference to `vtable for QBasicFontDatabase'
+# collect2: error: ld returned 1 exit status
+# make[5]: *** [../../../../plugins/platforms/qoffscreen.dll] Error 1
+# make[5]: Leaving directory `/home/erik/fedora/mingw-qt5-qtbase/build_release_shared_win32/src/plugins/platforms/offscreen'
+Patch16: qt5-fix-compilation-when-freetype-isnt-available.patch
# Display message box if platform plugin cannot be found
# Commit 7ead3a39c71949e28d682f893f8b4037e25d7259
Patch17: qt5-qtbase-display-message-box-if-platform-plugin-cannot-be-found.patch
+# The bundled pcre is built as static library by default
+# As we're not using the bundled copy but our own copy
+# we need to do some fiddling to fix compilation issues
+# when trying to build static qmake projects
+Patch18: qt5-qtbase-fix-linking-against-static-pcre.patch
+
BuildRequires: mingw32-filesystem >= 95
BuildRequires: mingw32-gcc
@@ -104,6 +114,7 @@ BuildRequires: mingw32-sqlite
BuildRequires: mingw32-dbus
BuildRequires: mingw32-pkg-config
BuildRequires: mingw32-angleproject
+BuildRequires: mingw32-pcre
BuildRequires: mingw64-filesystem >= 95
BuildRequires: mingw64-gcc
@@ -119,6 +130,7 @@ BuildRequires: mingw64-sqlite
BuildRequires: mingw64-dbus
BuildRequires: mingw64-pkg-config
BuildRequires: mingw64-angleproject
+BuildRequires: mingw64-pcre
BuildRequires: zip
BuildRequires: dos2unix
@@ -219,8 +231,7 @@ Static version of the mingw64-qt5-qtbase library.
%prep
%setup -q -n %{source_folder}
-%patch2 -p0
-%patch3 -p0
+%patch3 -p0 -b .merge_static_shared
%patch9 -p0 -b .angle
%patch10 -p0 -b .external_angle
%patch11 -p0 -b .platform_segv
@@ -228,8 +239,9 @@ Static version of the mingw64-qt5-qtbase library.
%patch13 -p0 -b .non_x86
%patch14 -p0 -b .interface
%patch15 -p0 -b .pkgconfig
-%patch16 -p1 -b .dwrite
+%patch16 -p1 -b .no_freetype
%patch17 -p1 -b .platform_msgbox
+%patch18 -p1 -b .pcre
# Cross-compilation qmake target.
mkdir mkspecs/%{platform_win32}
@@ -240,7 +252,10 @@ cp mkspecs/win32-g++/qplatformdefs.h mkspecs/%{platform_win32}
cp mkspecs/win32-g++/qplatformdefs.h mkspecs/%{platform_win64}
# Make sure the Qt5 build system uses our external ANGLE library
-rm -rf src/3rdparty/angle
+rm -rf src/3rdparty/angle include/QtANGLE/{EGL,GLES2,KHR}
+
+# As well as our external PCRE library
+rm -rf src/3rdparty/pcre
%build
@@ -270,6 +285,8 @@ qt_configure_args_generic="\
-make demos"
qt_configure_args_win32="\
+ -hostprefix %{_prefix}/%{mingw32_target} \
+ -hostdatadir %{mingw32_datadir}/qt5 \
-prefix %{mingw32_prefix} \
-bindir %{mingw32_bindir} \
-archdatadir %{mingw32_datadir}/qt5 \
@@ -284,6 +301,8 @@ qt_configure_args_win32="\
-xplatform %{platform_win32}"
qt_configure_args_win64="\
+ -hostprefix %{_prefix}/%{mingw64_target} \
+ -hostdatadir %{mingw64_datadir}/qt5 \
-prefix %{mingw64_prefix} \
-bindir %{mingw64_bindir} \
-archdatadir %{mingw64_datadir}/qt5 \
@@ -362,31 +381,13 @@ mkdir $RPM_BUILD_ROOT/static
make install -C ../build_release_static_win32$BUILDDIR INSTALL_ROOT=$RPM_BUILD_ROOT/static
make install -C ../build_release_static_win64$BUILDDIR INSTALL_ROOT=$RPM_BUILD_ROOT/static
-# The libQt5Bootstrap.a library is a native Linux library which is required to build tools
-# like lrelease and lupdate which are part of the mingw-qt5-qttools package. Therefore this
-# library needs to be placed in a separate folder in order to avoid getting native and
-# win32/win64 libraries mixed up. %%{_libdir} isn't desired for this as this can potentially
-# conflict with the native Qt5 package, so use a different folder
-mkdir $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/lib/ $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/lib/
-mv $RPM_BUILD_ROOT%{mingw32_libdir}/libQt5Bootstrap.a $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/lib/
-mv $RPM_BUILD_ROOT%{mingw64_libdir}/libQt5Bootstrap.a $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/lib/
-
-# Make sure other qmake projects can find the Qt5Bootstrap library
-sed -i s@'$$QT_MODULE_LIB_BASE'@'%{_prefix}/%{mingw32_target}/lib'@ $RPM_BUILD_ROOT%{mingw32_datadir}/qt5/mkspecs/modules/qt_lib_bootstrap.pri
-sed -i s@'$$QT_MODULE_LIB_BASE'@'%{_prefix}/%{mingw64_target}/lib'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/modules/qt_lib_bootstrap.pri
-
# The mingw gcc compiler assumes that %%{_prefix}/%%{mingw32_target}/lib and
# %%{prefix}/%%{mingw64_target}/lib are paths which need to be searched
# during linking for cross-compiled libraries. As this isn't intended and
# introduces unwanted side effects (related to building mingw-qt5-qttools)
# remove the reference to it
-sed -i s@'"%{_prefix}/%{mingw32_target}/lib" '@@ $RPM_BUILD_ROOT%{mingw32_datadir}/qt5/mkspecs/qconfig.pri
-sed -i s@'"%{_prefix}/%{mingw64_target}/lib" '@@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/qconfig.pri
-
-# The pkg-config files for Qt5Bootstrap aren't interesting as this particular
-# library only contains native code and not cross-compiled code
-rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/pkgconfig/Qt5Bootstrap.pc
-rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/pkgconfig/Qt5Bootstrap.pc
+sed -i s@'"%{_prefix}/%{mingw32_target}/lib" '@@g $RPM_BUILD_ROOT%{mingw32_datadir}/qt5/mkspecs/qconfig.pri
+sed -i s@'"%{_prefix}/%{mingw64_target}/lib" '@@g $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/qconfig.pri
# Rename the .a files to .dll.a as they're actually import libraries and not static libraries
for FN in $RPM_BUILD_ROOT%{mingw32_libdir}/*.a $RPM_BUILD_ROOT%{mingw64_libdir}/*.a ; do
@@ -425,8 +426,13 @@ rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.dll
rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/*.prl
rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.prl
-rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/libQt5Bootstrap.la
-rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/libQt5Bootstrap.la
+rm -f $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/lib/libQt5Bootstrap.la
+rm -f $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/lib/libQt5Bootstrap.prl
+rm -rf $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/lib/pkgconfig
+
+rm -f $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/lib/libQt5Bootstrap.la
+rm -f $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/lib/libQt5Bootstrap.prl
+rm -rf $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/lib/pkgconfig
# Manually install qmake and other native tools so we don't depend anymore on
# the version of the native Fedora Qt and also fix issues as illustrated at
@@ -437,16 +443,15 @@ mkdir -p $RPM_BUILD_ROOT%{_bindir}
mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/bin
mkdir -p $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/bin
-for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt; do
- mv $RPM_BUILD_ROOT%{mingw32_bindir}/$tool $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/bin/$tool-qt5
+for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt.pl; do
+ mv $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/bin/$tool $RPM_BUILD_ROOT%{_prefix}/%{mingw32_target}/bin/$tool-qt5
ln -s ../%{mingw32_target}/bin/$tool-qt5 $RPM_BUILD_ROOT%{_bindir}/%{mingw32_target}-$tool-qt5
-done
-ln -s %{mingw32_target}-qmake-qt5 $RPM_BUILD_ROOT%{_bindir}/mingw32-qmake-qt5
-for tool in qmake moc rcc uic qdbuscpp2xml qdbusxml2cpp qdoc syncqt ; do
- mv $RPM_BUILD_ROOT%{mingw64_bindir}/$tool $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/bin/$tool-qt5
+ mv $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/bin/$tool $RPM_BUILD_ROOT%{_prefix}/%{mingw64_target}/bin/$tool-qt5
ln -s ../%{mingw64_target}/bin/$tool-qt5 $RPM_BUILD_ROOT%{_bindir}/%{mingw64_target}-$tool-qt5
done
+
+ln -s %{mingw32_target}-qmake-qt5 $RPM_BUILD_ROOT%{_bindir}/mingw32-qmake-qt5
ln -s %{mingw64_target}-qmake-qt5 $RPM_BUILD_ROOT%{_bindir}/mingw64-qmake-qt5
# Make sure that all Qt projects use the tools which are provided by this package
@@ -473,6 +478,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw32_libdir}/libQt5Gui.dll.a
%{mingw32_libdir}/libQt5Network.dll.a
%{mingw32_libdir}/libQt5OpenGL.dll.a
+%{mingw32_libdir}/libQt5OpenGLExtensions.dll.a
%{mingw32_libdir}/libQt5PlatformSupport.dll.a
%{mingw32_libdir}/libQt5PrintSupport.dll.a
%{mingw32_libdir}/libQt5Sql.dll.a
@@ -486,6 +492,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw32_libdir}/pkgconfig/Qt5Gui.pc
%{mingw32_libdir}/pkgconfig/Qt5Network.pc
%{mingw32_libdir}/pkgconfig/Qt5OpenGL.pc
+%{mingw32_libdir}/pkgconfig/Qt5OpenGLExtensions.pc
%{mingw32_libdir}/pkgconfig/Qt5PlatformSupport.pc
%{mingw32_libdir}/pkgconfig/Qt5PrintSupport.pc
%{mingw32_libdir}/pkgconfig/Qt5Sql.pc
@@ -506,17 +513,20 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%dir %{mingw32_libdir}/qt5/plugins/platforms
%{mingw32_libdir}/qt5/plugins/platforms/qminimal.dll
%{mingw32_libdir}/qt5/plugins/platforms/qwindows.dll
+%{mingw32_libdir}/qt5/plugins/platforms/qoffscreen.dll
%dir %{mingw32_libdir}/qt5/plugins/printsupport
%{mingw32_libdir}/qt5/plugins/printsupport/windowsprintersupport.dll
%dir %{mingw32_libdir}/qt5/plugins/sqldrivers
%{mingw32_libdir}/qt5/plugins/sqldrivers/qsqlite.dll
%{mingw32_libdir}/qt5/plugins/sqldrivers/qsqlodbc.dll
+%{mingw32_libdir}/cmake/Qt5/
%{mingw32_libdir}/cmake/Qt5Core/
%{mingw32_libdir}/cmake/Qt5Concurrent/
%{mingw32_libdir}/cmake/Qt5DBus/
%{mingw32_libdir}/cmake/Qt5Gui/
%{mingw32_libdir}/cmake/Qt5Network/
%{mingw32_libdir}/cmake/Qt5OpenGL/
+%{mingw32_libdir}/cmake/Qt5OpenGLExtensions/
%{mingw32_libdir}/cmake/Qt5PrintSupport/
%{mingw32_libdir}/cmake/Qt5Sql/
%{mingw32_libdir}/cmake/Qt5Test/
@@ -529,6 +539,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw32_includedir}/qt5/QtGui/
%{mingw32_includedir}/qt5/QtNetwork/
%{mingw32_includedir}/qt5/QtOpenGL/
+%{mingw32_includedir}/qt5/QtOpenGLExtensions/
%{mingw32_includedir}/qt5/QtPlatformSupport/
%{mingw32_includedir}/qt5/QtPrintSupport/
%{mingw32_includedir}/qt5/QtSql/
@@ -545,7 +556,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{_bindir}/%{mingw32_target}-qdoc-qt5
%{_bindir}/%{mingw32_target}-qmake-qt5
%{_bindir}/%{mingw32_target}-rcc-qt5
-%{_bindir}/%{mingw32_target}-syncqt-qt5
+%{_bindir}/%{mingw32_target}-syncqt.pl-qt5
%{_bindir}/%{mingw32_target}-uic-qt5
%{_bindir}/mingw32-qmake-qt5
%{_prefix}/%{mingw32_target}/bin/moc-qt5
@@ -554,7 +565,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{_prefix}/%{mingw32_target}/bin/qdoc-qt5
%{_prefix}/%{mingw32_target}/bin/qmake-qt5
%{_prefix}/%{mingw32_target}/bin/rcc-qt5
-%{_prefix}/%{mingw32_target}/bin/syncqt-qt5
+%{_prefix}/%{mingw32_target}/bin/syncqt.pl-qt5
%{_prefix}/%{mingw32_target}/bin/uic-qt5
%{mingw32_datadir}/qt5/
@@ -568,6 +579,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw32_libdir}/libQt5Gui.a
%{mingw32_libdir}/libQt5Network.a
%{mingw32_libdir}/libQt5OpenGL.a
+%{mingw32_libdir}/libQt5OpenGLExtensions.a
%{mingw32_libdir}/libQt5PlatformSupport.a
%{mingw32_libdir}/libQt5PrintSupport.a
%{mingw32_libdir}/libQt5Sql.a
@@ -594,6 +606,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw64_libdir}/libQt5Gui.dll.a
%{mingw64_libdir}/libQt5Network.dll.a
%{mingw64_libdir}/libQt5OpenGL.dll.a
+%{mingw64_libdir}/libQt5OpenGLExtensions.dll.a
%{mingw64_libdir}/libQt5PlatformSupport.dll.a
%{mingw64_libdir}/libQt5PrintSupport.dll.a
%{mingw64_libdir}/libQt5Sql.dll.a
@@ -607,6 +620,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw64_libdir}/pkgconfig/Qt5Gui.pc
%{mingw64_libdir}/pkgconfig/Qt5Network.pc
%{mingw64_libdir}/pkgconfig/Qt5OpenGL.pc
+%{mingw64_libdir}/pkgconfig/Qt5OpenGLExtensions.pc
%{mingw64_libdir}/pkgconfig/Qt5PlatformSupport.pc
%{mingw64_libdir}/pkgconfig/Qt5PrintSupport.pc
%{mingw64_libdir}/pkgconfig/Qt5Sql.pc
@@ -627,17 +641,20 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%dir %{mingw64_libdir}/qt5/plugins/platforms
%{mingw64_libdir}/qt5/plugins/platforms/qminimal.dll
%{mingw64_libdir}/qt5/plugins/platforms/qwindows.dll
+%{mingw64_libdir}/qt5/plugins/platforms/qoffscreen.dll
%dir %{mingw64_libdir}/qt5/plugins/printsupport
%{mingw64_libdir}/qt5/plugins/printsupport/windowsprintersupport.dll
%dir %{mingw64_libdir}/qt5/plugins/sqldrivers
%{mingw64_libdir}/qt5/plugins/sqldrivers/qsqlite.dll
%{mingw64_libdir}/qt5/plugins/sqldrivers/qsqlodbc.dll
+%{mingw64_libdir}/cmake/Qt5/
%{mingw64_libdir}/cmake/Qt5Core/
%{mingw64_libdir}/cmake/Qt5Concurrent/
%{mingw64_libdir}/cmake/Qt5DBus/
%{mingw64_libdir}/cmake/Qt5Gui/
%{mingw64_libdir}/cmake/Qt5Network/
%{mingw64_libdir}/cmake/Qt5OpenGL/
+%{mingw64_libdir}/cmake/Qt5OpenGLExtensions/
%{mingw64_libdir}/cmake/Qt5PrintSupport/
%{mingw64_libdir}/cmake/Qt5Sql/
%{mingw64_libdir}/cmake/Qt5Test/
@@ -650,12 +667,14 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw64_includedir}/qt5/QtGui/
%{mingw64_includedir}/qt5/QtNetwork/
%{mingw64_includedir}/qt5/QtOpenGL/
+%{mingw64_includedir}/qt5/QtOpenGLExtensions/
%{mingw64_includedir}/qt5/QtPlatformSupport/
%{mingw64_includedir}/qt5/QtPrintSupport/
%{mingw64_includedir}/qt5/QtSql/
%{mingw64_includedir}/qt5/QtTest/
%{mingw64_includedir}/qt5/QtWidgets/
%{mingw64_includedir}/qt5/QtXml/
+%{mingw64_docdir}/qt5/
%files -n mingw64-qt5-qmake
%doc LGPL_EXCEPTION.txt LICENSE.FDL LICENSE.GPL LICENSE.LGPL LICENSE.PREVIEW.COMMERCIAL
@@ -665,7 +684,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{_bindir}/%{mingw64_target}-qdoc-qt5
%{_bindir}/%{mingw64_target}-qmake-qt5
%{_bindir}/%{mingw64_target}-rcc-qt5
-%{_bindir}/%{mingw64_target}-syncqt-qt5
+%{_bindir}/%{mingw64_target}-syncqt.pl-qt5
%{_bindir}/%{mingw64_target}-uic-qt5
%{_bindir}/mingw64-qmake-qt5
%{_prefix}/%{mingw64_target}/bin/moc-qt5
@@ -674,10 +693,9 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{_prefix}/%{mingw64_target}/bin/qdoc-qt5
%{_prefix}/%{mingw64_target}/bin/qmake-qt5
%{_prefix}/%{mingw64_target}/bin/rcc-qt5
-%{_prefix}/%{mingw64_target}/bin/syncqt-qt5
+%{_prefix}/%{mingw64_target}/bin/syncqt.pl-qt5
%{_prefix}/%{mingw64_target}/bin/uic-qt5
%{mingw64_datadir}/qt5/
-%{mingw64_docdir}/qt5/
%files -n mingw64-qt5-qtbase-devel
%{_prefix}/%{mingw64_target}/lib/libQt5Bootstrap.a
@@ -689,6 +707,7 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%{mingw64_libdir}/libQt5Gui.a
%{mingw64_libdir}/libQt5Network.a
%{mingw64_libdir}/libQt5OpenGL.a
+%{mingw64_libdir}/libQt5OpenGLExtensions.a
%{mingw64_libdir}/libQt5PlatformSupport.a
%{mingw64_libdir}/libQt5PrintSupport.a
%{mingw64_libdir}/libQt5Sql.a
@@ -698,6 +717,11 @@ sed -i s@'#QT_TOOL'@'QT_TOOL'@ $RPM_BUILD_ROOT%{mingw64_datadir}/qt5/mkspecs/%{p
%changelog
+* Wed Jul 10 2013 Erik van Pienbroek <epienbro at fedoraproject.org> - 5.1.0-1
+- Update to 5.1.0
+- Fix detection of external pcre library
+- Added BR: mingw32-pcre mingw64-pcre
+
* Wed Jul 10 2013 Erik van Pienbroek <epienbro at fedoraproject.org> - 5.0.2-3
- Display message box if platform plugin cannot be found (QTBUG-31765, QTBUG-31760)
diff --git a/qmake.conf.win32 b/qmake.conf.win32
index afc528d..c38a7cd 100644
--- a/qmake.conf.win32
+++ b/qmake.conf.win32
@@ -80,7 +80,7 @@ QMAKE_EXTENSION_STATICLIB = a
QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz
+QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lpcre16
QMAKE_LIBS_WIDGETS = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32
QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng
QMAKE_LIBS_NETWORK = -lws2_32
@@ -98,14 +98,14 @@ QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqt5main
}
PKG_CONFIG = i686-w64-mingw32-pkg-config
-#QT_TOOL.moc.command = i686-w64-mingw32-moc-qt5
-#QT_TOOL.uic.command = i686-w64-mingw32-uic-qt5
-#QT_TOOL.rcc.command = i686-w64-mingw32-rcc-qt5
-#QT_TOOL.syncqt.command = i686-w64-mingw32-syncqt-qt5
-QT_TOOL.qdoc.command = i686-w64-mingw32-qdoc-qt5
-QT_TOOL.qhelpgenerator.command = i686-w64-mingw32-qhelpgenerator-qt5
-
-QT_TOOL.lrelease.command = i686-w64-mingw32-lrelease-qt5
+#QT_TOOL.moc.binary = i686-w64-mingw32-moc-qt5
+#QT_TOOL.uic.binary = i686-w64-mingw32-uic-qt5
+#QT_TOOL.rcc.binary = i686-w64-mingw32-rcc-qt5
+#QT_TOOL.syncqt.binary = i686-w64-mingw32-syncqt.pl-qt5
+QT_TOOL.qdoc.binary = i686-w64-mingw32-qdoc-qt5
+QT_TOOL.qhelpgenerator.binary = i686-w64-mingw32-qhelpgenerator-qt5
+
+QT_TOOL.lrelease.binary = i686-w64-mingw32-lrelease-qt5
QMAKE_LRELEASE = i686-w64-mingw32-lrelease-qt5
QMAKE_IDL = mingw-w64-widl -m32
diff --git a/qmake.conf.win64 b/qmake.conf.win64
index 2f375b0..b35b2e8 100644
--- a/qmake.conf.win64
+++ b/qmake.conf.win64
@@ -80,7 +80,7 @@ QMAKE_EXTENSION_STATICLIB = a
QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz
+QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32 -lz -lpcre16
QMAKE_LIBS_WIDGETS = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32
QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -lpng
QMAKE_LIBS_NETWORK = -lws2_32
@@ -98,14 +98,14 @@ QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqt5main
}
PKG_CONFIG = x86_64-w64-mingw32-pkg-config
-#QT_TOOL.moc.command = x86_64-w64-mingw32-moc-qt5
-#QT_TOOL.uic.command = x86_64-w64-mingw32-uic-qt5
-#QT_TOOL.rcc.command = x86_64-w64-mingw32-rcc-qt5
-#QT_TOOL.syncqt.command = x86_64-w64-mingw32-syncqt-qt5
-QT_TOOL.qdoc.command = x86_64-mingw32-qdoc-qt5
-QT_TOOL.qhelpgenerator.command = x86_64-w64-mingw32-qhelpgenerator-qt5
-
-QT_TOOL.lrelease.command = x86_64-w64-mingw32-lrelease-qt5
+#QT_TOOL.moc.binary = x86_64-w64-mingw32-moc-qt5
+#QT_TOOL.uic.binary = x86_64-w64-mingw32-uic-qt5
+#QT_TOOL.rcc.binary = x86_64-w64-mingw32-rcc-qt5
+#QT_TOOL.syncqt.binary = x86_64-w64-mingw32-syncqt.pl-qt5
+QT_TOOL.qdoc.binary = x86_64-mingw32-qdoc-qt5
+QT_TOOL.qhelpgenerator.binary = x86_64-w64-mingw32-qhelpgenerator-qt5
+
+QT_TOOL.lrelease.binary = x86_64-w64-mingw32-lrelease-qt5
QMAKE_LRELEASE = x86_64-w64-mingw32-lrelease-qt5
QMAKE_IDL = mingw-w64-widl -m64
diff --git a/qt5-add-angle-support.patch b/qt5-add-angle-support.patch
index d139292..469fc1c 100644
--- a/qt5-add-angle-support.patch
+++ b/qt5-add-angle-support.patch
@@ -21,15 +21,15 @@
# build up the variables for output
if [ "$CFG_DEBUG" = "yes" ]; then
QMAKE_OUTDIR="${QMAKE_OUTDIR}debug"
-@@ -6271,6 +6275,8 @@
- echo "OpenGL support ......... yes (Desktop OpenGL)"
- elif [ "$CFG_OPENGL" = "es2" ]; then
- echo "OpenGL support ......... yes (OpenGL ES 2.x)"
-+elif [ "$CFG_OPENGL" = "angle" ]; then
-+ echo "OpenGL support ......... yes (Angle)"
- else
- echo "OpenGL support ......... no"
- fi
+@@ -6776,7 +6787,7 @@
+ report_support " IPv6 ifname .........." "$CFG_IPV6IFNAME"
+ report_support " OpenSSL .............." "$CFG_OPENSSL" yes "loading libraries at run-time" linked "linked to the libraries"
+ report_support " NIS ...................." "$CFG_NIS"
+-report_support " OpenGL ................." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.x"
++report_support " OpenGL ................." "$CFG_OPENGL" yes "Desktop OpenGL" es2 "OpenGL ES 2.x" angle "ANGLE"
+ report_support " OpenVG ................." "$CFG_OPENVG-$CFG_OPENVG_SHIVA" yes-yes "ShivaVG" yes-no "native"
+ report_support " PCRE ..................." "$CFG_PCRE" yes "system library" qt "bundled copy"
+ if [ -n "$PKG_CONFIG" ]; then
--- src/plugins/platforms/windows/qwindowsglcontext.cpp.orig 2012-12-21 01:45:08.022424992 +0100
+++ src/plugins/platforms/windows/qwindowsglcontext.cpp 2012-12-21 01:52:35.773119490 +0100
@@ -50,7 +50,9 @@
diff --git a/qt5-fix-compilation-when-freetype-isnt-available.patch b/qt5-fix-compilation-when-freetype-isnt-available.patch
new file mode 100644
index 0000000..8c2f2c8
--- /dev/null
+++ b/qt5-fix-compilation-when-freetype-isnt-available.patch
@@ -0,0 +1,15 @@
+--- qtbase-opensource-src-5.1.0/src/plugins/platforms/offscreen/qoffscreenintegration.cpp.orig 2013-07-10 20:40:52.350023574 +0200
++++ qtbase-opensource-src-5.1.0/src/plugins/platforms/offscreen/qoffscreenintegration.cpp 2013-07-10 21:03:31.496725681 +0200
+@@ -103,8 +103,12 @@
+ #endif
+ #elif defined(Q_OS_WIN)
+ m_eventDispatcher = new QOffscreenEventDispatcher<QEventDispatcherWin32>();
++#if defined (QT_NO_FREETYPE)
++ m_fontDatabase.reset(new QPlatformFontDatabase());
++#else
+ m_fontDatabase.reset(new QBasicFontDatabase());
+ #endif
++#endif
+
+ #ifndef QT_NO_DRAGANDDROP
+ m_drag.reset(new QOffscreenDrag);
diff --git a/qt5-qtbase-fix-linking-against-static-pcre.patch b/qt5-qtbase-fix-linking-against-static-pcre.patch
new file mode 100644
index 0000000..f565677
--- /dev/null
+++ b/qt5-qtbase-fix-linking-against-static-pcre.patch
@@ -0,0 +1,13 @@
+--- qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp.orig 2013-07-11 08:23:02.687691337 +0200
++++ qtbase-opensource-src-5.1.0/src/corelib/tools/qregularexpression.cpp 2013-07-11 08:23:27.231900674 +0200
+@@ -52,6 +52,10 @@
+ #include <QtCore/qglobal.h>
+ #include <QtCore/qatomic.h>
+
++#ifdef QT_STATIC
++#define PCRE_STATIC
++#endif
++
+ #include <pcre.h>
+
+ QT_BEGIN_NAMESPACE
diff --git a/qt5-use-external-angle-library.patch b/qt5-use-external-angle-library.patch
index 94617fc..5e8ee42 100644
--- a/qt5-use-external-angle-library.patch
+++ b/qt5-use-external-angle-library.patch
@@ -1,6 +1,6 @@
--- src/src.pro.orig 2012-12-16 18:00:31.803375714 +0100
+++ src/src.pro 2012-12-16 18:00:25.883273471 +0100
-@@ -72,10 +72,6 @@
+@@ -114,10 +114,6 @@
}
contains(QT_CONFIG, concurrent):SUBDIRS += src_concurrent
!contains(QT_CONFIG, no-gui) {
@@ -9,13 +9,26 @@
- src_gui.depends += src_angle
- }
SUBDIRS += src_gui src_platformsupport
+ contains(QT_CONFIG, opengl(es1|es2)?):SUBDIRS += src_openglextensions
src_plugins.depends += src_gui src_platformsupport
- !contains(QT_CONFIG, no-widgets) {
--- src/gui/gui.pro.orig 2012-12-16 18:02:25.117315949 +0100
+++ src/gui/gui.pro 2012-12-16 18:01:15.778133505 +0100
-@@ -20,6 +20,10 @@
- LIBS_PRIVATE += -framework Cocoa
- }
+@@ -12,12 +12,6 @@
+ platforms \
+ imageformats
+
+-# This is here only because the platform plugin is no module, obviously.
+-win32:contains(QT_CONFIG, angle) {
+- MODULE_AUX_INCLUDES = \
+- \$\$QT_MODULE_INCLUDE_BASE/QtANGLE
+-}
+-
+ load(qt_module)
+
+ # Code coverage with TestCocoon
+@@ -30,6 +30,10 @@
+
+ mac:!ios: LIBS_PRIVATE += -framework Cocoa
+win32:contains(QT_CONFIG, angle) {
+ LIBS_PRIVATE += -lGLESv2
diff --git a/sources b/sources
index 4eb8da6..f80a538 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-a4fec8ed03867c4ee4fe5a46001a11f0 qtbase-opensource-src-5.0.2.tar.xz
+0f8d14bb4039a2996c501a376ca7dae0 qtbase-opensource-src-5.1.0.tar.xz
More information about the scm-commits
mailing list