summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip A Reimer2015-06-12 22:04:12 -0600
committerPhilip A Reimer2015-06-12 22:04:12 -0600
commit97a3a24ab1082b09e41dcb4c847d4d551ffc3c78 (patch)
tree335e8e56a3f8e6ea4d58dbc957c2b5ef0fe8cfe3
downloadaur-97a3a24ab1082b09e41dcb4c847d4d551ffc3c78.tar.gz
Initial import
-rw-r--r--.SRCINFO24
-rw-r--r--PKGBUILD58
-rw-r--r--qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch30
-rw-r--r--qtmultimedia-dont-use-case-sensitive-headers.patch22
4 files changed, 134 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..3e587c8272b5
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,24 @@
+pkgbase = mingw-w64-qt5-multimedia
+ pkgdesc = Classes for audio, video, radio and camera functionality (mingw-w64)
+ pkgver = 5.4.2
+ 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
+ depends = mingw-w64-qt5-base
+ depends = mingw-w64-qt5-declarative
+ options = !strip
+ options = !buildflags
+ options = staticlibs
+ source = http://download.qt-project.org/official_releases/qt/5.4/5.4.2/submodules/qtmultimedia-opensource-src-5.4.2.tar.xz
+ source = qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch
+ source = qtmultimedia-dont-use-case-sensitive-headers.patch
+ md5sums = b94baed3effda9187d71300b3e37d2d5
+ md5sums = c21ff895212a17dc0a748aeadb67601d
+ md5sums = 7ecd5ee2735440472fae4b7d7a32879e
+
+pkgname = mingw-w64-qt5-multimedia
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..9b3564456574
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,58 @@
+_qt_module=qtmultimedia
+pkgname=mingw-w64-qt5-multimedia
+pkgver=5.4.2
+pkgrel=1
+arch=(any)
+pkgdesc="Classes for audio, video, radio and camera functionality (mingw-w64)"
+depends=(mingw-w64-qt5-base mingw-w64-qt5-declarative)
+makedepends=(mingw-w64-gcc)
+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.4/${pkgver}/submodules/${_pkgfqn}.tar.xz"
+ "qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch"
+ "qtmultimedia-dont-use-case-sensitive-headers.patch")
+md5sums=('b94baed3effda9187d71300b3e37d2d5'
+ 'c21ff895212a17dc0a748aeadb67601d'
+ '7ecd5ee2735440472fae4b7d7a32879e')
+
+_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
+
+prepare() {
+ cd "${srcdir}/${_pkgfqn}"
+ # Some files #include <dshow.h>
+ # This is a C header which also #include's stdio.h which adds a #define vsnprintf
+ # This #define vsnprint conflicts with QtCore/qstring.h so reorder the includes
+ # a bit to prevent this situation
+ patch -p0 -i ../qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch
+
+ # MinGW headers are case sensitive under Linux
+ patch -p1 -i ../qtmultimedia-dont-use-case-sensitive-headers.patch
+}
+
+build() {
+ cd "${srcdir}/${_pkgfqn}"
+ for _arch in ${_architectures}; do
+ mkdir -p build-${_arch} && pushd build-${_arch}
+ ${_arch}-qmake-qt5 ../${_qt_module}.pro -Wall
+ 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
+}
diff --git a/qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch b/qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch
new file mode 100644
index 000000000000..d63cf8c174a4
--- /dev/null
+++ b/qt5-qtmultimedia-mingw-w64-vsnprintf-workaround.patch
@@ -0,0 +1,30 @@
+--- src/multimedia/video/qvideosurfaceformat.h.orig 2013-07-14 01:14:41.813669200 +0200
++++ src/multimedia/video/qvideosurfaceformat.h 2013-07-14 01:14:58.463944255 +0200
+@@ -46,6 +46,7 @@
+ #include <QtCore/qpair.h>
+ #include <QtCore/qshareddata.h>
+ #include <QtCore/qsize.h>
++#include <QtCore/qstring.h>
+ #include <QtGui/qimage.h>
+ #include <QtMultimedia/qvideoframe.h>
+
+--- src/plugins/directshow/player/directshowmediatypelist.h.orig 2013-07-14 01:16:07.098077974 +0200
++++ src/plugins/directshow/player/directshowmediatypelist.h 2013-07-14 01:16:28.175426132 +0200
+@@ -43,6 +43,7 @@
+ #define DIRECTSHOWMEDIATYPELIST_H
+
+ #include <QtCore/qvector.h>
++#include <QtCore/qstring.h>
+
+ #include <dshow.h>
+
+--- src/plugins/directshow/player/directshowglobal.h.orig 2013-07-14 01:13:12.324190974 +0200
++++ src/plugins/directshow/player/directshowglobal.h 2013-07-14 01:13:25.434407537 +0200
+@@ -43,6 +43,7 @@
+ #define DIRECTSHOWGLOBAL_H
+
+ #include <QtCore/qglobal.h>
++#include <QtCore/qstring.h>
+
+ #include <dshow.h>
+
diff --git a/qtmultimedia-dont-use-case-sensitive-headers.patch b/qtmultimedia-dont-use-case-sensitive-headers.patch
new file mode 100644
index 000000000000..06cbb3799c22
--- /dev/null
+++ b/qtmultimedia-dont-use-case-sensitive-headers.patch
@@ -0,0 +1,22 @@
+--- qtmultimedia-opensource-src-5.2.0-rc1/config.tests/wshellitem/main.cpp.orig 2013-11-21 11:29:48.845013461 +0100
++++ qtmultimedia-opensource-src-5.2.0-rc1/config.tests/wshellitem/main.cpp 2013-11-21 11:29:55.980132333 +0100
+@@ -39,7 +39,7 @@
+ **
+ ****************************************************************************/
+
+-#include <ShlObj.h>
++#include <shlobj.h>
+
+ int main(int, char**)
+ {
+--- qtmultimedia-opensource-src-5.2.0-rc1/src/plugins/directshow/player/directshowmetadatacontrol.cpp.orig 2013-11-21 11:34:00.866215162 +0100
++++ qtmultimedia-opensource-src-5.2.0-rc1/src/plugins/directshow/player/directshowmetadatacontrol.cpp 2013-11-21 11:34:11.361390182 +0100
+@@ -57,7 +57,7 @@
+ #endif
+
+ #ifndef QT_NO_SHELLITEM
+-#include <ShlObj.h>
++#include <shlobj.h>
+ #include <propkeydef.h>
+ #include <private/qsystemlibrary_p.h>
+