diff options
author | 2008-02-17 07:54:19 +0000 | |
---|---|---|
committer | 2008-02-17 07:54:19 +0000 | |
commit | c6355794e42384b3c51ab0a327d99ca0635b16c1 (patch) | |
tree | 6bf035a5117745c932a814656aacf6f07e6e10f8 /app-cdr | |
parent | Add missing m4 dependency and fixup flag munging. (diff) | |
download | historical-c6355794e42384b3c51ab0a327d99ca0635b16c1.tar.gz historical-c6355794e42384b3c51ab0a327d99ca0635b16c1.tar.bz2 historical-c6355794e42384b3c51ab0a327d99ca0635b16c1.zip |
Fix running of growisofs on systems with large thread stacks (like powerpc).
Package-Manager: portage-2.2_pre2
Diffstat (limited to 'app-cdr')
-rw-r--r-- | app-cdr/dvd+rw-tools/ChangeLog | 9 | ||||
-rw-r--r-- | app-cdr/dvd+rw-tools/Manifest | 10 | ||||
-rw-r--r-- | app-cdr/dvd+rw-tools/dvd+rw-tools-7.0-r1.ebuild | 41 | ||||
-rw-r--r-- | app-cdr/dvd+rw-tools/files/dvd+rw-tools-7.0-thread-stack-size.patch | 41 |
4 files changed, 96 insertions, 5 deletions
diff --git a/app-cdr/dvd+rw-tools/ChangeLog b/app-cdr/dvd+rw-tools/ChangeLog index 593dc6221886..87921b9a5656 100644 --- a/app-cdr/dvd+rw-tools/ChangeLog +++ b/app-cdr/dvd+rw-tools/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-cdr/dvd+rw-tools # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-cdr/dvd+rw-tools/ChangeLog,v 1.55 2008/02/17 07:18:00 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-cdr/dvd+rw-tools/ChangeLog,v 1.56 2008/02/17 07:54:19 vapier Exp $ + +*dvd+rw-tools-7.0-r1 (17 Feb 2008) + + 17 Feb 2008; Mike Frysinger <vapier@gentoo.org> + +files/dvd+rw-tools-7.0-thread-stack-size.patch, + +dvd+rw-tools-7.0-r1.ebuild: + Fix running of growisofs on systems with large thread stacks (like powerpc). 17 Feb 2008; Mike Frysinger <vapier@gentoo.org> dvd+rw-tools-7.0.ebuild: Add missing m4 dependency and fixup flag munging. diff --git a/app-cdr/dvd+rw-tools/Manifest b/app-cdr/dvd+rw-tools/Manifest index f5e627bbf9d8..a9e645d6d1c1 100644 --- a/app-cdr/dvd+rw-tools/Manifest +++ b/app-cdr/dvd+rw-tools/Manifest @@ -2,6 +2,7 @@ Hash: SHA1 AUX 01_all_samsung-media-fix.patch 701 RMD160 d82e6a4135a67b46e9c0ce61a979e2e5995af4aa SHA1 da17027b0733bb18c3c77784b02a79728af68230 SHA256 a987638e7d83adff588d9445a36d5a59d52bb98f7b50311ff0a0eabe6812b299 +AUX dvd+rw-tools-7.0-thread-stack-size.patch 1285 RMD160 0ea3170ca6f3d5929125e02c9ec6e9be476e79c6 SHA1 98d03c8b17bf5b8f087899dbff7df8df090eae06 SHA256 50c2b883b9d216ef509f79bc1d02c2d838ae170a9ecd7cf844dd410e5ad67c3b DIST dvd+rw-tools-5.21.4.10.8.tar.gz 107045 RMD160 638f67ddfc24f89a4c2bc2abced652e679f4400f SHA1 319a4529db3748f595aa9dc8f2e54564bb32a0e3 SHA256 6d233df4429583c5a36df3328cd74e71e39aed6bb90586998fe6a8dcd3ba514b DIST dvd+rw-tools-6.0.tar.gz 118804 RMD160 f4762e342b910867655f20858be8945ae7054f0b SHA1 964bae317a047cb8a7f311333b3cec5266f417e6 SHA256 17cdb64c5daa0ee553984a397434a8ed63a25fae5807b39613fec8df382e4729 DIST dvd+rw-tools-6.1.tar.gz 121425 RMD160 d06eb401fc53bf11df39ba89d508b67f3a0b915f SHA1 ff63b6c6ee33cd777164d5ad72ab5c1c12430916 SHA256 43ddf89a5aaafcf4725337c107d0dfa659132541696c8ba1ed74bea19c4e33f1 @@ -10,13 +11,14 @@ EBUILD dvd+rw-tools-5.21.4.10.8.ebuild 956 RMD160 dc0e43dfd7aca48e0d608b560ead54 EBUILD dvd+rw-tools-6.0.ebuild 1076 RMD160 eeb4223aa392d2686604afdcc393141ceabb5efb SHA1 2c0e05073fbc10f03be1f68f0bb23f8f277e95c3 SHA256 fd3ac1d45d02f230189c45808a9ce4eb5a45069f7e89b53e084733ce66482652 EBUILD dvd+rw-tools-6.1-r1.ebuild 1114 RMD160 3db1f7fc9f475431582d8057efa645558533e33c SHA1 52d57674cf6ddbbb17182ccdf80a14e4dc785164 SHA256 0992a7d95db17c4ac1e5cb8319f31b30695c640f1ce475c773c5e72421de7e32 EBUILD dvd+rw-tools-6.1.ebuild 1070 RMD160 5ad1503844cf5482b78695eeeb31fbe539fb0b7c SHA1 a47ef9b2b9566134199647e8b16870d8a836eb68 SHA256 01581c0f90e2804794016d99e81c594b98ec1a1b5f97df336bc36b3b7a88a240 +EBUILD dvd+rw-tools-7.0-r1.ebuild 1114 RMD160 8f19184d09cffa05ad57dfcf21a580fbee85b86e SHA1 76c620ce9b36643cddccee8e5114e090bc4df2b2 SHA256 b12d3035841a0402f3f60934a1aaf425e78e8c34bb792197eb6c202fcd6cd618 EBUILD dvd+rw-tools-7.0.ebuild 1063 RMD160 1f22423e259db42606e2fbf7b46dabed01772b8d SHA1 08844acd8e4cdcdfd37100deb7cfa0a56cc0ac0c SHA256 e01cc4b954cb0178f03c274420041bcbcf51aad5a111668c3e0a10d0428bfeaf -MISC ChangeLog 7289 RMD160 dd901aa1cabfcfa6dbee2638b814d8a20863314e SHA1 820832399408bab06fe786c532f14d0f35a958a0 SHA256 5770f6645918366aec068c638ca884f2c563f2cc8d2c1ab58c14d89ddd3547a0 +MISC ChangeLog 7537 RMD160 459051592e8647d395054eda515e4299326c1dfd SHA1 f716f3f5268fbd6d0b1e07776137dd554893f431 SHA256 1ceebe4cb374b94b0f55e597cfa5a66019e7f9724e16fa4590d35e3387bbe070 MISC metadata.xml 293 RMD160 b97e3360ba18362c52786ba89cd3bc68c2ad78fb SHA1 66f8a2850da3df8f4e9ccda87025711db142dae3 SHA256 38a4d78cd4b1b04f922df758442e6867ba011beb6e9bec7f2fb9993d32c94665 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.7 (GNU/Linux) -iD8DBQFHt9+uj9hvisErhMIRAhXJAKCEFjs4Gh08iMHYMkqlPI3jJy1mDACgjlIH -CWbnSET1s4gKZSeRTo4xuFk= -=Jcds +iD8DBQFHt+gwj9hvisErhMIRAmShAJ9JVBL5JGHbjEGctdDVFZVfb9yGxgCdFdpH +CB1L4C6q7u3zQBg/zuZrr1k= +=Zdxs -----END PGP SIGNATURE----- diff --git a/app-cdr/dvd+rw-tools/dvd+rw-tools-7.0-r1.ebuild b/app-cdr/dvd+rw-tools/dvd+rw-tools-7.0-r1.ebuild new file mode 100644 index 000000000000..85c6a03d987e --- /dev/null +++ b/app-cdr/dvd+rw-tools/dvd+rw-tools-7.0-r1.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-cdr/dvd+rw-tools/dvd+rw-tools-7.0-r1.ebuild,v 1.1 2008/02/17 07:54:19 vapier Exp $ + +inherit eutils toolchain-funcs + +DESCRIPTION="A set of tools for DVD+RW/-RW drives" +HOMEPAGE="http://fy.chalmers.se/~appro/linux/DVD+RW/" +SRC_URI="http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86" +IUSE="" + +RDEPEND="virtual/cdrtools" +DEPEND="${RDEPEND} + sys-devel/m4" + +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}"/${P}-thread-stack-size.patch + # Linux compiler flags only include -O2 and are incremental + sed -i '/FLAGS/s:-O2::' Makefile.m4 +} + +src_compile() { + emake CC=$(tc-getCC) CXX=$(tc-getCXX) || die +} + +src_install() { + einstall || die + dohtml index.html +} + +pkg_postinst() { + elog "When you run growisofs if you receive:" + elog "unable to anonymously mmap 33554432: Resource temporarily unavailable" + elog "error message please run 'ulimit -l unlimited'" +} diff --git a/app-cdr/dvd+rw-tools/files/dvd+rw-tools-7.0-thread-stack-size.patch b/app-cdr/dvd+rw-tools/files/dvd+rw-tools-7.0-thread-stack-size.patch new file mode 100644 index 000000000000..ab0f1173634a --- /dev/null +++ b/app-cdr/dvd+rw-tools/files/dvd+rw-tools-7.0-thread-stack-size.patch @@ -0,0 +1,41 @@ +Respect PTHREAD_STACK_MIN when defined + +Some systems (like PowerPC) cannot work with 64k thread stacks. Setting the +stack lower will error and the whole process aborts. An example error: +$ growisofs -dvd-compat -Z /dev/hda=my.iso +Executing 'builtin_dd if=my.iso of=/dev/hda obs=32k seek=0' +:-( failed to create thread: Input/output error + +So if the minimum required size is larger than 64k, we'll just use whatever +the system defines. If it is smaller, we'll stick with 64k. + +Signed-off-by: Mike Frysinger <vapier@gentoo.org> + +--- dvd+rw-tools-7.0/mp.h ++++ dvd+rw-tools-7.0/mp.h +@@ -31,6 +31,16 @@ + #include <sched.h> + #include <semaphore.h> + #include <stdlib.h> ++#include <limits.h> ++ ++/* some systems (like powerpc) cannot work with 64k stacks */ ++#define MY_STACK_SIZE 64*1024 ++#ifdef PTHREAD_STACK_MIN ++# if MY_STACK_SIZE < PTHREAD_STACK_MIN ++# undef MY_STACK_SIZE ++# define MY_STACK_SIZE PTHREAD_STACK_MIN ++# endif ++#endif + + #define THR_TYPE int + +@@ -39,7 +49,7 @@ + pthread_attr_t attr; + + if (pthread_attr_init(&attr)==0 && +- pthread_attr_setstacksize(&attr,64*1024)==0 && ++ pthread_attr_setstacksize(&attr,MY_STACK_SIZE)==0 && + pthread_attr_setscope(&attr,PTHREAD_SCOPE_SYSTEM)==0 && + pthread_create(&h,&attr,(void *(*)(void *))func,arg)==0 ) + return (void *)h; |