1 |
commit: aad9f07d5ffd862fd865697bba26572617764183 |
2 |
Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Oct 21 12:11:20 2013 +0000 |
4 |
Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Oct 21 12:11:20 2013 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=dev/heroxbd.git;a=commit;h=aad9f07d |
7 |
|
8 |
track bootstrap script |
9 |
|
10 |
--- |
11 |
net-libs/rb_libtorrent/ChangeLog | 188 +- |
12 |
net-libs/rb_libtorrent/Manifest | 48 +- |
13 |
net-libs/rb_libtorrent/metadata.xml | 1 - |
14 |
.../rb_libtorrent/rb_libtorrent-0.15.10.ebuild | 14 +- |
15 |
net-proxy/squid/Manifest | 63 +- |
16 |
scripts/bootstrap-rap.sh | 2038 ++++++++++++++++++++ |
17 |
6 files changed, 2291 insertions(+), 61 deletions(-) |
18 |
|
19 |
diff --git a/net-libs/rb_libtorrent/ChangeLog b/net-libs/rb_libtorrent/ChangeLog |
20 |
index 794512f..4ab8e2f 100644 |
21 |
--- a/net-libs/rb_libtorrent/ChangeLog |
22 |
+++ b/net-libs/rb_libtorrent/ChangeLog |
23 |
@@ -1,6 +1,189 @@ |
24 |
# ChangeLog for net-libs/rb_libtorrent |
25 |
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 |
26 |
-# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/ChangeLog,v 1.124 2012/04/19 14:40:00 ranger Exp $ |
27 |
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 |
28 |
+# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/ChangeLog,v 1.167 2013/09/08 10:25:08 hwoarang Exp $ |
29 |
+ |
30 |
+*rb_libtorrent-0.16.11 (08 Sep 2013) |
31 |
+ |
32 |
+ 08 Sep 2013; Markos Chandras <hwoarang@g.o> |
33 |
+ +rb_libtorrent-0.16.11.ebuild: |
34 |
+ Version bump |
35 |
+ |
36 |
+ 07 Sep 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
37 |
+ Stable for sparc, wrt bug #481440 |
38 |
+ |
39 |
+ 05 Sep 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
40 |
+ Stable for ppc64, wrt bug #481440 |
41 |
+ |
42 |
+ 28 Aug 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
43 |
+ Stable for x86, wrt bug #481440 |
44 |
+ |
45 |
+ 26 Aug 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
46 |
+ Stable for ppc, wrt bug #481440 |
47 |
+ |
48 |
+ 24 Aug 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
49 |
+ Stable for arm, wrt bug #481440 |
50 |
+ |
51 |
+ 17 Aug 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.10.ebuild: |
52 |
+ Stable for amd64, wrt bug #481440 |
53 |
+ |
54 |
+*rb_libtorrent-0.16.10 (15 May 2013) |
55 |
+ |
56 |
+ 15 May 2013; Markos Chandras <hwoarang@g.o> |
57 |
+ +rb_libtorrent-0.16.10.ebuild: |
58 |
+ Version bump |
59 |
+ |
60 |
+*rb_libtorrent-0.16.9 (13 Mar 2013) |
61 |
+ |
62 |
+ 13 Mar 2013; Markos Chandras <hwoarang@g.o> |
63 |
+ +rb_libtorrent-0.16.9.ebuild: |
64 |
+ Version bump |
65 |
+ |
66 |
+ 09 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
67 |
+ Stable for sparc, wrt bug #460188 |
68 |
+ |
69 |
+ 09 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
70 |
+ Stable for x86, wrt bug #460188 |
71 |
+ |
72 |
+ 09 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
73 |
+ Stable for ppc, wrt bug #460188 |
74 |
+ |
75 |
+ 09 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
76 |
+ Stable for ppc64, wrt bug #460188 |
77 |
+ |
78 |
+ 08 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
79 |
+ Stable for arm, wrt bug #460188 |
80 |
+ |
81 |
+ 05 Mar 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.8.ebuild: |
82 |
+ Stable for amd64, wrt bug #460188 |
83 |
+ |
84 |
+ 03 Mar 2013; Markos Chandras <hwoarang@g.o> |
85 |
+ -rb_libtorrent-0.16.3.ebuild, -rb_libtorrent-0.16.6.ebuild, |
86 |
+ -rb_libtorrent-0.16.7.ebuild: |
87 |
+ remove old |
88 |
+ |
89 |
+*rb_libtorrent-0.16.8 (10 Feb 2013) |
90 |
+ |
91 |
+ 10 Feb 2013; Markos Chandras <hwoarang@g.o> |
92 |
+ +rb_libtorrent-0.16.8.ebuild: |
93 |
+ Version bump |
94 |
+ |
95 |
+*rb_libtorrent-0.16.7 (22 Jan 2013) |
96 |
+ |
97 |
+ 22 Jan 2013; Markos Chandras <hwoarang@g.o> |
98 |
+ +rb_libtorrent-0.16.7.ebuild: |
99 |
+ Version bump |
100 |
+ |
101 |
+ 01 Jan 2013; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.5.ebuild: |
102 |
+ Stable for arm, wrt bug #442314 |
103 |
+ |
104 |
+ 29 Dec 2012; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.5.ebuild: |
105 |
+ Stable for sparc, wrt bug #442314 |
106 |
+ |
107 |
+ 26 Dec 2012; Jeff Horelick <jdhore@g.o> rb_libtorrent-0.16.5.ebuild: |
108 |
+ marked x86 per bug 442314 |
109 |
+ |
110 |
+ 22 Dec 2012; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.5.ebuild: |
111 |
+ Stable for ppc, wrt bug #442314 |
112 |
+ |
113 |
+ 18 Dec 2012; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.5.ebuild: |
114 |
+ Stable for amd64, wrt bug #442314 |
115 |
+ |
116 |
+*rb_libtorrent-0.16.6 (17 Dec 2012) |
117 |
+ |
118 |
+ 17 Dec 2012; Markos Chandras <hwoarang@g.o> |
119 |
+ +rb_libtorrent-0.16.6.ebuild: |
120 |
+ Version bump |
121 |
+ |
122 |
+ 10 Dec 2012; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.16.5.ebuild: |
123 |
+ Stable for ppc64, wrt bug #442314 |
124 |
+ |
125 |
+ 22 Nov 2012; Diego E. Pettenò <flameeyes@g.o> |
126 |
+ -files/rb_libtorrent-0.14.12_boost-1.45.patch, |
127 |
+ -files/rb_libtorrent-0.14.8-boost-detect.patch, |
128 |
+ -files/rb_libtorrent-0.14.9-as-needed-fix.patch, |
129 |
+ -files/rb_libtorrent-0.15.1-ax_pthread_asneeded.patch, |
130 |
+ -rb_libtorrent-0.15.5.ebuild, -rb_libtorrent-0.15.9.ebuild: |
131 |
+ Remove old versions requiring boost that is no longer in tree. Cleanup old |
132 |
+ files. |
133 |
+ |
134 |
+ 21 Nov 2012; Markos Chandras <hwoarang@g.o> |
135 |
+ rb_libtorrent-0.16.5.ebuild: |
136 |
+ Enable verbose build. Bug #441842 |
137 |
+ |
138 |
+ 08 Nov 2012; Diego E. Pettenò <flameeyes@g.o> |
139 |
+ rb_libtorrent-0.15.10.ebuild, rb_libtorrent-0.15.5.ebuild, |
140 |
+ rb_libtorrent-0.15.9.ebuild, rb_libtorrent-0.16.3.ebuild, |
141 |
+ rb_libtorrent-0.16.5.ebuild: |
142 |
+ Handle USE=threads for boost 1.52.0-r1 and later. Remove keywords from ebuilds |
143 |
+ that depends on older boost versions. |
144 |
+ |
145 |
+ 03 Nov 2012; Markos Chandras <hwoarang@g.o> |
146 |
+ rb_libtorrent-0.15.10.ebuild, rb_libtorrent-0.15.5.ebuild, |
147 |
+ rb_libtorrent-0.15.9.ebuild, rb_libtorrent-0.16.3.ebuild: |
148 |
+ Backport boost fix to 0.15.X releases. Bug #441582 |
149 |
+ |
150 |
+ 02 Nov 2012; Markos Chandras <hwoarang@g.o> |
151 |
+ -rb_libtorrent-0.16.4.ebuild, rb_libtorrent-0.16.3.ebuild: |
152 |
+ Backport fix from 0.16.5. Bug #440976 |
153 |
+ |
154 |
+ 31 Oct 2012; Diego E. Pettenò <flameeyes@g.o> |
155 |
+ rb_libtorrent-0.16.5.ebuild: |
156 |
+ Simplify finding boost library so that it works with all versions, now that |
157 |
+ it's unslotted. |
158 |
+ |
159 |
+*rb_libtorrent-0.16.5 (23 Oct 2012) |
160 |
+ |
161 |
+ 23 Oct 2012; Markos Chandras <hwoarang@g.o> |
162 |
+ +rb_libtorrent-0.16.5.ebuild: |
163 |
+ Version bump |
164 |
+ |
165 |
+*rb_libtorrent-0.16.4 (02 Oct 2012) |
166 |
+ |
167 |
+ 02 Oct 2012; Markos Chandras <hwoarang@g.o> |
168 |
+ +rb_libtorrent-0.16.4.ebuild: |
169 |
+ Version bump |
170 |
+ |
171 |
+ 23 Sep 2012; Markos Chandras <hwoarang@g.o> metadata.xml: |
172 |
+ Remove qt herd from metadata |
173 |
+ |
174 |
+ 31 Aug 2012; Markos Chandras <hwoarang@g.o> |
175 |
+ -rb_libtorrent-0.16.1.ebuild, -rb_libtorrent-0.16.2.ebuild: |
176 |
+ Remove old |
177 |
+ |
178 |
+*rb_libtorrent-0.16.3 (24 Aug 2012) |
179 |
+ |
180 |
+ 24 Aug 2012; Markos Chandras <hwoarang@g.o> |
181 |
+ +rb_libtorrent-0.16.3.ebuild: |
182 |
+ Version bump |
183 |
+ |
184 |
+*rb_libtorrent-0.16.2 (14 Jul 2012) |
185 |
+ |
186 |
+ 14 Jul 2012; Ben de Groot <yngwin@g.o> +rb_libtorrent-0.16.2.ebuild: |
187 |
+ Version bump |
188 |
+ |
189 |
+ 16 Jun 2012; Markos Chandras <hwoarang@g.o> |
190 |
+ -rb_libtorrent-0.15.6.ebuild, -rb_libtorrent-0.15.8.ebuild, |
191 |
+ -rb_libtorrent-0.15.9-r1.ebuild, -rb_libtorrent-0.16.0.ebuild: |
192 |
+ Remove old |
193 |
+ |
194 |
+*rb_libtorrent-0.16.1 (15 Jun 2012) |
195 |
+ |
196 |
+ 15 Jun 2012; Markos Chandras <hwoarang@g.o> |
197 |
+ +rb_libtorrent-0.16.1.ebuild: |
198 |
+ Version bump |
199 |
+ |
200 |
+ 14 Jun 2012; Jeff Horelick <jdhore@g.o> rb_libtorrent-0.15.10.ebuild: |
201 |
+ marked x86 per bug 413815 |
202 |
+ |
203 |
+ 08 Jun 2012; Michael Weber <xmw@g.o> rb_libtorrent-0.15.10.ebuild: |
204 |
+ ppc stable (bug 413815) |
205 |
+ |
206 |
+ 23 May 2012; Agostino Sarubbo <ago@g.o> rb_libtorrent-0.15.10.ebuild: |
207 |
+ Stable for amd64, wrt bug #413815 |
208 |
+ |
209 |
+ 28 Apr 2012; <heroxbd@g.o> rb_libtorrent-0.15.10.ebuild, |
210 |
+ rb_libtorrent-0.16.0.ebuild: |
211 |
+ fix boost dirs with EPREFIX for Prefix |
212 |
|
213 |
19 Apr 2012; Brent Baude <ranger@g.o> rb_libtorrent-0.15.9.ebuild: |
214 |
Marking rb_libtorrent-0.15.9 ppc64 for bug 411871 |
215 |
@@ -646,4 +829,3 @@ |
216 |
|
217 |
08 Jan 2007; <armin@g.o> +metadata.xml, +rb_libtorrent-0.11.ebuild: |
218 |
New ebuild, from bug 148667 |
219 |
- |
220 |
|
221 |
diff --git a/net-libs/rb_libtorrent/Manifest b/net-libs/rb_libtorrent/Manifest |
222 |
index 3160deb..545abe5 100644 |
223 |
--- a/net-libs/rb_libtorrent/Manifest |
224 |
+++ b/net-libs/rb_libtorrent/Manifest |
225 |
@@ -1,19 +1,29 @@ |
226 |
-AUX rb_libtorrent-0.14.12_boost-1.45.patch 507 RMD160 b3f3730cd1215c5ff08fb8d019b7e9f72cb68d74 SHA1 94ddc8a797ff7834b079686c2a9fb98f09187e90 SHA256 0030390334b95595fef64f0b7c647ef2457cbb628a4d27a6e62be495dbc0b237 |
227 |
-AUX rb_libtorrent-0.14.8-boost-detect.patch 1969 RMD160 8d2c4b412a72b69978bef1f8c659941473657a79 SHA1 2ec58b038e9c1b896b1eeb42e646afbf4f9af5ea SHA256 63d782c54b18ff1fccc08345c4b9afe112b146fa41021da3d717ee313c862ec0 |
228 |
-AUX rb_libtorrent-0.14.9-as-needed-fix.patch 520 RMD160 e75c51c39acd3df37274d465296406d24328a8cf SHA1 2a73ad7edc9b98bd16466dde1112542336b9fd1a SHA256 04d0b833d109523764bbb410cebc59196a047bd72a8c6267a32bdf458a48877c |
229 |
-AUX rb_libtorrent-0.15.1-ax_pthread_asneeded.patch 4254 RMD160 57ecaa0aba6363cbac669f901529c1b157de9aa5 SHA1 af7171eadbe4e2dbcd9fbf5a0752579b9a6d3890 SHA256 aeba842df39d7149ef3722b6c62956f7c20ed1a81b778252ea7ed0514ab2ece3 |
230 |
-DIST libtorrent-rasterbar-0.15.10.tar.gz 2623718 RMD160 924e5ae80ebb8e5f94ec947159438eac289fb7ba SHA1 3e461d9ede5fab3fb59be6a9f0cbc52121d536c4 SHA256 36e79fa4e79d5b0911ade11bc41ee75375048acc06526a23fad8558612ac38c4 |
231 |
-DIST libtorrent-rasterbar-0.15.5.tar.gz 2606717 RMD160 ee5640c530e785cfd78d11db12d6d22d93c5c3c2 SHA1 da81d92bb00f51edcd7dcea1e00e3c54806a43b4 SHA256 150cbda406ac5ff57330446487961503c87d22bfb61a72d695ab4520b4c18a43 |
232 |
-DIST libtorrent-rasterbar-0.15.6.tar.gz 2608765 RMD160 946464cc0dd9a42eaf342021aa96badccd7311c1 SHA1 e6f33b139933ec245e8850558efe52e88081fc6d SHA256 dc84775911129942d21ed94569f7c06accffcf31dc909b26eca5f824efb63f13 |
233 |
-DIST libtorrent-rasterbar-0.15.8.tar.gz 2605456 RMD160 a6ddd211afe8499c66c5e56c1d3eee26be01c235 SHA1 9e21ebfa6fba19b237754a10ae9b8007781c48f0 SHA256 f5dfe715e4f49784d5cc2821983a5fbe454c5a53beedc1996ecae5178188c71c |
234 |
-DIST libtorrent-rasterbar-0.15.9.tar.gz 2619950 RMD160 54461ff314af9602309a9a34a97cb481dc38179c SHA1 d86eb9d4452d07715a355d3a67312f162d6eff3a SHA256 a2ea68011e9933c7deb473268122f016171d24f0f35e744fbdadd14bf6bac23d |
235 |
-DIST libtorrent-rasterbar-0.16.0.tar.gz 2880619 RMD160 8c4fe9e2ba75b87ba9a53ef155c216ad937ee361 SHA1 212d910f6c06f06ef1b54d7e2dd68de18f6d9c73 SHA256 c645f2507f97f80d8681fe44ece00d266c5cd14cfb1ef68fbd005c9a93dec620 |
236 |
-EBUILD rb_libtorrent-0.15.10.ebuild 2301 RMD160 74792927e2e6a47c661e012e14fbfb4465dba8da SHA1 41b73667ed0062c2f6f0231789e40478b3bce2a5 SHA256 9cfa006d63b817a84e53381e867d71d85d5165fd8a939c4ec9d344e06c530685 |
237 |
-EBUILD rb_libtorrent-0.15.5.ebuild 2099 RMD160 07e226d00abe689a09481fce2c8cdf9e9509af91 SHA1 293c475cacb8e11c15245b29324c25ceeabeb39f SHA256 62793b52847ed2bb992fdb01631ca50e77253b45537bd56118391648b197b36a |
238 |
-EBUILD rb_libtorrent-0.15.6.ebuild 2226 RMD160 02d5408bd27bdc0900bef9a855906abf8d7919f9 SHA1 84dfafa366d16e2324932755ff9711f5e24802fa SHA256 3c0363b784ae23b3c105cbb50e768b6237785033c17beb5199988e997dac18ef |
239 |
-EBUILD rb_libtorrent-0.15.8.ebuild 2339 RMD160 4ef336a98de3bf8b5df7134786ceb6e7f53e1bb4 SHA1 a129f27700b809ebce6e54b9be554e51b0ef348e SHA256 798fab4ca38ac58de2a149fc3f8f2d652c8b53b3f762b17fb0715aedf747a500 |
240 |
-EBUILD rb_libtorrent-0.15.9-r1.ebuild 2302 RMD160 36e3630f289c892bf64919a54d773edcdd9be358 SHA1 dea26a4706cbb546486b27afc0ecb42644b0baf8 SHA256 84b4f2a4f29eb845a8485487d3f4e3ea62da8040d386d36a96ab2c061e630b71 |
241 |
-EBUILD rb_libtorrent-0.15.9.ebuild 2335 RMD160 c7952865f0964d960d72bd8c8a99c5da0e2cd7dd SHA1 e2913486c633813863da4e53f0a6d6dd443dd57d SHA256 65b4cd3a8e89eba0a13c911e5b9f3b5bc85269eeceb08ebb3272fc623ef66659 |
242 |
-EBUILD rb_libtorrent-0.16.0.ebuild 2189 RMD160 3891a4c7603ed1800ee2d54513e64d5c6d3d424c SHA1 edf6273c9951888a4aabc6860634d2d7ba54ce68 SHA256 91cddce5218ee738317239f625a9a8db80131d4ace5b68f3f59a2ea7f8e5a123 |
243 |
-MISC ChangeLog 21184 RMD160 46c82b962e05b3cbaaaada05d3d7eb71b7748701 SHA1 6b4a47bb4b1032146bbc51e8da0b75c3b4797e5d SHA256 a19fa803ee27e6390dc3e2196fb437ab1672aa03a399b9e272831855424e8dd8 |
244 |
-MISC metadata.xml 355 RMD160 bc086bf78b19a22b3791b3403b3b6ded81d55f14 SHA1 c08dbe089cbabfc855e26630756b81dc5d6f8f55 SHA256 e9742c49b2324891c277eac0d1d50206f0dd01a90dc24ae5d55982a0cecfb5de |
245 |
+AUX rb_libtorrent-0.14.12_boost-1.45.patch 507 SHA256 0030390334b95595fef64f0b7c647ef2457cbb628a4d27a6e62be495dbc0b237 SHA512 772c34d86ccfda9809b31ef1bdf9cfd7c02c5bf7861e05debdb7a82edfdc2cd8e55206928c0ef97c90a71fbd69144ac60a6452286f60b6d8814dfec8ed8814fa WHIRLPOOL 080cfe6d721378b97ed39805e0b77a176ed93bc00708d685fabeb5eea0aa51df8decdef22e6c3e35f4a2258c90fa563e3753e498266006dd7f9506983593eb97 |
246 |
+AUX rb_libtorrent-0.14.8-boost-detect.patch 1969 SHA256 63d782c54b18ff1fccc08345c4b9afe112b146fa41021da3d717ee313c862ec0 SHA512 1423837af191a0bf2fdb4f462c6e75d183aeb597ec1d44274c1f3c249817f0b5a34a7de0a5db9be6ed654ebbc8c1f94f2e8a20c4dbc59b5bba22bcc99d052c1f WHIRLPOOL e5c5d608d2302a93fbe0dfd043b78019a81aa7a8ba5aa515670348f06b71cd80eebb31b2b79ebd4316a923c3bcdc12543804b0c0e6bf89529e1132374baa67ea |
247 |
+AUX rb_libtorrent-0.14.9-as-needed-fix.patch 520 SHA256 04d0b833d109523764bbb410cebc59196a047bd72a8c6267a32bdf458a48877c SHA512 9e5e74b239652f4997793beef1bbc9ed49a837513ab889d6c4db3dd442703da8a287addabd516204df982ddfc8635de97f5665c84a8fad9f67cc731769bd88c6 WHIRLPOOL 6c77a2a286f00bbdcc330c8e2f58600642df39dd85b00ca175f25dd75515bde65f1cc782c88ae886c0c00b4ab5dcdd20f45ee7f40bf2f8d1e7cd6302f4aa62ae |
248 |
+AUX rb_libtorrent-0.15.1-ax_pthread_asneeded.patch 4254 SHA256 aeba842df39d7149ef3722b6c62956f7c20ed1a81b778252ea7ed0514ab2ece3 SHA512 7d6de4ff8d9feef140c15dc351b26d69f9ae91272b34bcf1ae808742f68423c9f086ce6a4c5116ff2fd136b3624b27c0bafed9382f96142981f598fd3f816b7f WHIRLPOOL 49a80071b6b30819c4289b95cfcbb3bb2b72e5b89c8f06ef10d3978ab7f916faec9a614e60a809cae6162fc0ff4df79732317a4455ba96ae8ff5ab8ba5264e82 |
249 |
+DIST libtorrent-rasterbar-0.15.10.tar.gz 2623718 SHA256 36e79fa4e79d5b0911ade11bc41ee75375048acc06526a23fad8558612ac38c4 SHA512 b66791a62dc3478dcfd8d7045891bccb660af51a313feb795140353c249b00794cc031d6ad6c47020c0e29601c5da5a2f0f2dc646148c7e616285af8ef44bc70 WHIRLPOOL dacd32e103c4ad9b563221e3bf18cc74b03cc415a155c15516b55bd345a31474362a12c26ccfc5eeb724498f5366704acae2dc68ee32e162a261a12abdb43c2f |
250 |
+DIST libtorrent-rasterbar-0.15.5.tar.gz 2606717 SHA256 150cbda406ac5ff57330446487961503c87d22bfb61a72d695ab4520b4c18a43 SHA512 0d2572c6f1d6b99e1b668d1e2e999538d6083e9a788473fa1a663bf752e70f2a4908f8d7f9d268741bc54c1e201600d9c4b57e6ad1912f1387e109b9ba0b9926 WHIRLPOOL 27bfda4413227433978bb66884d4a8f974757e725873bc063ff5932ea039f134879481ac3d9120ce9d999a53a287f5487d6e04da5888429cd66fa7ed3d56724b |
251 |
+DIST libtorrent-rasterbar-0.15.6.tar.gz 2608765 SHA256 dc84775911129942d21ed94569f7c06accffcf31dc909b26eca5f824efb63f13 SHA512 b62939fd8e067c536236bc5b96498c65de454eaeb76e23c360c848a523f6b306410164ef90ca2540324f4f6d6be88072903f6002075621e108c26550ad447e2d WHIRLPOOL c72ed103a0a618278e053c741a08f25f3725ba16f88bca469c7e191971455ef3868f2bd7c69468e2fec1bde275f17e3b2c20b9a7c34d382ea0d0ac98adfb139e |
252 |
+DIST libtorrent-rasterbar-0.15.8.tar.gz 2605456 SHA256 f5dfe715e4f49784d5cc2821983a5fbe454c5a53beedc1996ecae5178188c71c SHA512 c33ef003823ba263e57068cd7c67179bfa69ffae6597eacc40ab154dbd2bc66507b1f91fc80f970d388423461f6eab8ed4e245980b7c0f6c10aa886b60155500 WHIRLPOOL 29fa50225e64a52823fc6d9fe800af2885e6be434b500a77adb2e98d2e41f1051d853342de580ed26008652bbe61eb46aa6c00e2446de08944589ff2e83f1567 |
253 |
+DIST libtorrent-rasterbar-0.15.9.tar.gz 2619950 SHA256 a2ea68011e9933c7deb473268122f016171d24f0f35e744fbdadd14bf6bac23d SHA512 abbf237b03c1ca5ff0022487caea6b533254467dbc3d74450cc000a3c9fca4c88c9589e17f88534fe49e87bd29a179fa964eea821873dcab62ac07cfc6246a40 WHIRLPOOL 7de400e51564273021ca7694335e58c6e8bbe12f2a65208d7ca002def4c32e1ca744d68fb4cf74de31a8cb09d7a914206dcbbc3305ee6b7a78741e94c99b04ea |
254 |
+DIST libtorrent-rasterbar-0.16.0.tar.gz 2880619 SHA256 c645f2507f97f80d8681fe44ece00d266c5cd14cfb1ef68fbd005c9a93dec620 SHA512 1ad4ee0ce698a7ad8912031df18ef2d351424f171c8bdd584e2077595f05d001d9b19a7f3123ea7aade7ff1b582059d6ba504b821868f5dc87b9f2436985b048 WHIRLPOOL a10ba0979abdd67827bbc84a1e5a92182e885e581bd4bfdd39ff68175ab4f2b8f31f6b852f555e2c7e09f5ab4bfd4574413ee67b526def8d99d8e330320009a8 |
255 |
+DIST libtorrent-rasterbar-0.16.10.tar.gz 2985640 SHA256 4c0d78b28af8051ff8a19a3a3e10a5edfec50945b8f3c9a76612111c47d671bc SHA512 a8b5d762f2b50ded1f8589efeedf2d1e0b5cc39d71bcc1840658137c1058cd03fe249c6855c5c483304aafb74b616d241456fecf00dec50608aa82af9f795819 WHIRLPOOL 20cc12a8bfcafd079a0d8ab6132bb3a4aa289089ed12c895bc2b2047b5a10a15a3ba20d6f0f767ba0e01f19dc3e1baa05518d08454b502a8b125e513bf05ce51 |
256 |
+DIST libtorrent-rasterbar-0.16.11.tar.gz 2989445 SHA256 09dc00f8ab9c90327cdfa46c4a68b59ebd3a949c8bfb641b4a99e974d49ad2e5 SHA512 2e058e3eae7eeb6229c40428415313c52f5a85bc79a8ec7f6d495ee14c99f871792c7109c081638533dfdd7961ad78d9d8592eedb864fee9f311aff434737a8a WHIRLPOOL 255d5561302c2cab087ff0f9be1c28108a3964f669fcd304872f0fecba425bddb512012c45bdb901ce0bb9fa765c4edd25147bcd300d8e375cf18da759d50dec |
257 |
+DIST libtorrent-rasterbar-0.16.5.tar.gz 2912302 SHA256 35884b450e49b7d62d327c9952241adfcfa534af8f7b1bdab1d3333cf9b0f3cb SHA512 eb6a2af19c185acda0a93c1adc87c8eedaa1323a01ba169414066fe6063e6ff8b78843adf38f2ade1246afdc7bebcaaa0533f45c92ecdb3b08f408dcb9773963 WHIRLPOOL 08153d61a9f5158dd1f4e387c390a3f840025c7673432d9d97eae6582a2d1d94c405a3c11f7b2b6445a792add2b7aa7c7790a58117ee638dee0831e291c3b40d |
258 |
+DIST libtorrent-rasterbar-0.16.8.tar.gz 2941811 SHA256 80a510f8f1f39d21dd9948b145722697c261f406bc68219ec2804ddcac875d06 SHA512 9cdb0ec2a9e3e5f30f89437729480d2326590c6711567aa0ad08662263b9a1a97a918287cd6514aa7f11ed58e63d156304acf2f4ecaba02fbe297afa8747d1c1 WHIRLPOOL 0acbbd3975089ef31e1606ccb3de193bd9983d4f94f4e30fcf09d0c990e53677a49a192e9f9a4d2b0c8de2416100b30715e11ab4636d16482c04401a91e1946a |
259 |
+DIST libtorrent-rasterbar-0.16.9.tar.gz 2945330 SHA256 7b7e1f68c75bd80c14a3b8ab937be0823363d60f32df1373fa6c76f9d7346f1d SHA512 753e6fa5a2321f7849c9caf6ef11bea12d6cb957a4314de425f671c6d7de8e0b2ba7240ebc4545647126bb5e3429d9616a1b6b3a728c2f456d7f136ab29c93d9 WHIRLPOOL 83800819beef2e278c36f689cd697d4169940c8567c51d4cc346d4f13fb2ccf3e320542bcbb44c4375183db1c011357e59a0089b94b54e5e9b39b0a0a02ac68e |
260 |
+EBUILD rb_libtorrent-0.15.10.ebuild 1887 SHA256 5161e0553948276c8b87dcf135422ebb08426bada7d8c279a9157ebf1c6897e5 SHA512 0eaee600f482ec706195380a4f65506da73191fc416196a4e9724d754f3ce9a222adedae736fa25e53c4016b22f4a5c60ab281333766a45c4e30b13e01fc70a3 WHIRLPOOL 166a15af4c949298e3d15ca9fdf0c194c2bc988b0d2eac543b4ae04d11718e0f82a4fe740f420ea657a995643e433a5f9c15e929f6c50c57329e646f66629e1b |
261 |
+EBUILD rb_libtorrent-0.15.5.ebuild 2099 SHA256 62793b52847ed2bb992fdb01631ca50e77253b45537bd56118391648b197b36a SHA512 238a7ee418c8e022278c25507402ec329bc15c79b10fa8518b0edae95e57c1e238ee20dfd6b5c3629b616ae355cb9028d7d797cb6023bbe3d366a3cb57602049 WHIRLPOOL 3c99e6c5eab5055f884b3c9e314775bef44b64adb71c41103ad013ca2846ae4a4c8d97262253cb4392826f227d4091f4d76e7f30653f023b5c7c478c994c3544 |
262 |
+EBUILD rb_libtorrent-0.15.6.ebuild 2226 SHA256 3c0363b784ae23b3c105cbb50e768b6237785033c17beb5199988e997dac18ef SHA512 364f2099b1d89da82104f2e206733a6ec66521bda0090d861c37533936962bcb55235d73f67325f5245b573abdbfbf9d33c2b9517033ef840ffc621f98e3f47a WHIRLPOOL 38dd65cba9a4eb1afb2d3a097cfc7ca7d97ee403354e1f83b08f4f0e5d5f8d261e73aee05b6a8b8fd1110c0dddfd6f05e7858a2e5416e0629e3610871bfc80e3 |
263 |
+EBUILD rb_libtorrent-0.15.8.ebuild 2339 SHA256 798fab4ca38ac58de2a149fc3f8f2d652c8b53b3f762b17fb0715aedf747a500 SHA512 b6318d78ba004728778ac958839de8595dab7df02c6128b51782d51d699cbce3951274fbf08108e19dc8d7194f2045102da02255e83280828a8dea6b9b12b5dd WHIRLPOOL 6bd129dfd7e6a557c5899cb2c6ef9ec7b93fc5dee9eeccc5ef8813e143208450365fcf533e629b9b3e50048cd490546ba46101c30488e332546f61b00a5cf6dd |
264 |
+EBUILD rb_libtorrent-0.15.9-r1.ebuild 2302 SHA256 84b4f2a4f29eb845a8485487d3f4e3ea62da8040d386d36a96ab2c061e630b71 SHA512 b30ffb88d4e9dd8b67c92989654861b36996bfa0676bee3382dcd4db7c01de93a9b0f86f72dea0d865c9ef0d60e695c78808fe11dc7bf8b5cc8805eb6829b80a WHIRLPOOL f83ee7ca5684f28008f4644d366287a1079511c681039a7ecc6cb3e177bf3710bcc1c4f3111d48f49f6d94076185ac48d3b09b6edc3aaf1253da64c9fa0fe776 |
265 |
+EBUILD rb_libtorrent-0.15.9.ebuild 2335 SHA256 65b4cd3a8e89eba0a13c911e5b9f3b5bc85269eeceb08ebb3272fc623ef66659 SHA512 9413a278a70b5e15e7bcf61a86c7e6cc0b79a329a986df815216bbc8e3abe36027f7852f976bce63586360f098c7e845d7ba8accee70e793bcd55a861a4d9e40 WHIRLPOOL ad28a500ecf7e2b7ea1d25d417e886a6b01f59944bf595d9a192062f44e4d155e6f4528d0e151840cfbc9d8014b815c026f1ff45ea75cf25c0ffc66adb777b54 |
266 |
+EBUILD rb_libtorrent-0.16.0.ebuild 2189 SHA256 91cddce5218ee738317239f625a9a8db80131d4ace5b68f3f59a2ea7f8e5a123 SHA512 307f061fe0a25ca7cc1bb2d4c791db5bfa35d8b15b165beda932db0bdd7ee57fb31acf908f90b39bf0d67d7fd9023657c064a87d79348be672dfdb85c34c4789 WHIRLPOOL 08e71879152fb6e6dc050b1d30de57044e085a18a59bf2054c3b7fe9df9a55db5101e4cdb85d0fdc5d0bc6ef779d373696cbef5168279964c808566440a1b6f1 |
267 |
+EBUILD rb_libtorrent-0.16.10.ebuild 1926 SHA256 3eccbe9d904c43c58c7626842eae539895526db28941c0a9b2a159c8404ab64a SHA512 6ca665f1a6fbe6f27cb94ef586db66a36e9f72e416a890626793090a0bacc4694c53eb43b16ef6c0e655dd6cdda2d159d969aecb75191c076fbbaebbdf67d845 WHIRLPOOL 04cfc293b94a34898fc5a8837bbb1bc819dba65c3c5702a30162457f79d47dd508cab16519562ef220ed9b5aab07bb90943f8d5ce3437124147182e2dfdbb4bd |
268 |
+EBUILD rb_libtorrent-0.16.11.ebuild 1975 SHA256 741f29f9c1191d4381bb08bb4b468d8752857bc2057306fa0a8b11c3f4f034e5 SHA512 2e053c92d22ede7a53b54c7808d1e95f5d327b496afe821129f1668b5dd90cfdee19d0eda9389e1281abd1cfec497fc3ec8cc7f27c5813d0d27d7b25e933e52b WHIRLPOOL dc7d8a12404f4900590a3eb7b848cfc3a1e6ffe715d7ded8a138cb4408a4da3a18366eff6727847a3af9a1882f8fc4d0faa8440d5a3996da255696decef92329 |
269 |
+EBUILD rb_libtorrent-0.16.5.ebuild 1926 SHA256 284159e96120e1b6fe74b68ff005e146eef9d4a8c3522612c56121c53c5e130f SHA512 bb4b3b2e5d7c65fe603e4e8b7af611e6f7ea36921774d898042686e232e53e8c0ab8bdec28ddb9a6e648d5f1dc9a772f9b2511c999cc7b3b29d139d59aa2af88 WHIRLPOOL 4a025c28e7b02258d50bdb7e270a5fc1bb3c1db34c39665514dba3c0c65ad3d422fb967dbb06b4813412be2c7507932b7880099457c03d2db58bb1307e4f65ab |
270 |
+EBUILD rb_libtorrent-0.16.8.ebuild 1925 SHA256 3001ade1d123144b5982f3413182044c4b9e9381912c8aca936ee9e334f3e1bf SHA512 3b68e48cb781480ff3410aa50383c5511f6bc00f22852c98e85d72b082509a0dc4b84bb2560ca25096aa5e37e26243069bd221da2d40f5f4ce0dd685d9333081 WHIRLPOOL b102dd12b2f1c221efad850aea9be8f75608bf2e9abf1a90d562909e19f9ad038ae2c8276355c0ce8d17964d7855123111903806e84db9d1589ab7dab863122a |
271 |
+EBUILD rb_libtorrent-0.16.9.ebuild 1936 SHA256 afceca6d2fdac06aff54c5942fe76efc1173eea05c73848a2fd723733d8dc294 SHA512 945c616f3755d5b98d2054e6e602c789f4777fd79b2d4203df10b130f7992f2fff72f90712d12897e0f59072908ac34b32e2fb0e4da271f609ac508aebd8e118 WHIRLPOOL 5a242fa0d34501d50c3433779c6051247ef4cecd3a83daf5c6ccfe80dd3306b696e5a943af7e570e7be1845f2d72f7794eb26d8e3a9ee627e76673f5b42975e9 |
272 |
+MISC ChangeLog 27232 SHA256 17d0700424fe33f8a8101f9b0b6011b829fd89a5ccc3d3b23953e6bc793ab4d4 SHA512 b03cd93085d21833403e5c646e0c21e46bcaefac861963a6c128c8bac9785f86bf20d59866fb67d850311d45c19ac4282e52f624a086a7bf13907d64bd7a3444 WHIRLPOOL 3a55f9da6e947f0e95c51c87ea098a051489a45a8fb33f7dfc44e2aceacfaf1a3ddbe388f6cfd2451667c5ea9c1a055bb569649b0cbe306a7323d1a91ef3f860 |
273 |
+MISC metadata.xml 338 SHA256 c3c6440b48a876a0f8126eaf17c31f5f77f2eaf2d84068c9d43bfba6cd5d187c SHA512 b9b57d5e8f907705b27f55f31bc4d7e68c8f076162d2ca2f6a34be64a0e17c80f20798f15df493d7a1ba29d88148b1ddb49ef757acda58f2b7e1b5d1126d9418 WHIRLPOOL 1ca916d0c644bd428c6f21cd7c126cf6b8783a5b84eb4468712f6843bb14bff6869d39440af9c482a0bb9d40fd037aace45524609476b7e83d92420a757892f5 |
274 |
|
275 |
diff --git a/net-libs/rb_libtorrent/metadata.xml b/net-libs/rb_libtorrent/metadata.xml |
276 |
index a074ba5..08864fd 100644 |
277 |
--- a/net-libs/rb_libtorrent/metadata.xml |
278 |
+++ b/net-libs/rb_libtorrent/metadata.xml |
279 |
@@ -2,7 +2,6 @@ |
280 |
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
281 |
<pkgmetadata> |
282 |
<herd>net-p2p</herd> |
283 |
- <herd>qt</herd> |
284 |
<maintainer> |
285 |
<email>hwoarang@g.o</email> |
286 |
<name>Markos Chandras</name> |
287 |
|
288 |
diff --git a/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild b/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild |
289 |
index 2198ed5..cb9eb4e 100644 |
290 |
--- a/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild |
291 |
+++ b/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild |
292 |
@@ -1,6 +1,6 @@ |
293 |
# Copyright 1999-2012 Gentoo Foundation |
294 |
# Distributed under the terms of the GNU General Public License v2 |
295 |
-# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild,v 1.1 2012/02/25 16:18:06 hwoarang Exp $ |
296 |
+# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/rb_libtorrent-0.15.10.ebuild,v 1.7 2012/11/08 06:24:13 flameeyes Exp $ |
297 |
|
298 |
EAPI="4" |
299 |
PYTHON_DEPEND="python? 2:2.6" |
300 |
@@ -19,11 +19,11 @@ SRC_URI="http://libtorrent.googlecode.com/files/${MY_P}.tar.gz" |
301 |
|
302 |
LICENSE="BSD" |
303 |
SLOT="0" |
304 |
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
305 |
+KEYWORDS="amd64 ~arm ppc ~ppc64 ~sparc x86 ~x86-fbsd" |
306 |
IUSE="debug doc examples python ssl static-libs" |
307 |
RESTRICT="test" |
308 |
|
309 |
-DEPEND=">=dev-libs/boost-1.48[python?] |
310 |
+DEPEND=">=dev-libs/boost-1.48[python?,threads(+)] |
311 |
>=sys-devel/libtool-2.2 |
312 |
sys-libs/zlib |
313 |
examples? ( !net-p2p/mldonkey ) |
314 |
@@ -48,12 +48,6 @@ src_configure() { |
315 |
--with-boost-filesystem=boost_filesystem-mt \ |
316 |
--with-boost-thread=boost_thread-mt \ |
317 |
--with-boost-python=boost_python-${PYTHON_ABI}-mt" |
318 |
- # detect boost version and location, bug 295474 |
319 |
- BOOST_PKG="$(best_version ">=dev-libs/boost-1.34.1")" |
320 |
- BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")" |
321 |
- BOOST_VER="$(replace_all_version_separators _ "${BOOST_VER}")" |
322 |
- BOOST_INC="${EPREFIX}/usr/include/boost-${BOOST_VER}" |
323 |
- BOOST_LIB="${EPREFIX}/usr/$(get_libdir)/boost-${BOOST_VER}" |
324 |
|
325 |
local LOGGING |
326 |
use debug && LOGGING="--enable-logging=verbose" |
327 |
@@ -66,8 +60,6 @@ src_configure() { |
328 |
$(use_enable static-libs static) \ |
329 |
--with-zlib=system \ |
330 |
${LOGGING} \ |
331 |
- --with-boost=${BOOST_INC} \ |
332 |
- --with-boost-libdir=${BOOST_LIB} \ |
333 |
${BOOST_LIBS} |
334 |
} |
335 |
|
336 |
|
337 |
diff --git a/net-proxy/squid/Manifest b/net-proxy/squid/Manifest |
338 |
index 6b87caf..6801f53 100644 |
339 |
--- a/net-proxy/squid/Manifest |
340 |
+++ b/net-proxy/squid/Manifest |
341 |
@@ -1,27 +1,36 @@ |
342 |
-AUX squid-2-heimdal.patch 776 RMD160 2ced12e7682356ee2eb660d877437c3ddad6476e SHA1 3a693c2c975fe4c77ee729d8af8ef28097b11fb6 SHA256 bd0083836321c596db3fc8749152bc77d5a4bd03070d33541b7b489af59e4c25 |
343 |
-AUX squid-2.7.9-gentoo.patch 13118 RMD160 44d2482b9c998c1641ab3e2d5c5701a4f6fb6165 SHA1 b5007d3d2df28c35b88c814b41fd4e182ad34f2b SHA256 981588dc2d599a2b49f550a1ae111e96515b437a03c8d0dccc6f96f078009d11 |
344 |
-AUX squid-3.1.15-gentoo.patch 10538 RMD160 f4ac679e89bdd8d43a2cd00b1a63d555a25b9528 SHA1 63b2c8a1767019b35b75403dd9a7bf6b33c69edc SHA256 75549600815236932f549e1c4e0286b6cbb4dc26a7e545abb96b7d29f0128ab3 |
345 |
-AUX squid-3.1.18-ecap.patch 1798 RMD160 ab216b7317ba1c1544eca1525285ec68e2d3cd6b SHA1 965fcb17440d11620390b208e516b6824b7d0016 SHA256 576866c7fefa8c927ea029ecdcf90851ffa24fa528f2894d73667bd6a508ce63 |
346 |
-AUX squid-3.2.1-gentoo.patch 4418 RMD160 c9e75cfab348bc8b1e7811d7899a9158f09bf946 SHA1 d7fb8f4a3aa4822c538af993aca04377afbd5068 SHA256 41da185c1af04590525fc9144c14edd160522b878efc2e62e8a992a001ad38e0 |
347 |
-AUX squid.confd 540 RMD160 aa4ec5a6eebad1222667aff6b3180931cf566b13 SHA1 1c0c23b08bd0450eae14604c2b45ca67c7ac25c5 SHA256 aeef7060c50074b65c664fc106d7319ce380d25320ee2ee00f7d6021846b88ec |
348 |
-AUX squid.cron 143 RMD160 0706a7ad04691b9a93a2897c319008440483ba11 SHA1 6138db0eccb7320e707b8d60c2970ef684e29336 SHA256 4c9e2afe5b0bba583ce896233ea1f9262beeb1b6cf51b4adb48d5f5c03933b2f |
349 |
-AUX squid.initd 3331 RMD160 90579b249baaf727fad9f6ceaaf8b2a1e5f1e97f SHA1 0b6f4e10d758619101f0ea56b5146dc268b8b3e0 SHA256 7a81926479941054358bce650c8c9d3f070a7b40c886e5ed3a337668997bc0ab |
350 |
-AUX squid.initd-logrotate 3179 RMD160 d93ce329a691858a88a0b615c4dd9b8909a18783 SHA1 b0529bcbb47607656ad07200caa17c5c340dc6cc SHA256 3edb51b43218b8bdf5eee0f58f03d8a0fe5c470db1e81992c036649b1b1d5f85 |
351 |
-AUX squid.logrotate 103 RMD160 e7e4a6bde48e2735632692a6e628955b270f30ad SHA1 6e8d42f6a1a3109f0a26ed30edc7d91c6816e23f SHA256 e5ddce1c9af851040affa15e1a59e89d8db0f2eea7c461320a1d3784578f4482 |
352 |
-AUX squid.pam 315 RMD160 afb3f1cc36ba5ef0015c40040b6d5c18485ec828 SHA1 40933fabaaa2a9cb38d57c3acb77857082c82ae5 SHA256 68ef4282f9fb8506df710d0ae16e84e991e9b138c7f1d0af922682219c7a971f |
353 |
-DIST squid-2.7.STABLE9.tar.gz 1789462 RMD160 59c63348beed9a672612d48f9ef5e7ca81fa9840 SHA1 6d90fe06468b662b2eefd7ffeb47b9a78f0a871d SHA256 d54ca048313c4b64609fcdf9f1934a70fc1702032a5f04073056d7491d3dd781 |
354 |
-DIST squid-3.1.15.tar.gz 3397495 RMD160 cf5910e15ed594cde5f205206d4c1ec65aa445f3 SHA1 c0cfdf54db5ca6ffc23c3f328175ec19f6465d8c SHA256 c56207691ec6ce19f7d19805b290b8f58c63c81e2070d7cd3a824a0b49509b2b |
355 |
-DIST squid-3.1.16.tar.gz 3399527 RMD160 1a0010354b9417f2f4f7f6ffb8302d59639fe567 SHA1 f77a31d9e4b6092ba43d7f581dbcb7e2a4ddf377 SHA256 87fb621b2dc51b753ecfedc3b2d537b6cbfa8f29b242aeb3c055c547ed80466d |
356 |
-DIST squid-3.1.18.tar.gz 3401300 RMD160 27bc3f868aa9d08bad7d44d23bc9c156007bf161 SHA1 6ae3a7d75acea94e8af333a7086d6467416ff5ac SHA256 6a7122514d58c3077f2b43c928864be10753d8e2c8439133dacc9eba6c45e00d |
357 |
-DIST squid-3.1.19.tar.gz 3403110 RMD160 2bb06f095aa7e1fd8bcab50ad42c01fe1f9dd589 SHA1 688e47e755c018397d279e30ca215a28e1b535ef SHA256 1a2ebfd832364ada4793532dcc59fb79588ee3819cb80b77d8f53858f0166e34 |
358 |
-DIST squid-3.2.1.tar.gz 4100448 RMD160 a44456cdda613e8c205a9df6ad42f4dd362348c9 SHA1 ca5d742d2d0fe210b16e929373099b2e78799458 SHA256 793ba5f04f3d3797b624fe061f8be9ededdc9f68cd39c1b58df78861ed4382f7 |
359 |
-DIST squid-3.2.2.tar.gz 4102323 RMD160 8957e047452132c51d2ecdeb06a50c3d61ea543c SHA1 3df827e5eb861df0b6ac7654ef738512cb3f9297 SHA256 36828bb92f5f7cb4343b5d4ceebb654c6a1a1479e75a3514fa1a509495987916 |
360 |
-EBUILD squid-2.7.9.ebuild 6175 RMD160 a235925ac773d7d569a958366923e5a03adcc17c SHA1 0dbb84b76302c265ef4ee193035f5882d46146ed SHA256 587b0f52d2fb973f2686d947893191acf3a1770d467cd8134091fa2c07f01f3d |
361 |
-EBUILD squid-3.1.15.ebuild 6621 RMD160 c959b10a7905e000bcf49ea296cbb191555ddfa0 SHA1 dde6be2583ce96050a23f964ae1bed8b58170b5b SHA256 911d065d38544a59af7ce6f4299fc282fdf10aa4bd0869503b45b214fdf87bbc |
362 |
-EBUILD squid-3.1.16.ebuild 6629 RMD160 d759605f7c281d2649ee95c16ee38c26e274f7a1 SHA1 e09b67d54d7889b8d72dcaada878054ab79a3514 SHA256 2bc745da81ed998762d82deaae18addd6fb8011b44425860b89e721b1d2e6b21 |
363 |
-EBUILD squid-3.1.18.ebuild 6676 RMD160 c6050c085705097d6cbc116067e0176461c55acd SHA1 5426ff28c92c3ec6965d56c41d55f62960aca699 SHA256 3ab64d19f8b4f3189673cacef1a4420c4181748da78baca505956f11a537ce60 |
364 |
-EBUILD squid-3.1.19.ebuild 6747 RMD160 f953b8938901f99d567290ab218cc7223729f20e SHA1 b255011be3e34733a4e14f67e2e301c502cfa4ac SHA256 23d265d76271b39edc321aab98a6b110943a29487d1e2de3cacee1da912ff241 |
365 |
-EBUILD squid-3.2.1.ebuild 7701 RMD160 9fc946c84fae1b34a285d35d70356d5053f3aee5 SHA1 e1fc9e5269febb4da4f9ffc05467ff15ae915191 SHA256 bdca64f4790e313aaea63cc5217d866171eb92bd53ce7bbecbf104a90e97fa88 |
366 |
-EBUILD squid-3.2.2.ebuild 7604 RMD160 a27b2bb6afd379a51b4b562f97593b54df5aaa36 SHA1 9244953aa3b2c4da3e6651ecb363b9877466fe47 SHA256 c1944d31f379e32e95ea954bbe6f3a9cef6096e35bc04b197f2156e881191b6a |
367 |
-MISC ChangeLog 71409 RMD160 17dde1b3f4c8b5472560de826e06cc4633eb2abd SHA1 58338465e32504333c0a86f8bd0a44ad138ddfe6 SHA256 69acc9c137d52de40f32ca87ee526a8ee648eedc1810b514d0d67a86932fb95a |
368 |
-MISC metadata.xml 1015 RMD160 03ac3fffc7b01e366b173a4c3bf1dc6be1bb9202 SHA1 3c1681981e2a143ee50d0ee5bc901ac81e7c5cc4 SHA256 06d8e8a7909b9140eb2e70193db754b84d864da260d6cdf9bde9fa58442ce34a |
369 |
+AUX squid-2-heimdal.patch 776 SHA256 bd0083836321c596db3fc8749152bc77d5a4bd03070d33541b7b489af59e4c25 SHA512 78ac4e930dbf4296036fff9022572e455ed7999eddfcc0b13d34da74bc1c994665fbe30f2e3322f1efa31834a555ed1dce2b3327b4d97bfd03363ae03164d410 WHIRLPOOL f8a54ea5f52968958607df7ebd467b591fbc9189de5b03d1f871b534980858348929b25f3fc3a2fb2ec968655a73e9323f2fe79d2b0b43558669714edba7996b |
370 |
+AUX squid-2.7.9-gentoo.patch 13118 SHA256 981588dc2d599a2b49f550a1ae111e96515b437a03c8d0dccc6f96f078009d11 SHA512 358fb2e28fc7eb9cee573c05e1becee9ad9ce0cacde106f0809ca2e12ec6ca0a1d68eab81a34879d2ca7b05adcacb33502369266b3c9eed249f2506e0c55492d WHIRLPOOL b8c62251f4d1e54d50b301ac807e9bf08d6c777432795820f993b2a4f29be7491b60c13b3200a16f79280b8e2e410c2ca34a0a5820da8493fdcceea0e3b82e59 |
371 |
+AUX squid-3.1.15-gentoo.patch 10538 SHA256 75549600815236932f549e1c4e0286b6cbb4dc26a7e545abb96b7d29f0128ab3 SHA512 6e2a26e7cb99664046619f3d4cb9e87998b462f7de09d6fbf4a269ccf2da758d5caad35c0ec43c5c9c5a9eb8943ecf14a0cdb67fa2a117bc3be4d9a41a920451 WHIRLPOOL 5dfce88287693fd75902b58c7d7759bd083173e8e69bf4f7c725a196a8d4d1f92e5e3e98dc7c727f01d62f5e049fe2599f6f9e02eb92c13a8bf09f8c4387dbd7 |
372 |
+AUX squid-3.1.18-ecap.patch 1798 SHA256 576866c7fefa8c927ea029ecdcf90851ffa24fa528f2894d73667bd6a508ce63 SHA512 d5957f1898a0cfb072b19f2bf2e3ca0c6fdf9d8421ce907df173ac2948dede62c1cd738614b79c004c36dd1b7c1f7ef4a74d2962f9ab52c497d1d73ca16284cc WHIRLPOOL f58a4fdee3af2921908fd17621977b311fc4d3a25e04857a79971811ccda337a21ff5aa8f6e9d80588120d103356c988deb8c71250be7752d1c6e930da76c609 |
373 |
+AUX squid-3.2.1-gentoo.patch 4418 SHA256 41da185c1af04590525fc9144c14edd160522b878efc2e62e8a992a001ad38e0 SHA512 08ba6aac7de61aaae9a96c42801dbb8e414a2b8ec7bccd80afb1973f7c9949dacee4011e54d050c7ae46a06d2914ca8a42629af5707c6810b1547e3b66ccd5c0 WHIRLPOOL 2f8ba78840e46a3b8e780b653d8084f9c0e8b4d0793f4b06cb7faf9c6ae32b193de923b411c394278747ad9574cbf317f72f97467fbca386db4c4f1bd0f1ba50 |
374 |
+AUX squid-3.3.4-gentoo.patch 4358 SHA256 d52c1c89c81540dfd6c464f7c4245857fdd6cc9e45568a03d4f028fe5feb8bb0 SHA512 b1bfb0a1298e30ce30681b8bcaed292a883f8153e3df61861d1dfd691c5f4d5bc4651531ac69932fcbdc74c5896ed4495d54810203d4c0674ceb49b33454f297 WHIRLPOOL 3b98a43c1cc98d20f28dd5eb096344ff80ec5de1e4e17c4a3b8fb5d89044b6090466bfd3a7e24dfb975d9e02009af900372ee8c791991921def12820a191da97 |
375 |
+AUX squid-3.3.9-xml2.patch 4067 SHA256 6a79556fb255ce71768e97c5493ac5de3f48bdacfabf1cabed57fe44bf27b119 SHA512 05440724d169c15bd3177af0ca4739665e3c0c0915fd51c84c06ff22a02b5a94f062ac0e56f4859cda11a5a94ad2341abe3f69de0781f26da14a8d803964707f WHIRLPOOL dc0fc9c13254788ce323474bc3d5f915a9704f2a15cc9c111fca40794c488e46e14c2645f0c060a39d7c5c1354096f340ff1394f5fe2c58fab4779b60511bf96 |
376 |
+AUX squid.confd 540 SHA256 aeef7060c50074b65c664fc106d7319ce380d25320ee2ee00f7d6021846b88ec SHA512 db9a9f2d476df279e1f2c9ec6bdec42d0c4cd9117c78e2ce5876855bd91add5c01bf06d34456e9146fe70374b118ae20a8e75bf07254aa335dd3190e11c72d23 WHIRLPOOL 55863f771bb4ffc39dd809e5233bbfce994a8e4345f84d264c427b7d5d571c998b0011b71f878df2ff4d7037da250e62296f9c962a8118532e25af9297471995 |
377 |
+AUX squid.confd-r1 493 SHA256 214a184495a3384eb452caef435256043bc51e35140a61b1f5fdff32603c8f7e SHA512 3f92645275e077bcf36e4cd2ccb56812540276d9456bc6f68268010aac57214f0d96b0aff74dc57cbc3446705a9fae8a5bb7a07304afeea45615ebf2cf2b7ab0 WHIRLPOOL 080cfb797ddb49f7c59463eaef0db8c3a6ec5e5da949884e9ccdf54d608b22fb81971aec21fab704c832c86a8c8e3d4795a7b09456c273d7c4bbb65692a68870 |
378 |
+AUX squid.cron 143 SHA256 4c9e2afe5b0bba583ce896233ea1f9262beeb1b6cf51b4adb48d5f5c03933b2f SHA512 cec563c20799ffea8b4fb418d5015d6dc437bd38c35e7150ed01bc298dab5214132e10f4e7b8176da1966e16a7f53f423c36e8419642cb16716f5c346c30d749 WHIRLPOOL 029c94d4e4826ee612c7dc12acc088e3100c9d1737baebb74b25b6e7ac2ba78d0bab9f744c12b5de4113c9727892c9a30dd17067409ac8da62afeee552de391e |
379 |
+AUX squid.initd 3331 SHA256 7a81926479941054358bce650c8c9d3f070a7b40c886e5ed3a337668997bc0ab SHA512 6b5157ed3f4db52db9064a5cfcf5ce3429caf38cefbe61955154f2b6371ade5916b278b61ed01ced51cbd11e283553f7c4bde09e97c261a75a6a1da9bb1cfeb1 WHIRLPOOL bc549677659f88280e9f424deb6cd84de9d564707b949e59d425680f2f2565c7579c6a27fe09794887eef8498d5522efcb2035b81e3bfd48e2f34073438cadd4 |
380 |
+AUX squid.initd-logrotate 3179 SHA256 3edb51b43218b8bdf5eee0f58f03d8a0fe5c470db1e81992c036649b1b1d5f85 SHA512 a63eaa48fb41dfaa280eae7655eec3f12ab6f9f0ebd9575ac85b1d243a5b21da0df796076a6264b2a1818c700aa50d61478dfcde46302bd32ed8d9be1ccf8299 WHIRLPOOL 27968fd84b67442b24e98d774a6f4038267e614203d42705ae85866c777ed1c71361e287bf8e4cdf0ca6672601b5bdf6817cf68470fdd28de7fb7137a842e98e |
381 |
+AUX squid.initd-logrotate-r1 3167 SHA256 cd245c5561a9ded59d71f1e73b3c97a56e4253325dec7054435b4d07d222e9a0 SHA512 818d875560f0b85920353af9ee2337c1109d14c34d623583708a44a53169889b864a281d03aa64ef1809b11852a619eca086b632aec8360750fa8ae8d7f22e99 WHIRLPOOL c15bf7f705f1c0f9d6a714ab97c73a2793d8a0e9a15cb2cc17e717f4729ea3cd892fd8969c5ba3afeff41586f424ded077aaef3958a64a2c14584a905061f4b7 |
382 |
+AUX squid.initd-logrotate-r3 3133 SHA256 02a7f23a30acce6a3090b324e8c70c0f966380364f839bb0e58935a9a6820b35 SHA512 7e96f4d523d10531b546fece23cb62f073de08181ff796e744190964d1d584400855fa4fb2ad43ed966d92de0c6826efdb19f24ab453ffd3b60e600543de34fa WHIRLPOOL a82b693268afec6149c2f61c4c2c28472f6190e0e6070805f23c380c20df1729e57e0a581fdbd657332f9bf772e27a2269f855d2240952b586cfcfe1476d1089 |
383 |
+AUX squid.initd-r1 3319 SHA256 f38e04ba1e295e9bbb537e353823c4bd738d206f4790d024e65aacfefbfe7abb SHA512 fc60c330dfebc2ff9f964b6475d8d00fcf69211384b605b68fef95daf5adc23c0d9fe1b72d858923449f7f024e8520bb7aa17d1ffa55e40f8de2726aa234125a WHIRLPOOL 27a43a425b67fb00a654b9bb71062aac63c7c4885bbd9493341043bb7147f8f7ac89ab79e015008f9da10b0a68f00b038d1ef932f7e0c350dfc9b3fc0fd9033e |
384 |
+AUX squid.initd-r3 3285 SHA256 9b16b1ab2d3d3411dfcd8ac76b13a0889503ca78e3c6123814801af7577537f3 SHA512 3ec1a924922dcaf6634eda6f18e7010c722294e446aeb997fe77f539bdd1a45c7aa0551a356d9e4b90419e815cc0a2d1fa119575cdff4d0477f9bc3f8c6b8aff WHIRLPOOL 3f8c1070ffe5114de7a50f0eda2ff6d5c814eafb63942b8a80e6fab27be6ee2364676227aed18995a4151e38d7a1f51398ca31a771682ba811bc4a73831f38ed |
385 |
+AUX squid.logrotate 103 SHA256 e5ddce1c9af851040affa15e1a59e89d8db0f2eea7c461320a1d3784578f4482 SHA512 d75a667c3ffa32fdd938ef40df8813a467d9f10b2363107bf915cb0c99834fbe8d0eb502a18a816875b67b0db1b27806ed3caf620c38516040cb644b225f5a55 WHIRLPOOL 1cbce1fb05d4661d26f80baeafad0d3a5de1108a21eb6519775b9be2c549d1ca1b85575b72941fd246e4e9fbdf466b302b767aa7ce002f990f6ca4a9844e1e41 |
386 |
+AUX squid.pam 315 SHA256 68ef4282f9fb8506df710d0ae16e84e991e9b138c7f1d0af922682219c7a971f SHA512 a73c98eef2d99bfd871c192195f3c815bff1cd4fa66b87ac185fde891e5cf5fb464fe0ce376c16ac68065c53726784229ad96c24835138244eee2ca2807887c3 WHIRLPOOL e8a6345c634694ce1e21fc4d69ea059d2da9f5d3b7ad34b4a49c570161cddab615fb4ed9e274397ddd4887e4b027aa90339bb8fbb5a71f3bdf506d70cefb99c1 |
387 |
+DIST squid-2.7.STABLE9.tar.gz 1789462 SHA256 d54ca048313c4b64609fcdf9f1934a70fc1702032a5f04073056d7491d3dd781 |
388 |
+DIST squid-3.1.15.tar.gz 3397495 SHA256 c56207691ec6ce19f7d19805b290b8f58c63c81e2070d7cd3a824a0b49509b2b |
389 |
+DIST squid-3.1.16.tar.gz 3399527 SHA256 87fb621b2dc51b753ecfedc3b2d537b6cbfa8f29b242aeb3c055c547ed80466d |
390 |
+DIST squid-3.1.18.tar.gz 3401300 SHA256 6a7122514d58c3077f2b43c928864be10753d8e2c8439133dacc9eba6c45e00d |
391 |
+DIST squid-3.1.19.tar.gz 3403110 SHA256 1a2ebfd832364ada4793532dcc59fb79588ee3819cb80b77d8f53858f0166e34 |
392 |
+DIST squid-3.2.1.tar.gz 4100448 SHA256 793ba5f04f3d3797b624fe061f8be9ededdc9f68cd39c1b58df78861ed4382f7 |
393 |
+DIST squid-3.2.2.tar.gz 4102323 SHA256 36828bb92f5f7cb4343b5d4ceebb654c6a1a1479e75a3514fa1a509495987916 |
394 |
+DIST squid-3.3.9.tar.gz 4226863 SHA256 0bbb10739bcd8d3ede982246990445ff9b84348b9c5a38021c5afbfd28d9b413 SHA512 26c91d20804bf35fe36f4efdb790ef7b589383e75e6e4656d5fee6b05dc1a48b7491b4ce4d3bc8acf7f4caab8c395a43eaa84f88cd41a1d2efad529504f2ddd4 WHIRLPOOL 2f4eeee0c8376fe0bb422deda81a33470b84e871385d34129b9801fb4a5111687694c7947a4b36cdbb0dd831d69f9be966cc36bc7d60a1f52b2025c3ccd8bbeb |
395 |
+EBUILD squid-2.7.9.ebuild 6175 SHA256 587b0f52d2fb973f2686d947893191acf3a1770d467cd8134091fa2c07f01f3d SHA512 7e372f23f286f76dc4d32a87c207fb63cc487b08184cb570eceb68c77c8228320b7d5106789848de0797aa0e36efa9f83429a9d01d7f2e2394a4826c25cc02c7 WHIRLPOOL c96d155cd38705e09f3515d73663da6617efe2857badd8d48b8ad402f1a4f61d4a261704ff5649746a2b1bd0f5aff25dde2de78eaa49576e759e0c3ca4f9c33a |
396 |
+EBUILD squid-3.1.15.ebuild 6621 SHA256 911d065d38544a59af7ce6f4299fc282fdf10aa4bd0869503b45b214fdf87bbc SHA512 22cc52dfb272d500c3eb37ef73ec2d021d5ffda2166252ae2c84f7586b26ec1205cb2ba66748ae037d002764c4d820c3a9d748cf3eeecd677d4fd2e831091640 WHIRLPOOL fadf129cec7b7f49e302fe82ad2ad9461da90670feb4beab8f961f08f9ddb019218326ffd5e56cfe019441c52b52fb4d0df59b74869cce39667b4c0ebcd908de |
397 |
+EBUILD squid-3.1.16.ebuild 6629 SHA256 2bc745da81ed998762d82deaae18addd6fb8011b44425860b89e721b1d2e6b21 SHA512 d6a7c8482f0e09dc154314281c24bbb8365c75c983f8b0d93ef65d8448c0a2fd664b1ac98ad467f05d77effbc3d9db2dc909b122d68ac561f6d45d9464db1b88 WHIRLPOOL daffd167ca401f42c03dee621bc8825a1d53b7f38e75ca2f16e59318b30b9b4dbdffa2b8b49d27a65b9cbb0302adfce592b0e049c0e9027897f17331f84d3900 |
398 |
+EBUILD squid-3.1.18.ebuild 6676 SHA256 3ab64d19f8b4f3189673cacef1a4420c4181748da78baca505956f11a537ce60 SHA512 de4067f10072d3f7f6e31a3a4d41e0050730bfeaf6414fca01af114535b04531aa293c5c7745783397d709a882be9062f0ac9407b0275d7ab2c360b3f5015cbd WHIRLPOOL 0425cd30cd74d43ec1ce2519fd85c5b073da0fb78189e6cec90bf8ad5f6493d795c991863217dbc7399848aad6ee2a1462fd989d1755462a187cfc6fa12c3f75 |
399 |
+EBUILD squid-3.1.19.ebuild 6747 SHA256 23d265d76271b39edc321aab98a6b110943a29487d1e2de3cacee1da912ff241 SHA512 536435a72117c5d5d643827b2cb3ace5b3ae84ede684a34c68b695fbb1938c1308b6e522dc99eb6fd0b0dd6c8c92e488d85838adf03f344fe36b9a90b9ae7998 WHIRLPOOL 50e78fecdbe8b1268ceec47d2d479845a425159abf8bc41413e74f11c3a867bc2af3b02f89980cc35be07b3fc3fad3f83a7a22617159309b1d23cf63de586fad |
400 |
+EBUILD squid-3.2.1.ebuild 7701 SHA256 bdca64f4790e313aaea63cc5217d866171eb92bd53ce7bbecbf104a90e97fa88 SHA512 9fecf47ae6629234bce133b77a9f2ff01f0966fd5d44d3f35fbf5dbf20f3587982a6ec5c8563566eaf3bde4a5138fa6df25a5a3d467c22ad073cefe473047373 WHIRLPOOL 97f1ccae1a9dea2216d8a7e8883ece61e25d2df9b02a950785cf2dbf681ae69e7675559aa3f97064cc87341be9fb135ecda98926ad9688a8ef915859f78ca12a |
401 |
+EBUILD squid-3.2.2.ebuild 7604 SHA256 c1944d31f379e32e95ea954bbe6f3a9cef6096e35bc04b197f2156e881191b6a SHA512 0b4b923b085ec87216394036e1758ea78f148361274e95a2ad142ca377f8c74288d507a66f27af62845c9aed90dec6b70cd7e1810389cc4636f2991827378f86 WHIRLPOOL 371442c26ebdb3ab06f5cfab7c4074c9718a235d033865ed74a4bc6f3159a94f3d85f397b2aac3bf4313890531ef1f32f4ac7b37be230c29e456e466c967e320 |
402 |
+EBUILD squid-3.3.9.ebuild 7991 SHA256 4692a7cd9d1b6ec9aab04be1296588bcc77618d0734a7e02d505428fadf612a1 SHA512 1122efcf1f0c507ec7f50f0d59e2c3bc882c28cce5bc2906fe850798f71b11a5c4e6e173013b62fe4e2d894190a67bce935e2fcd3e55dfbffd1cdacff35b064c WHIRLPOOL 767a7b4deccd4399ed6ca97f766530721d283cdae32779031cecbf8801ae46f4b874a37b0b6623ee5a7f48c8a7d8ffcac9e30f1c1638a54252f26a6704f70526 |
403 |
+MISC ChangeLog 71409 SHA256 69acc9c137d52de40f32ca87ee526a8ee648eedc1810b514d0d67a86932fb95a SHA512 77da22ad2f29f713fc77595e4fc61af82fb66d86c473711fffe03f0282106e8ae34c4a492a92cd5aad4bb6a9bdebf55a2c1595079a927914ae9d51bb81bb93b7 WHIRLPOOL aa9b7b6b57e690c8ea25d1ae366fcb72703032e5ba3bea5f2db8c3b633491856e17578ece1b7ed1a7f94cf6aedb35f0661fb57a0ec0af4eba6f987a3b8fb6c82 |
404 |
+MISC metadata.xml 1015 SHA256 06d8e8a7909b9140eb2e70193db754b84d864da260d6cdf9bde9fa58442ce34a SHA512 59474edefd493e948d94b7a20332d35028244d382fab9c3b9a2297f1fb7a1323af50d474f162554b39fc50230f04dabe8633fbeb6386e0a14d8e93623be5be1d WHIRLPOOL 5a5816a9789983a1cbcfa098e8d8bb37f5c723c7ec1ac3d4c146b85b4e963b0118aea4e3fa6781f197c9c4013ddc9263aa6266c489da323b0bb69f8c6c1f8bdf |
405 |
|
406 |
diff --git a/scripts/bootstrap-rap.sh b/scripts/bootstrap-rap.sh |
407 |
new file mode 100755 |
408 |
index 0000000..30823d8 |
409 |
--- /dev/null |
410 |
+++ b/scripts/bootstrap-rap.sh |
411 |
@@ -0,0 +1,2038 @@ |
412 |
+#!/usr/bin/env bash |
413 |
+# Copyright 2006-2012 Gentoo Foundation; Distributed under the GPL v2 |
414 |
+# $Id: bootstrap-prefix.sh 61665 2013-08-01 07:31:22Z grobian $ |
415 |
+ |
416 |
+trap 'exit 1' TERM KILL INT QUIT ABRT |
417 |
+ |
418 |
+# some basic output functions |
419 |
+eerror() { echo "!!! $*" 1>&2; } |
420 |
+einfo() { echo "* $*"; } |
421 |
+ |
422 |
+# prefer gtar over tar |
423 |
+[[ x$(type -t gtar) == "xfile" ]] \ |
424 |
+ && TAR="gtar" \ |
425 |
+ || TAR="tar" |
426 |
+ |
427 |
+## Functions Start Here |
428 |
+ |
429 |
+econf() { |
430 |
+ ${CONFIG_SHELL} ./configure \ |
431 |
+ --host=${CHOST} \ |
432 |
+ --prefix="${ROOT}"/usr \ |
433 |
+ --mandir="${ROOT}"/usr/share/man \ |
434 |
+ --infodir="${ROOT}"/usr/share/info \ |
435 |
+ --datadir="${ROOT}"/usr/share \ |
436 |
+ --sysconfdir="${ROOT}"/etc \ |
437 |
+ --localstatedir="${ROOT}"/var/lib \ |
438 |
+ --build=${CHOST} \ |
439 |
+ "$@" || return 1 |
440 |
+} |
441 |
+ |
442 |
+efetch() { |
443 |
+ if [[ ! -e ${DISTDIR}/${1##*/} ]] ; then |
444 |
+ if [[ -z ${FETCH_COMMAND} ]] ; then |
445 |
+ # Try to find a download manager, we only deal with wget, |
446 |
+ # curl, FreeBSD's fetch and ftp. |
447 |
+ if [[ x$(type -t wget) == "xfile" ]] ; then |
448 |
+ FETCH_COMMAND="wget" |
449 |
+ elif [[ x$(type -t ftp) == "xfile" ]] ; then |
450 |
+ FETCH_COMMAND="ftp" |
451 |
+ elif [[ x$(type -t curl) == "xfile" ]] ; then |
452 |
+ einfo "WARNING: curl doesn't fail when downloading fails, please check its output carefully!" |
453 |
+ FETCH_COMMAND="curl -L -O" |
454 |
+ elif [[ x$(type -t fetch) == "xfile" ]] ; then |
455 |
+ FETCH_COMMAND="fetch" |
456 |
+ else |
457 |
+ eerror "no suitable download manager found (need wget, curl, fetch or ftp)" |
458 |
+ eerror "could not download ${1##*/}" |
459 |
+ exit 1 |
460 |
+ fi |
461 |
+ fi |
462 |
+ |
463 |
+ mkdir -p "${DISTDIR}" >& /dev/null |
464 |
+ einfo "Fetching ${1##*/}" |
465 |
+ pushd "${DISTDIR}" > /dev/null |
466 |
+ # try for mirrors first, then try given location |
467 |
+ ${FETCH_COMMAND} "${GENTOO_MIRRORS}/distfiles/${1##*/}" |
468 |
+ [[ ! -f ${1##*/} && ${1} != ${GENTOO_MIRRORS}/distfiles/${1##*/} ]] \ |
469 |
+ && ${FETCH_COMMAND} "$1" |
470 |
+ if [[ ! -f ${1##*/} ]] ; then |
471 |
+ eerror "downloading ${1} failed!" |
472 |
+ return 1 |
473 |
+ fi |
474 |
+ popd > /dev/null |
475 |
+ fi |
476 |
+ return 0 |
477 |
+} |
478 |
+ |
479 |
+# template |
480 |
+# bootstrap_() { |
481 |
+# PV= |
482 |
+# A= |
483 |
+# einfo "Bootstrapping ${A%-*}" |
484 |
+ |
485 |
+# efetch ${A} || return 1 |
486 |
+ |
487 |
+# einfo "Unpacking ${A%-*}" |
488 |
+# export S="${PORTAGE_TMPDIR}/${PN}" |
489 |
+# rm -rf ${S} |
490 |
+# mkdir -p ${S} |
491 |
+# cd ${S} |
492 |
+# $TAR -zxf ${DISTDIR}/${A} || return 1 |
493 |
+# S=${S}/${PN}-${PV} |
494 |
+# cd ${S} |
495 |
+ |
496 |
+# einfo "Compiling ${A%-*}" |
497 |
+# econf || return 1 |
498 |
+# $MAKE ${MAKEOPTS} || return 1 |
499 |
+ |
500 |
+# einfo "Installing ${A%-*}" |
501 |
+# $MAKE install || return 1 |
502 |
+ |
503 |
+# einfo "${A%-*} successfully bootstrapped" |
504 |
+# } |
505 |
+ |
506 |
+set_profile() { |
507 |
+ # switch profiles in used for different phases of stage3 |
508 |
+ # Phase 1: bootstrap base system on glibc |
509 |
+ # Phase 2: final |
510 |
+ local profile |
511 |
+ case $1 in |
512 |
+ 1) profile="${PORTDIR_RAP}"/profiles/bootstrap/glibc ;; |
513 |
+ 2) profile="${PORTDIR_RAP}"/profiles/$(sed 's,../,,' < "${PORTDIR_RAP}"/profiles/bootstrap/parent) ;; |
514 |
+ esac |
515 |
+ |
516 |
+ rm -f ${ROOT}/etc/portage/make.profile |
517 |
+ ln -s "${profile}" "${ROOT}"/etc/portage/make.profile |
518 |
+ local file=make.defaults |
519 |
+ [[ -e "${profile}"/${file}.in ]] && \ |
520 |
+ sed "s,@GENTOO_PORTAGE_EPREFIX@,${ROOT},g" "${profile}"/${file}.in > "${profile}"/${file} |
521 |
+ |
522 |
+ einfo "Your profile is set to ${profile} at phase $1." |
523 |
+} |
524 |
+ |
525 |
+bootstrap_setup() { |
526 |
+ local profile="" |
527 |
+ local keywords="" |
528 |
+ local ldflags_make_defaults="" |
529 |
+ local extra_make_globals="" |
530 |
+ einfo "setting up some guessed defaults" |
531 |
+ case ${CHOST} in |
532 |
+ powerpc-apple-darwin7) |
533 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.3" |
534 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
535 |
+ ;; |
536 |
+ powerpc-apple-darwin[89]) |
537 |
+ rev=${CHOST##*darwin} |
538 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.$((rev - 4))/ppc" |
539 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
540 |
+ ;; |
541 |
+ powerpc64-apple-darwin[89]) |
542 |
+ rev=${CHOST##*darwin} |
543 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.$((rev - 4))/ppc64" |
544 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
545 |
+ extra_make_globals=" |
546 |
+CC='gcc -m64' |
547 |
+CXX='g++ -m64' |
548 |
+HOSTCC='gcc -m64' |
549 |
+" |
550 |
+ ;; |
551 |
+ i*86-apple-darwin[89]) |
552 |
+ rev=${CHOST##*darwin} |
553 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.$((rev - 4))/x86" |
554 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
555 |
+ ;; |
556 |
+ i*86-apple-darwin1[012]) |
557 |
+ rev=${CHOST##*darwin} |
558 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.$((rev - 4))/x86" |
559 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
560 |
+ extra_make_globals=" |
561 |
+CC='gcc -m32' |
562 |
+CXX='g++ -m32' |
563 |
+HOSTCC='gcc -m32' |
564 |
+" |
565 |
+ ;; |
566 |
+ x86_64-apple-darwin9|x86_64-apple-darwin1[012]) |
567 |
+ rev=${CHOST##*darwin} |
568 |
+ profile="${PORTDIR}/profiles/prefix/darwin/macos/10.$((rev - 4))/x64" |
569 |
+ ldflags_make_defaults="LDFLAGS=\"-Wl,-search_paths_first -L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
570 |
+ extra_make_globals=" |
571 |
+CC='gcc -m64' |
572 |
+CXX='g++ -m64' |
573 |
+HOSTCC='gcc -m64' |
574 |
+" |
575 |
+ ;; |
576 |
+ i*86-pc-linux-gnu) |
577 |
+ profile="../default/linux/x86/13.0/rap" |
578 |
+ ;; |
579 |
+ x86_64-pc-linux-gnu) |
580 |
+ profile="../default/linux/amd64/13.0/rap" |
581 |
+ ;; |
582 |
+ ia64-pc-linux-gnu) |
583 |
+ profile="${PORTDIR}/profiles/prefix/linux/ia64" |
584 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
585 |
+ ;; |
586 |
+ powerpc-unknown-linux-gnu) |
587 |
+ profile="${PORTDIR}/profiles/prefix/linux/ppc" |
588 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
589 |
+ ;; |
590 |
+ powerpc64-unknown-linux-gnu) |
591 |
+ profile="${PORTDIR}/profiles/prefix/linux/ppc64" |
592 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
593 |
+ ;; |
594 |
+ armv7a-hardfloat-linux-gnueabi) |
595 |
+ profile="../default/linux/arm/13.0/armv7a/rap" |
596 |
+ ;; |
597 |
+ armv5tel-softfloat-linux-gnueabi) |
598 |
+ profile="../default/linux/arm/13.0/armv5te/rap" |
599 |
+ ;; |
600 |
+ sparc-sun-solaris2.9) |
601 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.9/sparc" |
602 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
603 |
+ ;; |
604 |
+ sparcv9-sun-solaris2.9) |
605 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.9/sparc64" |
606 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
607 |
+ extra_make_globals=" |
608 |
+CC='gcc -m64' |
609 |
+CXX='g++ -m64' |
610 |
+HOSTCC='gcc -m64' |
611 |
+" |
612 |
+ # we need this, or binutils can't link, can't add it to -L, |
613 |
+ # since then binutils breaks on finding an old libiberty.a |
614 |
+ # from there instead of its own |
615 |
+ cp /usr/sfw/lib/64/libgcc_s.so.1 "${ROOT}"/tmp/usr/lib/ |
616 |
+ ;; |
617 |
+ i386-pc-solaris2.10) |
618 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.10/x86" |
619 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
620 |
+ ;; |
621 |
+ x86_64-pc-solaris2.10) |
622 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.10/x64" |
623 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
624 |
+ extra_make_globals=" |
625 |
+CC='gcc -m64' |
626 |
+CXX='g++ -m64' |
627 |
+HOSTCC='gcc -m64' |
628 |
+" |
629 |
+ # we need this, or binutils can't link, can't add it to -L, |
630 |
+ # since then binutils breaks on finding an old libiberty.a |
631 |
+ # from there instead of its own |
632 |
+ cp /usr/sfw/lib/64/libgcc_s.so.1 "${ROOT}"/tmp/usr/lib/ |
633 |
+ ;; |
634 |
+ sparc-sun-solaris2.10) |
635 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.10/sparc" |
636 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
637 |
+ ;; |
638 |
+ sparcv9-sun-solaris2.10) |
639 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.10/sparc64" |
640 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
641 |
+ extra_make_globals=" |
642 |
+CC='gcc -m64' |
643 |
+CXX='g++ -m64' |
644 |
+HOSTCC='gcc -m64' |
645 |
+" |
646 |
+ # we need this, or binutils can't link, can't add it to -L, |
647 |
+ # since then binutils breaks on finding an old libiberty.a |
648 |
+ # from there instead of its own |
649 |
+ cp /usr/sfw/lib/64/libgcc_s.so.1 "${ROOT}"/tmp/usr/lib/ |
650 |
+ ;; |
651 |
+ i386-pc-solaris2.11) |
652 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.11/x86" |
653 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
654 |
+ ;; |
655 |
+ x86_64-pc-solaris2.11) |
656 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.11/x64" |
657 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
658 |
+ extra_make_globals=" |
659 |
+CC='gcc -m64' |
660 |
+CXX='g++ -m64' |
661 |
+HOSTCC='gcc -m64' |
662 |
+" |
663 |
+ # we need this, or binutils can't link, can't add it to -L, |
664 |
+ # since then binutils breaks on finding an old libiberty.a |
665 |
+ # from there instead of its own |
666 |
+ cp /usr/sfw/lib/64/libgcc_s.so.1 "${ROOT}"/tmp/usr/lib/ |
667 |
+ ;; |
668 |
+ sparc-sun-solaris2.11) |
669 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.11/sparc" |
670 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
671 |
+ ;; |
672 |
+ sparcv9-sun-solaris2.11) |
673 |
+ profile="${PORTDIR}/profiles/prefix/sunos/solaris/5.11/sparc64" |
674 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
675 |
+ extra_make_globals=" |
676 |
+CC='gcc -m64' |
677 |
+CXX='g++ -m64' |
678 |
+HOSTCC='gcc -m64' |
679 |
+" |
680 |
+ # we need this, or binutils can't link, can't add it to -L, |
681 |
+ # since then binutils breaks on finding an old libiberty.a |
682 |
+ # from there instead of its own |
683 |
+ cp /usr/sfw/lib/64/libgcc_s.so.1 "${ROOT}"/tmp/usr/lib/ |
684 |
+ ;; |
685 |
+ powerpc-ibm-aix*) |
686 |
+ profile="${PORTDIR}/profiles/prefix/aix/${CHOST#powerpc-ibm-aix}/ppc" |
687 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
688 |
+ ;; |
689 |
+ mips-sgi-irix*) |
690 |
+ profile="${PORTDIR}/profiles/prefix/irix/${CHOST#mips-sgi-irix}/mips" |
691 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/lib -R${ROOT}/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib\"" |
692 |
+ ;; |
693 |
+ i586-pc-interix*) |
694 |
+ profile="${PORTDIR}/profiles/prefix/windows/interix/${CHOST#i586-pc-interix}/x86" |
695 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
696 |
+ ;; |
697 |
+ i586-pc-winnt*) |
698 |
+ profile="${PORTDIR}/profiles/prefix/windows/winnt/${CHOST#i586-pc-winnt}/x86" |
699 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
700 |
+ ;; |
701 |
+ i686-pc-cygwin*) |
702 |
+ profile="${PORTDIR}/profiles/prefix/windows/cygwin/${CHOST#i686-pc-cygwin}/x86" |
703 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -L${ROOT}/lib -L${ROOT}/tmp/usr/lib\"" |
704 |
+ ;; |
705 |
+ hppa64*-hp-hpux11*) |
706 |
+ profile="${PORTDIR}/profiles/prefix/hpux/B.11${CHOST#hppa*-hpux11}/hppa64" |
707 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib -L/usr/local/lib -R/usr/local/lib\"" |
708 |
+ ;; |
709 |
+ hppa2.0*-hp-hpux11*) |
710 |
+ profile="${PORTDIR}/profiles/prefix/hpux/B.11${CHOST#hppa*-hpux11}/hppa2.0" |
711 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib -L/usr/local/lib -R/usr/local/lib\"" |
712 |
+ ;; |
713 |
+ ia64-hp-hpux11*) |
714 |
+ profile="${PORTDIR}/profiles/prefix/hpux/B.11${CHOST#ia64-hp-hpux11}/ia64" |
715 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -R${ROOT}/usr/lib -L${ROOT}/tmp/usr/lib -R${ROOT}/tmp/usr/lib -L/usr/local/lib -R/usr/local/lib\"" |
716 |
+ ;; |
717 |
+ i386-pc-freebsd*) |
718 |
+ profile="${PORTDIR}/profiles/prefix/bsd/freebsd/${CHOST#i386-pc-freebsd}/x86" |
719 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
720 |
+ ;; |
721 |
+ x86_64-pc-freebsd*) |
722 |
+ profile="${PORTDIR}/profiles/prefix/bsd/freebsd/${CHOST#x86_64-pc-freebsd}/x64" |
723 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
724 |
+ ;; |
725 |
+ i386-pc-netbsd*) |
726 |
+ profile="${PORTDIR}/profiles/prefix/bsd/netbsd/${CHOST#i386-pc-netbsdelf}/x86" |
727 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
728 |
+ ;; |
729 |
+ powerpc-unknown-openbsd*) |
730 |
+ profile="${PORTDIR}/profiles/prefix/bsd/openbsd/${CHOST#powerpc-unknown-openbsd}/ppc" |
731 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
732 |
+ ;; |
733 |
+ i386-pc-openbsd*) |
734 |
+ profile="${PORTDIR}/profiles/prefix/bsd/openbsd/${CHOST#i386-pc-openbsd}/x86" |
735 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
736 |
+ ;; |
737 |
+ x86_64-pc-openbsd*) |
738 |
+ profile="${PORTDIR}/profiles/prefix/bsd/openbsd/${CHOST#x86_64-pc-openbsd}/x64" |
739 |
+ ldflags_make_defaults="LDFLAGS=\"-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib -L${ROOT}/lib -Wl,-rpath=${ROOT}/lib -L${ROOT}/tmp/usr/lib -Wl,-rpath=${ROOT}/tmp/usr/lib\"" |
740 |
+ ;; |
741 |
+ *) |
742 |
+ einfo "UNKNOWN ARCH: You need to set up a make.profile symlink to a" |
743 |
+ einfo "profile in ${PORTDIR} for your CHOST ${CHOST}" |
744 |
+ ;; |
745 |
+ esac |
746 |
+ |
747 |
+ echo "${profile}" > "${PORTDIR_RAP}"/profiles/bootstrap/parent |
748 |
+ |
749 |
+ # REMOVE the following after migrating to gentoo-x86 base |
750 |
+ echo "PORTDIR_OVERLAY=\"${PORTDIR_RAP}\"" >> "${ROOT}"/etc/portage/make.conf |
751 |
+ |
752 |
+ # don't inject rpath at all. |
753 |
+ echo ">=sys-devel/binutils-config-3-r03.1" >> "${ROOT}"/etc/portage/package.mask |
754 |
+} |
755 |
+ |
756 |
+do_tree() { |
757 |
+ for x in etc{,/portage} {,usr/}{,s}bin usr/local var/tmp var/lib/portage var/log/portage var/db; |
758 |
+ do |
759 |
+ [[ -d ${ROOT}/${x} ]] || mkdir -p "${ROOT}/${x}" |
760 |
+ done |
761 |
+ if [[ ! -e ${PORTDIR}/.unpacked ]]; then |
762 |
+ efetch "$1/$2" || return 1 |
763 |
+ [[ -e ${PORTDIR} ]] || mkdir -p ${PORTDIR} |
764 |
+ einfo "Unpacking, this may take a while" |
765 |
+ bzip2 -dc ${DISTDIR}/$2 | $TAR -xf - -C ${PORTDIR%portage} || return 1 |
766 |
+ touch ${PORTDIR}/.unpacked |
767 |
+ fi |
768 |
+} |
769 |
+ |
770 |
+bootstrap_tree() { |
771 |
+ local PV="20130724" |
772 |
+ if [[ -n ${LATEST_TREE_YES} ]]; then |
773 |
+ do_tree "${SNAPSHOT_URL}" portage-latest.tar.bz2 |
774 |
+ else |
775 |
+ do_tree http://prefix.gentooexperimental.org/distfiles prefix-overlay-${PV}.tar.bz2 |
776 |
+ fi |
777 |
+ |
778 |
+ # this is ugly, we have to put the temperory rap overlay somewhere |
779 |
+ PORTDIR="${PORTDIR_RAP}" \ |
780 |
+ do_tree http://dev.gentoo.org/~heroxbd rap-overlay.tar.bz2 |
781 |
+} |
782 |
+ |
783 |
+bootstrap_latest_tree() { |
784 |
+ # kept here for compatibility reasons |
785 |
+ einfo "This function 'latest_tree' is deprecated and will be" |
786 |
+ einfo "removed in the future, please set LATEST_TREE_YES=1 in the env" |
787 |
+ LATEST_TREE_YES=1 bootstrap_tree |
788 |
+} |
789 |
+ |
790 |
+bootstrap_startscript() { |
791 |
+ local theshell=${SHELL##*/} |
792 |
+ if [[ ${theshell} == "sh" ]] ; then |
793 |
+ einfo "sh is a generic shell, using bash instead" |
794 |
+ theshell="bash" |
795 |
+ fi |
796 |
+ if [[ ${theshell} == "csh" ]] ; then |
797 |
+ einfo "csh is a prehistoric shell not available in Gentoo, switching to tcsh instead" |
798 |
+ theshell="tcsh" |
799 |
+ fi |
800 |
+ einfo "Trying to emerge the shell you use, if necessary by running:" |
801 |
+ einfo "emerge -u ${theshell}" |
802 |
+ if ! emerge -u ${theshell} ; then |
803 |
+ eerror "Your shell is not available in portage, hence we cannot" > /dev/stderr |
804 |
+ eerror "automate starting your prefix, set SHELL and rerun this script" > /dev/stderr |
805 |
+ return -1 |
806 |
+ fi |
807 |
+ einfo "Creating the Prefix start script (startprefix)" |
808 |
+ # currently I think right into the prefix is the best location, as |
809 |
+ # putting it in /bin or /usr/bin just hides it some more for the |
810 |
+ # user |
811 |
+ sed \ |
812 |
+ -e "s|@GENTOO_PORTAGE_EPREFIX@|${ROOT}|g" \ |
813 |
+ "${ROOT}"/usr/portage/scripts/startprefix.in \ |
814 |
+ > "${ROOT}"/startprefix |
815 |
+ chmod 755 "${ROOT}"/startprefix |
816 |
+ einfo "To start Gentoo Prefix, run the script ${ROOT}/startprefix" |
817 |
+ einfo "You can copy this file to a more convenient place if you like." |
818 |
+ |
819 |
+ # see if PATH is kept/respected |
820 |
+ local minPATH="preamble:${BASH%/*}:postlude" |
821 |
+ local theirPATH="$(echo 'echo "${PATH}"' | env LS_COLORS= PATH="${minPATH}" $SHELL -l 2>/dev/null | grep "preamble:.*:postlude")" |
822 |
+ if [[ ${theirPATH} != *"preamble:"*":postlude"* ]] ; then |
823 |
+ einfo "WARNING: your shell initialisation (.cshrc, .bashrc, .profile)" |
824 |
+ einfo " seems to overwrite your PATH, this effectively kills" |
825 |
+ einfo " your Prefix. Change this to only append to your PATH" |
826 |
+ elif [[ ${theirPATH} != "preamble:"* ]] ; then |
827 |
+ einfo "WARNING: your shell initialisation (.cshrc, .bashrc, .profile)" |
828 |
+ einfo " seems to prepend to your PATH, this might kill your" |
829 |
+ einfo " Prefix:" |
830 |
+ einfo " ${theirPATH%%preamble:*}" |
831 |
+ einfo " You better fix this, YOU HAVE BEEN WARNED!" |
832 |
+ fi |
833 |
+} |
834 |
+ |
835 |
+bootstrap_portage() { |
836 |
+ # Set TESTING_PV in env if you want to test a new portage before bumping the |
837 |
+ # STABLE_PV that is known to work. Intended for power users only. |
838 |
+ ## It is critical that STABLE_PV is the lastest (non-masked) version that is |
839 |
+ ## included in the snapshot for bootstrap_tree. |
840 |
+ STABLE_PV="2.2.01.22124" |
841 |
+ PV="${TESTING_PV:-${STABLE_PV}}" |
842 |
+ A=prefix-portage-${PV}.tar.bz2 |
843 |
+ einfo "Bootstrapping ${A%-*}" |
844 |
+ |
845 |
+ efetch ${DISTFILES_URL}/${A} || return 1 |
846 |
+ |
847 |
+ einfo "Unpacking ${A%-*}" |
848 |
+ export S="${PORTAGE_TMPDIR}"/portage-${PV} |
849 |
+ ptmp=${S} |
850 |
+ rm -rf "${S}" >& /dev/null |
851 |
+ mkdir -p "${S}" >& /dev/null |
852 |
+ cd "${S}" |
853 |
+ bzip2 -dc "${DISTDIR}/${A}" | $TAR -xf - || return 1 |
854 |
+ S="${S}/prefix-portage-${PV}" |
855 |
+ cd "${S}" |
856 |
+ |
857 |
+ # disable ipc |
858 |
+ sed -e "s:_enable_ipc_daemon = True:_enable_ipc_daemon = False:" \ |
859 |
+ -i pym/_emerge/AbstractEbuildProcess.py || \ |
860 |
+ return 1 |
861 |
+ |
862 |
+ # Portage checks for valid shebangs. These may (xz-utils) originate |
863 |
+ # in CONFIG_SHELL (AIX), which originates in PORTAGE_BASH then. |
864 |
+ # So we need to ensure portage's bash is valid as shebang too. |
865 |
+ mkdir -p ${ROOT}/bin || return 1 |
866 |
+ [[ -x ${ROOT}/bin/bash ]] || [[ ! -x ${ROOT}/tmp/bin/bash ]] || ln -s ${ROOT}/tmp/bin/bash ${ROOT}/bin/bash || return 1 |
867 |
+ [[ -x ${ROOT}/bin/bash ]] || ln -s ${BASH} ${ROOT}/bin/bash || return 1 |
868 |
+ export PORTAGE_BASH=${ROOT}/bin/bash |
869 |
+ |
870 |
+ einfo "Compiling ${A%-*}" |
871 |
+ econf \ |
872 |
+ --with-offset-prefix="${ROOT}" \ |
873 |
+ --with-portage-user="`id -un`" \ |
874 |
+ --with-portage-group="`id -gn`" \ |
875 |
+ --mandir="${ROOT}/automatically-removed" \ |
876 |
+ --with-extra-path="${ROOT}/tmp/bin:${ROOT}/tmp/usr/bin:/bin:/usr/bin:${PATH}" \ |
877 |
+ || return 1 |
878 |
+ $MAKE ${MAKEOPTS} || return 1 |
879 |
+ |
880 |
+ einfo "Installing ${A%-*}" |
881 |
+ $MAKE install || return 1 |
882 |
+ |
883 |
+ bootstrap_setup |
884 |
+ |
885 |
+ cd "${ROOT}" |
886 |
+ rm -Rf ${ptmp} >& /dev/null |
887 |
+ |
888 |
+ # Some people will skip the tree() step and hence var/log is not created |
889 |
+ # As such, portage complains.. |
890 |
+ [[ ! -d $ROOT/var/log ]] && mkdir ${ROOT}/var/log |
891 |
+ |
892 |
+ # during bootstrap_portage(), man pages are not compressed. This is |
893 |
+ # problematic once you have a working prefix. So, remove them now. |
894 |
+ rm -rf "${ROOT}/automatically-removed" |
895 |
+ |
896 |
+ # in Prefix the sed wrapper is deadly, so kill it |
897 |
+ rm -f "${ROOT}"/usr/lib/portage/bin/ebuild-helpers/sed |
898 |
+ |
899 |
+ einfo "${A%-*} successfully bootstrapped" |
900 |
+} |
901 |
+ |
902 |
+prep_gcc-apple() { |
903 |
+ |
904 |
+ GCC_PV=5341 |
905 |
+ GCC_A="gcc-${GCC_PV}.tar.gz" |
906 |
+ TAROPTS="-zxf" |
907 |
+ |
908 |
+ efetch ${GCC_APPLE_URL}/${GCC_A} || return 1 |
909 |
+ |
910 |
+} |
911 |
+ |
912 |
+prep_gcc-fsf() { |
913 |
+ |
914 |
+ GCC_PV=4.1.2 |
915 |
+ GCC_A=gcc-${GCC_PV}.tar.bz2 |
916 |
+ TAROPTS="-jxf" |
917 |
+ |
918 |
+ efetch ${GENTOO_MIRRORS}/distfiles/${GCC_A} || return 1 |
919 |
+ |
920 |
+} |
921 |
+ |
922 |
+bootstrap_gnu() { |
923 |
+ local PN PV A S |
924 |
+ PN=$1 |
925 |
+ PV=$2 |
926 |
+ |
927 |
+ einfo "Bootstrapping ${PN}" |
928 |
+ |
929 |
+ for t in tar.gz tar.xz tar.bz2 tar ; do |
930 |
+ A=${PN}-${PV}.${t} |
931 |
+ |
932 |
+ # save the user some useless downloading |
933 |
+ if [[ ${t} == tar.gz ]] ; then |
934 |
+ type -P gzip > /dev/null || continue |
935 |
+ fi |
936 |
+ if [[ ${t} == tar.xz ]] ; then |
937 |
+ type -P xz > /dev/null || continue |
938 |
+ fi |
939 |
+ if [[ ${t} == tar.bz2 ]] ; then |
940 |
+ type -P bzip2 > /dev/null || continue |
941 |
+ fi |
942 |
+ |
943 |
+ URL=${GNU_URL}/${PN}/${A} |
944 |
+ [[ ${PN} == gcc ]] && URL=${GNU_URL}/${PN}/${PN}-${PV}/${A} |
945 |
+ efetch ${URL} || continue |
946 |
+ |
947 |
+ einfo "Unpacking ${A%-*}" |
948 |
+ S="${PORTAGE_TMPDIR}/${PN}-${PV}" |
949 |
+ rm -rf "${S}" |
950 |
+ mkdir -p "${S}" |
951 |
+ cd "${S}" |
952 |
+ if [[ ${t} == "tar.gz" ]] ; then |
953 |
+ gzip -dc "${DISTDIR}"/${URL##*/} | $TAR -xf - || continue |
954 |
+ elif [[ ${t} == "tar.xz" ]] ; then |
955 |
+ xz -dc "${DISTDIR}"/${URL##*/} | $TAR -xf - || continue |
956 |
+ elif [[ ${t} == "tar.bz2" ]] ; then |
957 |
+ bzip2 -dc "${DISTDIR}"/${URL##*/} | $TAR -xf - || continue |
958 |
+ elif [[ ${t} == "tar" ]] ; then |
959 |
+ $TAR -xf "${DISTDIR}"/${A} || continue |
960 |
+ else |
961 |
+ einfo "unhandled extension: $t" |
962 |
+ return 1 |
963 |
+ fi |
964 |
+ break |
965 |
+ done |
966 |
+ S="${S}"/${PN}-${PV} |
967 |
+ [[ -d ${S} ]] || return 1 |
968 |
+ cd "${S}" || return 1 |
969 |
+ |
970 |
+ local myconf="" |
971 |
+ if [[ ${PN} == "grep" ]] ; then |
972 |
+ # Solaris and OSX don't like it when --disable-nls is set, |
973 |
+ # so just don't set it at all. |
974 |
+ # Solaris 11 has a messed up prce installation. We don't need |
975 |
+ # it anyway, so just disable it |
976 |
+ myconf="${myconf} --disable-perl-regexp" |
977 |
+ # Except interix really needs it for grep. |
978 |
+ [[ $CHOST == *interix* ]] && myconf="${myconf} --disable-nls" |
979 |
+ fi |
980 |
+ |
981 |
+ # AIX doesn't like --enable-nls in general during bootstrap |
982 |
+ [[ $CHOST == *-aix* ]] && myconf="${myconf} --disable-nls" |
983 |
+ # AIX 7.1 has fstatat(), but broken without APAR IV23716: |
984 |
+ [[ $CHOST == *-aix7* ]] && export ac_cv_func_fstatat=no |
985 |
+ |
986 |
+ # NetBSD has strange openssl headers, which make wget fail. |
987 |
+ [[ $CHOST == *-netbsd* ]] && myconf="${myconf} --disable-ntlm" |
988 |
+ |
989 |
+ # Darwin9 in particular doesn't compile when using system readline, |
990 |
+ # but we don't need any groovy input at all, so just disable it |
991 |
+ [[ ${PN} == "bash" ]] && myconf="${myconf} --disable-readline" |
992 |
+ |
993 |
+ # Don't do ACL stuff on Darwin, especially Darwin9 will make |
994 |
+ # coreutils completely useless (install failing on everything) |
995 |
+ # Don't try using gmp either, it may be that just the library is |
996 |
+ # there, and if so, the buildsystem assumes the header exists too |
997 |
+ [[ ${PN} == "coreutils" ]] && \ |
998 |
+ myconf="${myconf} --disable-acl --without-gmp" |
999 |
+ |
1000 |
+ [[ ${PN} == "gcc" ]] && myconf="${myconf} --disable-bootstrap --enable-languages=c\ |
1001 |
+ --disable-multilib" |
1002 |
+ |
1003 |
+ if [[ ${PN} == "coreutils" && ${CHOST} == *-interix* ]] ; then |
1004 |
+ # Interix doesn't have filesystem listing stuff, but that means all |
1005 |
+ # other utilities but df aren't useless at all, so don't die |
1006 |
+ sed -i -e '/^if test -z "$ac_list_mounted_fs"; then$/c\if test 1 = 0; then' configure |
1007 |
+ |
1008 |
+ # try to make id() not poll the entire domain before returning |
1009 |
+ export CFLAGS="${CFLAGS} -Dgetgrgid=getgrgid_nomembers -Dgetgrent=getgrent_nomembers -Dgetgrnam=getgrnam_nomembers" |
1010 |
+ |
1011 |
+ # Fix a compilation error due to a missing definition |
1012 |
+ sed -i -e '/^#include "fcntl-safer.h"$/a\#define ESTALE -1' lib/savewd.c |
1013 |
+ fi |
1014 |
+ |
1015 |
+ if [[ ${PN} == "tar" && ${CHOST} == *-hpux* ]] ; then |
1016 |
+ # Fix a compilation error due to a missing definition |
1017 |
+ export CPPFLAGS="${CPPFLAGS} -DCHAR_BIT=8" |
1018 |
+ fi |
1019 |
+ |
1020 |
+ # Gentoo Bug 400831, fails on Ubuntu with libssl-dev installed |
1021 |
+ [[ ${PN} == "wget" ]] && myconf="${myconf} --without-ssl" |
1022 |
+ |
1023 |
+ einfo "Compiling ${PN}" |
1024 |
+ econf ${myconf} || return 1 |
1025 |
+ if [[ ${PN} == "make" && $(type -t $MAKE) != "file" ]]; then |
1026 |
+ ./build.sh || return 1 |
1027 |
+ else |
1028 |
+ $MAKE ${MAKEOPTS} || return 1 |
1029 |
+ fi |
1030 |
+ |
1031 |
+ einfo "Installing ${PN}" |
1032 |
+ if [[ ${PN} == "make" && $(type -t $MAKE) != "file" ]]; then |
1033 |
+ ./make install MAKE="${S}/make" || return 1 |
1034 |
+ else |
1035 |
+ $MAKE install || return 1 |
1036 |
+ fi |
1037 |
+ |
1038 |
+ cd "${ROOT}" |
1039 |
+ rm -Rf "${S}" |
1040 |
+ einfo "${PN}-${PV} successfully bootstrapped" |
1041 |
+} |
1042 |
+ |
1043 |
+bootstrap_python() { |
1044 |
+ PV=2.7.3 |
1045 |
+ A=python-${PV}-patched.tar.bz2 |
1046 |
+ |
1047 |
+ [[ ${CHOST} == *-aix* ]] && A=Python-${PV}.tar.bz2 # patched one breaks |
1048 |
+ |
1049 |
+ einfo "Bootstrapping ${A%-*}" |
1050 |
+ |
1051 |
+ # don't really want to put this on the mirror, since they are |
1052 |
+ # non-vanilla sources, bit specific for us |
1053 |
+ efetch ${DISTFILES_URL}/${A} || return 1 |
1054 |
+ |
1055 |
+ einfo "Unpacking ${A%%-*}" |
1056 |
+ export S="${PORTAGE_TMPDIR}/python-${PV}" |
1057 |
+ rm -rf "${S}" |
1058 |
+ mkdir -p "${S}" |
1059 |
+ cd "${S}" |
1060 |
+ bzip2 -dc "${DISTDIR}"/${A} | $TAR -xf - || return 1 |
1061 |
+ S="${S}"/Python-${PV} |
1062 |
+ cd "${S}" |
1063 |
+ |
1064 |
+ local myconf="" |
1065 |
+ |
1066 |
+ case $CHOST in |
1067 |
+ *-*-aix*) |
1068 |
+ # Python stubbornly insists on using cc_r to compile. We |
1069 |
+ # know better, so force it to listen to us |
1070 |
+ myconf="${myconf} --with-gcc=yes" |
1071 |
+ ;; |
1072 |
+ *-openbsd*) |
1073 |
+ CFLAGS="${CFLAGS} -D_BSD_SOURCE=1" |
1074 |
+ ;; |
1075 |
+ *-linux*) |
1076 |
+ # Bug 382263: make sure Python will know about the libdir in use for |
1077 |
+ # the current arch |
1078 |
+ libdir="-L/usr/lib/$(gcc -print-multi-os-directory)" |
1079 |
+ ;; |
1080 |
+ x86_64-*-solaris*|sparcv9-*-solaris*) |
1081 |
+ # Like above, make Python know where GCC's 64-bits |
1082 |
+ # libgcc_s.so is on Solaris |
1083 |
+ libdir="-L/usr/sfw/lib/64" |
1084 |
+ ;; |
1085 |
+ esac |
1086 |
+ |
1087 |
+ # python refuses to find the zlib headers that are built in the |
1088 |
+ # offset |
1089 |
+ export CPPFLAGS="-I$EPREFIX/tmp/usr/include" |
1090 |
+ export LDFLAGS="-L$EPREFIX/tmp/usr/lib" |
1091 |
+ # set correct flags for runtime for ELF platforms |
1092 |
+ case $CHOST in |
1093 |
+ *-*bsd*|*-linux*) |
1094 |
+ # GNU ld |
1095 |
+ export LDFLAGS="${LDFLAGS} -Wl,-rpath,$EPREFIX/tmp/usr/lib ${libdir}" |
1096 |
+ ;; |
1097 |
+ *-solaris*) |
1098 |
+ # Sun ld |
1099 |
+ export LDFLAGS="${LDFLAGS} -R$EPREFIX/tmp/usr/lib ${libdir}" |
1100 |
+ ;; |
1101 |
+ esac |
1102 |
+ |
1103 |
+ # if the user has a $HOME/.pydistutils.cfg file, the python |
1104 |
+ # installation is going to be screwed up, as reported by users, so |
1105 |
+ # just make sure Python won't find it |
1106 |
+ export HOME="${S}" |
1107 |
+ |
1108 |
+ export PYTHON_DISABLE_MODULES="bsddb bsddb185 bz2 crypt _ctypes_test _curses _curses_panel dbm _elementtree gdbm _locale nis pyexpat readline _sqlite3 _tkinter" |
1109 |
+ export PYTHON_DISABLE_SSL=1 |
1110 |
+ export OPT="${CFLAGS}" |
1111 |
+ |
1112 |
+ einfo "Compiling ${A%-*}" |
1113 |
+ econf \ |
1114 |
+ --disable-toolbox-glue \ |
1115 |
+ --disable-ipv6 \ |
1116 |
+ --disable-shared \ |
1117 |
+ ${myconf} || return 1 |
1118 |
+ $MAKE ${MAKEOPTS} || return 1 |
1119 |
+ |
1120 |
+ einfo "Installing ${A%-*}" |
1121 |
+ $MAKE -k install || echo "??? Python failed to install *sigh* continuing anyway" |
1122 |
+ cd "${ROOT}"/usr/bin |
1123 |
+ ln -sf python${PV%.*} python |
1124 |
+ cd "${ROOT}"/usr/lib |
1125 |
+ # messes up python emerges, and shouldn't be necessary for anything |
1126 |
+ # http://forums.gentoo.org/viewtopic-p-6890526.html |
1127 |
+ rm -f libpython${PV%.*}.a |
1128 |
+ |
1129 |
+ einfo "${A%-*} bootstrapped" |
1130 |
+} |
1131 |
+ |
1132 |
+bootstrap_zlib_core() { |
1133 |
+ # use 1.2.5 by default, current bootstrap guides |
1134 |
+ PV="${1:-1.2.5}" |
1135 |
+ A=zlib-${PV}.tar.gz |
1136 |
+ |
1137 |
+ einfo "Bootstrapping ${A%-*}" |
1138 |
+ |
1139 |
+ if ! efetch ${GENTOO_MIRRORS}/distfiles/${A} ; then |
1140 |
+ A=zlib-${PV}.tar.bz2 |
1141 |
+ efetch ${GENTOO_MIRRORS}/distfiles/${A} || return 1 |
1142 |
+ fi |
1143 |
+ |
1144 |
+ einfo "Unpacking ${A%%-*}" |
1145 |
+ export S="${PORTAGE_TMPDIR}/zlib-${PV}" |
1146 |
+ rm -rf "${S}" |
1147 |
+ mkdir -p "${S}" |
1148 |
+ cd "${S}" |
1149 |
+ if [[ ${A} == *.tar.gz ]] ; then |
1150 |
+ gzip -dc "${DISTDIR}"/${A} | $TAR -xf - || return 1 |
1151 |
+ else |
1152 |
+ bzip2 -dc "${DISTDIR}"/${A} | $TAR -xf - || return 1 |
1153 |
+ fi |
1154 |
+ S="${S}"/zlib-${PV} |
1155 |
+ cd "${S}" |
1156 |
+ |
1157 |
+ if [[ ${CHOST} == x86_64-*-* || ${CHOST} == sparcv9-*-* ]] ; then |
1158 |
+ # 64-bits targets need zlib as library (not just to unpack), |
1159 |
+ # hence we need to make sure that we really bootstrap this |
1160 |
+ # 64-bits (in contrast to the tools which we don't care if they |
1161 |
+ # are 32-bits) |
1162 |
+ export CC="gcc -m64" |
1163 |
+ elif [[ ${CHOST} == i?86-*-* ]] ; then |
1164 |
+ # This is important for bootstraps which are 64-native, but we |
1165 |
+ # want 32-bits, such as most Linuxes, and more recent OSX. |
1166 |
+ # OS X Lion and up default to a 64-bits userland, so force the |
1167 |
+ # compiler to 32-bits code generation if requested here |
1168 |
+ export CC="gcc -m32" |
1169 |
+ fi |
1170 |
+ # 1.2.5 suffers from a concurrency problem |
1171 |
+ [[ ${PV} == 1.2.5 ]] && MAKEOPTS= |
1172 |
+ |
1173 |
+ einfo "Compiling ${A%-*}" |
1174 |
+ CHOST= ${CONFIG_SHELL} ./configure --prefix="${ROOT}"/usr || return 1 |
1175 |
+ $MAKE ${MAKEOPTS} || return 1 |
1176 |
+ |
1177 |
+ einfo "Installing ${A%-*}" |
1178 |
+ $MAKE install || return 1 |
1179 |
+ |
1180 |
+ # this lib causes issues when emerging python again on Solaris |
1181 |
+ # because the tmp lib path is in the library search path there |
1182 |
+ rm -Rf "${ROOT}"/usr/lib/libz*.a |
1183 |
+ |
1184 |
+ einfo "${A%-*} bootstrapped" |
1185 |
+} |
1186 |
+ |
1187 |
+bootstrap_zlib() { |
1188 |
+ bootstrap_zlib_core 1.2.8 || bootstrap_zlib_core 1.2.7 || \ |
1189 |
+ bootstrap_zlib_core 1.2.6 || bootstrap_zlib_core 1.2.5 |
1190 |
+} |
1191 |
+ |
1192 |
+bootstrap_gmp() { |
1193 |
+ bootstrap_gnu gmp 5.0.5 |
1194 |
+} |
1195 |
+ |
1196 |
+bootstrap_mpfr() { |
1197 |
+ export CPPFLAGS="-I${ROOT}/usr/include" |
1198 |
+ export LDFLAGS="-L${ROOT}/usr/lib" |
1199 |
+ bootstrap_gnu mpfr 3.1.2 |
1200 |
+} |
1201 |
+ |
1202 |
+bootstrap_mpc() { |
1203 |
+ export CPPFLAGS="-I${ROOT}/usr/include" |
1204 |
+ export LDFLAGS="-L${ROOT}/usr/lib" |
1205 |
+ bootstrap_gnu mpc 1.0.1 |
1206 |
+} |
1207 |
+ |
1208 |
+bootstrap_gcc() { |
1209 |
+ export CPPFLAGS="-I${ROOT}/usr/include" |
1210 |
+ export LDFLAGS="-L${ROOT}/usr/lib -Wl,-rpath=${ROOT}/usr/lib" |
1211 |
+ bootstrap_gnu gcc 4.7.3 |
1212 |
+} |
1213 |
+ |
1214 |
+bootstrap_sed() { |
1215 |
+ bootstrap_gnu sed 4.2.1 |
1216 |
+} |
1217 |
+ |
1218 |
+bootstrap_findutils() { |
1219 |
+ bootstrap_gnu findutils 4.5.10 || bootstrap_gnu findutils 4.2.33 |
1220 |
+} |
1221 |
+ |
1222 |
+bootstrap_wget() { |
1223 |
+ bootstrap_gnu wget 1.13.4 |
1224 |
+} |
1225 |
+ |
1226 |
+bootstrap_grep() { |
1227 |
+ # don't use 2.13, it contains a bug that bites, bug #425668 |
1228 |
+ # 2.9 is the last version provided as tar.gz (platforms without xz) |
1229 |
+ # 2.7 is necessary for Solaris/OpenIndiana (2.8, 2.9 fail to configure) |
1230 |
+ bootstrap_gnu grep 2.14 || bootstrap_gnu grep 2.12 || \ |
1231 |
+ bootstrap_gnu grep 2.9 || bootstrap_gnu grep 2.7 |
1232 |
+} |
1233 |
+ |
1234 |
+bootstrap_coreutils() { |
1235 |
+ # 8.12 for FreeBSD 9.1, bug #415439 |
1236 |
+ # 8.16 is the last version released as tar.gz |
1237 |
+ bootstrap_gnu coreutils 8.17 || bootstrap_gnu coreutils 8.16 || \ |
1238 |
+ bootstrap_gnu coreutils 8.12 |
1239 |
+} |
1240 |
+ |
1241 |
+bootstrap_tar() { |
1242 |
+ bootstrap_gnu tar 1.26 |
1243 |
+} |
1244 |
+ |
1245 |
+bootstrap_make() { |
1246 |
+ bootstrap_gnu make 3.82 |
1247 |
+} |
1248 |
+ |
1249 |
+bootstrap_patch() { |
1250 |
+ # 2.5.9 needed for OSX 10.6.x |
1251 |
+ bootstrap_gnu patch 2.7.1 || bootstrap_gnu patch 2.6.1 || \ |
1252 |
+ bootstrap_gnu patch 2.5.9 || bootstrap_gnu patch 2.5.4 |
1253 |
+} |
1254 |
+ |
1255 |
+bootstrap_gawk() { |
1256 |
+ bootstrap_gnu gawk 4.0.1 || bootstrap_gnu gawk 4.0.0 || \ |
1257 |
+ bootstrap_gnu gawk 3.1.8 |
1258 |
+} |
1259 |
+ |
1260 |
+bootstrap_binutils() { |
1261 |
+ bootstrap_gnu binutils 2.23 |
1262 |
+} |
1263 |
+ |
1264 |
+bootstrap_texinfo() { |
1265 |
+ bootstrap_gnu texinfo 4.8 |
1266 |
+} |
1267 |
+ |
1268 |
+bootstrap_bash() { |
1269 |
+ bootstrap_gnu bash 4.2 |
1270 |
+} |
1271 |
+ |
1272 |
+bootstrap_bison() { |
1273 |
+ bootstrap_gnu bison 2.6.2 || bootstrap_gnu bison 2.6.1 || \ |
1274 |
+ bootstrap_gnu bison 2.6 || bootstrap_gnu bison 2.5.1 || \ |
1275 |
+ bootstrap_gnu bison 2.4 |
1276 |
+} |
1277 |
+ |
1278 |
+bootstrap_m4() { |
1279 |
+ bootstrap_gnu m4 1.4.16 || bootstrap_gnu m4 1.4.15 |
1280 |
+} |
1281 |
+ |
1282 |
+bootstrap_gzip() { |
1283 |
+ bootstrap_gnu gzip 1.4 |
1284 |
+} |
1285 |
+ |
1286 |
+bootstrap_bzip2() { |
1287 |
+ local PN PV A S |
1288 |
+ PN=bzip2 |
1289 |
+ PV=1.0.6 |
1290 |
+ A=${PN}-${PV}.tar.gz |
1291 |
+ einfo "Bootstrapping ${A%-*}" |
1292 |
+ |
1293 |
+ efetch ${GENTOO_MIRRORS}/distfiles/${A} || return 1 |
1294 |
+ |
1295 |
+ einfo "Unpacking ${A%-*}" |
1296 |
+ S="${PORTAGE_TMPDIR}/${PN}-${PV}" |
1297 |
+ rm -rf "${S}" |
1298 |
+ mkdir -p "${S}" |
1299 |
+ cd "${S}" |
1300 |
+ gzip -dc "${DISTDIR}"/${A} | $TAR -xf - || return 1 |
1301 |
+ S="${S}"/${PN}-${PV} |
1302 |
+ cd "${S}" |
1303 |
+ |
1304 |
+ einfo "Compiling ${A%-*}" |
1305 |
+ $MAKE || return 1 |
1306 |
+ |
1307 |
+ einfo "Installing ${A%-*}" |
1308 |
+ $MAKE PREFIX="${ROOT}"/usr install || return 1 |
1309 |
+ |
1310 |
+ cd "${ROOT}" |
1311 |
+ rm -Rf "${S}" |
1312 |
+ einfo "${A%-*} successfully bootstrapped" |
1313 |
+} |
1314 |
+ |
1315 |
+bootstrap_stage1() { |
1316 |
+ if [[ ${ROOT} != */tmp ]] ; then |
1317 |
+ eerror "stage1 can only be used for paths that end in '/tmp'" |
1318 |
+ return 1 |
1319 |
+ fi |
1320 |
+ |
1321 |
+ # NOTE: stage1 compiles all tools (no libraries) in the native |
1322 |
+ # bits-size of the compiler, which needs not to match what we're |
1323 |
+ # bootstrapping for. This is no problem since they're just tools, |
1324 |
+ # for which it really doesn't matter how they run, as long AS they |
1325 |
+ # run. For libraries, this is different, since they are relied on |
1326 |
+ # by packages we emerge lateron. |
1327 |
+ # Changing this to compile the tools for the bits the bootstrap is |
1328 |
+ # for, is a BAD idea, since we're extremely fragile here, so |
1329 |
+ # whatever the native toolchain is here, is what in general works |
1330 |
+ # best. |
1331 |
+ |
1332 |
+ # run all bootstrap_* commands in a subshell since the targets |
1333 |
+ # frequently pollute the environment using exports which affect |
1334 |
+ # packages following (e.g. zlib builds 64-bits) |
1335 |
+ |
1336 |
+ # don't rely on $MAKE, if make == gmake packages that call 'make' fail |
1337 |
+ [[ $(make --version 2>&1) == *GNU* ]] || (bootstrap_make) || return 1 |
1338 |
+ type -P wget > /dev/null || (bootstrap_wget) || return 1 |
1339 |
+ [[ $(sed --version 2>&1) == *GNU* ]] || (bootstrap_sed) || return 1 |
1340 |
+ [[ $(m4 --version 2>&1) == *GNU*1.4.1?* ]] || (bootstrap_m4) || return 1 |
1341 |
+ [[ $(bison --version 2>&1) == *"(GNU Bison) 2."[345678]* ]] \ |
1342 |
+ || (bootstrap_bison) || return 1 |
1343 |
+ [[ $(uniq --version 2>&1) == *"(GNU coreutils) "[6789]* ]] \ |
1344 |
+ || (bootstrap_coreutils) || return 1 |
1345 |
+ [[ $(find --version 2>&1) == *GNU* ]] || (bootstrap_findutils) || return 1 |
1346 |
+ [[ $(tar --version 2>&1) == *GNU* ]] || (bootstrap_tar) || return 1 |
1347 |
+ [[ $(patch --version 2>&1) == *"GNU patch 2."7* ]] || (bootstrap_patch) || return 1 |
1348 |
+ [[ $(grep --version 2>&1) == *GNU* ]] || (bootstrap_grep) || return 1 |
1349 |
+ [[ $(awk --version < /dev/null 2>&1) == *GNU* ]] || bootstrap_gawk || return 1 |
1350 |
+ [[ $(bash --version 2>&1) == "GNU bash, version 4."[123456789]* ]] \ |
1351 |
+ || (bootstrap_bash) || return 1 |
1352 |
+ if type -P pkg-config > /dev/null ; then |
1353 |
+ # it IS possible to get here without installing anything in |
1354 |
+ # tmp/usr/bin, which makes the below fail to happen |
1355 |
+ mkdir -p "${ROOT}"/usr/bin/ |
1356 |
+ # hide an existing pkg-config for glib, which first checks |
1357 |
+ # pkg-config for libffi, and only then the LIBFFI_* vars |
1358 |
+ # this resolves nasty problems like bug #426302 |
1359 |
+ # note that an existing pkg-config can be ancient, which glib |
1360 |
+ # doesn't grok (e.g. Solaris 10) => error |
1361 |
+ { |
1362 |
+ echo "#!/bin/sh" |
1363 |
+ echo "exit 1" |
1364 |
+ } > "${ROOT}"/usr/bin/pkg-config |
1365 |
+ chmod 755 "${ROOT}"/usr/bin/pkg-config |
1366 |
+ fi |
1367 |
+ type -P bzip2 > /dev/null || (bootstrap_bzip2) || return 1 |
1368 |
+ # important to have our own (non-flawed one) since Python (from |
1369 |
+ # Portage) and binutils use it |
1370 |
+ |
1371 |
+ ls ${ROOT}/usr/lib/libz.* >/dev/null 2>&1 || (bootstrap_zlib) || return 1 |
1372 |
+ ls ${ROOT}/usr/lib/libgmp.* >/dev/null 2>&1 || (bootstrap_gmp) || return 1 |
1373 |
+ ls ${ROOT}/usr/lib/libmpfr.* >/dev/null 2>&1 || (bootstrap_mpfr) || return 1 |
1374 |
+ ls ${ROOT}/usr/lib/libmpc.* >/dev/null 2>&1 || (bootstrap_mpc) || return 1 |
1375 |
+ |
1376 |
+ # too vital to rely on a host-provided one |
1377 |
+ [[ -x ${ROOT}/usr/bin/python ]] || (bootstrap_python) || return 1 |
1378 |
+ |
1379 |
+ # glibc requies >=gcc-4.6 |
1380 |
+ [[ $(gcc --version 2>&1) == *'gcc ('*') 4.'[678]* ]] || (bootstrap_gcc) || return 1 |
1381 |
+ |
1382 |
+ einfo "stage1 successfully finished" |
1383 |
+} |
1384 |
+ |
1385 |
+bootstrap_stage2() { |
1386 |
+ if [[ ${ROOT} == */tmp ]] ; then |
1387 |
+ eerror "stage2 cannot be used for paths that end in '/tmp'" |
1388 |
+ return 1 |
1389 |
+ fi |
1390 |
+ |
1391 |
+ # checks itself if things need to be done still |
1392 |
+ bootstrap_tree || return 1 |
1393 |
+ [[ -e ${ROOT}/etc/make.globals ]] || bootstrap_portage || return 1 |
1394 |
+ |
1395 |
+ einfo "stage2 successfully finished" |
1396 |
+} |
1397 |
+ |
1398 |
+bootstrap_stage3() { |
1399 |
+ if [[ ${ROOT} == */tmp ]] ; then |
1400 |
+ eerror "stage3 cannot be used for paths that end in '/tmp'" |
1401 |
+ return 1 |
1402 |
+ fi |
1403 |
+ |
1404 |
+ if ! type -P emerge > /dev/null ; then |
1405 |
+ eerror "emerge not found, did you bootstrap stage1 and stage2?" |
1406 |
+ return 1 |
1407 |
+ fi |
1408 |
+ |
1409 |
+ # stage2 as set a profile, which defines CHOST, so unset any CHOST |
1410 |
+ # we've got here to avoid cross-compilation due to slight |
1411 |
+ # differences caused by our guessing vs. what the profile sets. |
1412 |
+ # This happens at least on 32-bits Darwin, with i386 and i686. |
1413 |
+ # https://bugs.gentoo.org/show_bug.cgi?id=433948 |
1414 |
+ local bootstrapCHOST=${CHOST} |
1415 |
+ unset CHOST |
1416 |
+ |
1417 |
+ # No longer support gen_usr_ldscript stuff in new bootstraps, this |
1418 |
+ # must be in line with what eventually ends up in make.conf, see the |
1419 |
+ # end of this function. We don't do this in bootstrap_setup() |
1420 |
+ # because in that case we'd also have to cater for getting this |
1421 |
+ # right with manual bootstraps. |
1422 |
+ export PREFIX_DISABLE_GEN_USR_LDSCRIPT=yes |
1423 |
+ |
1424 |
+ emerge_pkgs() { |
1425 |
+ local opts=$1 ; shift |
1426 |
+ local pkg vdb pvdb evdb premerge |
1427 |
+ for pkg in "$@"; do |
1428 |
+ vdb=${pkg} |
1429 |
+ if [[ ${vdb} == "="* ]] ; then |
1430 |
+ vdb=${vdb#=} |
1431 |
+ elif [[ ${vdb} == "<"* ]] ; then |
1432 |
+ vdb=${vdb#<} |
1433 |
+ vdb=${vdb%-r*} |
1434 |
+ vdb=${vdb%-*} |
1435 |
+ vdb=${vdb}-\* |
1436 |
+ else |
1437 |
+ vdb=${vdb}-\* |
1438 |
+ fi |
1439 |
+ for pvdb in ${ROOT}/var/db/pkg/${vdb%-*}-* ; do |
1440 |
+ if [[ -d ${pvdb} ]] ; then |
1441 |
+ evdb=${pvdb##*/} |
1442 |
+ if [[ ${pkg} == "="* ]] ; then |
1443 |
+ # exact match required (* should work here) |
1444 |
+ [[ ${evdb} == ${vdb##*/} ]] && break |
1445 |
+ else |
1446 |
+ vdb=${vdb%-*} |
1447 |
+ evdb=${evdb%-r*} |
1448 |
+ evdb=${evdb%_p*} |
1449 |
+ evdb=${evdb%-*} |
1450 |
+ [[ ${evdb} == ${vdb#*/} ]] && break |
1451 |
+ fi |
1452 |
+ fi |
1453 |
+ pvdb= |
1454 |
+ done |
1455 |
+ [[ -n ${pvdb} ]] && continue |
1456 |
+ # for a valid shebang, we have symlinked bin/bash already |
1457 |
+ [[ ${pkg} == *"app-shells/bash"* ]] && |
1458 |
+ premerge="FEATURES='${FEATURES} -collision-protect'" |
1459 |
+ eval ${premerge} 'emerge -v --oneshot ${opts} "${pkg}"' |
1460 |
+ [[ $? -eq 0 ]] || return 1 |
1461 |
+ done |
1462 |
+ } |
1463 |
+ |
1464 |
+ set_profile 1 |
1465 |
+ # --oneshot --nodeps |
1466 |
+ local pkgs=( |
1467 |
+ sys-apps/sed |
1468 |
+ "<app-shells/bash-4.2_p20" # higher versions require readline |
1469 |
+ app-arch/xz-utils |
1470 |
+ sys-apps/baselayout-prefix |
1471 |
+ sys-devel/m4 |
1472 |
+ sys-devel/flex |
1473 |
+ sys-devel/bison |
1474 |
+ sys-libs/zlib |
1475 |
+ dev-libs/gmp |
1476 |
+ dev-libs/mpfr |
1477 |
+ dev-libs/mpc |
1478 |
+ sys-kernel/linux-headers |
1479 |
+ sys-devel/gcc-config |
1480 |
+ sys-devel/binutils-config |
1481 |
+ sys-devel/binutils |
1482 |
+ ) |
1483 |
+ |
1484 |
+ emerge_pkgs --nodeps "${pkgs[@]}" || return 1 |
1485 |
+ |
1486 |
+ echo 'int main() {}' > test-rpath.c |
1487 |
+ gcc -o test-rpath test-rpath.c |
1488 |
+ if readelf -d test-rpath | grep -q rpath; then |
1489 |
+ cat <<EOF |
1490 |
+ |
1491 |
+Your present toolchain injects rpath into ELF, which causes glibc to |
1492 |
+fail. Please disable this feature for the moment and try again. |
1493 |
+ |
1494 |
+EOF |
1495 |
+ return 1; |
1496 |
+ fi |
1497 |
+ |
1498 |
+ if [[ ! -x "${ROOT}"/usr/bin/perl ]]; then |
1499 |
+ local perlLoc=$(type -P perl) |
1500 |
+ if [[ -n ${perlLoc} ]]; then |
1501 |
+ ln -sf "${perlLoc}" "${ROOT}"/usr/bin/perl |
1502 |
+ else |
1503 |
+ echo "We need perl at ${ROOT}/usr/bin/perl to compile glibc." |
1504 |
+ return 1 |
1505 |
+ fi |
1506 |
+ fi |
1507 |
+ |
1508 |
+ pkgs=( sys-libs/glibc ) |
1509 |
+ emerge_pkgs --nodeps "${pkgs[@]}" || return 1 |
1510 |
+ |
1511 |
+ # in gcc bootstrap stage 1, xgcc/cc1 and friends may be linked against libgcc_s.so of |
1512 |
+ # the old gcc, which cannot be found on new RAP. Append that directory to ld.so.conf |
1513 |
+ # so that our RAP dynamic linker can find it. This will be overwritten by env-update |
1514 |
+ # afterwards. |
1515 |
+ local oldGCC |
1516 |
+ # in case CHOST-gcc is different from gcc in PATH |
1517 |
+ oldGCC=$(type -P $(portageq envvar CHOST)-gcc) |
1518 |
+ [[ -n ${oldGCC} ]] || oldGCC=$(type -P gcc) |
1519 |
+ dirname $(${oldGCC} -print-libgcc-file-name) >> ${ROOT}/etc/ld.so.conf |
1520 |
+ ${ROOT}/usr/sbin/ldconfig |
1521 |
+ |
1522 |
+ pkgs=( sys-devel/gcc ) |
1523 |
+ emerge_pkgs --nodeps "${pkgs[@]}" || return 1 |
1524 |
+ |
1525 |
+ # we need pax-utils this early for OSX (before libiconv - gen_usr_ldscript) |
1526 |
+ # but also for perl, which uses scanelf/scanmacho to find compatible |
1527 |
+ # lib-dirs |
1528 |
+ # --oneshot |
1529 |
+ local pkgs=( |
1530 |
+ app-misc/pax-utils # see note above |
1531 |
+ sys-apps/coreutils |
1532 |
+ sys-apps/findutils |
1533 |
+ "<app-arch/tar-1.26-r1" # bug 406131 |
1534 |
+ sys-apps/grep |
1535 |
+ sys-apps/gawk |
1536 |
+ sys-devel/make |
1537 |
+ sys-libs/zlib |
1538 |
+ ) |
1539 |
+ emerge_pkgs "" "${pkgs[@]}" || return 1 |
1540 |
+ |
1541 |
+ # --oneshot --nodeps |
1542 |
+ local pkgs=( |
1543 |
+ sys-apps/file |
1544 |
+ app-admin/eselect |
1545 |
+ dev-util/pkgconf |
1546 |
+ ) |
1547 |
+ emerge_pkgs --nodeps "${pkgs[@]}" || return 1 |
1548 |
+ |
1549 |
+ # --oneshot |
1550 |
+ local pkgs=( |
1551 |
+ net-misc/wget |
1552 |
+ sys-apps/acl |
1553 |
+ ) |
1554 |
+ emerge_pkgs "" "${pkgs[@]}" || return 1 |
1555 |
+ |
1556 |
+ # for some yet unknown reason, libxml2 has a problem with zlib, but |
1557 |
+ # only during this stage, in the emerge -e system phase it is fine |
1558 |
+ # it boils down to zlib headers replacing gzopen with gzopen64, but |
1559 |
+ # no gzopen64 prototype being defined, due to libxml.h messing with |
1560 |
+ # FILE_OFFSET_BITS |
1561 |
+ # we can work around this by defining NO_LARGEFILE_SOURCE for libxml.h |
1562 |
+ # since we have the compiler emerged, it's no problem we wipe out |
1563 |
+ # the -I directions set by the profile |
1564 |
+ export CPPFLAGS="${CPPFLAGS} -DNO_LARGEFILE_SOURCE" |
1565 |
+ |
1566 |
+ # disable collision-protect to overwrite the bootstrapped portage |
1567 |
+ FEATURES="-collision-protect" emerge_pkgs "" "sys-apps/portage" || return 1 |
1568 |
+ |
1569 |
+ unset CPPFLAGS |
1570 |
+ |
1571 |
+ if [[ -d ${ROOT}/tmp/var/tmp ]] ; then |
1572 |
+ rm -Rf "${ROOT}"/tmp || return 1 |
1573 |
+ mkdir -p "${ROOT}"/tmp || return 1 |
1574 |
+ fi |
1575 |
+ |
1576 |
+ set_profile 2 |
1577 |
+ |
1578 |
+ # Portage should figure out itself what it needs to do, if anything |
1579 |
+ USE=-git emerge -u system || return 1 |
1580 |
+ |
1581 |
+ if [[ ! -f ${EPREFIX}/etc/portage/make.conf ]] ; then |
1582 |
+ { |
1583 |
+ echo 'USE="unicode nls"' |
1584 |
+ echo 'CFLAGS="${CFLAGS} -O2 -pipe"' |
1585 |
+ echo 'CXXFLAGS="${CFLAGS}"' |
1586 |
+ echo "MAKEOPTS=\"${MAKEOPTS}\"" |
1587 |
+ echo "# be careful with this one, don't just remove it!" |
1588 |
+ echo "PREFIX_DISABLE_GEN_USR_LDSCRIPT=yes" |
1589 |
+ } > "${EPREFIX}"/etc/portage/make.conf |
1590 |
+ fi |
1591 |
+ |
1592 |
+ einfo "stage3 successfully finished" |
1593 |
+} |
1594 |
+ |
1595 |
+bootstrap_interactive() { |
1596 |
+ cat <<"EOF" |
1597 |
+ |
1598 |
+ |
1599 |
+ . |
1600 |
+ .vir. d$b |
1601 |
+ .d$$$$$$b. .cd$$b. .d$$b. d$$$$$$$$$$$b .d$$b. .d$$b. |
1602 |
+ $$$$( )$$$b d$$$()$$$. d$$$$$$$b Q$$$$$$$P$$$P.$$$$$$$b. .$$$$$$$b. |
1603 |
+ Q$$$$$$$$$$B$$$$$$$$P" d$$$PQ$$$$b. $$$$. .$$$P' `$$$ .$$$P' `$$$ |
1604 |
+ "$$$$$$$P Q$$$$$$$b d$$$P Q$$$$b $$$$b $$$$b..d$$$ $$$$b..d$$$ |
1605 |
+ d$$$$$$P" "$$$$$$$$ Q$$$ Q$$$$ $$$$$ `Q$$$$$$$P `Q$$$$$$$P |
1606 |
+ $$$$$$$P `""""" "" "" Q$$$P "Q$$$P" "Q$$$P" |
1607 |
+ `Q$$P" """ |
1608 |
+ |
1609 |
+ Welcome to the Gentoo Prefix interactive installer! |
1610 |
+ |
1611 |
+ |
1612 |
+ I will attempt to install Gentoo Prefix on your system. To do so, I'll |
1613 |
+ ask you some questions first. After that, you'll have to practise |
1614 |
+ patience as your computer and I try to figure out a way to get a lot of |
1615 |
+ software packages compiled. If everything goes according to plan, |
1616 |
+ you'll end up with what we call "a Prefix install", but by that time, |
1617 |
+ I'll tell you more. |
1618 |
+ |
1619 |
+ |
1620 |
+EOF |
1621 |
+ [[ ${TODO} == 'noninteractive' ]] && ans=yes || |
1622 |
+ read -p "Do you want me to start off now? [Yn] " ans |
1623 |
+ case "${ans}" in |
1624 |
+ [Yy][Ee][Ss]|[Yy]|"") |
1625 |
+ : ;; |
1626 |
+ *) |
1627 |
+ echo "Right. Aborting..." |
1628 |
+ exit 1 |
1629 |
+ ;; |
1630 |
+ esac |
1631 |
+ |
1632 |
+ echo |
1633 |
+ echo "It seems to me you are '${USER:-$(whoami 2> /dev/null)}' (${UID}), that looks cool to me." |
1634 |
+ |
1635 |
+ echo |
1636 |
+ echo "I'm going to check for some variables in your environment now:" |
1637 |
+ local flag dvar badflags= |
1638 |
+ for flag in \ |
1639 |
+ ASFLAGS \ |
1640 |
+ CFLAGS \ |
1641 |
+ CPPFLAGS \ |
1642 |
+ CXXFLAGS \ |
1643 |
+ DYLD_LIBRARY_PATH \ |
1644 |
+ GREP_OPTIONS \ |
1645 |
+ LDFLAGS \ |
1646 |
+ LD_LIBRARY_PATH \ |
1647 |
+ LIBPATH \ |
1648 |
+ PERL_MM_OPT \ |
1649 |
+ PKG_CONFIG_PATH \ |
1650 |
+ PYTHONPATH \ |
1651 |
+ ; do |
1652 |
+ # starting on purpose a shell here iso ${!flag} because I want |
1653 |
+ # to know if the shell initialisation files trigger this |
1654 |
+ # note that this code is so complex because it handles both |
1655 |
+ # C-shell as sh |
1656 |
+ dvar="echo \"((${flag}=\${${flag}}))\"" |
1657 |
+ dvar="$(echo "${dvar}" | env -i HOME=$HOME $SHELL -l 2>/dev/null)" |
1658 |
+ if [[ ${dvar} == *"((${flag}="?*"))" ]] ; then |
1659 |
+ badflags="${badflags} ${flag}" |
1660 |
+ dvar=${dvar#*((${flag}=} |
1661 |
+ dvar=${dvar%%))*} |
1662 |
+ echo " uh oh, ${flag}=${dvar} :(" |
1663 |
+ else |
1664 |
+ echo " it appears ${flag} is not set :)" |
1665 |
+ fi |
1666 |
+ # unset for the current environment |
1667 |
+ unset ${flag} |
1668 |
+ done |
1669 |
+ if [[ -n ${badflags} ]] ; then |
1670 |
+ cat << EOF |
1671 |
+ |
1672 |
+Ahem, your shell environment contains some variables I'm allergic to: |
1673 |
+ ${badflags} |
1674 |
+These flags can and will influence the way in which packages compile. |
1675 |
+In fact, they have a long standing tradition to break things. I really |
1676 |
+prefer to be on my own here. So please make sure you disable these |
1677 |
+environment variables in your shell initialisation files. After you've |
1678 |
+done that, you can run me again. |
1679 |
+EOF |
1680 |
+ exit 1 |
1681 |
+ fi |
1682 |
+ echo |
1683 |
+ echo "I'm excited! Seems we can finally do something productive now." |
1684 |
+ |
1685 |
+ cat << EOF |
1686 |
+ |
1687 |
+Ok, I'm going to do a little bit of guesswork here. Thing is, your |
1688 |
+machine appears to be identified by CHOST=${CHOST}. |
1689 |
+EOF |
1690 |
+ case "${CHOST}" in |
1691 |
+ powerpc*|ppc*|sparc*) |
1692 |
+ cat << EOF |
1693 |
+ |
1694 |
+To me, it seems to be a big-endian machine. I told you before you need |
1695 |
+patience, but with your machine, regardless how many CPUs you have, you |
1696 |
+need some more. Context switches are just expensive, and guess what |
1697 |
+fork/execs result in all the time. I'm going to make it even worse for |
1698 |
+you, configure and make typically are fork/exec bombs. |
1699 |
+I'm going to assume you're actually used to having patience with this |
1700 |
+machine, which is good, because I really love a box like yours! |
1701 |
+EOF |
1702 |
+ ;; |
1703 |
+ esac |
1704 |
+ |
1705 |
+ # the standard path we want to start with, override anything from |
1706 |
+ # the user on purpose |
1707 |
+ PATH="/usr/bin:/bin" |
1708 |
+ # don't exclude the path to bash if it isn't in a standard location |
1709 |
+ type -P bash > /dev/null || PATH="${BASH%/bash}:${PATH}" |
1710 |
+ case "${CHOST}" in |
1711 |
+ *-solaris*) |
1712 |
+ cat << EOF |
1713 |
+ |
1714 |
+Ok, this is Solaris, or a derivative like OpenSolaris or OpenIndiana. |
1715 |
+Sometimes, useful tools necessary at this stage are hidden. I'm going |
1716 |
+to check if that's the case for your system too, and if so, add those |
1717 |
+locations to your PATH. |
1718 |
+EOF |
1719 |
+ # could do more "smart" CHOST deductions here, but brute |
1720 |
+ # force is most likely as quick, but simpler |
1721 |
+ [[ -d /usr/sfw/bin ]] \ |
1722 |
+ && PATH="${PATH}:/usr/sfw/bin" |
1723 |
+ [[ -d /usr/sfw/i386-sun-solaris${CHOST##*-solaris}/bin ]] \ |
1724 |
+ && PATH="${PATH}:/usr/sfw/i386-sun-solaris${CHOST##*-solaris}/bin" |
1725 |
+ [[ -d /usr/sfw/sparc-sun-solaris${CHOST##*-solaris}/bin ]] \ |
1726 |
+ && PATH="${PATH}:/usr/sfw/sparc-sun-solaris${CHOST##*-solaris}/bin" |
1727 |
+ # OpenIndiana 151a5 |
1728 |
+ [[ -d /usr/gnu/bin ]] && PATH="${PATH}:/usr/gnu/bin" |
1729 |
+ # SmartOS |
1730 |
+ [[ -d /opt/local/gcc47/bin ]] && PATH="${PATH}:/opt/local/gcc47/bin" |
1731 |
+ ;; |
1732 |
+ esac |
1733 |
+ |
1734 |
+ # TODO: should we better use cc here? or check both? |
1735 |
+ if ! type -P gcc > /dev/null ; then |
1736 |
+ case "${CHOST}" in |
1737 |
+ *-darwin*) |
1738 |
+ cat << EOF |
1739 |
+ |
1740 |
+Uh oh... a Mac OS X system, but without compiler. You must have |
1741 |
+forgotten to install Xcode tools. If your Mac didn't come with an |
1742 |
+install DVD (pre Lion) you can find it in the Mac App Store, or download |
1743 |
+the Xcode command line tools from Apple Developer Connection. If you |
1744 |
+did get a CD/DVD with your Mac, there is a big chance you can find Xcode |
1745 |
+on it, and install it right away. |
1746 |
+Please do so, and try me again! |
1747 |
+EOF |
1748 |
+ exit 1 |
1749 |
+ ;; |
1750 |
+ *-solaris2.[789]|*-solaris2.10) |
1751 |
+ cat << EOF |
1752 |
+ |
1753 |
+Yikes! Your Solaris box doesn't come with gcc in /usr/sfw/blabla/bin? |
1754 |
+What good is it to me then? I can't find a compiler! I'm afraid |
1755 |
+you'll have to find a way to install the Sun FreeWare tools somehow, is |
1756 |
+it on the Companion disc perhaps? |
1757 |
+See me again when you figured it out. |
1758 |
+EOF |
1759 |
+ exit 1 |
1760 |
+ ;; |
1761 |
+ *-solaris*) |
1762 |
+ SOLARIS_RELEASE=$(head -n1 /etc/release) |
1763 |
+ if [[ ${SOLARIS_RELEASE} == *"Oracle Solaris"* ]] ; then |
1764 |
+ cat << EOF |
1765 |
+Seems like you have installed Oracle Solaris ${SOLARIS_RELEASE}. |
1766 |
+IÂ suppose you have solaris publisher set. If not, use: |
1767 |
+ pkg set-publisher -p http://pkg.oracle.com/solaris/release |
1768 |
+You need to install some necessary packages: |
1769 |
+ pkg install developer/gcc-45 system/header |
1770 |
+In the meanwhile, I'll wait here until you run me again, with a compiler. |
1771 |
+EOF |
1772 |
+ else |
1773 |
+ cat << EOF |
1774 |
+ |
1775 |
+Sigh. This is OpenSolaris or OpenIndiana? I can't tell the difference |
1776 |
+without looking more closely. What I DO know, is that there is no |
1777 |
+compiler, at least not where I was just looking, so how do we continue |
1778 |
+from here, eh? I just think you didn't install one. I know it can be |
1779 |
+tricky on OpenIndiana, for instance, so won't blame you. In case you're |
1780 |
+on OpenIndiana, I'll help you a bit. Perform the following as |
1781 |
+super-user: |
1782 |
+ pkg install developer/gnu system/library/math/header-math |
1783 |
+In the meanwhile, I'll wait here until you run me again, with a compiler. |
1784 |
+EOF |
1785 |
+ fi |
1786 |
+ exit 1 |
1787 |
+ ;; |
1788 |
+ *) |
1789 |
+ cat << EOF |
1790 |
+ |
1791 |
+Well, well... let's make this painful situation as short as it can be: |
1792 |
+you don't appear to have a compiler around for me to play with. |
1793 |
+Since I like your PATH to be as minimal as possible, I threw away |
1794 |
+everything you put in it, and started from scratch. Perhaps, the almost |
1795 |
+impossible happened that I was wrong in doing so. |
1796 |
+Ok, I'll give you a chance. You can now enter what you think is |
1797 |
+necessary to add to PATH for me to find a compiler. I start off with |
1798 |
+PATH=${PATH} and will add anything you give me here. |
1799 |
+EOF |
1800 |
+ [[ ${TODO} == 'noninteractive' ]] && ans="" || |
1801 |
+ read -p "Where can I find your compiler? [] " ans |
1802 |
+ case "${ans}" in |
1803 |
+ "") |
1804 |
+ : ;; |
1805 |
+ *) |
1806 |
+ PATH="${PATH}:${ans}" |
1807 |
+ ;; |
1808 |
+ esac |
1809 |
+ if ! type -P gcc > /dev/null ; then |
1810 |
+ cat << EOF |
1811 |
+ |
1812 |
+Are you sure you have a compiler? I didn't find one. I think you |
1813 |
+better first go get one, then run me again. |
1814 |
+EOF |
1815 |
+ exit 1 |
1816 |
+ else |
1817 |
+ echo |
1818 |
+ echo "Pfff, ok, it seems you were right. Can we move on now?" |
1819 |
+ fi |
1820 |
+ ;; |
1821 |
+ esac |
1822 |
+ else |
1823 |
+ echo |
1824 |
+ echo "Great! You appear to have a compiler in your PATH" |
1825 |
+ fi |
1826 |
+ |
1827 |
+ echo |
1828 |
+ local ncpu= |
1829 |
+ case "${CHOST}" in |
1830 |
+ *-darwin*) ncpu=$(/usr/sbin/sysctl -n hw.ncpu) ;; |
1831 |
+ *-freebsd*) ncpu=$(/sbin/sysctl -n hw.ncpu) ;; |
1832 |
+ *-solaris*) ncpu=$(/usr/sbin/psrinfo | wc -l) ;; |
1833 |
+ *-linux-gnu*) ncpu=$(cat /proc/cpuinfo | grep processor | wc -l) ;; |
1834 |
+ *-aix*) ncpu=$(/usr/sbin/bindprocessor -q | cut -d: -f2 | wc -w) ;; |
1835 |
+ *) ncpu=1 ;; |
1836 |
+ esac |
1837 |
+ # get rid of excess spaces (at least Solaris wc does) |
1838 |
+ ncpu=$((ncpu + 0)) |
1839 |
+ # Suggest usage of 100% to 60% of the available CPUs in the range |
1840 |
+ # from 1 to 14. We limit to no more than 8, since we easily flood |
1841 |
+ # the bus on those heavy-core systems and only slow down in that |
1842 |
+ # case anyway. |
1843 |
+ local tcpu=$((ncpu / 2 + 1)) |
1844 |
+ [[ ${tcpu} -gt 8 ]] && tcpu=8 |
1845 |
+ cat << EOF |
1846 |
+ |
1847 |
+I did my utmost best, and found that you have ${ncpu} cpu cores. If |
1848 |
+this looks wrong to you, you can happily ignore me. Based on the number |
1849 |
+of cores you have, I came up with the idea of parallelising compilation |
1850 |
+work where possible with ${tcpu} parallel make threads. If you have no |
1851 |
+clue what this means, you should go with my excellent default I've |
1852 |
+chosen below, really! |
1853 |
+EOF |
1854 |
+ [[ ${TODO} == 'noninteractive' ]] && ans="" || |
1855 |
+ read -p "How many parallel make jobs do you want? [${tcpu}] " ans |
1856 |
+ case "${ans}" in |
1857 |
+ "") |
1858 |
+ MAKEOPTS="-j${tcpu}" |
1859 |
+ ;; |
1860 |
+ *) |
1861 |
+ if [[ ${ans} -le 0 ]] ; then |
1862 |
+ echo |
1863 |
+ echo "You should have entered a non-zero integer number, obviously..." |
1864 |
+ exit 1 |
1865 |
+ elif [[ ${ans} -gt ${tcpu} && ${tcpu} -ne 1 ]] ; then |
1866 |
+ if [[ ${ans} -gt ${ncpu} ]] ; then |
1867 |
+ cat << EOF |
1868 |
+ |
1869 |
+Want to push it very hard? I already feel sorry for your poor box with |
1870 |
+its mere ${ncpu} cpu cores. |
1871 |
+EOF |
1872 |
+ elif [[ $((ans - tcpu)) -gt 1 ]] ; then |
1873 |
+ cat << EOF |
1874 |
+ |
1875 |
+So you think you can stress your system a bit more than my extremely |
1876 |
+well thought out formula suggested you? Hmmpf, I'll take it you know |
1877 |
+what you're doing then. |
1878 |
+EOF |
1879 |
+ sleep 1 |
1880 |
+ echo "(are you?)" |
1881 |
+ fi |
1882 |
+ MAKEOPTS="-j${ans}" |
1883 |
+ fi |
1884 |
+ ;; |
1885 |
+ esac |
1886 |
+ export MAKEOPTS |
1887 |
+ |
1888 |
+ #32/64 bits, multilib |
1889 |
+ local candomultilib=no |
1890 |
+ local t64 t32 |
1891 |
+ case "${CHOST}" in |
1892 |
+ *86*-darwin9|*86*-darwin1[012]) |
1893 |
+ # PPC/Darwin only works in 32-bits mode, so this is Intel |
1894 |
+ # only, and only starting from Leopard (10.5, darwin9) |
1895 |
+ candomultilib=yes |
1896 |
+ t64=x86_64-${CHOST#*-} |
1897 |
+ t32=i686-${CHOST#*-} |
1898 |
+ ;; |
1899 |
+ *-solaris*) |
1900 |
+ # Solaris is a true multilib system from as long as it does |
1901 |
+ # 64-bits, we only need to know if the CPU we use is capable |
1902 |
+ # of doing 64-bits mode |
1903 |
+ [[ $(/usr/bin/isainfo | tr ' ' '\n' | wc -l) -ge 2 ]] \ |
1904 |
+ && candomultilib=yes |
1905 |
+ if [[ ${CHOST} == sparc* ]] ; then |
1906 |
+ t64=sparcv9-${CHOST#*-} |
1907 |
+ t32=sparc-${CHOST#*-} |
1908 |
+ else |
1909 |
+ t64=x86_64-${CHOST#*-} |
1910 |
+ t32=i386-${CHOST#*-} |
1911 |
+ fi |
1912 |
+ ;; |
1913 |
+ # Even though multilib on Linux is often supported in some way, |
1914 |
+ # it's hardly ever installed by default (it seems) |
1915 |
+ # Since it's non-trivial to figure out if such system (binary |
1916 |
+ # packages can report to be multilib, but lack all necessary |
1917 |
+ # libs) is truely multilib capable, we don't bother here. The |
1918 |
+ # user can override if he/she is really convinced the system can |
1919 |
+ # do it. |
1920 |
+ esac |
1921 |
+ if [[ ${candomultilib} == yes ]] ; then |
1922 |
+ cat << EOF |
1923 |
+ |
1924 |
+Your system appears to be a multilib system, that is in fact also |
1925 |
+capable of doing multilib right here, right now. Multilib means |
1926 |
+something like "being able to run multiple kinds of binaries". The most |
1927 |
+interesting kind for you now is 32-bits versus 64-bits binaries. I can |
1928 |
+create both a 32-bits as well as a 64-bits Prefix for you, but do you |
1929 |
+actually know what I'm talking about here? If not, just accept the |
1930 |
+default here. Honestly, you don't want to change it if you can't name |
1931 |
+one advantage of 64-bits over 32-bits other than that 64 is a higher |
1932 |
+number and when you buy a car or washing machine, you also always choose |
1933 |
+the one with the highest number. |
1934 |
+EOF |
1935 |
+ [[ ${TODO} == 'noninteractive' ]] && ans="" || |
1936 |
+ case "${CHOST}" in |
1937 |
+ x86_64-*|sparcv9-*) # others can't do multilib, so don't bother |
1938 |
+ # 64-bits native |
1939 |
+ read -p "How many bits do you want your Prefix to target? [64] " ans |
1940 |
+ ;; |
1941 |
+ *) |
1942 |
+ # 32-bits native |
1943 |
+ read -p "How many bits do you want your Prefix to target? [32] " ans |
1944 |
+ ;; |
1945 |
+ esac |
1946 |
+ case "${ans}" in |
1947 |
+ "") |
1948 |
+ : ;; |
1949 |
+ 32) |
1950 |
+ CHOST=${t32} |
1951 |
+ ;; |
1952 |
+ 64) |
1953 |
+ CHOST=${t64} |
1954 |
+ ;; |
1955 |
+ *) |
1956 |
+ cat << EOF |
1957 |
+ |
1958 |
+${ans}? Yeah Right(tm)! You obviously don't know what you're talking |
1959 |
+about, so I'll take the default instead. |
1960 |
+EOF |
1961 |
+ ;; |
1962 |
+ esac |
1963 |
+ fi |
1964 |
+ export CHOST |
1965 |
+ |
1966 |
+ # choose EPREFIX, we do this last, since we have to actually write |
1967 |
+ # to the filesystem here to check that the EPREFIX is sane |
1968 |
+ cat << EOF |
1969 |
+ |
1970 |
+Each and every Prefix has a home. That is, a place where everything is |
1971 |
+supposed to be in. That place must be fully writable by you (duh), but |
1972 |
+should also be able to hold some fair amount of data and preferably be |
1973 |
+reasonably fast. In terms of space, I advise something around 2GiB |
1974 |
+(it's less if you're lucky). I suggest a reasonably fast place because |
1975 |
+we're going to compile a lot, and that generates a fair bit of IO. If |
1976 |
+some networked filesystem like NFS is the only option for you, then |
1977 |
+you're just going to have to wait a fair bit longer. |
1978 |
+This place which is your Prefix' home, is often referred to by a |
1979 |
+variable called EPREFIX. |
1980 |
+EOF |
1981 |
+ while true ; do |
1982 |
+ if [[ -z ${EPREFIX} ]] ; then |
1983 |
+ # Make the default for Mac users a bit more "native feel" |
1984 |
+ [[ ${CHOST} == *-darwin* ]] \ |
1985 |
+ && EPREFIX=$HOME/Gentoo \ |
1986 |
+ || EPREFIX=$HOME/gentoo |
1987 |
+ fi |
1988 |
+ echo |
1989 |
+ [[ ${TODO} == 'noninteractive' ]] && ans=${ROOT} || |
1990 |
+ read -p "What do you want EPREFIX to be? [$EPREFIX] " ans |
1991 |
+ case "${ans}" in |
1992 |
+ "") |
1993 |
+ : ;; |
1994 |
+ /*) |
1995 |
+ EPREFIX=${ans} |
1996 |
+ ;; |
1997 |
+ *) |
1998 |
+ echo |
1999 |
+ echo "EPREFIX must be an absolute path!" |
2000 |
+ [[ ${TODO} == 'noninteractive' ]] && exit 1 |
2001 |
+ EPREFIX= |
2002 |
+ continue |
2003 |
+ ;; |
2004 |
+ esac |
2005 |
+ if [[ ! -d ${EPREFIX} ]] && ! mkdir -p "${EPREFIX}" ; then |
2006 |
+ echo |
2007 |
+ echo "It seems I cannot create ${EPREFIX}." |
2008 |
+ [[ ${TODO} == 'noninteractive' ]] && exit 1 |
2009 |
+ echo "I'll forgive you this time, try again." |
2010 |
+ EPREFIX= |
2011 |
+ continue |
2012 |
+ fi |
2013 |
+ if ! touch "${EPREFIX}"/.canihaswrite >& /dev/null ; then |
2014 |
+ echo |
2015 |
+ echo "I cannot write to ${EPREFIX}!" |
2016 |
+ [[ ${TODO} == 'noninteractive' ]] && exit 1 |
2017 |
+ echo "You want some fun, but without me? Try another location." |
2018 |
+ EPREFIX= |
2019 |
+ continue |
2020 |
+ fi |
2021 |
+ # don't really expect this one to fail |
2022 |
+ rm -f "${EPREFIX}"/.canihaswrite || exit 1 |
2023 |
+ # location seems ok |
2024 |
+ break; |
2025 |
+ done |
2026 |
+ export EPREFIX |
2027 |
+ export PATH="$EPREFIX/usr/bin:$EPREFIX/bin:$EPREFIX/tmp/usr/bin:$EPREFIX/tmp/bin:$PATH" |
2028 |
+ |
2029 |
+ cat << EOF |
2030 |
+ |
2031 |
+OK! I'm going to give it a try, this is what I have collected sofar: |
2032 |
+ EPREFIX=${EPREFIX} |
2033 |
+ CHOST=${CHOST} |
2034 |
+ PATH=${PATH} |
2035 |
+ MAKEOPTS=${MAKEOPTS} |
2036 |
+ |
2037 |
+I'm now going to make an awful lot of noise going through a sequence of |
2038 |
+stages to make your box as groovy as I am myself, setting up your |
2039 |
+Prefix. In short, I'm going to run stage1, stage2, stage3, followed by |
2040 |
+emerge -e system. If any of these stages fail, both you and me are in |
2041 |
+deep trouble. So let's hope that doesn't happen. |
2042 |
+EOF |
2043 |
+ echo |
2044 |
+ [[ ${TODO} == 'noninteractive' ]] && ans="" || |
2045 |
+ read -p "Type here what you want to wish me [luck] " ans |
2046 |
+ if [[ -n ${ans} && ${ans} != "luck" ]] ; then |
2047 |
+ echo "Huh? You're not serious, are you?" |
2048 |
+ sleep 3 |
2049 |
+ fi |
2050 |
+ echo |
2051 |
+ |
2052 |
+ if ! [[ -x ${EPREFIX}/usr/lib/portage/bin/emerge ]] && ! ${BASH} ${BASH_SOURCE[0]} "${EPREFIX}/tmp" stage1 ; then |
2053 |
+ # stage 1 fail |
2054 |
+ cat << EOF |
2055 |
+ |
2056 |
+I tried running |
2057 |
+ ${BASH} ${BASH_SOURCE[0]} "${EPREFIX}/tmp" stage1 |
2058 |
+but that failed :( I have no clue, really. Please find friendly folks |
2059 |
+in #gentoo-prefix on irc.gentoo.org, gentoo-alt@l.g.o mailing list, |
2060 |
+or file a bug at bugs.gentoo.org under Gentoo/Alt, Prefix Support. |
2061 |
+Sorry that I have failed you master. I shall now return to my humble cave. |
2062 |
+EOF |
2063 |
+ exit 1 |
2064 |
+ fi |
2065 |
+ |
2066 |
+ if ! [[ -x ${EPREFIX}/usr/lib/portage/bin/emerge ]] && ! ${BASH} ${BASH_SOURCE[0]} "${EPREFIX}" stage2 ; then |
2067 |
+ # stage 2 fail |
2068 |
+ cat << EOF |
2069 |
+ |
2070 |
+Odd! Running |
2071 |
+ ${BASH} ${BASH_SOURCE[0]} "${EPREFIX}" stage2 |
2072 |
+failed! :( I have no clue, really. Please find friendly folks in |
2073 |
+#gentoo-prefix on irc.gentoo.org, gentoo-alt@l.g.o mailing list, or |
2074 |
+file a bug at bugs.gentoo.org under Gentoo/Alt, Prefix Support. |
2075 |
+I am defeated. I am of no use here any more. |
2076 |
+EOF |
2077 |
+ exit 1 |
2078 |
+ fi |
2079 |
+ |
2080 |
+ # after stage1 and stage2 we should have a bash of our own, which |
2081 |
+ # is preferably over the host-provided one, because we know it can |
2082 |
+ # deal with the bash-constructs we use in stage3 and onwards |
2083 |
+ hash -r |
2084 |
+ |
2085 |
+ if ! bash ${BASH_SOURCE[0]} "${EPREFIX}" stage3 ; then |
2086 |
+ # stage 3 fail |
2087 |
+ hash -r # previous cat (tmp/usr/bin/cat) may have been removed |
2088 |
+ cat << EOF |
2089 |
+ |
2090 |
+Hmmmm, I was already afraid of this to happen. Running |
2091 |
+ $(type -P bash) ${BASH_SOURCE[0]} "${EPREFIX}" stage3 |
2092 |
+somewhere failed :( Details might be found in the build log: |
2093 |
+EOF |
2094 |
+ for log in "${EPREFIX}"/var/tmp/portage/*/*/temp/build.log ; do |
2095 |
+ [[ -e ${log} ]] || continue |
2096 |
+ echo " ${log}" |
2097 |
+ done |
2098 |
+ [[ -e ${log} ]] || echo " (no build logs found?!?)" |
2099 |
+ cat << EOF |
2100 |
+I have no clue, really. Please find friendly folks in #gentoo-prefix on |
2101 |
+irc.gentoo.org, gentoo-alt@l.g.o mailing list, or file a bug |
2102 |
+at bugs.gentoo.org under Gentoo/Alt, Prefix Support. This is most |
2103 |
+inconvenient, and it crushed my ego. Sorry, I give up. |
2104 |
+EOF |
2105 |
+ exit 1 |
2106 |
+ fi |
2107 |
+ hash -r # tmp/* stuff is removed in stage3 |
2108 |
+ |
2109 |
+ # Don't confuse Portage with a possibly slightly differing CHOST |
2110 |
+ unset CHOST |
2111 |
+ |
2112 |
+ if ! emerge -e system ; then |
2113 |
+ # emerge -e system fail |
2114 |
+ cat << EOF |
2115 |
+ |
2116 |
+Oh yeah, I thought I was almost there, and then this! I did |
2117 |
+ emerge -e system |
2118 |
+and it failed at some point :( Details might be found in the build log: |
2119 |
+EOF |
2120 |
+ for log in "${EPREFIX}"/var/tmp/portage/*/*/temp/build.log ; do |
2121 |
+ [[ -e ${log} ]] || continue |
2122 |
+ echo " ${log}" |
2123 |
+ done |
2124 |
+ [[ -e ${log} ]] || echo " (no build logs found?!?)" |
2125 |
+ cat << EOF |
2126 |
+I have no clue, really. Please find friendly folks in #gentoo-prefix on |
2127 |
+irc.gentoo.org, gentoo-alt@l.g.o mailing list, or file a bug |
2128 |
+at bugs.gentoo.org under Gentoo/Alt, Prefix Support. |
2129 |
+You know, I got the feeling you just started to like me, but I guess |
2130 |
+that's all gone now. I'll bother you no longer. |
2131 |
+EOF |
2132 |
+ exit 1 |
2133 |
+ fi |
2134 |
+ |
2135 |
+ if ! bash ${BASH_SOURCE[0]} "${EPREFIX}" startscript ; then |
2136 |
+ # startscript fail? |
2137 |
+ cat << EOF |
2138 |
+ |
2139 |
+Ok, let's be honest towards each other. If |
2140 |
+ $(type -P bash) ${BASH_SOURCE[0]} "${EPREFIX}" startscript |
2141 |
+fails, then who cheated on who? Either you use an obscure shell, or |
2142 |
+your PATH isn't really sane afterall. Despite, I can't really |
2143 |
+congratulate you here, you basically made it to the end. |
2144 |
+Please find friendly folks in #gentoo-prefix on irc.gentoo.org, |
2145 |
+gentoo-alt@l.g.o mailing list, or file a bug at |
2146 |
+bugs.gentoo.org under Gentoo/Alt, Prefix Support. |
2147 |
+It's sad we have to leave each other this way. Just an inch away... |
2148 |
+EOF |
2149 |
+ exit 1 |
2150 |
+ fi |
2151 |
+ |
2152 |
+ echo |
2153 |
+ cat << EOF |
2154 |
+ |
2155 |
+Woah! Everything just worked! Now YOU should run |
2156 |
+ ${EPREFIX}/startprefix |
2157 |
+and enjoy! Thanks for using me, it was a pleasure to work with you. |
2158 |
+EOF |
2159 |
+} |
2160 |
+ |
2161 |
+## End Functions |
2162 |
+ |
2163 |
+## some vars |
2164 |
+ |
2165 |
+# We do not want stray $TMP, $TMPDIR or $TEMP settings |
2166 |
+unset TMP TMPDIR TEMP |
2167 |
+ |
2168 |
+# Try to guess the CHOST if not set. We currently only support guessing |
2169 |
+# on a very sloppy base. |
2170 |
+if [[ -z ${CHOST} ]]; then |
2171 |
+ if [[ x$(type -t uname) == "xfile" ]]; then |
2172 |
+ case `uname -s` in |
2173 |
+ Linux) |
2174 |
+ case `uname -m` in |
2175 |
+ ppc*) |
2176 |
+ CHOST="`uname -m | sed -e 's/^ppc/powerpc/'`-unknown-linux-gnu" |
2177 |
+ ;; |
2178 |
+ powerpc*) |
2179 |
+ CHOST="`uname -m`-unknown-linux-gnu" |
2180 |
+ ;; |
2181 |
+ armv7l) |
2182 |
+ CHOST=armv7a-hardfloat-linux-gnueabi |
2183 |
+ ;; |
2184 |
+ armv5te*) |
2185 |
+ CHOST=armv5tel-softfloat-linux-gnueabi |
2186 |
+ ;; |
2187 |
+ *) |
2188 |
+ CHOST="`uname -m`-pc-linux-gnu" |
2189 |
+ ;; |
2190 |
+ esac |
2191 |
+ ;; |
2192 |
+ Darwin) |
2193 |
+ rev="`uname -r | cut -d'.' -f 1`" |
2194 |
+ if [[ ${rev} -ge 11 ]] ; then |
2195 |
+ # Lion and up are 64-bits default (and 64-bits CPUs) |
2196 |
+ CHOST="x86_64-apple-darwin$rev" |
2197 |
+ else |
2198 |
+ CHOST="`uname -p`-apple-darwin$rev" |
2199 |
+ fi |
2200 |
+ ;; |
2201 |
+ SunOS) |
2202 |
+ case `uname -p` in |
2203 |
+ i386) |
2204 |
+ CHOST="i386-pc-solaris`uname -r | sed 's|5|2|'`" |
2205 |
+ ;; |
2206 |
+ sparc) |
2207 |
+ CHOST="sparc-sun-solaris`uname -r | sed 's|5|2|'`" |
2208 |
+ ;; |
2209 |
+ esac |
2210 |
+ ;; |
2211 |
+ AIX) |
2212 |
+ # GNU coreutils uname sucks, it doesn't know what |
2213 |
+ # processor it is using on AIX. We mimick GNU CHOST |
2214 |
+ # guessing here, instead of what IBM uses itself. |
2215 |
+ CHOST="`/usr/bin/uname -p`-ibm-aix`oslevel`" |
2216 |
+ ;; |
2217 |
+ IRIX|IRIX64) |
2218 |
+ CHOST="mips-sgi-irix`uname -r`" |
2219 |
+ ;; |
2220 |
+ Interix) |
2221 |
+ case `uname -m` in |
2222 |
+ x86) CHOST="i586-pc-interix`uname -r`" ;; |
2223 |
+ *) eerror "Can't deal with interix `uname -m` (yet)" |
2224 |
+ exit 1 |
2225 |
+ ;; |
2226 |
+ esac |
2227 |
+ ;; |
2228 |
+ CYGWIN*) |
2229 |
+ # http://www.cygwin.com/ml/cygwin/2009-02/msg00669.html |
2230 |
+ case `uname -r` in |
2231 |
+ 1.7*) |
2232 |
+ CHOST="`uname -m`-pc-cygwin1.7" |
2233 |
+ ;; |
2234 |
+ *) |
2235 |
+ CHOST="`uname -m`-pc-cygwin" |
2236 |
+ ;; |
2237 |
+ esac |
2238 |
+ ;; |
2239 |
+ HP-UX) |
2240 |
+ case `uname -m` in |
2241 |
+ ia64) HP_ARCH=ia64 ;; |
2242 |
+ 9000/[678][0-9][0-9]) |
2243 |
+ if [ ! -x /usr/bin/getconf ]; then |
2244 |
+ eerror "Need /usr/bin/getconf to determine cpu" |
2245 |
+ exit 1 |
2246 |
+ fi |
2247 |
+ # from config.guess |
2248 |
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` |
2249 |
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` |
2250 |
+ case "${sc_cpu_version}" in |
2251 |
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 |
2252 |
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 |
2253 |
+ 532) # CPU_PA_RISC2_0 |
2254 |
+ case "${sc_kernel_bits}" in |
2255 |
+ 32) HP_ARCH="hppa2.0n" ;; |
2256 |
+ 64) HP_ARCH="hppa2.0w" ;; |
2257 |
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 |
2258 |
+ esac ;; |
2259 |
+ esac |
2260 |
+ ;; |
2261 |
+ esac |
2262 |
+ uname_r=`uname -r` |
2263 |
+ if [ -z "${HP_ARCH}" ]; then |
2264 |
+ error "Cannot determine cpu/kernel type" |
2265 |
+ exit ; |
2266 |
+ fi |
2267 |
+ CHOST="${HP_ARCH}-hp-hpux${uname_r#B.}" |
2268 |
+ unset HP_ARCH uname_r |
2269 |
+ ;; |
2270 |
+ FreeBSD) |
2271 |
+ case `uname -p` in |
2272 |
+ i386) |
2273 |
+ CHOST="i386-pc-freebsd`uname -r | sed 's|-.*$||'`" |
2274 |
+ ;; |
2275 |
+ amd64) |
2276 |
+ CHOST="x86_64-pc-freebsd`uname -r | sed 's|-.*$||'`" |
2277 |
+ ;; |
2278 |
+ sparc64) |
2279 |
+ CHOST="sparc64-unknown-freebsd`uname -r | sed 's|-.*$||'`" |
2280 |
+ ;; |
2281 |
+ *) |
2282 |
+ eerror "Sorry, don't know about FreeBSD on `uname -p` yet" |
2283 |
+ exit 1 |
2284 |
+ ;; |
2285 |
+ esac |
2286 |
+ ;; |
2287 |
+ NetBSD) |
2288 |
+ case `uname -p` in |
2289 |
+ i386) |
2290 |
+ CHOST="`uname -p`-pc-netbsdelf`uname -r`" |
2291 |
+ ;; |
2292 |
+ *) |
2293 |
+ eerror "Sorry, don't know about NetBSD on `uname -p` yet" |
2294 |
+ exit 1 |
2295 |
+ ;; |
2296 |
+ esac |
2297 |
+ ;; |
2298 |
+ OpenBSD) |
2299 |
+ case `uname -m` in |
2300 |
+ macppc) |
2301 |
+ CHOST="powerpc-unknown-openbsd`uname -r`" |
2302 |
+ ;; |
2303 |
+ i386) |
2304 |
+ CHOST="i386-pc-openbsd`uname -r`" |
2305 |
+ ;; |
2306 |
+ amd64) |
2307 |
+ CHOST="x86_64-pc-openbsd`uname -r`" |
2308 |
+ ;; |
2309 |
+ *) |
2310 |
+ eerror "Sorry, don't know about OpenBSD on `uname -m` yet" |
2311 |
+ exit 1 |
2312 |
+ ;; |
2313 |
+ esac |
2314 |
+ ;; |
2315 |
+ *) |
2316 |
+ eerror "Nothing known about platform `uname -s`." |
2317 |
+ eerror "Please set CHOST appropriately for your system" |
2318 |
+ eerror "and rerun $0" |
2319 |
+ exit 1 |
2320 |
+ ;; |
2321 |
+ esac |
2322 |
+ fi |
2323 |
+fi |
2324 |
+ |
2325 |
+# Now based on the CHOST set some required variables. Doing it here |
2326 |
+# allows for user set CHOST still to result in the appropriate variables |
2327 |
+# being set. |
2328 |
+case ${CHOST} in |
2329 |
+ *-*-solaris*) |
2330 |
+ if type -P gmake > /dev/null ; then |
2331 |
+ MAKE=gmake |
2332 |
+ else |
2333 |
+ MAKE=make |
2334 |
+ fi |
2335 |
+ ;; |
2336 |
+ *-sgi-irix*) |
2337 |
+ MAKE=gmake |
2338 |
+ ;; |
2339 |
+ *-aix*) |
2340 |
+ MAKE=make |
2341 |
+ # We do run in bash here, no? It is ways faster than /bin/sh. |
2342 |
+ : ${CONFIG_SHELL:=${BASH}} |
2343 |
+ ;; |
2344 |
+ *) |
2345 |
+ MAKE=make |
2346 |
+ ;; |
2347 |
+esac |
2348 |
+ |
2349 |
+# deal with a problem on OSX with Python's locales |
2350 |
+case ${CHOST}:${LC_ALL}:${LANG} in |
2351 |
+ *-darwin*:UTF-8:*|*-darwin*:*:UTF-8) |
2352 |
+ eerror "Your LC_ALL and/or LANG is set to 'UTF-8'." |
2353 |
+ eerror "This setting is known to cause trouble with Python. Please run" |
2354 |
+ case ${SHELL} in |
2355 |
+ */tcsh|*/csh) |
2356 |
+ eerror " setenv LC_ALL en_US.UTF-8" |
2357 |
+ eerror " setenv LANG en_US.UTF-8" |
2358 |
+ eerror "and make it permanent by adding it to your ~/.${SHELL##*/}rc" |
2359 |
+ exit 1 |
2360 |
+ ;; |
2361 |
+ *) |
2362 |
+ eerror " export LC_ALL=en_US.UTF-8" |
2363 |
+ eerror " export LANG=en_US.UTF-8" |
2364 |
+ eerror "and make it permanent by adding it to your ~/.profile" |
2365 |
+ exit 1 |
2366 |
+ ;; |
2367 |
+ esac |
2368 |
+ ;; |
2369 |
+esac |
2370 |
+ |
2371 |
+# Just guessing a prefix is kind of scary. Hence, to make it a bit less |
2372 |
+# scary, we force the user to give the prefix location here. This also |
2373 |
+# makes the script a bit less dangerous as it will die when just run to |
2374 |
+# "see what happens". |
2375 |
+if [[ -n $1 && -z $2 ]] ; then |
2376 |
+ echo "usage: $0 [<prefix-path> <action>]" |
2377 |
+ echo |
2378 |
+ echo "Either you give no argument and I'll ask you interactively, or" |
2379 |
+ echo "you need to give both the path offset for your Gentoo prefixed" |
2380 |
+ echo "portage installation, and the action I should do there, e.g." |
2381 |
+ echo " $0 $HOME/prefix <action>" |
2382 |
+ echo |
2383 |
+ echo "See the source of this script for which actions exist." |
2384 |
+ echo |
2385 |
+ echo "$0: insufficient number of arguments" 1>&2 |
2386 |
+ exit 1 |
2387 |
+elif [[ -z $1 ]] ; then |
2388 |
+ bootstrap_interactive |
2389 |
+ exit 0 |
2390 |
+fi |
2391 |
+ |
2392 |
+ROOT="$1" |
2393 |
+ |
2394 |
+case $ROOT in |
2395 |
+ chost.guess) |
2396 |
+ # undocumented feature that sort of is our own config.guess, if |
2397 |
+ # CHOST was unset, it now contains the guessed CHOST |
2398 |
+ echo "$CHOST" |
2399 |
+ exit 0 |
2400 |
+ ;; |
2401 |
+ /*) ;; |
2402 |
+ *) |
2403 |
+ echo "Your path offset needs to be absolute!" 1>&2 |
2404 |
+ exit 1 |
2405 |
+ ;; |
2406 |
+esac |
2407 |
+ |
2408 |
+CXXFLAGS="${CXXFLAGS:-${CFLAGS}}" |
2409 |
+PORTDIR=${PORTDIR:-"${ROOT}/usr/portage"} |
2410 |
+PORTDIR_RAP=${PORTDIR_RAP:-"${ROOT}/usr/local/portage"} |
2411 |
+DISTDIR=${DISTDIR:-"${PORTDIR}/distfiles"} |
2412 |
+PORTAGE_TMPDIR=${ROOT}/var/tmp |
2413 |
+DISTFILES_URL="http://dev.gentoo.org/~grobian/distfiles" |
2414 |
+SNAPSHOT_URL="http://prefix.gentooexperimental.org/snapshots" |
2415 |
+GNU_URL=${GNU_URL:="http://ftp.gnu.org/gnu"} |
2416 |
+GENTOO_MIRRORS=${GENTOO_MIRRORS:="http://distfiles.gentoo.org"} |
2417 |
+GCC_APPLE_URL="http://www.opensource.apple.com/darwinsource/tarballs/other" |
2418 |
+ |
2419 |
+export MAKE CONFIG_SHELL |
2420 |
+ |
2421 |
+ |
2422 |
+einfo "Bootstrapping Gentoo prefixed portage installation using" |
2423 |
+einfo "host: ${CHOST}" |
2424 |
+einfo "prefix: ${ROOT}" |
2425 |
+ |
2426 |
+TODO=${2} |
2427 |
+if [[ ${TODO} != "noninteractive" && $(type -t bootstrap_${TODO}) != "function" ]]; |
2428 |
+then |
2429 |
+ eerror "bootstrap target ${TODO} unknown" |
2430 |
+ exit 1 |
2431 |
+fi |
2432 |
+ |
2433 |
+if [[ -n ${LD_LIBARY_PATH} || -n ${DYLD_LIBRARY_PATH} ]] ; then |
2434 |
+ eerror "EEEEEK! You have LD_LIBRARY_PATH or DYLD_LIBRARY_PATH set" |
2435 |
+ eerror "in your environment. This is a guarantee for TROUBLE." |
2436 |
+ eerror "Cowardly refusing to operate any further this way!" |
2437 |
+ exit 1 |
2438 |
+fi |
2439 |
+ |
2440 |
+if [[ -n ${PKG_CONFIG_PATH} ]] ; then |
2441 |
+ eerror "YUK! You have PKG_CONFIG_PATH set in your environment." |
2442 |
+ eerror "This is a guarantee for TROUBLE." |
2443 |
+ eerror "Cowardly refusing to operate any further this way!" |
2444 |
+ exit 1 |
2445 |
+fi |
2446 |
+ |
2447 |
+einfo "ready to bootstrap ${TODO}" |
2448 |
+# bootstrap_interactive proceeds with guessed defaults when TODO=noninteractive |
2449 |
+bootstrap_${TODO#non} || exit 1 |