diff options
author | Jeroen Roovers <jer@gentoo.org> | 2015-02-18 06:30:45 +0000 |
---|---|---|
committer | Jeroen Roovers <jer@gentoo.org> | 2015-02-18 06:30:45 +0000 |
commit | ee835107157443372fcdd6085e916ed875bcf4e9 (patch) | |
tree | dd2246e9632b8d81edc8937c9b4fa22cce544102 /dev-qt/qtdeclarative | |
parent | revbump; convert -> distutils-r1, rm old (diff) | |
download | gentoo-2-ee835107157443372fcdd6085e916ed875bcf4e9.tar.gz gentoo-2-ee835107157443372fcdd6085e916ed875bcf4e9.tar.bz2 gentoo-2-ee835107157443372fcdd6085e916ed875bcf4e9.zip |
Add stack size calculation fix for HPPA (bug #538674).
(Portage version: 2.2.17/cvs/Linux x86_64, signed Manifest commit with key A792A613)
Diffstat (limited to 'dev-qt/qtdeclarative')
-rw-r--r-- | dev-qt/qtdeclarative/ChangeLog | 6 | ||||
-rw-r--r-- | dev-qt/qtdeclarative/files/qtdeclarative-5.4.0-stack-direction.patch | 46 | ||||
-rw-r--r-- | dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild | 6 |
3 files changed, 56 insertions, 2 deletions
diff --git a/dev-qt/qtdeclarative/ChangeLog b/dev-qt/qtdeclarative/ChangeLog index ed3788e4b7d5..709de4f043c3 100644 --- a/dev-qt/qtdeclarative/ChangeLog +++ b/dev-qt/qtdeclarative/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-qt/qtdeclarative # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtdeclarative/ChangeLog,v 1.23 2015/02/03 11:39:02 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtdeclarative/ChangeLog,v 1.24 2015/02/18 06:30:45 jer Exp $ + + 18 Feb 2015; Jeroen Roovers <jer@gentoo.org> qtdeclarative-5.4.0.ebuild, + +files/qtdeclarative-5.4.0-stack-direction.patch: + Add stack size calculation fix for HPPA (bug #538674). 03 Feb 2015; Jeroen Roovers <jer@gentoo.org> qtdeclarative-5.4.0.ebuild: Marked ~hppa too. diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-5.4.0-stack-direction.patch b/dev-qt/qtdeclarative/files/qtdeclarative-5.4.0-stack-direction.patch new file mode 100644 index 000000000000..1889fa80c70d --- /dev/null +++ b/dev-qt/qtdeclarative/files/qtdeclarative-5.4.0-stack-direction.patch @@ -0,0 +1,46 @@ +commit a4152c29b6f98c32a30a824bc50a760ce6bad6c7
+Author: Rolf Eike Beer <eb@emlix.com>
+Date: Wed Feb 4 13:24:53 2015 +0100
+
+ QML: do not check stack size if stack grows up
+
+ On architectures where the stack grows upwards (i.e. HP PA-RISC) the
+ stack limit calculation fails because the variables used to check the
+ offset are usually close to the bottom of the stack, which is in this
+ case the origin of the stack grows. Since these machines are a rare
+ obscurity simply simply assume that everything is fine on these
+ machines. The few people that are indeed running QML on such machines
+ will probably be able configure their stack size properly by default.
+
+ Task-number: QTBUG-44268
+ Change-Id: Ia83a39179a0f6e0602ba7a5032d386e12d8d1ba3
+
+diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp
+index 5bba745..6156e5c 100644
+--- a/src/qml/jsruntime/qv4engine.cpp
++++ b/src/qml/jsruntime/qv4engine.cpp
+@@ -108,8 +108,14 @@ quintptr getStackLimit()
+ } else
+ size = pthread_get_stacksize_np(thread_self);
+ stackLimit -= size;
++# elif defined(__hppa)
++ // On some architectures the stack grows upwards. All of these are rather exotic, so simply assume
++ // everything is fine there.
++ // Known examples:
++ // -HP PA-RISC
++ stackLimit = 0;
++
+ # else
+- void* stackBottom = 0;
+ pthread_attr_t attr;
+ #if HAVE(PTHREAD_NP_H) && OS(FREEBSD)
+ // on FreeBSD pthread_attr_init() must be called otherwise getting the attrs crashes
+@@ -117,7 +123,9 @@ quintptr getStackLimit()
+ #else
+ if (pthread_getattr_np(pthread_self(), &attr) == 0) {
+ #endif
++ void *stackBottom = Q_NULLPTR;
+ size_t stackSize = 0;
++
+ pthread_attr_getstack(&attr, &stackBottom, &stackSize);
+ pthread_attr_destroy(&attr);
\ No newline at end of file diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild b/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild index 355fae17b874..089762620c78 100644 --- a/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild +++ b/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild,v 1.3 2015/02/03 11:39:02 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-qt/qtdeclarative/qtdeclarative-5.4.0.ebuild,v 1.4 2015/02/18 06:30:45 jer Exp $ EAPI=5 @@ -28,6 +28,10 @@ DEPEND=" " RDEPEND="${DEPEND}" +PATCHES=( + "${FILESDIR}/${P}-stack-direction.patch" +) + src_prepare() { use localstorage || sed -i -e '/localstorage/d' \ src/imports/imports.pro || die |