From 204b7b4ef833f6a97ed125695bf88f9d224166c2 Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Mon, 18 Dec 2017 22:57:40 +0000 Subject: [PATCH] qt5-qtdeclarative (QML) compile for armv7 to enable JIT and make it work at all (#1022) Also removed the Alpine maintainer (as we usually do so we don't annoy him) and changed the pkgver to 9999 (this package is present in upstream Alpine, we don't want it to get replaced when Alpine updates their version). --- main/qt5-qtdeclarative/APKBUILD | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/main/qt5-qtdeclarative/APKBUILD b/main/qt5-qtdeclarative/APKBUILD index d3263c479..f42d95be6 100644 --- a/main/qt5-qtdeclarative/APKBUILD +++ b/main/qt5-qtdeclarative/APKBUILD @@ -1,29 +1,42 @@ -# Maintainer: Natanael Copa pkgname=qt5-qtdeclarative _pkgname=${pkgname/qt5-//}-opensource-src -pkgver=5.9.3 -_ver=${pkgver/_p/-} +pkgver=9999 +_pkgver=5.9.3 +_ver=${_pkgver/_p/-} _ver=${_ver/_/-} _ver=${_ver/beta0/beta} _ver=${_ver/rc0/rc} _V=${_ver/rc/RC} -pkgrel=1 -pkgdesc="Qt5 - QtDeclarative component" +pkgrel=0 +pkgdesc="Qt5 - QtDeclarative component (#878: armhf is armv7)" url="http://qt-project.org/" arch="all" license="LGPLv2 with exceptions or GPLv3 with exceptions" makedepends="qt5-qtbase-dev" subpackages="$pkgname-dev" -case $pkgver in +case $_pkgver in *_beta*|*_rc*) _rel=development_releases;; *) _rel=official_releases;; esac -source="http://download.qt-project.org/$_rel/qt/${pkgver%.*}/$_ver/submodules/$_pkgname-$_V.tar.xz" +source="http://download.qt-project.org/$_rel/qt/${_pkgver%.*}/$_ver/submodules/$_pkgname-$_V.tar.xz" _qt5_prefix=/usr/lib/qt5 builddir="$srcdir"/$_pkgname-${_V%-*} +prepare() { + default_prepare + # Compile for armv7 instead of armhf (armv6), so the JIT compiler + # works. The non-JIT version is slow and broken (#878). + if [ "$CARCH" == "armhf" ]; then + { + echo 'QMAKE_CLAGS="-mthumb-interwork -mthumb -march=armv7"' + echo 'QMAKE_CXXFLAGS="-mthumb-interwork -mthumb -march=armv7"' + } >> "$builddir"/src/qml/qml.pro + msg "QML will be compiled for armv7 instead of armhf (armv6) (#878)!" + fi +} + build() { cd "$builddir" qmake-qt5 && make