diff --git a/.gitignore b/.gitignore index ffbe6722..873940d5 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,6 @@ Makefile* # Backups *.bak + +# VIM swap +*.swp diff --git a/qt5-3d/mingw-w64/PKGBUILD b/qt5-3d/mingw-w64/PKGBUILD index 9bc0c1ef..d903ebe4 100644 --- a/qt5-3d/mingw-w64/PKGBUILD +++ b/qt5-3d/mingw-w64/PKGBUILD @@ -8,7 +8,7 @@ _qt_module=qt3d pkgname="mingw-w64-qt5-3d" pkgver=5.7.0 pkgrel=1 -arch=('any') +arch=('i686' 'x86_64') pkgdesc="C++ and QML APIs for easy inclusion of 3D graphics (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc') @@ -34,11 +34,11 @@ build() { for _arch in ${_architectures}; do mkdir -p build-${_arch} && pushd build-${_arch} - # out Qt 5 build uses the system zlib for host builds - # seems like we need to remember Qt about that here again ${_arch}-qmake-qt5 ../${_qt_module}.pro - make + make qmake_all + find ./tools -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + make popd done } @@ -55,9 +55,9 @@ package() { # One copy of the .dll's is sufficient rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll - strip --strip-all "${pkgdir}/usr/${_arch}/lib/qt/bin/"* find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \; find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g + strip --strip-all "${pkgdir}/usr/${_arch}/lib/qt/bin/"* popd done diff --git a/qt5-base/mingw-w64-static/PKGBUILD b/qt5-base/mingw-w64-static/PKGBUILD index 901f3421..161984fc 100644 --- a/qt5-base/mingw-w64-static/PKGBUILD +++ b/qt5-base/mingw-w64-static/PKGBUILD @@ -15,7 +15,7 @@ isOpenGL() { [ $pkgname = "mingw-w64-qt5-base-opengl" ] } -pkgname=mingw-w64-qt5-static +pkgname=mingw-w64-qt5-base-static pkgver=5.7.0 pkgrel=1 pkgdesc="A cross-platform application and UI framework (mingw-w64)" diff --git a/qt5-declarative/mingw-w64/PKGBUILD b/qt5-declarative/mingw-w64/PKGBUILD index 13dbf048..15dc189a 100755 --- a/qt5-declarative/mingw-w64/PKGBUILD +++ b/qt5-declarative/mingw-w64/PKGBUILD @@ -9,7 +9,7 @@ _qt_module=qtdeclarative pkgname=mingw-w64-qt5-declarative pkgver=5.7.0 pkgrel=1 -arch=('any') +arch=('i686' 'x86_64') pkgdesc="Classes for QML and JavaScript languages (mingw-w64)" depends=(mingw-w64-qt5-base) makedepends=(mingw-w64-gcc python) @@ -18,23 +18,31 @@ groups=(mingw-w64-qt mingw-w64-qt5) license=("custom, FDL, GPL3, LGPL") url="https://www.qt.io/" _pkgfqn="${_qt_module}-opensource-src-${pkgver}" -source=("https://download.qt.io/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz") -md5sums=('0d9e461aa54dba4793253fa2eb501f9b') +source=("https://download.qt.io/official_releases/qt/${pkgver:0:3}/${pkgver}/submodules/${_pkgfqn}.tar.xz" + "qt5-build-qmldevtools-as-shared-library.patch") +md5sums=('0d9e461aa54dba4793253fa2eb501f9b' + '8f90ec8c2379b85de0b04847865b230c') _architectures="i686-w64-mingw32 x86_64-w64-mingw32" +prepare() { + cd "${srcdir}/${_pkgfqn}" + patch -p1 -i "${srcdir}"/qt5-build-qmldevtools-as-shared-library.patch +} + build() { cd "${srcdir}/${_pkgfqn}" for _arch in ${_architectures}; do mkdir -p build-${_arch} && pushd build-${_arch} ${_arch}-qmake-qt5 ../${_qt_module}.pro - # Something is messed up with Qt5Bootstrap + # search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually make qmake_all - find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 /usr/lib/libm.so -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \; - find . -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 /usr/lib/libm.so -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \; - find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5QmlDevTools|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5QmlDevTools|g" {} \; - find ./tools -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 /usr/lib/libm.so -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \; + find ./src/qmldevtools -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-L$PWD/lib -lQt5Bootstrap|-L/usr/lib -L$PWD/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-L$PWD/lib -lQt5QmlDevTools -lQt5Bootstrap|-L/usr/lib -L$PWD/lib -L/usr/$_arch/lib -lQt5QmlDevTools -lQt5Bootstrap|g" {} \; + make popd done @@ -51,6 +59,8 @@ package() { find "${pkgdir}/usr/${_arch}" -name "*.exe" -o -name "*.bat" -o -name "*.def" -o -name "*.exp" -o -name '*.prl' | xargs -rtl1 rm find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \; find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g + strip --strip-all "${pkgdir}/usr/${_arch}/lib/qt/bin/"* + strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.so.$pkgver popd done } diff --git a/qt5-declarative/mingw-w64/qt5-build-qmldevtools-as-shared-library.patch b/qt5-declarative/mingw-w64/qt5-build-qmldevtools-as-shared-library.patch new file mode 100644 index 00000000..a3910e9a --- /dev/null +++ b/qt5-declarative/mingw-w64/qt5-build-qmldevtools-as-shared-library.patch @@ -0,0 +1,11 @@ +--- qtdeclarative-opensource-src-5.1.0/src/qmldevtools/qmldevtools.pro.orig 2013-08-02 01:25:48.928675488 +0200 ++++ qtdeclarative-opensource-src-5.1.0/src/qmldevtools/qmldevtools.pro 2013-08-02 01:25:58.679832023 +0200 +@@ -1,7 +1,7 @@ + option(host_build) + TARGET = QtQmlDevTools + QT = core-private +-CONFIG += static internal_module qmldevtools_build ++CONFIG += internal_module qmldevtools_build + + # Don't use pch because the auto-generated header refers to QtBootstrap, + # which doesn't exist diff --git a/qt5-script/mingw-w64/PKGBUILD b/qt5-script/mingw-w64/PKGBUILD index bae6d26f..cfa7b75f 100644 --- a/qt5-script/mingw-w64/PKGBUILD +++ b/qt5-script/mingw-w64/PKGBUILD @@ -7,7 +7,7 @@ _qt_module=qtscript pkgname="mingw-w64-qt5-script" -pkgver=5.6.1 +pkgver=5.7.0 pkgrel=1 arch=('any') pkgdesc="Classes for making Qt applications scriptable. Provided for Qt 4.x compatibility (mingw-w64)" diff --git a/qt5-scxml/mingw-w64/PKGBUILD b/qt5-scxml/mingw-w64/PKGBUILD index 2b097f5a..3f037283 100644 --- a/qt5-scxml/mingw-w64/PKGBUILD +++ b/qt5-scxml/mingw-w64/PKGBUILD @@ -9,7 +9,7 @@ _qt_module=qtscxml pkgname="mingw-w64-qt5-scxml" pkgver=5.7.0 pkgrel=1 -arch=('any') +arch=('i686' 'x86_64') pkgdesc="Static and runtime integration of SCXML models into Qt code (mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc') @@ -30,8 +30,10 @@ build() mkdir -p build-${_arch} && pushd build-${_arch} ${_arch}-qmake-qt5 ../${_qt_module}.pro - make + make qmake_all + find ./tools -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; + make popd done } @@ -48,8 +50,9 @@ package() { # One copy of the .dll's is sufficient rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll - ${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll - ${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a + find "${pkgdir}/usr/${_arch}" -name "*.dll" -exec ${_arch}-strip --strip-unneeded {} \; + find "${pkgdir}/usr/${_arch}" -name "*.a" -o -name "*.dll" | xargs -rtl1 ${_arch}-strip -g + strip --strip-all "${pkgdir}/usr/${_arch}/lib/qt/bin/"* popd done diff --git a/qt5-tools/mingw-w64/PKGBUILD b/qt5-tools/mingw-w64/PKGBUILD index 2ebc5078..c53e16cd 100755 --- a/qt5-tools/mingw-w64/PKGBUILD +++ b/qt5-tools/mingw-w64/PKGBUILD @@ -9,7 +9,7 @@ _qt_module=qttools pkgname="mingw-w64-qt5-tools" pkgver=5.7.0 pkgrel=1 -arch=('any') +arch=('i686' 'x86_64') pkgdesc="A cross-platform application and UI framework (Development Tools, QtHelp; mingw-w64)" depends=('mingw-w64-qt5-declarative') makedepends=('mingw-w64-gcc') @@ -31,13 +31,13 @@ build() ${_arch}-qmake-qt5 ../${_qt_module}.pro - # Something is messed up with Qt5Bootstrap + # search paths for host standard library (/usr/lib) and for Qt5Bootstrap (/usr/$_arch/lib) are not set correctly by qmake + # hence we need insert those paths manually make qmake_all - find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5Bootstrap|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5Bootstrap|g" {} \; - find ./src -type f -exec sed -i "s|-L/usr/${_arch}/lib -lQt5QmlDevTools|/usr/lib/libstdc++.so.6 -L/usr/${_arch}/lib -lQt5QmlDevTools|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-lQt5QmlDevTools -lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5QmlDevTools -lQt5Bootstrap|g" {} \; + find . -type f -iname 'Makefile' -exec sed -i "s|-lQt5Bootstrap|-L/usr/lib -L/usr/$_arch/lib -lQt5Bootstrap|g" {} \; make - popd done } @@ -69,6 +69,7 @@ package() { ${_arch}-strip --strip-all "${pkgdir}/usr/${_arch}/bin/"*.exe ${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll ${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/lib/"*.dll.a + strip --strip-all "${pkgdir}/usr/${_arch}/lib/qt/bin/"* popd done diff --git a/qt5-virtualkeyboard/mingw-w64/PKGBUILD b/qt5-virtualkeyboard/mingw-w64/PKGBUILD index 40a23ac9..475b540f 100644 --- a/qt5-virtualkeyboard/mingw-w64/PKGBUILD +++ b/qt5-virtualkeyboard/mingw-w64/PKGBUILD @@ -11,8 +11,8 @@ pkgver=5.7.0 pkgrel=1 arch=('any') pkgdesc="Virtual keyboard framework (translations, mingw-w64)" -depends=('mingw-w64-qt5-base') -makedepends=('mingw-w64-gcc' 'mingw-w64-qt5-tools') +depends=('mingw-w64-qt5-declarative' 'mingw-w64-qt5-svg') +makedepends=('mingw-w64-gcc') options=('!strip' '!buildflags' 'staticlibs') license=('GPL3' 'LGPL') url="https://www.qt.io/" diff --git a/qt5-webkit/mingw-w64/PKGBUILD b/qt5-webkit/mingw-w64/PKGBUILD index a1a1663b..2896a75d 100644 --- a/qt5-webkit/mingw-w64/PKGBUILD +++ b/qt5-webkit/mingw-w64/PKGBUILD @@ -45,7 +45,8 @@ source=("https://download.qt.io/community_releases/${pkgver:0:3}/${pkgver}/${_pk qtwebkit-dont-use-bundled-angle-libraries.patch qtwebkit-opensource-src-5.0.1-debuginfo.patch revert-qt4-unicode-removal.patch - webkit-commit-151422.patch) + webkit-commit-151422.patch + qt5-qtwebkit-mfence-mingw.patch) md5sums=('9379b8829639645c184fa63532035098' '37dd6b694e1e178aa8b1815f7fe3537d' 'ac574de962545d6a9e975b4db63c3e09' @@ -55,7 +56,8 @@ md5sums=('9379b8829639645c184fa63532035098' 'f452210683386f9c28f04d7dea0ecfc7' '6aba6468efafb64943887079e258b799' '4e374836f26853b4d82be0e87aa584a5' - 'c36fe581e0f3b61cef19415782b257ca') + 'c36fe581e0f3b61cef19415782b257ca' + '81901e7f7653dd4e71206bc107cc7eb9') _architectures="i686-w64-mingw32 x86_64-w64-mingw32" @@ -108,6 +110,9 @@ prepare() { # Fix compatibility issue when using the latest ANGLE patch -p1 -b -i ../qt5-qtwebkit-fix-compatibility-with-latest-angle.patch + # intrin.h needs to be included otherwise declaration of _mm_mfence is missing + patch -p0 -b -i ../qt5-qtwebkit-mfence-mingw.patch + # Make sure the bundled copy of the ANGLE libraries isn't used rm -rf Source/ThirdParty/ANGLE } @@ -125,12 +130,8 @@ build() { # SH_GLSL_OUTPUT has been renamed to SH_GLSL_COMPATIBILITY_OUTPUT # in the latest ANGLE version so I just add a definition for backward compatibility - - # intrin.h needs to be included otherwise declaration of _mm_mfence is missing - ${_arch}-qmake-qt5 \ "QMAKE_CXXFLAGS+=-Wno-c++0x-compat" \ - "QMAKE_CXXFLAGS+='-include /usr/i686-w64-mingw32/include/intrin.h'" \ "DEFINES+=SH_GLSL_OUTPUT=SH_GLSL_COMPATIBILITY_OUTPUT" \ ../WebKit.pro make diff --git a/qt5-webkit/mingw-w64/qt5-qtwebkit-mfence-mingw.patch b/qt5-webkit/mingw-w64/qt5-qtwebkit-mfence-mingw.patch new file mode 100644 index 00000000..7e8ae606 --- /dev/null +++ b/qt5-webkit/mingw-w64/qt5-qtwebkit-mfence-mingw.patch @@ -0,0 +1,11 @@ +--- Source/WTF/wtf/Atomics.h.orig 2016-06-19 14:44:16.829726076 +0200 ++++ Source/WTF/wtf/Atomics.h 2016-06-19 14:49:05.596958910 +0200 +@@ -68,6 +68,8 @@ + #elif !COMPILER(GCC) + extern "C" void _ReadWriteBarrier(void); + #pragma intrinsic(_ReadWriteBarrier) ++#else ++#include + #endif + #include + #elif OS(QNX)