diff options
author | Travis Tilley <lv@gentoo.org> | 2004-06-02 19:14:19 +0000 |
---|---|---|
committer | Travis Tilley <lv@gentoo.org> | 2004-06-02 19:14:19 +0000 |
commit | c8c65747042878fc44a2a6cd54920e01ae3f07bf (patch) | |
tree | 1d95803b75a9212096404c6d69481b16fefab3cf /sys-libs | |
parent | stable on x86 + amd64 (Manifest recommit) (diff) | |
download | gentoo-2-c8c65747042878fc44a2a6cd54920e01ae3f07bf.tar.gz gentoo-2-c8c65747042878fc44a2a6cd54920e01ae3f07bf.tar.bz2 gentoo-2-c8c65747042878fc44a2a6cd54920e01ae3f07bf.zip |
new cvs snapshot. this ebuild marks a move from using branch updates against 2.3.2 to using actual cvs snapshot tarballs. it also marks a move in the versioning scheme for glibc... since upstream has decided to let distributions choose what they want to release instead of making releases themselves, the pre has been dropped from the version.
Diffstat (limited to 'sys-libs')
-rw-r--r-- | sys-libs/glibc/ChangeLog | 11 | ||||
-rw-r--r-- | sys-libs/glibc/Manifest | 162 | ||||
-rw-r--r-- | sys-libs/glibc/files/digest-glibc-2.3.3.20040602 | 3 | ||||
-rw-r--r-- | sys-libs/glibc/glibc-2.3.3.20040602.ebuild | 694 |
4 files changed, 789 insertions, 81 deletions
diff --git a/sys-libs/glibc/ChangeLog b/sys-libs/glibc/ChangeLog index 776c21c19c55..323e47e21ada 100644 --- a/sys-libs/glibc/ChangeLog +++ b/sys-libs/glibc/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for sys-libs/glibc # Copyright 2002-2004 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.161 2004/06/02 09:35:44 kumba Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/ChangeLog,v 1.162 2004/06/02 19:14:19 lv Exp $ + +*glibc-2.3.3.20040602 (02 Jun 2004) + + 02 Jun 2004; Travis Tilley <lv@gentoo.org> +glibc-2.3.3.20040602.ebuild: + new cvs snapshot. this ebuild marks a move from using branch updates against + 2.3.2 to using actual cvs snapshot tarballs. it also marks a move in the + versioning scheme for glibc... since upstream has decided to let distributions + choose what they want to release instead of making releases themselves, the + pre has been dropped from the version. 02 Jun 2004; Joshua Kinard <kumba@gentoo.org> glibc-2.3.3_pre20040529.ebuild: diff --git a/sys-libs/glibc/Manifest b/sys-libs/glibc/Manifest index 66c3df3843e7..64dddb0cd8dc 100644 --- a/sys-libs/glibc/Manifest +++ b/sys-libs/glibc/Manifest @@ -1,127 +1,129 @@ -MD5 9bfb4bc3142427133caa13f7715602a0 ChangeLog 32581 -MD5 b141dc6e9c4183e869f6d95f0f015b99 glibc-2.2.5-r9.ebuild 10002 -MD5 c1f9466ec8250dd47beb7a71f7c536fe glibc-2.3.1-r5.ebuild 10719 -MD5 081030d4ac6e9b8879727089b52b28fd glibc-2.3.2-r10.ebuild 19418 -MD5 6ae51bfd7e5cc6af9b1ea678354a8760 glibc-2.3.2-r2.ebuild 17968 +MD5 f4358881c69308201c7e5e0c7d6d414e glibc-2.3.3_pre20040420-r1.ebuild 20185 +MD5 37180d536733ae205d0db321571cd5ca glibc-2.3.3_pre20040117-r1.ebuild 19232 MD5 6ac96ce0f33c3d794730111609c45576 glibc-2.3.2-r3.ebuild 17308 -MD5 32383b07afc0abdbb3a8da5fe539a696 glibc-2.3.2-r9.ebuild 18657 +MD5 40b73d3cb79e611b0b6a3385f1601e32 glibc-2.3.3_pre20040207.ebuild 19594 MD5 c09629c691d99b48b52e8ee8083cd1da glibc-2.3.3_pre20031210.ebuild 19015 -MD5 37180d536733ae205d0db321571cd5ca glibc-2.3.3_pre20040117-r1.ebuild 19232 +MD5 eeff6a97091a5189c86c79a8d4496b86 glibc-2.3.3_pre20040529.ebuild 21321 +MD5 7ce77aae6a9e23bfeb7857160938077c glibc-2.3.3.20040602.ebuild 20967 +MD5 081030d4ac6e9b8879727089b52b28fd glibc-2.3.2-r10.ebuild 19418 MD5 03c72a7da4b62b7c73dbb67b70252a20 glibc-2.3.3_pre20040117.ebuild 18526 -MD5 40b73d3cb79e611b0b6a3385f1601e32 glibc-2.3.3_pre20040207.ebuild 19594 -MD5 f4358881c69308201c7e5e0c7d6d414e glibc-2.3.3_pre20040420-r1.ebuild 20185 +MD5 6ae51bfd7e5cc6af9b1ea678354a8760 glibc-2.3.2-r2.ebuild 17968 +MD5 c1f9466ec8250dd47beb7a71f7c536fe glibc-2.3.1-r5.ebuild 10719 +MD5 9bfb4bc3142427133caa13f7715602a0 ChangeLog 32581 MD5 8e0c5284b715af1e90ed2c0e2184599c glibc-2.3.3_pre20040420.ebuild 19887 -MD5 eeff6a97091a5189c86c79a8d4496b86 glibc-2.3.3_pre20040529.ebuild 21321 MD5 567094e03359ffc1c95af7356395228d metadata.xml 162 +MD5 b141dc6e9c4183e869f6d95f0f015b99 glibc-2.2.5-r9.ebuild 10002 +MD5 32383b07afc0abdbb3a8da5fe539a696 glibc-2.3.2-r9.ebuild 18657 +MD5 98ea363167dacaaad23fd9a66ba98d5b files/nscd 844 +MD5 135f8145885a2f4f9876fe973f33ddf6 files/glibc-2.2.4-string2.h.diff 5221 +MD5 d688e44731d6e4b757382d7646c492c3 files/glibc-xdr_security.patch 6612 +MD5 c02420990c4908a6336d81ea5192a37e files/glibc-manpages-2.3.1.tar.bz2 14755 +MD5 d1ca8e4a3be112d9a5d5c81177c36da3 files/digest-glibc-2.3.3.20040602 231 MD5 9cc1e6b6f749dba7c8759bd07266f7d9 files/digest-glibc-2.2.5-r9 143 MD5 439cce38dd07f6669b9bb50f0c211b41 files/digest-glibc-2.3.1-r5 141 -MD5 2d5306ef875573750af642a9f93b634a files/digest-glibc-2.3.2-r10 312 MD5 de6744f3ba45c52573febfa91a3d1d1d files/digest-glibc-2.3.2-r2 296 MD5 6b4ab93e3890f58e0845bbe51923eeb1 files/digest-glibc-2.3.2-r3 205 MD5 2d5306ef875573750af642a9f93b634a files/digest-glibc-2.3.2-r9 312 +MD5 2013443f5192d4b999953ba4248d288c files/nscd.conf 1158 +MD5 49374df695743477ccba680199a0ff87 files/digest-glibc-2.3.3_pre20040117-r1 312 +MD5 42af7e35fe2404a49954f91fd1aee891 files/digest-glibc-2.3.3_pre20040420-r1 312 +MD5 52cfc7627fc62dfb26d8d163aac361f6 files/glibc-2.2.2-test-lfs-timeout.patch 320 +MD5 b712a49b5113fccb4c8b0ada2a30d390 files/glibc-manpages-2.2.5.tar.bz2 14610 +MD5 184eddb92615fb991dce41b9edbfa690 files/glibc-manpages-2.3.2.tar.bz2 14700 MD5 b5f28bc50aafc5ed560d7eef910dbe8b files/digest-glibc-2.3.3_pre20031210 148 MD5 49374df695743477ccba680199a0ff87 files/digest-glibc-2.3.3_pre20040117 312 -MD5 49374df695743477ccba680199a0ff87 files/digest-glibc-2.3.3_pre20040117-r1 312 MD5 4555143fbcd20978747f7864f2f7fc01 files/digest-glibc-2.3.3_pre20040207 312 MD5 42af7e35fe2404a49954f91fd1aee891 files/digest-glibc-2.3.3_pre20040420 312 -MD5 42af7e35fe2404a49954f91fd1aee891 files/digest-glibc-2.3.3_pre20040420-r1 312 MD5 268eda0de40469d19bb7ff5c5cb7ec82 files/digest-glibc-2.3.3_pre20040529 312 +MD5 4404ee4b6e3017819d8f36082e0265e5 files/test-sysctl_h.c 54 +MD5 2d5306ef875573750af642a9f93b634a files/digest-glibc-2.3.2-r10 312 MD5 e4393f4721a207750581d6265d5f7f40 files/fix-sysctl_h.patch 376 -MD5 52cfc7627fc62dfb26d8d163aac361f6 files/glibc-2.2.2-test-lfs-timeout.patch 320 -MD5 135f8145885a2f4f9876fe973f33ddf6 files/glibc-2.2.4-string2.h.diff 5221 -MD5 b712a49b5113fccb4c8b0ada2a30d390 files/glibc-manpages-2.2.5.tar.bz2 14610 -MD5 c02420990c4908a6336d81ea5192a37e files/glibc-manpages-2.3.1.tar.bz2 14755 -MD5 184eddb92615fb991dce41b9edbfa690 files/glibc-manpages-2.3.2.tar.bz2 14700 -MD5 d688e44731d6e4b757382d7646c492c3 files/glibc-xdr_security.patch 6612 -MD5 98ea363167dacaaad23fd9a66ba98d5b files/nscd 844 -MD5 2013443f5192d4b999953ba4248d288c files/nscd.conf 1158 MD5 d8830438ea871dbfd1acf7a3d0299159 files/test-__thread.c 53 -MD5 4404ee4b6e3017819d8f36082e0265e5 files/test-sysctl_h.c 54 -MD5 f75ebd335c4b882013cc12229d39c9f7 files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff 475 -MD5 843eaa26ae2c49e894aa365b6f463546 files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff 471 -MD5 5182f441608833569cb9e78536baf8af files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff 2210 -MD5 56a7a0273e0666eb40b0c6b45d62881d files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff 362 MD5 93c2f3cb1c07d9a39da245b065c74f6c files/2.2.5/glibc-2.2.5-divdi3.diff 9752 -MD5 b12e1a7de85cd82bcb341863643c9ffd files/2.2.5/glibc-2.2.5-dns-network-overflow.diff 365 MD5 7481046043f42ecf4ac0a218abc896fc files/2.2.5/glibc-2.2.5-gcc311.patch 534 -MD5 1c3b30834a25149e4738eead113462ad files/2.2.5/glibc-2.2.5-getgrouplist.patch 708 +MD5 e6dc1e4d7839d2bb08c6865466791183 files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff 2460 +MD5 e9d9d086e8ed29ed49252d4cd0050f66 files/2.2.5/glibc-2.2.5.restrict_arr.patch 762 +MD5 a12b84b5af2808f5c0223259f7a9610c files/2.2.5/glibc-2.2.5-sparc-mathinline.patch 1014 MD5 b07a316cbba4ddc1e1bb094a3056f12f files/2.2.5/glibc-2.2.5-ppc-semctl.diff 1337 +MD5 1c3b30834a25149e4738eead113462ad files/2.2.5/glibc-2.2.5-getgrouplist.patch 708 +MD5 56a7a0273e0666eb40b0c6b45d62881d files/2.2.5/glibc-2.2.5-arm-sysdeps-fix.diff 362 +MD5 843eaa26ae2c49e894aa365b6f463546 files/2.2.5/glibc-2.2.5-alpha-pcdyn-fix.diff 471 +MD5 5182f441608833569cb9e78536baf8af files/2.2.5/glibc-2.2.5-arm-errlist-fix.diff 2210 +MD5 993732f56fdecf36f672198112fc5d5c files/2.2.5/glibc-2.2.5-threadsig.diff 636 +MD5 a50da56218f9aabc347d7e1130961cec files/2.2.5/glibc-2.2.5.divbyzero.patch 1694 +MD5 b12e1a7de85cd82bcb341863643c9ffd files/2.2.5/glibc-2.2.5-dns-network-overflow.diff 365 MD5 c34a3c6bf21274a506090f05b7ea60ff files/2.2.5/glibc-2.2.5-ppc-sqrtl.diff 715 MD5 c7783e49497814c3d86bd63bbed2a9b3 files/2.2.5/glibc-2.2.5-sandbox.diff 438 -MD5 a12b84b5af2808f5c0223259f7a9610c files/2.2.5/glibc-2.2.5-sparc-mathinline.patch 1014 MD5 6bdfb930ffdfdeb6b2ee823fefe42513 files/2.2.5/glibc-2.2.5-sparc-misc.diff 12252 -MD5 96914104dbdc2807c84549c3d20cb47c files/2.2.5/glibc-2.2.5-sparc32-semctl.patch 6311 +MD5 f75ebd335c4b882013cc12229d39c9f7 files/2.2.5/glibc-2.2.5-alpha-gcc3-fix.diff 475 MD5 6afbd6fe65c0e2034587ba6d1da427a3 files/2.2.5/glibc-2.2.5-sparc64-fixups.diff 1407 -MD5 e6dc1e4d7839d2bb08c6865466791183 files/2.2.5/glibc-2.2.5-sunrpc-overflow.diff 2460 -MD5 993732f56fdecf36f672198112fc5d5c files/2.2.5/glibc-2.2.5-threadsig.diff 636 -MD5 a50da56218f9aabc347d7e1130961cec files/2.2.5/glibc-2.2.5.divbyzero.patch 1694 -MD5 e9d9d086e8ed29ed49252d4cd0050f66 files/2.2.5/glibc-2.2.5.restrict_arr.patch 762 -MD5 21506827cc2094c80d3c0c0e8ef3569c files/2.3.1/glibc-2.3.1-ctype-compat-v2.patch 1468 -MD5 941f13d27badc76c1e3704c59acaff26 files/2.3.1/glibc-2.3.1-ctype-compat-v3.patch 2823 +MD5 96914104dbdc2807c84549c3d20cb47c files/2.2.5/glibc-2.2.5-sparc32-semctl.patch 6311 +MD5 2474bda0015ede78a23190c3051a599b files/2.3.1/glibc-2.3.1-tst-rndseek-mips.patch 446 MD5 66d8b78875e17e2d385a4d52af9698c4 files/2.3.1/glibc-2.3.1-ctype-compat.patch 728 -MD5 4f8ecd70003c5ca153ff7c204c54c1cf files/2.3.1/glibc-2.3.1-elf-machine-rela-mips.patch 1246 +MD5 5a528678247e6bafe92d2483383afd5b files/2.3.1/glibc23-00-hppa-pthreads.dpatch 29951 MD5 afaf2540d2803ac066eb2555f2019a6f files/2.3.1/glibc-2.3.1-exit-syscall-mips.patch 633 -MD5 67b125cec4f1f0d26ce4df706451fee6 files/2.3.1/glibc-2.3.1-fpu-cw-mips.patch 433 -MD5 4123a64b0004d505d22d811ba4aae451 files/2.3.1/glibc-2.3.1-ftw.patch 4622 +MD5 4f8ecd70003c5ca153ff7c204c54c1cf files/2.3.1/glibc-2.3.1-elf-machine-rela-mips.patch 1246 +MD5 941f13d27badc76c1e3704c59acaff26 files/2.3.1/glibc-2.3.1-ctype-compat-v3.patch 2823 +MD5 035d42c51f2397339c1518baa06e3a81 files/2.3.1/glibc23-04-hppa-fcntl64.dpatch 2085 +MD5 1f715052e230f60a1e5c5f72b193f0bf files/2.3.1/glibc-2.3.1-sscanf.patch 392 MD5 0da8ef4341ed31232e1c9e0da96f9c79 files/2.3.1/glibc-2.3.1-getgrouplist.patch 1680 -MD5 235976914abfab3408d8d63cb4ffebe2 files/2.3.1/glibc-2.3.1-inline-syscall-mips.patch 7753 +MD5 41599dc27ba12b5f2428056dc0ebb1d1 files/2.3.1/glibc23-08-hppa-configure.dpatch 4704 MD5 1c4e567ed001f9489e11ee06c1ced0b7 files/2.3.1/glibc-2.3.1-libc_wait-compat.patch 1053 -MD5 23bbb51d1008f3009e6f1867b284c9bc files/2.3.1/glibc-2.3.1-libgcc-compat-mips.patch 5222 -MD5 f15c6dec40cefa86dae48a7dcb3b779a files/2.3.1/glibc-2.3.1-librt-mips.patch 396 -MD5 1968bc39ae8224c1dee9534781203d2e files/2.3.1/glibc-2.3.1-locale.patch 8666 -MD5 cdbf2aacfaae7737f89ae733f148169c files/2.3.1/glibc-2.3.1-prelinkfix.patch 5005 -MD5 1f715052e230f60a1e5c5f72b193f0bf files/2.3.1/glibc-2.3.1-sscanf.patch 392 -MD5 d84791059f1b4e7b157b3bbefe783208 files/2.3.1/glibc-2.3.1-stack_end-compat.patch 751 -MD5 2474bda0015ede78a23190c3051a599b files/2.3.1/glibc-2.3.1-tst-rndseek-mips.patch 446 MD5 75983ceba061c090373c14394d08d32c files/2.3.1/glibc-2.3.1-typeo_dl-runtime_c.patch 848 +MD5 a49946706c7f248294896eeb64308a09 files/2.3.1/glibc23-03-hppa-mcontext.dpatch 1402 +MD5 1e95cbf4aed1619831947cdd35c73108 files/2.3.1/glibc23-hppa-shmlba.dpatch 1754 +MD5 67b125cec4f1f0d26ce4df706451fee6 files/2.3.1/glibc-2.3.1-fpu-cw-mips.patch 433 MD5 e1cbb66f3d9823cf5a05ce52b2223acf files/2.3.1/glibc-2.3.1-ulps-mips.patch 27618 -MD5 5a528678247e6bafe92d2483383afd5b files/2.3.1/glibc23-00-hppa-pthreads.dpatch 29951 +MD5 f15c6dec40cefa86dae48a7dcb3b779a files/2.3.1/glibc-2.3.1-librt-mips.patch 396 +MD5 d84791059f1b4e7b157b3bbefe783208 files/2.3.1/glibc-2.3.1-stack_end-compat.patch 751 +MD5 235976914abfab3408d8d63cb4ffebe2 files/2.3.1/glibc-2.3.1-inline-syscall-mips.patch 7753 MD5 b8f6b8b0ed8649fc9af439adef7472f2 files/2.3.1/glibc23-01-hppa-dl-machine.dpatch 12226 -MD5 7f8ec486f1669036429acc8b272c453e files/2.3.1/glibc23-02-hppa-min-kern-unwind-fde.dpatch 1728 -MD5 a49946706c7f248294896eeb64308a09 files/2.3.1/glibc23-03-hppa-mcontext.dpatch 1402 -MD5 035d42c51f2397339c1518baa06e3a81 files/2.3.1/glibc23-04-hppa-fcntl64.dpatch 2085 +MD5 1968bc39ae8224c1dee9534781203d2e files/2.3.1/glibc-2.3.1-locale.patch 8666 MD5 a91843899c8ef4b59341313915f177b4 files/2.3.1/glibc23-05-hppa-buildhack.dpatch 1134 -MD5 2b746db4988cf7f5c6824302561b7eb5 files/2.3.1/glibc23-06-hppa-tests.dpatch 21021 MD5 dc18731db5bd28b8bd2074fc9177fd35 files/2.3.1/glibc23-07-hppa-atomicity.dpatch 2519 -MD5 41599dc27ba12b5f2428056dc0ebb1d1 files/2.3.1/glibc23-08-hppa-configure.dpatch 4704 -MD5 1e95cbf4aed1619831947cdd35c73108 files/2.3.1/glibc23-hppa-shmlba.dpatch 1754 +MD5 23bbb51d1008f3009e6f1867b284c9bc files/2.3.1/glibc-2.3.1-libgcc-compat-mips.patch 5222 +MD5 2b746db4988cf7f5c6824302561b7eb5 files/2.3.1/glibc23-06-hppa-tests.dpatch 21021 +MD5 4123a64b0004d505d22d811ba4aae451 files/2.3.1/glibc-2.3.1-ftw.patch 4622 +MD5 7f8ec486f1669036429acc8b272c453e files/2.3.1/glibc23-02-hppa-min-kern-unwind-fde.dpatch 1728 +MD5 cdbf2aacfaae7737f89ae733f148169c files/2.3.1/glibc-2.3.1-prelinkfix.patch 5005 +MD5 21506827cc2094c80d3c0c0e8ef3569c files/2.3.1/glibc-2.3.1-ctype-compat-v2.patch 1468 +MD5 a505a59f53c5e068728d0aba44007a10 files/2.3.2/glibc-2.3.2-gcc33-sscanf.patch 671 +MD5 9bc5a914b9625c662544785a4a685086 files/2.3.2/glibc-2.3.2-redhat-nptl-fixes.patch 1077 MD5 080146d608b878d517b5cf4c29f0ef08 files/2.3.2/glibc-2.3.2-alpha-crti.patch 378 -MD5 9ef93639d5016677d41e5ec986fcb7f5 files/2.3.2/glibc-2.3.2-alpha-pwrite.patch 918 +MD5 1a926f1adc2f321abb31b1e11024e3ac files/2.3.2/glibc-2.3.2-dl-reloc-calc-fix.patch 1405 +MD5 578d3e5ff83cca218279a7a094fd0dad files/2.3.2/glibc-2.3.2-propolice-guard-functions-v2.patch 5107 +MD5 3d32067de612f477862e9b24c158a7ce files/2.3.2/glibc-2.3.2-rtld-assert-fix.patch 1153 +MD5 bfb5e3c2c46359a8c426e98fe0e39838 files/2.3.2/glibc-2.3.2-mips-add-n32-n64-sysdep-cancel.patch 6344 +MD5 d21659e6aa8802290d6734ec118bbb81 files/2.3.2/glibc-2.3.2-mips-pread-linux2.5.patch 5310 MD5 afa967d5fea8e467dda9c588f5600ed1 files/2.3.2/glibc-2.3.2-amd64-nomultilib.patch 506 -MD5 523558956091d4ffcd33b72c57ac4bac files/2.3.2/glibc-2.3.2-arm-bus-defines.patch 276 -MD5 cfce14f1f90a3903ed076a5209198ce5 files/2.3.2/glibc-2.3.2-armformat.patch 416 -MD5 855edac3c5abd21b4617408d4e3b5ae3 files/2.3.2/glibc-2.3.2-cispeed-cospeed-fix.patch 2424 +MD5 9ef93639d5016677d41e5ec986fcb7f5 files/2.3.2/glibc-2.3.2-alpha-pwrite.patch 918 +MD5 f62924cbf762eb230514a9859522f5e7 files/2.3.2/glibc-2.3.2-nptl-fix-include.patch 247 MD5 2f6605aae9bc4e538af783c0b2be3a7f files/2.3.2/glibc-2.3.2-decc-compaq.patch 1422 -MD5 1a926f1adc2f321abb31b1e11024e3ac files/2.3.2/glibc-2.3.2-dl-reloc-calc-fix.patch 1405 +MD5 cfce14f1f90a3903ed076a5209198ce5 files/2.3.2/glibc-2.3.2-armformat.patch 416 MD5 8d75a288ff9aa450717048b43497c82c files/2.3.2/glibc-2.3.2-dl_execstack-PaX-support.patch 1945 -MD5 0c85c7ef9fbb066ad30ce8b6eb1c6228 files/2.3.2/glibc-2.3.2-fix-omitted-operand-in-mathinline_h.patch 680 +MD5 523558956091d4ffcd33b72c57ac4bac files/2.3.2/glibc-2.3.2-arm-bus-defines.patch 276 MD5 026be2442305eef0a3e3ff897a14768e files/2.3.2/glibc-2.3.2-framestate-USING_SJLJ_EXCEPTIONS.patch 440 -MD5 a505a59f53c5e068728d0aba44007a10 files/2.3.2/glibc-2.3.2-gcc33-sscanf.patch 671 +MD5 4e99301d9cb2865f14d82595f3b7bc0a files/2.3.2/glibc-2.3.2-mips-fix-n32-n64-sysdep-headers.patch 4398 MD5 cd0306085902d8629f2a77061cacdfd2 files/2.3.2/glibc-2.3.2-ia64-LOAD_ARGS-fixup.patch 4445 +MD5 3eeb5a5b2f01b1fdb7a4af923e5b0cec files/2.3.2/glibc-2.3.2-s390-deprecated-ustat-fixup.patch 6638 +MD5 ba477be20da9885349e4599de7a08c18 files/2.3.2/glibc-2.3.2-redhat-linuxthreads-fixes.patch 2532 MD5 15ac94e1ccc48f31120960dfe006818a files/2.3.2/glibc-2.3.2-iconvconfig-name_insert.patch 2262 -MD5 45b1fda5b64866e837a825d0add0b31c files/2.3.2/glibc-2.3.2-ipv6-bytestring-fix.patch 4088 -MD5 bfb5e3c2c46359a8c426e98fe0e39838 files/2.3.2/glibc-2.3.2-mips-add-n32-n64-sysdep-cancel.patch 6344 +MD5 0c85c7ef9fbb066ad30ce8b6eb1c6228 files/2.3.2/glibc-2.3.2-fix-omitted-operand-in-mathinline_h.patch 680 MD5 03cbfe983ca93434ae6698f13d14c0e8 files/2.3.2/glibc-2.3.2-mips-configure-for-n64-symver.patch 741 -MD5 4e99301d9cb2865f14d82595f3b7bc0a files/2.3.2/glibc-2.3.2-mips-fix-n32-n64-sysdep-headers.patch 4398 +MD5 855edac3c5abd21b4617408d4e3b5ae3 files/2.3.2/glibc-2.3.2-cispeed-cospeed-fix.patch 2424 MD5 df41c3a20ead370c2208599cf4251f3d files/2.3.2/glibc-2.3.2-mips-fix-nested-entend-pairs.patch 612 -MD5 d21659e6aa8802290d6734ec118bbb81 files/2.3.2/glibc-2.3.2-mips-pread-linux2.5.patch 5310 -MD5 f62924cbf762eb230514a9859522f5e7 files/2.3.2/glibc-2.3.2-nptl-fix-include.patch 247 -MD5 578d3e5ff83cca218279a7a094fd0dad files/2.3.2/glibc-2.3.2-propolice-guard-functions-v2.patch 5107 -MD5 b27417338a4cd9906e2917701f0be575 files/2.3.2/glibc-2.3.2-propolice-guard-functions.patch 5069 -MD5 ba477be20da9885349e4599de7a08c18 files/2.3.2/glibc-2.3.2-redhat-linuxthreads-fixes.patch 2532 -MD5 9bc5a914b9625c662544785a4a685086 files/2.3.2/glibc-2.3.2-redhat-nptl-fixes.patch 1077 -MD5 3d32067de612f477862e9b24c158a7ce files/2.3.2/glibc-2.3.2-rtld-assert-fix.patch 1153 -MD5 3eeb5a5b2f01b1fdb7a4af923e5b0cec files/2.3.2/glibc-2.3.2-s390-deprecated-ustat-fixup.patch 6638 MD5 250d09cb52d2c3c7f6b0c4e0a1bf47f2 files/2.3.2/sysmacros.h 2443 -MD5 0e27dbd2a3b85a0e14625294296fad9a files/2.3.3/glibc-2.3.2-propolice-guard-functions-v3.patch 1986 -MD5 1b5df7c58ad160593192704cece47347 files/2.3.3/glibc-2.3.3-dl_execstack-PaX-support.patch 1791 -MD5 62f7e62583aaa70645d9c847b6a84299 files/2.3.3/glibc-2.3.3-frandom-detect.patch 1770 -MD5 ec83f3d86f23243a1fb334b8872d454f files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch 2329 +MD5 45b1fda5b64866e837a825d0add0b31c files/2.3.2/glibc-2.3.2-ipv6-bytestring-fix.patch 4088 +MD5 b27417338a4cd9906e2917701f0be575 files/2.3.2/glibc-2.3.2-propolice-guard-functions.patch 5069 MD5 0bfc56be86acec8ec52fe29249e267a4 files/2.3.3/glibc-2.3.3-owl-malloc-unlink-sanity-check.diff 1425 -MD5 69d86fa55810b4d327d0cb35042c034f files/2.3.3/glibc-2.3.3-ssp-gcc34-after-frandom.patch 538 -MD5 175bde9b0017d4deb63cf55f38173e11 files/2.3.3/glibc-2.3.3_pre20040117-got-fix.diff 752 -MD5 a3eb98943bc9db66df33bfc08dea4c2e files/2.3.3/glibc-2.3.3_pre20040117-pt_pax.diff 1470 +MD5 62f7e62583aaa70645d9c847b6a84299 files/2.3.3/glibc-2.3.3-frandom-detect.patch 1770 +MD5 9e2c8ac6d3fa8494ecb962b675f412b5 files/2.3.3/ssp.c 3936 MD5 7b6054c2e8ec654341690586bc2028c5 files/2.3.3/glibc-2.3.3_pre20040117-signal-ssp.diff 1431 +MD5 0e27dbd2a3b85a0e14625294296fad9a files/2.3.3/glibc-2.3.2-propolice-guard-functions-v3.patch 1986 +MD5 a3eb98943bc9db66df33bfc08dea4c2e files/2.3.3/glibc-2.3.3_pre20040117-pt_pax.diff 1470 MD5 86626ba8df9cac083bb3e1cfe23ec07e files/2.3.3/glibc-2.3.3_pre20040420-mips-dl-machine-calls.diff 1497 +MD5 69d86fa55810b4d327d0cb35042c034f files/2.3.3/glibc-2.3.3-ssp-gcc34-after-frandom.patch 538 +MD5 175bde9b0017d4deb63cf55f38173e11 files/2.3.3/glibc-2.3.3_pre20040117-got-fix.diff 752 +MD5 ec83f3d86f23243a1fb334b8872d454f files/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch 2329 MD5 ab91cb5bad07e1e79f990d4933741d42 files/2.3.3/glibc-2.3.3_pre20040420-mips-incl-sgidefs.diff 8287 -MD5 9e2c8ac6d3fa8494ecb962b675f412b5 files/2.3.3/ssp.c 3936 +MD5 1b5df7c58ad160593192704cece47347 files/2.3.3/glibc-2.3.3-dl_execstack-PaX-support.patch 1791 diff --git a/sys-libs/glibc/files/digest-glibc-2.3.3.20040602 b/sys-libs/glibc/files/digest-glibc-2.3.3.20040602 new file mode 100644 index 000000000000..3fe678317bf6 --- /dev/null +++ b/sys-libs/glibc/files/digest-glibc-2.3.3.20040602 @@ -0,0 +1,3 @@ +MD5 581acc5e4b205c1e43c7cf024e6ef969 glibc-2.3.3.20040602.tar.bz2 13673215 +MD5 894b8969cfbdf787c73e139782167607 glibc-linuxthreads-2.3.2.tar.bz2 216310 +MD5 c7c27c0821245d98a0568a475c08f4e9 glibc-2.3.2-hppa-patches-p1.tar.bz2 18793 diff --git a/sys-libs/glibc/glibc-2.3.3.20040602.ebuild b/sys-libs/glibc/glibc-2.3.3.20040602.ebuild new file mode 100644 index 000000000000..959f773a2eda --- /dev/null +++ b/sys-libs/glibc/glibc-2.3.3.20040602.ebuild @@ -0,0 +1,694 @@ +# Copyright 1999-2004 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/glibc-2.3.3.20040602.ebuild,v 1.1 2004/06/02 19:14:19 lv Exp $ + +IUSE="nls pic build nptl erandom hardened" + +inherit eutils flag-o-matic gcc + +filter-flags "-fomit-frame-pointer -malign-double" +filter-ldflags "-pie" + +# Recently there has been a lot of stability problem in Gentoo-land. Many +# things can be the cause to this, but I believe that it is due to gcc3 +# still having issues with optimizations, or with it not filtering bad +# combinations (protecting the user maybe from himeself) yet. +# +# This can clearly be seen in large builds like glibc, where too aggressive +# CFLAGS cause the tests to fail miserbly. +# +# Quote from Nick Jones <carpaski@gentoo.org>, who in my opinion +# knows what he is talking about: +# +# People really shouldn't force code-specific options on... It's a +# bad idea. The -march options aren't just to look pretty. They enable +# options that are sensible (and include sse,mmx,3dnow when apropriate). +# +# The next command strips CFLAGS and CXXFLAGS from nearly all flags. If +# you do not like it, comment it, but do not bugreport if you run into +# problems. +# +# <azarah@gentoo.org> (13 Oct 2002) +strip-flags +strip-unsupported-flags + +# Lock glibc at -O2 -- linuxthreads needs it and we want to be conservative here +export CFLAGS="${CFLAGS//-O?} -O2" +export CXXFLAGS="${CFLAGS}" +export LDFLAGS="${LDFLAGS//-Wl,--relax}" + +# Minimum kernel version for --enable-kernel +export MIN_KV="2.4.1" +# Minimum kernel version for enabling TLS and NPTL ... +# NOTE: do not change this if you do not know what +# you are doing ! +export MIN_NPTL_KV="2.6.0" + +#MY_PV="${PV/_}" +MY_PV="2.3.2" +#S="${WORKDIR}/${P%_*}" +#S="${WORKDIR}/${PN}-${MY_PV}" +S="${WORKDIR}/libc/" +DESCRIPTION="GNU libc6 (also called glibc2) C library" +SRC_URI="http://dev.gentoo.org/~lv/glibc-2.3.3.20040602.tar.bz2 + http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-${MY_PV}.tar.bz2 + ftp://sources.redhat.com/pub/glibc/snapshots/glibc-linuxthreads-${MY_PV}.tar.bz2 + hppa? ( mirror://gentoo/${PN}-2.3.2-hppa-patches-p1.tar.bz2 )" +HOMEPAGE="http://www.gnu.org/software/libc/libc.html" + +#KEYWORDS="~x86 ~mips ~sparc ~amd64 -hppa ~ia64 ~ppc" # breaks on ~alpha +#KEYWORDS="-* ~amd64 ~ppc64 ~mips" +KEYWORDS="-*" + +SLOT="2.2" +LICENSE="LGPL-2" + +# We need new cleanup attribute support from gcc for NPTL among things ... +DEPEND=">=sys-devel/gcc-3.2.3-r1 + nptl? ( >=sys-devel/gcc-3.3.1-r1 ) + >=sys-devel/binutils-2.14.90.0.6-r1 + virtual/os-headers + nls? ( sys-devel/gettext )" +RDEPEND="virtual/os-headers + sys-apps/baselayout + nls? ( sys-devel/gettext )" + +PROVIDE="virtual/glibc" + + +# Try to get a kernel source tree with version equal or greater +# than $1. We basically just try a few default locations. The +# version need to be that which KV_to_int() returns ... +get_KHV() { + local headers= + + [ -z "$1" ] && return 1 + + # - First check if linux-headers are installed (or symlink + # to current kernel ...) + # - Ok, do we have access to the current kernel's headers ? + # - Last option ... maybe its a weird bootstrap with /lib + # binded to the chroot ... + + # We do not really support more than 2 arguments ... + if [ -n "$2" ] + then + headers="$2" + else + headers="${ROOT}/usr/include \ + usr/src/linux/include \ + ${ROOT}/usr/src/linux/include \ + /lib/modules/`uname -r`/build/include \ + ${ROOT}/lib/modules/`uname -r`/build/include" + fi + + for x in ${headers} + do + local header="${x}/linux/version.h" + + if [ -f ${header} ] + then + + local version="`grep 'LINUX_VERSION_CODE' ${header} | \ + sed -e 's:^.*LINUX_VERSION_CODE[[:space:]]*::'`" + + if [ "${version}" -ge "$1" ] + then + echo "${x}" + + return 0 + fi + fi + done + + return 1 +} + +use_nptl() { + # Enable NPTL support if: + # - We have 'nptl' in USE + # - We have linux-2.5 or later kernel (should prob check for 2.4.20 ...) + if [ -n "`use nptl`" -a "`get_KV`" -ge "`KV_to_int ${MIN_NPTL_KV}`" ] + then + # Enable NPTL support if: + # - We have 'x86' in USE and: + # - a CHOST of "i486-pc-linux-gnu" + # - a CHOST of "i586-pc-linux-gnu" + # - a CHOST of "i686-pc-linux-gnu" + # - Or we have 'alpha' in USE + # - Or we have 'amd64' in USE + # - Or we have 'mips' in USE + # - Or we have 'ppc' in USE + case ${ARCH} in + "x86") + if [ "${CHOST/-*}" = "i486" -o \ + "${CHOST/-*}" = "i586" -o \ + "${CHOST/-*}" = "i686" ] + then + return 0 + fi + ;; + "alpha"|"amd64"|"ia64"|"mips"|"ppc"|"ppc64"|"sparc") + return 0 + ;; + *) + return 1 + ;; + esac + fi + + return 1 +} + +pkg_setup() { + # We need gcc 3.2 or later ... + if [ "`gcc-major-version`" -ne "3" -o "`gcc-minor-version`" -lt "2" ] + then + echo + eerror "As of glibc-2.3, gcc-3.2 or later is needed" + eerror "for the build to succeed." + die "GCC too old" + fi + + echo + + if use_nptl + then + # The use_nptl should have already taken care of kernel version, + # arch and CHOST, so now just check if we can find suitable kernel + # source tree or headers .... + einfon "Checking for sufficient version kernel headers ... " + if ! get_KHV "`KV_to_int ${MIN_NPTL_KV}`" &> /dev/null + then + echo "no" + echo + eerror "Could not find a kernel source tree or headers with" + eerror "version ${MIN_NPTL_KV} or later! Please correct this" + eerror "and try again." + die "Insufficient kernel headers present!" + else + echo "yes" + fi + fi + + if [ "$(KV_to_int $(uname -r))" -gt "`KV_to_int '2.5.68'`" ] + then + local KERNEL_HEADERS="$(get_KHV "`KV_to_int ${MIN_NPTL_KV}`")" + + einfon "Checking kernel headers for broken sysctl.h ... " + if ! gcc -I"${KERNEL_HEADERS}" \ + -c ${FILESDIR}/test-sysctl_h.c -o ${T}/test1.o &> /dev/null + then + echo "yes" + echo + eerror "Your version of:" + echo + eerror " ${KERNEL_HEADERS}/linux/sysctl.h" + echo + eerror "is broken (from a user space perspective). Please apply" + eerror "the following patch:" + echo + eerror "*******************************************************" + cat ${FILESDIR}/fix-sysctl_h.patch + eerror "*******************************************************" + die "Broken linux/sysctl.h header included in kernel sources!" + else + echo "no" + fi + fi + + if use_nptl + then + einfon "Checking gcc for __thread support ... " + if ! gcc -c ${FILESDIR}/test-__thread.c -o ${T}/test2.o &> /dev/null + then + echo "no" + echo + eerror "Could not find a gcc that supports the __thread directive!" + eerror "please update to gcc-3.2.2-r1 or later, and try again." + die "No __thread support in gcc!" + else + echo "yes" + fi + + elif use nptl &> /dev/null + then + echo + # Just tell the user not to expect too much ... + ewarn "You have \"nptl\" in your USE, but your kernel version or" + ewarn "architecture does not support it!" + fi + + echo +} + +src_unpack() { + + local LOCAL_P="${PN}-${MY_PV}" + + unpack glibc-2.3.3.20040602.tar.bz2 + + # Extract pre-made man pages. Otherwise we need perl, which is a no-no. + mkdir -p ${S}/man; cd ${S}/man + use_nptl || tar xjf ${FILESDIR}/glibc-manpages-2.3.2.tar.bz2 + + cd ${S} + # Extract our threads package ... + if (! use_nptl) + then + unpack glibc-linuxthreads-${MY_PV}.tar.bz2 + fi + + if use_nptl + then + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-redhat-nptl-fixes.patch + else + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-redhat-linuxthreads-fixes.patch + fi + + # To circumvent problems with propolice __guard and + # __guard_setup__stack_smash_handler + # + # http://www.gentoo.org/proj/en/hardened/etdyn-ssp.xml + if [ "${ARCH}" != "hppa" -a "${ARCH}" != "hppa64" ] + then + cd ${S} + epatch ${FILESDIR}/2.3.3/${LOCAL_P}-propolice-guard-functions-v3.patch + cp ${FILESDIR}/2.3.3/ssp.c ${S}/sysdeps/unix/sysv/linux || \ + die "failed to copy ssp.c to ${S}/sysdeps/unix/sysv/linux/" + fi + + # patch this regardless of architecture, although it's ssp-related + epatch ${FILESDIR}/2.3.3/${PN}-2.3.3-frandom-detect.patch + + # + # *** PaX related patches starts here *** + # + + # localedef contains nested function trampolines, which trigger + # segfaults under PaX -solar + # Debian Bug (#231438, #198099) + epatch ${FILESDIR}/2.3.3/glibc-2.3.3-localedef-fix-trampoline.patch + + + # With latest versions of glibc, a lot of apps failed on a PaX enabled + # system with: + # + # cannot enable executable stack as shared object requires: Permission denied + # + # This is due to PaX 'exec-protecting' the stack, and ld.so then trying + # to make the stack executable due to some libraries not containing the + # PT_GNU_STACK section. Bug #32960. <azarah@gentoo.org> (12 Nov 2003). + cd ${S}; epatch ${FILESDIR}/2.3.3/${PN}-2.3.3-dl_execstack-PaX-support.patch + + # Program header support for PaX. + cd ${S}; epatch ${FILESDIR}/2.3.3/${PN}-2.3.3_pre20040117-pt_pax.diff + + # Suppress unresolvable relocation against symbol `main' in Scrt1.o + # can be reproduced with compiling net-dns/bind-9.2.2-r3 using -pie + epatch ${FILESDIR}/2.3.3/${PN}-2.3.3_pre20040117-got-fix.diff + + # + # *** PaX related patches ends here *** + # + + # Sanity check the forward and backward chunk pointers in the + # unlink() macro used by Doug Lea's implementation of malloc(3). + cd ${S}; epatch ${FILESDIR}/2.3.3/glibc-2.3.3-owl-malloc-unlink-sanity-check.diff + + # Fix an assert when running libc.so from commandline, bug #34733. +# cd ${S}; epatch ${FILESDIR}/2.3.2/${PN}-2.3.2-rtld-assert-fix.patch + + # This next patch fixes a test that will timeout due to ReiserFS' slow handling of sparse files +# cd ${S}/io; epatch ${FILESDIR}/glibc-2.2.2-test-lfs-timeout.patch + + # This add back glibc 2.2 compadibility. See bug #8766 and #9586 for more info, + # and also: + # + # http://lists.debian.org/debian-glibc/2002/debian-glibc-200210/msg00093.html + # + # We should think about remoing it in the future after things have settled. + # + # Thanks to Jan Gutter <jangutter@tuks.co.za> for reporting it. + # + # <azarah@gentoo.org> (26 Oct 2002). + #cd ${S}; epatch ${FILESDIR}/2.3.1/${PN}-2.3.1-ctype-compat-v3.patch + + # One more compat issue which breaks sun-jdk-1.3.1. See bug #8766 for more + # info, and also: + # + # http://sources.redhat.com/ml/libc-alpha/2002-04/msg00143.html + # + # Thanks to Jan Gutter <jangutter@tuks.co.za> for reporting it. + # + # <azarah@gentoo.org> (30 Oct 2002). + #cd ${S}; epatch ${FILESDIR}/2.3.1/${PN}-2.3.1-libc_wait-compat.patch + + # One more compat issue ... libc_stack_end is missing from ld.so. + # Got this one from diffing redhat glibc tarball .. would help if + # they used patches and not modified tarball ... + # + # <azarah@gentoo.org> (7 Nov 2002). +# cd ${S}; epatch ${FILESDIR}/2.3.1/${PN}-2.3.1-stack_end-compat.patch + + # The mathinline.h header omits the middle term of a ?: expression. This + # is a gcc extension, but since the ISO standard forbids it, it's a + # GLIBC bug (bug #27142). See also: + # + # http://bugs.gentoo.org/show_bug.cgi?id=27142 + # +# cd ${S}; epatch ${FILESDIR}/2.3.2/${LOCAL_P}-fix-omitted-operand-in-mathinline_h.patch + + # We do not want name_insert() in iconvconfig.c to be defined inside + # write_output() as it causes issues with trampolines/PaX. + cd ${S}; epatch ${FILESDIR}/2.3.2/${LOCAL_P}-iconvconfig-name_insert.patch + + # A few patches only for the MIPS platform. Descriptions of what they + # do can be found in the patch headers. + # <tuxus@gentoo.org> thx <dragon@gentoo.org> (11 Jan 2003) + # <kumba@gentoo.org> remove tst-rndseek-mips & ulps-mips patches + if [ "${ARCH}" = "mips" ] + then + cd ${S} + epatch ${FILESDIR}/2.3.1/${PN}-2.3.1-fpu-cw-mips.patch + epatch ${FILESDIR}/2.3.1/${PN}-2.3.1-librt-mips.patch + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-mips-add-n32-n64-sysdep-cancel.patch + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-mips-configure-for-n64-symver.patch + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-mips-pread-linux2.5.patch + epatch ${FILESDIR}/2.3.3/${PN}-2.3.3_pre20040420-mips-dl-machine-calls.diff + epatch ${FILESDIR}/2.3.3/${PN}-2.3.3_pre20040420-mips-incl-sgidefs.diff + fi + + if [ "${ARCH}" = "alpha" ] + then + cd ${S} + # Fix compatability with compaq compilers by ifdef'ing out some + # 2.3.2 additions. + # <taviso@gentoo.org> (14 Jun 2003). + epatch ${FILESDIR}/2.3.2/${LOCAL_P}-decc-compaq.patch + + # Fix compilation with >=gcc-3.2.3 (01 Nov 2003 agriffis) +# epatch ${FILESDIR}/2.3.2/${LOCAL_P}-alpha-pwrite.patch + fi + + if [ "${ARCH}" = "amd64" ] + then + cd ${S}; epatch ${FILESDIR}/2.3.2/${LOCAL_P}-amd64-nomultilib.patch + fi + + if [ "${ARCH}" = "ia64" ] + then + # The basically problem is glibc doesn't store information about + # what the kernel interface is so that it can't efficiently set up + # parameters for system calls. This patch from H.J. Lu fixes it: + # + # http://sources.redhat.com/ml/libc-alpha/2003-09/msg00165.html + # + #cd ${S}; epatch ${FILESDIR}/2.3.2/${LOCAL_P}-ia64-LOAD_ARGS-fixup.patch + : + fi + + if [ "${ARCH}" = "hppa" ] + then + local x= + + cd ${WORKDIR} + unpack ${LOCAL_P}-hppa-patches-p1.tar.bz2 + cd ${S} + EPATCH_EXCLUDE="0[123459]0* 055* 1[2379]0* 200* 230*" + for x in ${EPATCH_EXCLUDE} + do + rm -f ${WORKDIR}/${LOCAL_P}-hppa-patches/${x} + done + for x in ${WORKDIR}/${LOCAL_P}-hppa-patches/* + do + epatch ${x} + done + epatch ${FILESDIR}/2.3.1/glibc23-07-hppa-atomicity.dpatch + fi + + cd ${S} + + # Fix permissions on some of the scripts + chmod u+x ${S}/scripts/*.sh + + # disable -z relro + use hardened || sed -e 's/^have-z-relro.*/have-z-relro = no/' -i ${S}/config.make.in + # disables building nscd as pie + use hardened || sed -e 's/^have-fpie.*/have-fpie = no/' -i ${S}/config.make.in + # disable binutils -as-needed, useful, if glibc should not depend on libgcc_s.so + sed -e 's/^have-as-needed.*/have-as-needed = no/' -i ${S}/config.make.in + # disable execstack (the patch is used by rh for gcc < 3.3.3) + #use hardened || epatch ${FILESDIR}/2.3.3/glibc-execstack-disable.patch + #use hardened || sed -e 's/^ASFLAGS-config.*/ASFLAGS-config =/' -i ${S}/config.make.in + # mandatory, if binutils supports relro and the kernel is pax/grsecurity enabled + # solves almost all segfaults building the locale files on grsecurity enabled kernels + use build && sed -e 's/^LDFLAGS-rtld += $(relro.*/LDFLAGS-rtld += -Wl,-z,norelro/' -i ${S}/Makeconfig + use build || (use hardened && sed -e 's/^LDFLAGS-rtld += $(relro.*/LDFLAGS-rtld += -Wl,-z,norelro/' -i ${S}/Makeconfig) +} + +setup_flags() { + # -freorder-blocks for all but ia64 s390 s390x + use ppc || append-flags "-freorder-blocks" + + # Sparc/Sparc64 support + if use sparc + then + + # Both sparc and sparc64 can use -fcall-used-g6. -g7 is bad, though. + replace-flags "-fcall-used-g7" "" + append-flags "-fcall-used-g6" + + # Sparc64 Only support... + if [ "${PROFILE_ARCH}" = "sparc64" ] + then + + # Get rid of -mcpu options, the CHOST will fix this up + replace-flags "-mcpu=ultrasparc" "" + replace-flags "-mcpu=v9" "" + + # Get rid of flags known to fail + replace-flags "-mvis" "" + + # Setup the CHOST properly to insure "sparcv9" + # This passes -mcpu=ultrasparc -Wa,-Av9a to the compiler + [ "${CHOST}" == "sparc-unknown-linux-gnu" ] && \ + export CHOST="sparcv9-unknown-linux-gnu" + fi + fi + + # temporary fix for a few gcc 3.4 related problems + if [ "`gcc-major-version`" -ge "3" -a "`gcc-minor-version`" -ge "4" ] + then + append-flags -fno-unit-at-a-time + fi + +} + +src_compile() { + local myconf= + local myconf_nptl= + + setup_flags + + # These should not be set, else the + # zoneinfo do not always get installed ... + unset LANGUAGE LANG LC_ALL + + use nls || myconf="${myconf} --disable-nls" + + use erandom || myconf="${myconf} --disable-dev-erandom" + + use hardened && myconf="${myconf} --enable-bind-now" + + if use_nptl + then + local kernelheaders="$(get_KHV "`KV_to_int ${MIN_NPTL_KV}`")" + + # NTPL and Thread Local Storage support. + myconf="${myconf} --with-tls --with-__thread \ + --enable-add-ons=nptl \ + --enable-kernel=${MIN_NPTL_KV} \ + --with-headers=${kernelheaders}" + else + myconf="${myconf} --without-__thread \ + --enable-add-ons=linuxthreads" + use build && myconf="${myconf} --without-tls" || \ + myconf="${myconf} --with-tls" + + # If we build for the build system we use the kernel headers from the target + # We also now set it without "build" as well, else it might use the + # current kernel's headers, which might just fail (the linux-headers + # package is usually well tested...) +# ( use build || use sparc ) \ +# && myconf="${myconf} --with-headers=${ROOT}usr/include" + myconf="${myconf} --with-headers=${ROOT}usr/include" + + # If kernel version and headers in ${ROOT}/usr/include are ok, + # then enable --enable-kernel=${MIN_KV} ... + if [ "`get_KV`" -ge "`KV_to_int ${MIN_KV}`" -a \ + -n "$(get_KHV "`KV_to_int ${MIN_KV}`" "${ROOT}/usr/include")" ] + then + myconf="${myconf} --enable-kernel=${MIN_KV}" + else + myconf="${myconf} --enable-kernel=2.2.5" + fi + fi + + einfo "Configuring GLIBC..." + rm -rf ${S}/buildhere + mkdir -p ${S}/buildhere + cd ${S}/buildhere + ../configure --build=${CHOST} \ + --host=${CHOST} \ + --with-gd=no \ + --without-cvs \ + --disable-profile \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --libexecdir=/usr/lib/misc \ + ${myconf} || die + + einfo "Building GLIBC..." + cd ${S}/buildhere + make PARALLELMFLAGS="${MAKEOPTS}" || die +# einfo "Doing GLIBC checks..." +# make check +} + +src_install() { + local buildtarget="buildhere" + + setup_flags + + # These should not be set, else the + # zoneinfo do not always get installed ... + unset LANGUAGE LANG LC_ALL + + einfo "Installing GLIBC..." + make PARALLELMFLAGS="${MAKEOPTS}" \ + install_root=${D} \ + install -C ${buildtarget} || die + + # If librt.so is a symlink, change it into linker script (Redhat) + if [ -L "${D}/usr/lib/librt.so" -a "${LIBRT_LINKERSCRIPT}" = "yes" ] + then + local LIBRTSO="`cd ${D}/lib; echo librt.so.*`" + local LIBPTHREADSO="`cd ${D}/lib; echo libpthread.so.*`" + + rm -f ${D}/usr/lib/librt.so + cat > ${D}/usr/lib/librt.so <<EOF +/* GNU ld script + librt.so.1 needs libpthread.so.0 to come before libc.so.6* + in search scope. */ +EOF + grep "OUTPUT_FORMAT" ${D}/usr/lib/libc.so >> ${D}/usr/lib/librt.so + echo "GROUP ( /lib/${LIBPTHREADSO} /lib/${LIBRTSO} )" \ + >> ${D}/usr/lib/librt.so + + for x in ${D}/usr/lib/librt.so.[1-9] + do + [ -L "${x}" ] && rm -f ${x} + done + fi + + if [ -z "`use build`" ] + then + einfo "Installing Info pages..." + make PARALLELMFLAGS="${MAKEOPTS}" \ + install_root=${D} \ + info -C ${buildtarget} || die + + einfo "Installing Locale data..." + make PARALLELMFLAGS="${MAKEOPTS}" \ + install_root=${D} \ + localedata/install-locales -C ${buildtarget} || die + + # Compatibility hack: this locale has vanished from glibc, + # but some other programs are still using it. + keepdir /usr/lib/locale/ru_RU/LC_MESSAGES + + einfo "Installing man pages and docs..." + # Install linuxthreads man pages + use_nptl || { + dodir /usr/share/man/man3 + doman ${S}/man/*.3thr + } + + # Install nscd config file + insinto /etc + doins ${FILESDIR}/nscd.conf + + dodoc BUGS ChangeLog* CONFORMANCE COPYING* FAQ INTERFACE \ + NEWS NOTES PROJECTS README* + else + rm -rf ${D}/usr/share ${D}/usr/lib/gconv + + einfo "Installing Timezone data..." + make PARALLELMFLAGS="${MAKEOPTS}" \ + install_root=${D} \ + timezone/install-others -C ${buildtarget} || die + fi + + if [ "`use pic`" ] + then + find ${S}/${buildtarget}/ -name "soinit.os" -exec cp {} ${D}/lib/soinit.o \; + find ${S}/${buildtarget}/ -name "sofini.os" -exec cp {} ${D}/lib/sofini.o \; + find ${S}/${buildtarget}/ -name "*_pic.a" -exec cp {} ${D}/lib \; + find ${S}/${buildtarget}/ -name "*.map" -exec cp {} ${D}/lib \; + for i in ${D}/lib/*.map + do + mv ${i} ${i%.map}_pic.map + done + fi + + # Is this next line actually needed or does the makefile get it right? + # It previously has 0755 perms which was killing things. + fperms 4711 /usr/lib/misc/pt_chown + + # Currently libraries in /usr/lib/gconv do not get loaded if not + # in search path ... +# insinto /etc/env.d +# doins ${FILESDIR}/03glibc + + rm -f ${D}/etc/ld.so.cache + + # Prevent overwriting of the /etc/localtime symlink. We'll handle the + # creation of the "factory" symlink in pkg_postinst(). + rm -f ${D}/etc/localtime + + # Some things want this, notably ash. + dosym /usr/lib/libbsd-compat.a /usr/lib/libbsd.a +} + +pkg_postinst() { + # Correct me if I am wrong here, but my /etc/localtime is a file + # created by zic .... + # I am thinking that it should only be recreated if no /etc/localtime + # exists, or if it is an invalid symlink. + # + # For invalid symlink: + # -f && -e will fail + # -L will succeed + # + if [ ! -e ${ROOT}/etc/localtime ] + then + echo "Please remember to set your timezone using the zic command." + rm -f ${ROOT}/etc/localtime + ln -s ../usr/share/zoneinfo/Factory ${ROOT}/etc/localtime + fi + + if [ -x ${ROOT}/usr/sbin/iconvconfig ] + then + # Generate fastloading iconv module configuration file. + ${ROOT}/usr/sbin/iconvconfig --prefix=${ROOT} + fi + + # Reload init ... + if [ "${ROOT}" = "/" ] + then + /sbin/init U &> /dev/null + fi +} + |