Fix a few mistakes in mingw-w64-qt5-* packages
- Some modules contain executables to run on the host and hence mustn't have the architecture 'any'. - Host tools in modules are stripped now - Missing mfence in Atomic.h (header of WTF) is fixed in a more appropriate way
This commit is contained in:
parent
8763c6d6b2
commit
f7924a9daa
|
@ -41,3 +41,6 @@ Makefile*
|
|||
|
||||
# Backups
|
||||
*.bak
|
||||
|
||||
# VIM swap
|
||||
*.swp
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)"
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -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
|
|
@ -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)"
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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/"
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 <intrin.h>
|
||||
#endif
|
||||
#include <windows.h>
|
||||
#elif OS(QNX)
|
Loading…
Reference in New Issue