aboutsummaryrefslogtreecommitdiffstats
path: root/community
diff options
context:
space:
mode:
Diffstat (limited to 'community')
-rw-r--r--community/qt5-qtbase/APKBUILD215
-rw-r--r--community/qt5-qtbase/hack-openssl_test.patch11
-rw-r--r--community/qt5-qtbase/libressl-compat.patch118
-rw-r--r--community/qt5-qtbase/qt-musl-iconv-no-bom.patch11
-rw-r--r--community/qt5-qtdeclarative/APKBUILD55
-rw-r--r--community/qt5-qtgraphicaleffects/APKBUILD46
-rw-r--r--community/qt5-qtimageformats/APKBUILD46
-rw-r--r--community/qt5-qtmultimedia/APKBUILD47
-rw-r--r--community/qt5-qtquickcontrols/APKBUILD47
-rw-r--r--community/qt5-qtscript/APKBUILD47
-rw-r--r--community/qt5-qtscript/qtscript-opensource-src-5.5.0-s390.patch31
-rw-r--r--community/qt5-qtsvg/APKBUILD48
-rw-r--r--community/qt5-qttools/APKBUILD127
-rw-r--r--community/qt5-qttools/assistant-qt5.desktop8
-rw-r--r--community/qt5-qttools/designer-qt5.desktop9
-rw-r--r--community/qt5-qttools/linguist-qt5.desktop9
-rw-r--r--community/qt5-qttools/qdbusviewer-qt5.desktop10
-rw-r--r--community/qt5-qttranslations/APKBUILD47
-rw-r--r--community/qt5-qtwebkit/0001-Add-ARM-64-support.patch13
-rw-r--r--community/qt5-qtwebkit/APKBUILD86
-rw-r--r--community/qt5-qtwebkit/fix-execinfo.patch20
-rw-r--r--community/qt5-qtwebkit/fix-rpath.patch11
-rw-r--r--community/qt5-qtwebkit/pic.patch11
23 files changed, 1073 insertions, 0 deletions
diff --git a/community/qt5-qtbase/APKBUILD b/community/qt5-qtbase/APKBUILD
new file mode 100644
index 0000000000..36a8f41573
--- /dev/null
+++ b/community/qt5-qtbase/APKBUILD
@@ -0,0 +1,215 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtbase
+pkgver=5.8.0
+_ver=${pkgver/_p/-}
+_ver=${_ver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - QtBase components"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+_sub="$pkgname-sqlite $pkgname-odbc $pkgname-postgresql $pkgname-mysql
+ $pkgname-tds $pkgname-x11"
+depends=""
+depends_dev="mesa-dev libice-dev libsm-dev libx11-dev libxext-dev
+ libressl-dev fontconfig-dev freetype-dev glib-dev libpng-dev zlib-dev
+ sqlite-dev dbus-dev perl $_sub"
+makedepends="$depends_dev
+ bison
+ cups-dev
+ eudev-dev
+ flex
+ freetds-dev
+ gawk
+ gperf
+ gtk+2.0-dev
+ hicolor-icon-theme
+ icu-dev
+ libinput-dev
+ libjpeg-turbo-dev
+ libxkbcommon-dev
+ libxi-dev
+ libxrandr-dev
+ libxrender-dev
+ libxslt-dev
+ libxv-dev
+ mariadb-dev
+ mtdev-dev
+ pcre-dev
+ postgresql-dev
+ unixodbc-dev
+ xcb-util-dev
+ xcb-util-image-dev
+ xcb-util-keysyms-dev
+ xcb-util-wm-dev
+ xcb-util-renderutil-dev
+ "
+install=""
+subpackages="$pkgname-dev $pkgname-doc $_sub"
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtbase-opensource-src-$_V.tar.xz
+ qt-musl-iconv-no-bom.patch
+ libressl-compat.patch
+ hack-openssl_test.patch
+ "
+
+_qt5_prefix=/usr/lib/qt5
+_qt5_datadir=/usr/share/qt5
+
+builddir="$srcdir"/qtbase-opensource-src-${_V%-*}
+prepare() {
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch)
+ msg "Applying $i"
+ patch -p1 -i "$srcdir"/$i || return 1
+ ;;
+ esac
+ done
+ sed -i -e "s|-O2|$CXXFLAGS|" \
+ -e "/^QMAKE_RPATH/s| -Wl,-rpath,||g" \
+ -e "/^QMAKE_LFLAGS\s/s|+=|+= $LDFLAGS|g" \
+ mkspecs/common/*.conf || return 1
+}
+
+build() {
+ local _arch
+
+ cd "$builddir"
+
+ ./configure -confirm-license -opensource \
+ -archdatadir "$_qt5_prefix" \
+ -bindir "$_qt5_prefix"/bin \
+ -datadir "$_qt5_datadir" \
+ -dbus-linked \
+ -docdir /usr/share/doc/qt5 \
+ -examplesdir /usr/share/doc/qt5/examples \
+ -glib \
+ -icu \
+ -importdir "$_qt5_prefix"/imports \
+ -libexecdir "$_qt5_prefix"/libexec \
+ -no-rpath \
+ -no-separate-debug-info \
+ -nomake examples \
+ -opengl \
+ -openssl-linked \
+ -optimized-qmake \
+ -plugin-sql-mysql \
+ -plugin-sql-odbc \
+ -plugin-sql-psql \
+ -plugin-sql-sqlite \
+ -plugin-sql-tds \
+ -plugindir "$_qt5_prefix"/plugins \
+ -prefix /usr \
+ -silent \
+ -sysconfdir /etc/xdg \
+ -system-libjpeg \
+ -system-libpng \
+ -system-pcre \
+ -system-sqlite \
+ -system-xcb \
+ -system-zlib \
+ -translationdir "$_qt5_datadir"/translations \
+ -no-reduce-relocations \
+ || return 1
+ make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make INSTALL_ROOT="$pkgdir" install || return 1
+ mkdir -p "$pkgdir"/usr/bin/
+ for i in "$pkgdir"/$_qt5_prefix/bin/*; do
+ _name=${i##*/}
+ case $_name in
+ *.*) _dest="$pkgdir"/usr/bin/${_name%.*}-qt5.${_name##*.};;
+ *) _dest="$pkgdir"/usr/bin/${_name%.*}-qt5;;
+ esac
+ ln -s ../lib/qt5/bin/"${_name}" "$_dest"
+ done
+}
+
+_mv_files() {
+ local i
+ for i; do
+ mkdir -p "$subpkgdir"/${i%/*}
+ mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
+ done
+}
+
+dev() {
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/mkspecs \
+ usr/lib/cmake \
+ usr/lib/qt5/bin \
+ usr/bin \
+ $(find usr/ -name '*.prl') \
+ || return 1
+ default_dev
+}
+
+sqlite() {
+ pkgdesc="SQLite driver for Qt5's SQL classes"
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/plugins/sqldrivers/libqsqlite*
+}
+
+odbc() {
+ pkgdesc="ODBC driver for Qt5's SQL classes"
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/plugins/sqldrivers/libqsqlodbc*
+}
+
+postgresql() {
+ pkgdesc="PostgreSQL driver for Qt5's SQL classes"
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/plugins/sqldrivers/libqsqlpsql*
+}
+
+mysql() {
+ pkgdesc="MySQL driver for Qt5's SQL classes"
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/plugins/sqldrivers/libqsqlmysql*
+}
+
+tds() {
+ pkgdesc="TDS driver for Qt5's SQL classes"
+ cd "$pkgdir"
+ _mv_files usr/lib/qt5/plugins/sqldrivers/libqsqltds*
+}
+
+x11() {
+ pkgdesc="Qt5 GUI-related libraries"
+ depends="hicolor-icon-theme"
+ cd "$pkgdir"
+ _mv_files \
+ usr/lib/libQt5EglFSDeviceIntegration.so.* \
+ usr/lib/libQt5EglFsKmsSupport.so.* \
+ usr/lib/libQt5Gui.so.* \
+ usr/lib/libQt5OpenGL.so.* \
+ usr/lib/libQt5PrintSupport.so.* \
+ usr/lib/libQt5Widgets.so.* \
+ usr/lib/libQt5XcbQpa.so.* \
+ usr/lib/qt5/plugins/egldeviceintegrations \
+ usr/lib/qt5/plugins/generic \
+ usr/lib/qt5/plugins/image* \
+ usr/lib/qt5/plugins/platform* \
+ usr/lib/qt5/plugins/printsupport* \
+ usr/lib/qt5/plugins/xcbglintegrations \
+ || return 1
+
+ scanelf -Rn usr/ | egrep '(libX|libQt5Gui|libGL)' && return 1
+ return 0
+}
+
+sha512sums="36a1ba4b0dba02ae65c3b2b0aa3fb3767cbee4dbdf204c9ded7d1700e70144ce85a3a66167f86cc716a1fdd38d832962b2a752e803b0647d03032b2685da5ced qtbase-opensource-src-5.8.0.tar.xz
+7d68421a14f0259535c977d8a521c98918193c107b76ac664571b12f5b0d7588a0d0e1297af412a26753a393b21f3f44c3274fa8ab5bc87f03705a3a03acb444 qt-musl-iconv-no-bom.patch
+af284ebb51e3d903275f0f43901755fee0d0071a2fa4f5d6e8a4b00d9185d9d9fffba8e5cbda8c4aa2b3acde69fd26a449b23ad104f509fd4156f6908e0b43da libressl-compat.patch
+3bc1380268f077587114cfa535c58403f59c4c931902d0599633e1365f075d2e253b6f461e22ed3fe3adb12ef45ea97e1dbcbc1bbe0d151435703986f25c44c6 hack-openssl_test.patch"
diff --git a/community/qt5-qtbase/hack-openssl_test.patch b/community/qt5-qtbase/hack-openssl_test.patch
new file mode 100644
index 0000000000..fdf31b45df
--- /dev/null
+++ b/community/qt5-qtbase/hack-openssl_test.patch
@@ -0,0 +1,11 @@
+--- qtbase/config.tests/unix/openssl/openssl.cpp 2016-09-16 07:49:42.000000000 +0200
++++ qtbase/config.tests/unix/openssl/openssl.cpp 2016-10-21 19:05:10.099362793 +0200
+@@ -39,7 +39,7 @@
+
+ #include <openssl/ssl.h>
+
+-#if OPENSSL_VERSION_NUMBER-0 >= 0x10002000L && !defined(OPENSSL_NO_EC) && !defined(SSL_CTRL_SET_CURVES)
++#if (OPENSSL_VERSION_NUMBER-0 >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER) && !defined(OPENSSL_NO_EC) && !defined(SSL_CTRL_SET_CURVES)
+ # error "OpenSSL was reported as >= 1.0.2 but is missing required features, possibly it's libressl which is unsupported"
+ #endif
+
diff --git a/community/qt5-qtbase/libressl-compat.patch b/community/qt5-qtbase/libressl-compat.patch
new file mode 100644
index 0000000000..c9f2e33f50
--- /dev/null
+++ b/community/qt5-qtbase/libressl-compat.patch
@@ -0,0 +1,118 @@
+--- qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslellipticcurve_openssl.cpp 2017-02-21 16:25:56.477986158 +0100
+@@ -82,7 +82,7 @@
+
+ int nid = q_OBJ_sn2nid(curveNameLatin1.data());
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (nid == 0 && q_SSLeay() >= 0x10002000L)
+ nid = q_EC_curve_nist2nid(curveNameLatin1.data());
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+--- qtbase/src/network/ssl/qsslsocket_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl.cpp 2017-02-21 19:12:22.200604090 +0100
+@@ -1626,7 +1626,7 @@
+ }
+ #endif // OPENSSL_VERSION_NUMBER >= 0x1000100fL ...
+
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (q_SSLeay() >= 0x10002000L && mode == QSslSocket::SslClientMode) {
+ EVP_PKEY *key;
+ if (q_SSL_get_server_tmp_key(ssl, &key))
+--- qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp 2017-02-21 19:14:32.805677245 +0100
+@@ -151,7 +151,7 @@
+ DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
+ DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
+ DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ DEFINEFUNC2(int, BN_is_word, BIGNUM *a, a, BN_ULONG w, w, return 0, return)
+ #endif
+ DEFINEFUNC2(BN_ULONG, BN_mod_word, const BIGNUM *a, a, BN_ULONG w, w, return -1, return)
+@@ -451,7 +451,7 @@
+ DEFINEFUNC(EC_KEY *, EC_KEY_new_by_curve_name, int nid, nid, return 0, return)
+ DEFINEFUNC(void, EC_KEY_free, EC_KEY *ecdh, ecdh, return, DUMMYARG)
+ DEFINEFUNC2(size_t, EC_get_builtin_curves, EC_builtin_curve * r, r, size_t nitems, nitems, return 0, return)
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ DEFINEFUNC(int, EC_curve_nist2nid, const char *name, name, return 0, return)
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+ #endif // OPENSSL_NO_EC
+@@ -791,7 +791,7 @@
+ RESOLVEFUNC(EC_GROUP_get_degree)
+ #endif
+ RESOLVEFUNC(BN_num_bits)
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ RESOLVEFUNC(BN_is_word)
+ #endif
+ RESOLVEFUNC(BN_mod_word)
+@@ -1020,7 +1020,7 @@
+ RESOLVEFUNC(EC_KEY_new_by_curve_name)
+ RESOLVEFUNC(EC_KEY_free)
+ RESOLVEFUNC(EC_get_builtin_curves)
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (q_SSLeay() >= 0x10002000L)
+ RESOLVEFUNC(EC_curve_nist2nid)
+ #endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
+--- qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslsocket_openssl_symbols_p.h 2017-02-21 19:15:38.083714302 +0100
+@@ -228,7 +228,7 @@
+ Q_AUTOTEST_EXPORT BIO_METHOD *q_BIO_s_mem();
+ Q_AUTOTEST_EXPORT int q_BIO_write(BIO *a, const void *b, int c);
+ int q_BN_num_bits(const BIGNUM *a);
+-#if OPENSSL_VERSION_NUMBER >= 0x10100000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ int q_BN_is_word(BIGNUM *a, BN_ULONG w);
+ #else
+ // BN_is_word is implemented purely as a
+@@ -241,7 +241,7 @@
+ //
+ // Users are required to include <openssl/bn.h>.
+ #define q_BN_is_word BN_is_word
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10100000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10100000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ BN_ULONG q_BN_mod_word(const BIGNUM *a, BN_ULONG w);
+ #ifndef OPENSSL_NO_EC
+ const EC_GROUP* q_EC_KEY_get0_group(const EC_KEY* k);
+@@ -509,13 +509,13 @@
+
+ // EC curves management
+ size_t q_EC_get_builtin_curves(EC_builtin_curve *r, size_t nitems);
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ int q_EC_curve_nist2nid(const char *name);
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ #endif // OPENSSL_NO_EC
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ #define q_SSL_get_server_tmp_key(ssl, key) q_SSL_ctrl((ssl), SSL_CTRL_GET_SERVER_TMP_KEY, 0, (char *)key)
+-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L
++#endif // (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+
+ // PKCS#12 support
+ int q_PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert, STACK_OF(X509) **ca);
+--- qtbase/src/network/ssl/qsslcontext_openssl.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/network/ssl/qsslcontext_openssl.cpp 2017-02-21 19:23:04.291975945 +0100
+@@ -344,7 +344,7 @@
+
+ const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
+ if (!qcurves.isEmpty()) {
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(OPENSSL_NO_EC) && !defined(LIBRESSL_VERSION_NUMBER)
+ // Set the curves to be used
+ if (q_SSLeay() >= 0x10002000L) {
+ // SSL_CTX_ctrl wants a non-const pointer as last argument,
+@@ -462,7 +462,7 @@
+ m_npnContext.data = reinterpret_cast<unsigned char *>(m_supportedNPNVersions.data());
+ m_npnContext.len = m_supportedNPNVersions.count();
+ m_npnContext.status = QSslConfiguration::NextProtocolNegotiationNone;
+-#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++#if (OPENSSL_VERSION_NUMBER >= 0x10002000L) && !defined(LIBRESSL_VERSION_NUMBER)
+ if (q_SSLeay() >= 0x10002000L) {
+ // Callback's type has a parameter 'const unsigned char ** out'
+ // since it was introduced in 1.0.2. Internally, OpenSSL's own code
diff --git a/community/qt5-qtbase/qt-musl-iconv-no-bom.patch b/community/qt5-qtbase/qt-musl-iconv-no-bom.patch
new file mode 100644
index 0000000000..8bf35ec1ec
--- /dev/null
+++ b/community/qt5-qtbase/qt-musl-iconv-no-bom.patch
@@ -0,0 +1,11 @@
+--- qtbase/src/corelib/codecs/qiconvcodec.cpp 2017-01-18 15:20:58.000000000 +0100
++++ qtbase/src/corelib/codecs/qiconvcodec.cpp 2017-02-21 14:33:32.423808603 +0100
+@@ -64,7 +64,7 @@
+ #elif defined(Q_OS_AIX)
+ # define NO_BOM
+ # define UTF16 "UCS-2"
+-#elif defined(Q_OS_FREEBSD)
++#elif defined(Q_OS_FREEBSD) || (defined(Q_OS_LINUX) && !defined(__GLIBC__))
+ # define NO_BOM
+ # if Q_BYTE_ORDER == Q_BIG_ENDIAN
+ # define UTF16 "UTF-16BE"
diff --git a/community/qt5-qtdeclarative/APKBUILD b/community/qt5-qtdeclarative/APKBUILD
new file mode 100644
index 0000000000..42cb72235c
--- /dev/null
+++ b/community/qt5-qtdeclarative/APKBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtdeclarative
+pkgver=5.8.0
+_ver=${pkgver/_p/-}
+_ver=${_ver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - QtDeclarative component"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qtbase-dev"
+install=""
+subpackages="$pkgname-dev"
+
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtdeclarative-opensource-src-$_V.tar.xz"
+
+_qt5_prefix=/usr/lib/qt5
+builddir="$srcdir"/qtdeclarative-opensource-src-${_V%-*}
+
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+
+ mkdir -p "$pkgdir"/usr/bin/
+ for i in "$pkgdir"/$_qt5_prefix/bin/*; do
+ ln -s ../lib/qt5/bin/${i##*/} "$pkgdir"/usr/bin/${i##*/}-qt5 || return 1
+ done
+
+}
+
+sha512sums="5f3b2d03778cff29ea573ac6bee149892da4d26c7154e4ea3756ac782d7db5a3a5cb733d3285351f50f97bda9366c60f38c88c00fff2deaa7856e63a080937fc qtdeclarative-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtgraphicaleffects/APKBUILD b/community/qt5-qtgraphicaleffects/APKBUILD
new file mode 100644
index 0000000000..4a61123efc
--- /dev/null
+++ b/community/qt5-qtgraphicaleffects/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtgraphicaleffects
+pkgver=5.8.0
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - QtGraphicalEffects component"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qtbase-dev qt5-qtdeclarative-dev"
+install=""
+subpackages=""
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtgraphicaleffects-opensource-src-$_V.tar.xz"
+
+_qt5_prefix=/usr/lib/qt5
+builddir="$srcdir"/qtgraphicaleffects-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+}
+
+sha512sums="a51b111cbac1c86052881ea479c0131f8d2198e82d9a6e5bd4e49641ce25aef474900df6d3ed4cc4dcf445dc5cd9263e1c6547c87ed0fbf311672d8b7af63035 qtgraphicaleffects-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtimageformats/APKBUILD b/community/qt5-qtimageformats/APKBUILD
new file mode 100644
index 0000000000..b647cb510a
--- /dev/null
+++ b/community/qt5-qtimageformats/APKBUILD
@@ -0,0 +1,46 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtimageformats
+pkgver=5.8.0
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - QtImageFormats component"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qtbase-dev libmng-dev tiff-dev jasper-dev
+ libwebp-dev"
+install=""
+subpackages=""
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtimageformats-opensource-src-$_V.tar.xz"
+
+builddir="$srcdir"/qtimageformats-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir"
+}
+
+sha512sums="3e68584c1ed9bf2c03cc5e058161d57f6cf1fb859e729d30be2eb9d1eb6c239d88ef6e696c0aa4edeec3b35ba5c7df2186d28fb915699761e3fbaefacf583e41 qtimageformats-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtmultimedia/APKBUILD b/community/qt5-qtmultimedia/APKBUILD
new file mode 100644
index 0000000000..671ed7beda
--- /dev/null
+++ b/community/qt5-qtmultimedia/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtmultimedia
+pkgver=5.8.0
+_ver=${pkgver/_p/-}
+_ver=${_ver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - Multimedia support"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qtbase-dev qt5-qtdeclarative-dev
+ alsa-lib-dev libxv-dev gstreamer0.10-dev gst-plugins-base0.10-dev"
+install=""
+subpackages="$pkgname-dev"
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtmultimedia-opensource-src-$_V.tar.xz"
+
+builddir="$srcdir"/qtmultimedia-opensource-src-${_V%-*}
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+}
+
+sha512sums="71f8f93bf55a59c36cfa52bea8b226b29d6cfd88c1906e784e3b0b5ca7511e5ce17fc09c92e906df697305895d7e0ece8408dd864293330dcf686d2f7cc55ecb qtmultimedia-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtquickcontrols/APKBUILD b/community/qt5-qtquickcontrols/APKBUILD
new file mode 100644
index 0000000000..46e24a50b9
--- /dev/null
+++ b/community/qt5-qtquickcontrols/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
+pkgname=qt5-qtquickcontrols
+pkgver=5.8.0
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+
+pkgrel=0
+pkgdesc="Qt5 - module with set of QtQuick controls"
+url="http://qt-project.org/"
+arch="all"
+license="BSD and (LGPLv2 with exceptions or GPLv3 with exceptions) and GFDL"
+depends=""
+depends_dev="qt5-qtbase-dev qt5-qtdeclarative-dev"
+makedepends="$depends_dev"
+install=""
+subpackages=""
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtquickcontrols-opensource-src-$_V.tar.xz"
+
+builddir="$srcdir"/qtquickcontrols-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+}
+
+sha512sums="fc55e5cc2d4e1b38ad13e52ee773458bc78b219625c13dea1b4c7ec2265d13a7d491ae15bb8f5d85ea62a1c75b206c65cae25428ddaf1a29d6b0b6f0e613cc24 qtquickcontrols-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtscript/APKBUILD b/community/qt5-qtscript/APKBUILD
new file mode 100644
index 0000000000..6791f4a9ab
--- /dev/null
+++ b/community/qt5-qtscript/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtscript
+pkgver=5.8.0
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+pkgrel=0
+pkgdesc="Qt5 - QtScript component"
+url="http://qt-project.org/"
+arch="all !armhf"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qtbase-dev"
+install=""
+subpackages="$pkgname-dev"
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtscript-opensource-src-$_V.tar.xz
+ qtscript-opensource-src-5.5.0-s390.patch"
+
+builddir="$srcdir"/qtscript-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make INSTALL_ROOT="$pkgdir" install || return 1
+}
+
+sha512sums="4eb56c83e8a1826e1a2a36096738a55c702c775a040f09ff2d351527d6cd02a21d48e0f45022691c0e5166aa9881fe70f5596df5eac78c23143ccb829ba54b06 qtscript-opensource-src-5.8.0.tar.xz
+9253275dc268c4b8900dcefb66e6280076dc948bdf0765e0ba3e7c0ec690efaa3c61c5403560a8b4ee9167b43079fff9383e412f8fb912274f410d46fef8acdb qtscript-opensource-src-5.5.0-s390.patch"
diff --git a/community/qt5-qtscript/qtscript-opensource-src-5.5.0-s390.patch b/community/qt5-qtscript/qtscript-opensource-src-5.5.0-s390.patch
new file mode 100644
index 0000000000..e7871f4bc4
--- /dev/null
+++ b/community/qt5-qtscript/qtscript-opensource-src-5.5.0-s390.patch
@@ -0,0 +1,31 @@
+diff -up qtscript-opensource-src-5.5.0/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390 qtscript-opensource-src-5.5.0/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
+--- qtscript-opensource-src-5.5.0/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390 2015-06-29 15:05:58.000000000 -0500
++++ qtscript-opensource-src-5.5.0/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h 2015-07-16 09:57:18.963167137 -0500
+@@ -226,6 +226,18 @@
+ #define WTF_CPU_SPARC 1
+ #endif
+
++/* CPU(S390X) - S390 64-bit */
++#if defined(__s390x__)
++#define WTF_CPU_S390X 1
++#define WTF_CPU_BIG_ENDIAN 1
++#endif
++
++/* CPU(S390) - S390 32-bit */
++#if defined(__s390__) && !defined(__s390x__)
++#define WTF_CPU_S390 1
++#define WTF_CPU_BIG_ENDIAN 1
++#endif
++
+ /* CPU(X86) - i386 / x86 32-bit */
+ #if defined(__i386__) \
+ || defined(i386) \
+@@ -950,7 +962,7 @@
+ #if !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32) && !defined(WTF_USE_JSVALUE32_64)
+ #if (CPU(X86_64) && !CPU(X32) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64)
+ #define WTF_USE_JSVALUE64 1
+-#elif CPU(ARM) || CPU(PPC64)
++#elif CPU(ARM) || CPU(PPC64) || CPU(S390X)
+ #define WTF_USE_JSVALUE32 1
+ #elif OS(WINDOWS) && COMPILER(MINGW)
+ /* Using JSVALUE32_64 causes padding/alignement issues for JITStubArg
diff --git a/community/qt5-qtsvg/APKBUILD b/community/qt5-qtsvg/APKBUILD
new file mode 100644
index 0000000000..184730d2c6
--- /dev/null
+++ b/community/qt5-qtsvg/APKBUILD
@@ -0,0 +1,48 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtsvg
+pkgver=5.8.0
+pkgrel=0
+pkgdesc="Qt5 - Support for rendering and displaying SVG"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev="qt5-qtbase-dev"
+makedepends="$depends_dev zlib-dev"
+install=""
+subpackages="$pkgname-dev"
+
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qtsvg-opensource-src-$_V.tar.xz"
+
+builddir="$srcdir"/qtsvg-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+}
+
+sha512sums="75ae6cab2b8e8224db5bc715259beb4b876cf3e2cce908bfc3dcb40f5d7f8f5cca729c9302f7e6f36719c06bee7067f4f68a26fdcaf087f951d3d9076d27fec7 qtsvg-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qttools/APKBUILD b/community/qt5-qttools/APKBUILD
new file mode 100644
index 0000000000..a955723f98
--- /dev/null
+++ b/community/qt5-qttools/APKBUILD
@@ -0,0 +1,127 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qttools
+pkgver=5.8.0
+pkgrel=0
+pkgdesc="Qt5 - QtTool components"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev="qt5-qtbase-dev"
+makedepends="$depends_dev"
+install=""
+subpackages="$pkgname-dev qt5-assistant:_assistant qt5-qdbusviewer:_dbusviewer"
+
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qttools-opensource-src-$_V.tar.xz
+ assistant-qt5.desktop
+ designer-qt5.desktop
+ linguist-qt5.desktop
+ qdbusviewer-qt5.desktop
+ "
+
+_qt5_prefix=/usr/lib/qt5
+builddir="$srcdir"/qttools-opensource-src-$_V
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+
+ # -qt5 symlinks
+ mkdir -p "$pkgdir"/usr/bin/
+ for i in "$pkgdir"/$_qt5_prefix/bin/*; do
+ ln -s ../lib/qt5/bin/${i##*/} "$pkgdir"/usr/bin/${i##*/}-qt5 || return 1
+ done
+
+ for i in $source; do
+ case $i in
+ *.desktop) install -Dm644 "$srcdir"/$i \
+ "$pkgdir"/usr/share/applications/$i || return 1;;
+ esac
+ done
+ # icons
+ install -m644 -p -D src/assistant/assistant/images/assistant.png \
+ "$pkgdir"/usr/share/icons/hicolor/32x32/apps/assistant-qt5.png \
+ || return 1
+ install -m644 -p -D src/assistant/assistant/images/assistant-128.png \
+ "$pkgdir"/usr/share/icons/hicolor/128x128/apps/assistant-qt5.png\
+ || return 1
+ install -m644 -p -D src/designer/src/designer/images/designer.png \
+ "$pkgdir"/usr/share/icons/hicolor/32x32/apps/designer-qt5.png \
+ || return 1
+ install -m644 -p -D src/qdbus/qdbusviewer/images/qdbusviewer.png \
+ "$pkgdir"/usr/share/icons/hicolor/32x32/apps/qdbusviewer-qt5.png \
+ || return 1
+ install -m644 -p -D src/qdbus/qdbusviewer/images/qdbusviewer-128.png \
+ "$pkgdir"/usr/share/icons/hicolor/128x128/apps/qdbusviewer-qt5.png \
+ || return 1
+ # linguist icons
+ for icon in src/linguist/linguist/images/icons/linguist-*-32.png ; do
+ size=$(echo ${icon##*/} | cut -d- -f2)
+ install -p -m644 -D ${icon} \
+ "$pkgdir"/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png || return 1
+ done
+}
+
+_mv_files() {
+ local i
+ for i in "$@"; do
+ mkdir -p "$subpkgdir"/${i%/*}
+ mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
+ done
+}
+
+dev() {
+ default_dev
+ cd "$pkgdir"
+ for i in designer lconvert linguist lrelease lupdate pixeltool \
+ qcollectiongenerator qhelpconverter qhelpgenerator; do
+
+ _mv_files $_qt5_prefix/bin/$i usr/bin/$i-qt5 || return 1
+ done
+ _mv_files \
+ usr/share/applications/designer* \
+ usr/share/applications/linguist* \
+ usr/share/icons/hicolor/*/apps/designer* \
+ usr/share/icons/hicolor/*/apps/linguist* \
+ || return 1
+}
+
+_assistant() {
+ pkgdesc="Documentation browser for Qt5"
+ cd "$pkgdir"
+ _mv_files usr/bin/assist* \
+ $_qt5_prefix/bin/assist* \
+ usr/share/applications/*assistant* \
+ usr/share/icons/hicolor/*/apps/assistant* \
+ || return 1
+}
+
+_dbusviewer() {
+ pkgdesc="D-Bus debugger and viewer"
+ cd "$pkgdir"
+ _mv_files usr/bin/qdbusviewer* \
+ $_qt5_prefix/bin/qdbusviewer* \
+ usr/share/applications/qdbusviewer* \
+ usr/share/icons/hicolor/*/apps/qdbusviewer* \
+ || return 1
+}
+
+sha512sums="1fd023da854340ebdbed6a23bff6bf6f42ee94e40afb5e9fdb3c34bfb2aa0a2502ebf5bcf67947b9f36b0d2b218be3dcac90acc497e57f01dfe5d5f902ba9553 qttools-opensource-src-5.8.0.tar.xz
+d566c5284854855541df7177b23f491d96f5064b571e899a44f1d4fcf8bbf1223590b05b1954278dc6f3f56341c917f5b846594c5bd2215b6a859224038d8ad2 assistant-qt5.desktop
+72d9a2235a60c4ae05ba8395d473fe0b42c12e584da619dadb112eb67ba33a85fe0dab6c185d98112d7b25d3eeacaf02f7ef4731742e50c17eacc54c383661b3 designer-qt5.desktop
+b6d8a672d19eed39ab868ff6fc880f255da94acb9e1e84f5905c0f3b9b6055547e8a706492973692c06dc23d35ce77622fc13efc11adf21b62c3baf4ef5ab2ad linguist-qt5.desktop
+dddcc8c945dcbaf834e8aa8f42fd6df8d6e257e673a256cfd4affed7caf119502dffe6864262d353e8c2e234296cd091279f120ab9502f1b323e20ae3c3dc709 qdbusviewer-qt5.desktop"
diff --git a/community/qt5-qttools/assistant-qt5.desktop b/community/qt5-qttools/assistant-qt5.desktop
new file mode 100644
index 0000000000..05b6ef127b
--- /dev/null
+++ b/community/qt5-qttools/assistant-qt5.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Exec=/usr/lib/qt5/bin/assistant
+Name=Qt Assistant
+GenericName=Qt Document Browser
+Icon=assistant
+Terminal=false
+Type=Application
+Categories=Qt;Development;Documentation
diff --git a/community/qt5-qttools/designer-qt5.desktop b/community/qt5-qttools/designer-qt5.desktop
new file mode 100644
index 0000000000..b867254d57
--- /dev/null
+++ b/community/qt5-qttools/designer-qt5.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Exec=/usr/lib/qt5/bin/designer
+Name=Qt Designer
+GenericName=Interface Designer
+MimeType=application/x-designer
+Icon=designer
+Terminal=false
+Type=Application
+Categories=Qt;Development;GUIDesigner
diff --git a/community/qt5-qttools/linguist-qt5.desktop b/community/qt5-qttools/linguist-qt5.desktop
new file mode 100644
index 0000000000..0d4bb453e3
--- /dev/null
+++ b/community/qt5-qttools/linguist-qt5.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Exec=/usr/lib/qt5/bin/linguist
+Name=Qt Linguist
+GenericName=Translation Tool
+MimeType=application/x-linguist
+Terminal=false
+Type=Application
+Icon=linguist
+Categories=Qt;Development;Translation
diff --git a/community/qt5-qttools/qdbusviewer-qt5.desktop b/community/qt5-qttools/qdbusviewer-qt5.desktop
new file mode 100644
index 0000000000..c5abc7078d
--- /dev/null
+++ b/community/qt5-qttools/qdbusviewer-qt5.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Qt5 QDbusViewer
+GenericName=D-Bus Debugger
+Comment=Debug D-Bus applications
+Exec=/usr/lib/qt5/bin/qdbusviewer
+Icon=qt5-qdbusviewer
+Terminal=false
+Type=Application
+Categories=Qt;Development;Debugger;
+
diff --git a/community/qt5-qttranslations/APKBUILD b/community/qt5-qttranslations/APKBUILD
new file mode 100644
index 0000000000..a994e05f0b
--- /dev/null
+++ b/community/qt5-qttranslations/APKBUILD
@@ -0,0 +1,47 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qttranslations
+pkgver=5.8.0
+pkgrel=0
+pkgdesc="Qt5 - QtTranslations module"
+url="http://qt-project.org/"
+arch="noarch"
+license="LGPLv2 with exceptions or GPLv3 with exceptions and GFDL"
+depends=""
+depends_dev=""
+makedepends="$depends_dev qt5-qttools-dev"
+install=""
+subpackages=""
+
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+
+source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/qttranslations-opensource-src-$_V.tar.xz"
+
+builddir="$srcdir"/qttranslations-opensource-src-$_V
+prepare() {
+ local i
+ cd "$builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 && make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+}
+
+sha512sums="a3e0a6782e620eb0dfb03df8fa79b41953ed4a05e93507b2148bddf3ba24ae605b7aea16ef1974bc3b1904000fc6a60f5faf09f60e9ca6c61b974f5bdc86e05c qttranslations-opensource-src-5.8.0.tar.xz"
diff --git a/community/qt5-qtwebkit/0001-Add-ARM-64-support.patch b/community/qt5-qtwebkit/0001-Add-ARM-64-support.patch
new file mode 100644
index 0000000000..73f5c97f87
--- /dev/null
+++ b/community/qt5-qtwebkit/0001-Add-ARM-64-support.patch
@@ -0,0 +1,13 @@
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index 4594ec8..639f28f 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -342,7 +342,7 @@
+ #endif
+ #endif
+
+-#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64)
++#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64) || CPU(AARCH64)
+ #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1
+ #endif
+
diff --git a/community/qt5-qtwebkit/APKBUILD b/community/qt5-qtwebkit/APKBUILD
new file mode 100644
index 0000000000..3006b4063c
--- /dev/null
+++ b/community/qt5-qtwebkit/APKBUILD
@@ -0,0 +1,86 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=qt5-qtwebkit
+pkgver=5.8.0
+pkgrel=0
+pkgdesc="Qt5 - QtWebKit components"
+url="http://qt-project.org/"
+arch="all"
+license="LGPLv2 with exceptions or GPLv3 with exceptions"
+depends=""
+depends_dev="qt5-qtdeclarative-dev gstreamer1-dev gst-plugins-base1-dev
+ libxslt-dev mesa-dev icu-dev libxext-dev glib-dev libxcomposite-dev
+ libxrender-dev
+ "
+makedepends="$depends_dev
+ bison
+ flex
+ fontconfig-dev
+ gperf
+ libjpeg-turbo-dev
+ libpng-dev
+ libwebp-dev
+ pcre-dev
+ qt5-qtbase-dev
+ ruby
+ sqlite-dev
+ zlib-dev
+ "
+subpackages="$pkgname-dev"
+
+_ver=${pkgver/_/-}
+_ver=${_ver/beta0/beta}
+_ver=${_ver/rc0/rc}
+_V=${_ver/rc/RC}
+case $pkgver in
+*_beta*|*_rc*) _rel=development_releases;;
+*) _rel=official_releases;;
+esac
+
+source="http://download.qt.io/community_releases/${_V%.*}/${_V}-final/qtwebkit-opensource-src-$_V.tar.xz
+ pic.patch
+ fix-rpath.patch
+ fix-execinfo.patch
+ 0001-Add-ARM-64-support.patch
+ "
+builddir="$srcdir"/qtwebkit-opensource-src-$_V
+
+prepare() {
+ default_prepare || return 1 # apply patches
+ # remove some bundled
+ mkdir Source/ThirdParty/orig
+ mv Source/ThirdParty/gtest/ \
+ Source/ThirdParty/qunit/ \
+ Source/ThirdParty/orig/ \
+ || return 1
+ syncqt-qt5.pl -version $_V Source/sync.profile || return 1
+}
+
+build() {
+ cd "$builddir"
+ qmake-qt5 || return 1
+
+ # /usr/include/fortify/stdlib.h:20:25: fatal error: stdlib.h: No such file or directory
+ # see: http://stackoverflow.com/questions/37218953/isystem-on-a-system-include-directory-causes-errors
+ # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71090
+ # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129
+ qmake-qt5 Source/JavaScriptCore/LLIntOffsetsExtractor.pro -o \
+ Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor || return 1
+ sed -i 's:-isystem /usr/include ::' \
+ Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor || return 1
+
+ make || return 1
+}
+
+package() {
+ cd "$builddir"
+ make install INSTALL_ROOT="$pkgdir" || return 1
+ # remove rpath
+# chrpath --delete "$pkgdir"/usr/lib/qt5/libexec/* || return 1
+ sed -i -e 's:-L/home[^ ]\+::g' "$pkgdir"/usr/lib/pkgconfig/*.pc
+}
+
+sha512sums="980b5d267d31911f96822656d33407749eb7aa705d17051fe024505d51b0a6418cbd3492ba703057e8e22b0b1242a923f8b119ef9d52b70b7e6c28f36b2c9b84 qtwebkit-opensource-src-5.8.0.tar.xz
+9a62a5e7af91c44311b517608262f88b5bc607e75dc5878dd08b0a0872ec03fb7a566df0a41413f7e60beb1b9880e24f084b90c38ed50d4219ec2ad6af9bd62f pic.patch
+00d59c0cdb58ae8e7cf6bc3d03f133697e74c267ccebe12238bcdc274d4c90210b82c2d8bdf0e949cd43da13a4fd8a4c35fb54a00ed5102a4ac4d23aa002d0fe fix-rpath.patch
+f17c2f4b90090c8f12e4ba1f2cbd7a9f496c8de024ba6e0d55b98e5b89ab89298aff84f39e81905e0491fe6bd11544633a8b191403a866e16ed654d44cf8dc6f fix-execinfo.patch
+af5097d44f73de156ca31a5423136301dfc12ae693e20c4702bf3f1c6e16395f3912e9268582480ba3177021f37d4cae3b84d4b23eeb063fdc40f2444d3b34c8 0001-Add-ARM-64-support.patch"
diff --git a/community/qt5-qtwebkit/fix-execinfo.patch b/community/qt5-qtwebkit/fix-execinfo.patch
new file mode 100644
index 0000000000..6fbf4ed8fd
--- /dev/null
+++ b/community/qt5-qtwebkit/fix-execinfo.patch
@@ -0,0 +1,20 @@
+--- webkitgtk-2.2.0.orig/Source/WTF/wtf/Assertions.cpp
++++ webkitgtk-2.2.0/Source/WTF/wtf/Assertions.cpp
+@@ -64,7 +64,7 @@
+ #include <windows.h>
+ #endif
+
+-#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
++#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID)
+ #include <cxxabi.h>
+ #include <dlfcn.h>
+ #include <execinfo.h>
+@@ -242,7 +242,7 @@
+
+ void WTFGetBacktrace(void** stack, int* size)
+ {
+-#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
++#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID)
+ *size = backtrace(stack, *size);
+ #elif OS(WINDOWS) && !OS(WINCE)
+ // The CaptureStackBackTrace function is available in XP, but it is not defined
diff --git a/community/qt5-qtwebkit/fix-rpath.patch b/community/qt5-qtwebkit/fix-rpath.patch
new file mode 100644
index 0000000000..6b08fd1a39
--- /dev/null
+++ b/community/qt5-qtwebkit/fix-rpath.patch
@@ -0,0 +1,11 @@
+--- ./Tools/qmake/mkspecs/features/unix/default_post.prf.orig
++++ ./Tools/qmake/mkspecs/features/unix/default_post.prf
+@@ -59,8 +59,6 @@
+ }
+ }
+
+-contains(TEMPLATE, app): CONFIG += rpath
+-
+ CONFIG(debug, debug|release)|force_debug_info {
+ # Make ld not cache the symbol tables of input files in memory to avoid memory exhaustion during the linking phase.
+ !force_static_libs_as_shared:config_gnuld: QMAKE_LFLAGS += -Wl,--no-keep-memory
diff --git a/community/qt5-qtwebkit/pic.patch b/community/qt5-qtwebkit/pic.patch
new file mode 100644
index 0000000000..ef8993ee3d
--- /dev/null
+++ b/community/qt5-qtwebkit/pic.patch
@@ -0,0 +1,11 @@
+--- ./Source/WTF/wtf/InlineASM.h.orig 2013-10-07 11:36:58.995128674 +0000
++++ ./Source/WTF/wtf/InlineASM.h 2013-10-07 11:37:28.058792290 +0000
+@@ -42,7 +42,7 @@
+ #define THUMB_FUNC_PARAM(name)
+ #endif
+
+-#if (OS(LINUX) || OS(FREEBSD)) && CPU(X86_64)
++#if (OS(LINUX) || OS(FREEBSD)) && (CPU(X86_64) || defined(__PIC__))
+ #define GLOBAL_REFERENCE(name) #name "@plt"
+ #elif CPU(X86) && COMPILER(MINGW)
+ #define GLOBAL_REFERENCE(name) "@" #name "@4"