diff options
author | Philip A Reimer | 2015-08-26 21:09:59 -0600 |
---|---|---|
committer | Philip A Reimer | 2015-08-26 21:09:59 -0600 |
commit | bdb3fa48f62bb190fda4a90604268c95fcb40d18 (patch) | |
tree | 6c97c2d99af780eb69b21f06c8a6c64c606f6451 | |
download | aur-bdb3fa48f62bb190fda4a90604268c95fcb40d18.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 29 | ||||
-rw-r--r-- | PKGBUILD | 62 | ||||
-rw-r--r-- | qt5-activeqt-fix-compilation.patch | 15 | ||||
-rw-r--r-- | qtactiveqt-fix-build.patch | 7 | ||||
-rw-r--r-- | qtactiveqt-win64.patch | 39 |
5 files changed, 152 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..7e4e27548aeb --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,29 @@ +pkgbase = mingw-w64-qt5-activeqt + pkgdesc = Qt's ActiveX Framework (mingw-w64) + pkgver = 5.5.0 + pkgrel = 1 + url = http://qt-project.org + arch = any + groups = mingw-w64-qt + groups = mingw-w64-qt5 + license = custom, FDL, GPL3, LGPL + makedepends = mingw-w64-gcc + makedepends = mingw-w64-headers-git + makedepends = mingw-w64-crt-git + makedepends = mingw-w64-winpthreads-git + makedepends = python + depends = mingw-w64-qt5-base + options = !strip + options = !buildflags + options = staticlibs + source = http://download.qt-project.org/official_releases/qt/5.5/5.5.0/submodules/qtactiveqt-opensource-src-5.5.0.tar.xz + source = qt5-activeqt-fix-compilation.patch + source = qtactiveqt-fix-build.patch + source = qtactiveqt-win64.patch + md5sums = be5e0a79decc87d02c574348d9663e6a + md5sums = 86c63b9808b0c8c7a8c2203bee73c42b + md5sums = 7a7ba436452aa56613b3fbb15684e094 + md5sums = 1264d0274586aec14f96a978b416b048 + +pkgname = mingw-w64-qt5-activeqt + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..f8b354250cd9 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,62 @@ +# Maintainer: ant32 <antreimer@gmail.com> +_qt_module=qtactiveqt +pkgname=mingw-w64-qt5-activeqt +pkgver=5.5.0 +pkgrel=1 +arch=(any) +pkgdesc="Qt's ActiveX Framework (mingw-w64)" +depends=(mingw-w64-qt5-base) +makedepends=(mingw-w64-{gcc,headers-git,crt-git,winpthreads-git} python) +options=(!strip !buildflags staticlibs) +groups=(mingw-w64-qt mingw-w64-qt5) +license=("custom, FDL, GPL3, LGPL") +url="http://qt-project.org" +_pkgfqn="${_qt_module}-opensource-src-${pkgver}" +source=("http://download.qt-project.org/official_releases/qt/5.5/${pkgver}/submodules/${_pkgfqn}.tar.xz" + "qt5-activeqt-fix-compilation.patch" + "qtactiveqt-fix-build.patch" + "qtactiveqt-win64.patch") +md5sums=('be5e0a79decc87d02c574348d9663e6a' + '86c63b9808b0c8c7a8c2203bee73c42b' + '7a7ba436452aa56613b3fbb15684e094' + '1264d0274586aec14f96a978b416b048') +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +prepare() { + cd "${srcdir}/${_pkgfqn}" + # Fix linker error: + # qaxserverbase.cpp:1769: undefined reference to `qt_sendSpontaneousEvent(QObject*, QEvent*)' + patch -p0 -i ../qt5-activeqt-fix-compilation.patch + + # Don't try to build stuff which requires windows.h with the native Linux gcc + patch -p1 -i ../qtactiveqt-fix-build.patch + + # dumpcpp and MetaObjectGenerator::readClassInfo do not handle win64 + # https://bugreports.qt.io/browse/QTBUG-46827 + patch -p1 -i ../qtactiveqt-win64.patch +} + +build() { + cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do + mkdir -p build-${_arch} && pushd build-${_arch} + ${_arch}-qmake-qt5 ../${_qt_module}.pro + make + popd + done +} + +package() { + cd "${srcdir}/${_pkgfqn}" + for _arch in ${_architectures}; do + pushd build-${_arch} + make INSTALL_ROOT="$pkgdir" install + # The .dll's are installed in both bindir and libdir + # One copy of the .dll's is sufficient + rm -f "${pkgdir}/usr/${_arch}/lib/"*.dll + 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 + popd + done +}
\ No newline at end of file diff --git a/qt5-activeqt-fix-compilation.patch b/qt5-activeqt-fix-compilation.patch new file mode 100644 index 000000000000..d7e258632343 --- /dev/null +++ b/qt5-activeqt-fix-compilation.patch @@ -0,0 +1,15 @@ +--- src/activeqt/control/qaxserverbase.cpp.orig 2012-09-10 22:01:40.963557678 +0200 ++++ src/activeqt/control/qaxserverbase.cpp 2012-09-10 22:05:37.913161773 +0200 +@@ -4033,12 +4033,10 @@ + } + + +-#ifdef QT_SHARED // avoid conflict with symbol in static lib + bool qt_sendSpontaneousEvent(QObject *o, QEvent *e) + { + return QCoreApplication::sendSpontaneousEvent(o, e); + } +-#endif + + /* + Tries to set the size of the control. diff --git a/qtactiveqt-fix-build.patch b/qtactiveqt-fix-build.patch new file mode 100644 index 000000000000..7c10be469cd7 --- /dev/null +++ b/qtactiveqt-fix-build.patch @@ -0,0 +1,7 @@ +--- qtactiveqt-opensource-src-5.3.0/src/tools/idc/idc.pro.orig 2014-05-26 00:05:53.258370322 +0200 ++++ qtactiveqt-opensource-src-5.3.0/src/tools/idc/idc.pro 2014-05-26 00:06:18.131627963 +0200 +@@ -1,4 +1,3 @@ +-option(host_build) + CONFIG += force_bootstrap + SOURCES = main.cpp + diff --git a/qtactiveqt-win64.patch b/qtactiveqt-win64.patch new file mode 100644 index 000000000000..f2ca3d690b5e --- /dev/null +++ b/qtactiveqt-win64.patch @@ -0,0 +1,39 @@ +diff -rupN qtactiveqt-opensource-src-5.4.1/src/activeqt/container/qaxbase.cpp qtactiveqt-opensource-src-5.4.1-new/src/activeqt/container/qaxbase.cpp +--- qtactiveqt-opensource-src-5.4.1/src/activeqt/container/qaxbase.cpp 2015-02-17 05:56:13.000000000 +0100 ++++ qtactiveqt-opensource-src-5.4.1-new/src/activeqt/container/qaxbase.cpp 2015-06-23 16:41:44.483979750 +0200 +@@ -2164,6 +2164,10 @@ + QStringList versions = controls.childGroups(); + foreach (const QString &version, versions) { + tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win32/.")).toString(); ++ if(tlfile.isEmpty()) ++ { ++ tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win64/.")).toString(); ++ } + if (!tlfile.isEmpty()) + break; + } +diff -rupN qtactiveqt-opensource-src-5.4.1/tools/dumpcpp/main.cpp qtactiveqt-opensource-src-5.4.1-new/tools/dumpcpp/main.cpp +--- qtactiveqt-opensource-src-5.4.1/tools/dumpcpp/main.cpp 2015-02-17 05:56:13.000000000 +0100 ++++ qtactiveqt-opensource-src-5.4.1-new/tools/dumpcpp/main.cpp 2015-06-23 16:35:53.157273425 +0200 +@@ -1515,6 +1515,10 @@ + typeLib = settings.value(QLatin1Char('/') + codes.at(c) + QLatin1String("/0/win32/.")).toString(); + if (QFile::exists(typeLib)) + break; ++ typeLib = settings.value(QLatin1String("/") + codes.at(c) + QLatin1String("/0/win64/.")).toByteArray(); ++ if (QFile::exists(typeLib)) { ++ break; ++ } + } + + if (!typeLib.isEmpty()) +@@ -1577,6 +1581,10 @@ + + QLatin1String("/win32/.")).toString(); + if (QFile::exists(typeLib)) + break; ++ typeLib = settings.value(key + QLatin1String("/") + codes.at(c) + QLatin1String("/win64/.")).toByteArray(); ++ if (QFile::exists(typeLib)) { ++ break; ++ } + } + } + |