mirror of
https://github.com/pyenv/pyenv.git
synced 2025-11-13 05:43:53 -05:00
Compare commits
611 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c452da8084 | ||
|
|
e6090f00f3 | ||
|
|
6868d3053a | ||
|
|
10d3123caa | ||
|
|
2d16c638e9 | ||
|
|
3ae068b492 | ||
|
|
824f7e6b21 | ||
|
|
5d247793e6 | ||
|
|
ed700c0185 | ||
|
|
193e64b6b2 | ||
|
|
5ba585769b | ||
|
|
5540e235ab | ||
|
|
c9268bb0dc | ||
|
|
5ddc14704c | ||
|
|
5fcb4cf0bf | ||
|
|
0f288f2462 | ||
|
|
0c81c97926 | ||
|
|
5ff089de9c | ||
|
|
459725df3c | ||
|
|
ec3b7d815d | ||
|
|
afe86aef52 | ||
|
|
461ae27a19 | ||
|
|
c0f691fc57 | ||
|
|
ffc899475a | ||
|
|
57d1c9d6be | ||
|
|
9d488c9760 | ||
|
|
3db1ac13d2 | ||
|
|
880fa46156 | ||
|
|
24ad375a35 | ||
|
|
7f32e96c28 | ||
|
|
294738842c | ||
|
|
ce671398f8 | ||
|
|
a3bea25ddc | ||
|
|
1a66a9141b | ||
|
|
78c1d7186d | ||
|
|
9b60d73ec8 | ||
|
|
8a9d2557a0 | ||
|
|
2a79db00b0 | ||
|
|
3e7839c5b7 | ||
|
|
36c5cbf74f | ||
|
|
608ad6f9d0 | ||
|
|
7a6eb38a36 | ||
|
|
cd40335ba4 | ||
|
|
26450fd0ab | ||
|
|
22ecefd572 | ||
|
|
abae52ae20 | ||
|
|
114063495f | ||
|
|
7b797c3797 | ||
|
|
8e276a009e | ||
|
|
4198280142 | ||
|
|
5cb9c9af2e | ||
|
|
d6230578ec | ||
|
|
62bf3d9b61 | ||
|
|
55e6e7143a | ||
|
|
1e78acb701 | ||
|
|
648afe05a9 | ||
|
|
9aee57d965 | ||
|
|
ed684c239c | ||
|
|
fe934642c5 | ||
|
|
7c4c1757f7 | ||
|
|
1b066598ce | ||
|
|
cc94ad39f1 | ||
|
|
c754efc44b | ||
|
|
46ffb0c8df | ||
|
|
70cce28ba3 | ||
|
|
9156191168 | ||
|
|
5402ce423b | ||
|
|
2ea2e7558d | ||
|
|
9d8da866f1 | ||
|
|
70fa356585 | ||
|
|
31fb290de2 | ||
|
|
e285f2e5b1 | ||
|
|
1d31529b46 | ||
|
|
6f40dae3d7 | ||
|
|
d2794f54e5 | ||
|
|
bc03106cee | ||
|
|
bf93b90282 | ||
|
|
7b8bd11416 | ||
|
|
f623231734 | ||
|
|
481198d255 | ||
|
|
50d5de4731 | ||
|
|
15977c852d | ||
|
|
10d5d9a24f | ||
|
|
be037932ca | ||
|
|
af95960960 | ||
|
|
17c153b1c1 | ||
|
|
065f5578b1 | ||
|
|
71c9ff565b | ||
|
|
88270e83e8 | ||
|
|
b09681c9fb | ||
|
|
80eef69c9a | ||
|
|
bc025641c2 | ||
|
|
5dc3ee95fd | ||
|
|
4903223f23 | ||
|
|
1aea75055a | ||
|
|
f30085eaf4 | ||
|
|
43d311ef58 | ||
|
|
239f4a6b51 | ||
|
|
1463968a3f | ||
|
|
97c6a4c932 | ||
|
|
5131ef521b | ||
|
|
1d7ce651b0 | ||
|
|
c335f96eac | ||
|
|
f0eeac63a3 | ||
|
|
4ebe18a273 | ||
|
|
ab2aa6d13b | ||
|
|
431761d125 | ||
|
|
e6e858c33b | ||
|
|
e9aa6cf649 | ||
|
|
4e30b1a5e1 | ||
|
|
2beef3c455 | ||
|
|
797975b742 | ||
|
|
527334b401 | ||
|
|
292813eca3 | ||
|
|
d935a2a994 | ||
|
|
d9a7117c3b | ||
|
|
6596657004 | ||
|
|
f48a5b11d7 | ||
|
|
4d72eefffc | ||
|
|
b6ac87c220 | ||
|
|
6b908bf39f | ||
|
|
f87d8762eb | ||
|
|
c54fa3731f | ||
|
|
efe461d2b4 | ||
|
|
4540967250 | ||
|
|
d14357f64c | ||
|
|
d6e1de3e2f | ||
|
|
063717e6b5 | ||
|
|
4d0c289287 | ||
|
|
52bb0dcfcf | ||
|
|
5a05788e61 | ||
|
|
48335302d9 | ||
|
|
98953c2e14 | ||
|
|
9ae8ba8a29 | ||
|
|
1a7f49d2f0 | ||
|
|
70c6d3f67e | ||
|
|
9146f44db1 | ||
|
|
b9ae43a9df | ||
|
|
f6a77549eb | ||
|
|
cbd246acff | ||
|
|
9d21169ee0 | ||
|
|
7bceb85067 | ||
|
|
eeb69b1b79 | ||
|
|
b155380a06 | ||
|
|
cd60df52af | ||
|
|
6820704c91 | ||
|
|
8abefe1fcb | ||
|
|
b22fcd9759 | ||
|
|
45df273592 | ||
|
|
dbd50e7bd9 | ||
|
|
1c0a5d8264 | ||
|
|
7c7cca8a26 | ||
|
|
123b3af1a0 | ||
|
|
ba9c01ce77 | ||
|
|
7535efe031 | ||
|
|
995da2df89 | ||
|
|
f28b3ee123 | ||
|
|
97b957d5d5 | ||
|
|
fe2412c95d | ||
|
|
5114600c4d | ||
|
|
96d3bd6379 | ||
|
|
e8433cfeb3 | ||
|
|
7f88eabd0b | ||
|
|
3a5c2cabb1 | ||
|
|
871ec77795 | ||
|
|
7e0e85bdda | ||
|
|
d1a0398fdb | ||
|
|
67f429c41d | ||
|
|
632263568e | ||
|
|
bf39d88d11 | ||
|
|
07d675350f | ||
|
|
39cde6fc95 | ||
|
|
1381c2ca79 | ||
|
|
89d4e8a0e0 | ||
|
|
a8df5d587c | ||
|
|
e2173df4aa | ||
|
|
e851250da6 | ||
|
|
c69d9a1128 | ||
|
|
f4652fbbf0 | ||
|
|
3ee395f9b5 | ||
|
|
e4cbf04592 | ||
|
|
6bb7f07d2d | ||
|
|
51bd975820 | ||
|
|
294cff3fd4 | ||
|
|
a6e0785b84 | ||
|
|
302b317b89 | ||
|
|
8facb3b3a7 | ||
|
|
b5622bee3a | ||
|
|
3f74da0e73 | ||
|
|
68b92a7f5d | ||
|
|
8bac958994 | ||
|
|
5287e2ebf4 | ||
|
|
284588f9b4 | ||
|
|
16c7eb4135 | ||
|
|
9bcef4b875 | ||
|
|
f237a11f4f | ||
|
|
13a474c4e9 | ||
|
|
fe0b2436b8 | ||
|
|
808527b5d0 | ||
|
|
f71e22768c | ||
|
|
b025dfcf58 | ||
|
|
f205ec8359 | ||
|
|
f50cee2ac7 | ||
|
|
3be9773c4f | ||
|
|
2fd3b18d39 | ||
|
|
14bc162ca6 | ||
|
|
1a6bada94c | ||
|
|
eda535a942 | ||
|
|
1e1c9cb0dc | ||
|
|
3dc0005032 | ||
|
|
6d0bf9b39f | ||
|
|
2f5d9a6f90 | ||
|
|
783618b89c | ||
|
|
4f2f6f8575 | ||
|
|
59aca30267 | ||
|
|
605e691bff | ||
|
|
09ec276a85 | ||
|
|
590b19a1b1 | ||
|
|
be5e1a4ded | ||
|
|
8650de0c0c | ||
|
|
95a039aaaa | ||
|
|
f1fdb9bbc8 | ||
|
|
44e76bea23 | ||
|
|
a898e2a534 | ||
|
|
681435e0b4 | ||
|
|
d2eace00c9 | ||
|
|
3300587c6b | ||
|
|
878bd87328 | ||
|
|
ff23666d56 | ||
|
|
f4fade3d26 | ||
|
|
16c3e0ddac | ||
|
|
0d216c2d82 | ||
|
|
a1fb5b1153 | ||
|
|
e97326845c | ||
|
|
71a6d791c2 | ||
|
|
5ae2cac088 | ||
|
|
31fab8cdae | ||
|
|
5bfec84432 | ||
|
|
caa4a8e228 | ||
|
|
bdcc2e1790 | ||
|
|
749f21e482 | ||
|
|
1cc75362d6 | ||
|
|
a2adc61c6f | ||
|
|
c7208bf1ff | ||
|
|
db143bb654 | ||
|
|
8b043038b8 | ||
|
|
5130b41f5b | ||
|
|
81bb14e181 | ||
|
|
e93ab45dc3 | ||
|
|
060f141b21 | ||
|
|
6ca591ab75 | ||
|
|
bc1049f5ae | ||
|
|
05568496c1 | ||
|
|
ab9ebb9d0d | ||
|
|
ab197ef51e | ||
|
|
7fc5f46bbb | ||
|
|
969af1567a | ||
|
|
7a10b64cf7 | ||
|
|
f6db678b20 | ||
|
|
97290b2442 | ||
|
|
b8504ed2a9 | ||
|
|
497911d6c0 | ||
|
|
4d96d0a6c6 | ||
|
|
9b58b6642e | ||
|
|
45f651ab00 | ||
|
|
400fe31061 | ||
|
|
4b6ab0389b | ||
|
|
baf7656d2f | ||
|
|
382db59cd0 | ||
|
|
2bbf49b2f5 | ||
|
|
6a6ae8ae46 | ||
|
|
03fa148e81 | ||
|
|
ea3203dbab | ||
|
|
a81ace2ccb | ||
|
|
a7da06998e | ||
|
|
5e5e3e0588 | ||
|
|
bc369fb1ab | ||
|
|
bb6bccb782 | ||
|
|
1fe59e41ea | ||
|
|
0d1f1d09f0 | ||
|
|
13f36e0416 | ||
|
|
e3f72ebae2 | ||
|
|
98f45695db | ||
|
|
3cb95b4d2d | ||
|
|
892aea138e | ||
|
|
045f6c1bce | ||
|
|
1d4261a997 | ||
|
|
da80bced53 | ||
|
|
1d687ac734 | ||
|
|
bef7a12964 | ||
|
|
14ff078b85 | ||
|
|
cd940bd797 | ||
|
|
093809eac6 | ||
|
|
c56f72794e | ||
|
|
9375e99f92 | ||
|
|
b66eeaf2f7 | ||
|
|
c6855e01a9 | ||
|
|
7f975a37f9 | ||
|
|
41cfa5f3d0 | ||
|
|
9c45206c28 | ||
|
|
308aa42b67 | ||
|
|
5174d14d5c | ||
|
|
6fe338e563 | ||
|
|
266d896871 | ||
|
|
7e85ae7bd2 | ||
|
|
9a284a3da4 | ||
|
|
871f0e26df | ||
|
|
e56885f4c9 | ||
|
|
149f4b4607 | ||
|
|
80750f730f | ||
|
|
253f6ee1d9 | ||
|
|
bac149e824 | ||
|
|
3ec34448fa | ||
|
|
919c4240fc | ||
|
|
44c2378f2a | ||
|
|
377b176260 | ||
|
|
d2a8ca7d89 | ||
|
|
d4faae187a | ||
|
|
5e52fae7c1 | ||
|
|
b974bf54dc | ||
|
|
4b6c91e827 | ||
|
|
51467dc4a3 | ||
|
|
eb79a3edaa | ||
|
|
37eca782cc | ||
|
|
19666f2598 | ||
|
|
3436bddaea | ||
|
|
5cc6b0e3d3 | ||
|
|
2b21e22e97 | ||
|
|
57df945738 | ||
|
|
e2e474c59d | ||
|
|
4c19dc22d7 | ||
|
|
ef44b4ccac | ||
|
|
8ee2f2657a | ||
|
|
f635c8715c | ||
|
|
3ceeb72ac6 | ||
|
|
e0b8938fef | ||
|
|
811ca05916 | ||
|
|
df9bbd7ab3 | ||
|
|
339e331f1d | ||
|
|
283e67b57e | ||
|
|
6c1fb9ffd0 | ||
|
|
c3fe192243 | ||
|
|
1ebcbd92e2 | ||
|
|
3060578e3b | ||
|
|
b8715bfee6 | ||
|
|
7fe9231e64 | ||
|
|
9289af0132 | ||
|
|
1f7722088d | ||
|
|
e548877ead | ||
|
|
21391c8d2f | ||
|
|
99551dd1ec | ||
|
|
b5a26936e8 | ||
|
|
cf28136003 | ||
|
|
349236c932 | ||
|
|
0ce6fad14e | ||
|
|
0a9e2baef1 | ||
|
|
da562ad74c | ||
|
|
d45dc17f25 | ||
|
|
7f1aefa09b | ||
|
|
2162054659 | ||
|
|
0ff3ca8a12 | ||
|
|
47c8a0e0b8 | ||
|
|
2a347226df | ||
|
|
962452d6d1 | ||
|
|
2df165c49e | ||
|
|
fc3a634e22 | ||
|
|
01a9141780 | ||
|
|
f783b9ec0d | ||
|
|
b745a51f30 | ||
|
|
02332d78f3 | ||
|
|
183c780698 | ||
|
|
406c8e0303 | ||
|
|
6778c8e905 | ||
|
|
3a94daeaf8 | ||
|
|
e5c64db280 | ||
|
|
d3700dfd70 | ||
|
|
975b45dbfe | ||
|
|
a49b07975c | ||
|
|
5e57ab95ce | ||
|
|
9c43fa9161 | ||
|
|
9b286ecbfd | ||
|
|
b7e9569ccb | ||
|
|
e922131422 | ||
|
|
34813ef32c | ||
|
|
e899f1d31c | ||
|
|
d1bfeee334 | ||
|
|
9ea1f7d53e | ||
|
|
f40bc773d2 | ||
|
|
5d0a6630b9 | ||
|
|
114b81c9a4 | ||
|
|
b10bdb1e78 | ||
|
|
ee5ad02d42 | ||
|
|
cd2094ff71 | ||
|
|
5052a4161c | ||
|
|
7fbcde8af0 | ||
|
|
b670849ebd | ||
|
|
288c6b3f09 | ||
|
|
802d70568c | ||
|
|
c4721169e3 | ||
|
|
efe600f6de | ||
|
|
7e83e07cf3 | ||
|
|
65f0be0c20 | ||
|
|
adf9c97616 | ||
|
|
dfc7645609 | ||
|
|
9dde161b65 | ||
|
|
0324b118ee | ||
|
|
4cc6665d0a | ||
|
|
be7dcc0ad8 | ||
|
|
01a0ad0b69 | ||
|
|
2bbe2099eb | ||
|
|
e49be969ab | ||
|
|
fb0ec9e157 | ||
|
|
525c960dea | ||
|
|
ddd4db1b05 | ||
|
|
7a929b8a84 | ||
|
|
2cd12e3fa6 | ||
|
|
4965a1d1f7 | ||
|
|
dc1f583903 | ||
|
|
500c6de37c | ||
|
|
88e59647ae | ||
|
|
53d45707ca | ||
|
|
828051e651 | ||
|
|
149e61a649 | ||
|
|
4712db8edd | ||
|
|
7ba843c585 | ||
|
|
26a08c6d12 | ||
|
|
72b62e13aa | ||
|
|
09d912895f | ||
|
|
ada26ab92e | ||
|
|
058e2cb7a6 | ||
|
|
a3d3005859 | ||
|
|
c954d57555 | ||
|
|
0a4ffcd15f | ||
|
|
65bf6279fa | ||
|
|
07815769ae | ||
|
|
a3deeba0a0 | ||
|
|
10084ae020 | ||
|
|
8ce5e84c21 | ||
|
|
f9fb3c934e | ||
|
|
eae5e5e092 | ||
|
|
a238099e38 | ||
|
|
7d9989ff58 | ||
|
|
699cd8c203 | ||
|
|
096743acde | ||
|
|
0c7c62dc04 | ||
|
|
2b5fb40b99 | ||
|
|
96b98ed039 | ||
|
|
789ace54ec | ||
|
|
d289998250 | ||
|
|
5cf661517b | ||
|
|
c6c6ebaf40 | ||
|
|
94d87211f9 | ||
|
|
919fc872c8 | ||
|
|
305db1c35b | ||
|
|
568cd4b23e | ||
|
|
b4f8906b24 | ||
|
|
465a1472ba | ||
|
|
3644840d4b | ||
|
|
03d664e048 | ||
|
|
61830048d5 | ||
|
|
69d596f56f | ||
|
|
4923838981 | ||
|
|
f1ca8906c0 | ||
|
|
43520db389 | ||
|
|
d50ce90a36 | ||
|
|
6da85246c6 | ||
|
|
eefd5ea47d | ||
|
|
964c12fe27 | ||
|
|
0632325a43 | ||
|
|
2e3e141d2e | ||
|
|
c36950a7cb | ||
|
|
8f6b0bc1d4 | ||
|
|
7ac964353f | ||
|
|
c6ce8fafd8 | ||
|
|
6fa81ef28d | ||
|
|
e5c0fd22e1 | ||
|
|
96679b7715 | ||
|
|
ed9f69fe23 | ||
|
|
fb6eee26d4 | ||
|
|
1ba2ce0cb6 | ||
|
|
76929320c8 | ||
|
|
5ad45afe5e | ||
|
|
b81b64453b | ||
|
|
db2a94d4bc | ||
|
|
579a398e4e | ||
|
|
783a5700c4 | ||
|
|
63f29341d5 | ||
|
|
555472210b | ||
|
|
39497042bc | ||
|
|
837bfc5aa9 | ||
|
|
042794b651 | ||
|
|
d14529461b | ||
|
|
c928ba7a21 | ||
|
|
75f65a980b | ||
|
|
5130f0464a | ||
|
|
bff38d7e71 | ||
|
|
f9225d9cb4 | ||
|
|
5a4bee6eb5 | ||
|
|
a6727bf9ed | ||
|
|
aade3ad781 | ||
|
|
af36d449bf | ||
|
|
5be66da9f4 | ||
|
|
53d55eb08c | ||
|
|
506bc3634f | ||
|
|
1d5c6531a2 | ||
|
|
20425c297f | ||
|
|
174e101799 | ||
|
|
113e037646 | ||
|
|
1411fa5a16 | ||
|
|
7bbfecd9af | ||
|
|
09291712ed | ||
|
|
b7e19b4953 | ||
|
|
49ecbe147f | ||
|
|
b45bce80ca | ||
|
|
3cd08f7c09 | ||
|
|
71b5965540 | ||
|
|
1700206da8 | ||
|
|
6d6b1d6002 | ||
|
|
dd8a005c7d | ||
|
|
3efdf6a243 | ||
|
|
bd1e56ff37 | ||
|
|
e43a2039a5 | ||
|
|
8dd666992e | ||
|
|
01ddcd7f1d | ||
|
|
a14095f299 | ||
|
|
1ed231cb21 | ||
|
|
7a0cde9a4e | ||
|
|
83ced494fa | ||
|
|
8685c899ba | ||
|
|
6938692ca2 | ||
|
|
b4c100e149 | ||
|
|
398e963312 | ||
|
|
aae721c5f1 | ||
|
|
5c11f14c9b | ||
|
|
dfe9889327 | ||
|
|
192dc23998 | ||
|
|
6c468d6166 | ||
|
|
bfa71017ae | ||
|
|
066d63c0df | ||
|
|
7c8da88df6 | ||
|
|
06bf3a351a | ||
|
|
f8f49fd565 | ||
|
|
77964fb83e | ||
|
|
b4a91648eb | ||
|
|
e8d010f33c | ||
|
|
a804b5eb21 | ||
|
|
71493e8065 | ||
|
|
5394347500 | ||
|
|
f2f8ef88a5 | ||
|
|
3f3992d95a | ||
|
|
bd0e1a73f9 | ||
|
|
2a495dc9ac | ||
|
|
2fa7432060 | ||
|
|
9f18fe5031 | ||
|
|
cd24495045 | ||
|
|
1235cbd0ef | ||
|
|
f84dc27c58 | ||
|
|
4ee92fca43 | ||
|
|
00b8b4db33 | ||
|
|
917b3687cb | ||
|
|
4714b5bd4e | ||
|
|
271bfea97d | ||
|
|
70e1f61337 | ||
|
|
df61a76ab0 | ||
|
|
fffb29d695 | ||
|
|
7ce04a6e03 | ||
|
|
f904d1b92f | ||
|
|
ccf7c29fc4 | ||
|
|
e4a040f1e0 | ||
|
|
3b13dc9c14 | ||
|
|
5d8c40444d | ||
|
|
df034f5d35 | ||
|
|
f7c463bed9 | ||
|
|
4e79ba15f7 | ||
|
|
2099355ad5 | ||
|
|
c3089c8439 | ||
|
|
67d3d6b12d | ||
|
|
b6ebc2f08b | ||
|
|
e0e2d93639 | ||
|
|
a9837f3a06 | ||
|
|
4668a2e2ed | ||
|
|
a62bd23ba2 | ||
|
|
d257b562e5 | ||
|
|
652135db7f | ||
|
|
86362408f1 | ||
|
|
735a2bc4e7 | ||
|
|
044eb6c802 | ||
|
|
643817fa1c | ||
|
|
d65141c7b5 | ||
|
|
15356aebc6 | ||
|
|
eccdec3740 | ||
|
|
6df306d8f8 | ||
|
|
55ce7850ad | ||
|
|
ce8d3278a4 | ||
|
|
06228d3583 | ||
|
|
ad2c605d3f | ||
|
|
43624943ee | ||
|
|
8f9a34d9b1 | ||
|
|
c957d83b3a | ||
|
|
41c5ac5a33 | ||
|
|
e9881119d8 | ||
|
|
355e7c1c96 | ||
|
|
8246dc8d8a | ||
|
|
fb31290b9d | ||
|
|
4acefd6ef9 | ||
|
|
0c66f62c17 | ||
|
|
b5d030bee7 | ||
|
|
6ec91083d8 | ||
|
|
af6b06743b | ||
|
|
1da746543f | ||
|
|
99035a49a9 |
@@ -1,4 +1,5 @@
|
|||||||
install: git clone https://github.com/sstephenson/bats.git
|
sudo: false
|
||||||
|
install: git clone --depth 1 https://github.com/sstephenson/bats.git
|
||||||
script: make test
|
script: make test
|
||||||
language: c
|
language: c
|
||||||
env:
|
env:
|
||||||
|
|||||||
87
CHANGELOG.md
87
CHANGELOG.md
@@ -1,5 +1,90 @@
|
|||||||
## Version History
|
## Version History
|
||||||
|
|
||||||
|
### 20150913
|
||||||
|
|
||||||
|
* python-build: Add CPython 3.5.0
|
||||||
|
* python-build: Remove CPython 3.5.0 release candidates
|
||||||
|
* python-build: Fixed anaconda3 repo's paths (#439)
|
||||||
|
* python-build: Add miniconda-3.16.0 and miniconda3-3.16.0 (#435)
|
||||||
|
|
||||||
|
### 20150901
|
||||||
|
|
||||||
|
* python-build: Add CPython 3.5.0 release candidates; 3.5.0rc1 and 3.5.0rc2
|
||||||
|
* python-build: Disabled `_FORTITY_SOURCE` to fix CPython >= 2.4, <= 2.4.3 builds (#422)
|
||||||
|
* python-build: Removed CPython 3.5.0 betas
|
||||||
|
* python-build: Add miniconda-3.10.1 and miniconda3-3.10.1 (#414)
|
||||||
|
* python-build: Add PyPy 2.6.1 (#433)
|
||||||
|
* python-build: Add PyPy-STM 2.3 and 2.5.1 (#428)
|
||||||
|
* python-build: Ignore user's site-packages on ensurepip/get-pip (#411)
|
||||||
|
* pyenv: Import recent changes from ruby-build v20150818
|
||||||
|
|
||||||
|
#### 20150719
|
||||||
|
|
||||||
|
* python-build: Add CPython `3.6-dev` (#413)
|
||||||
|
* python-build: Add Anaconda/Anaconda3 2.3.0
|
||||||
|
* python-build: Fix download URL of portable PyPy 2.6 (fixes #389)
|
||||||
|
* python-build: Use custom `MACOSX_DEPLOYMENT_TARGET` if defined (#312)
|
||||||
|
* python-build: Use original CPython repository instead of mirror at bitbucket.org as the source of `*-dev` versions (#409)
|
||||||
|
* python-build: Pin pip version to 1.5.6 for python 3.1.5 (#351)
|
||||||
|
|
||||||
|
#### 20150601
|
||||||
|
|
||||||
|
* python-build: Add PyPy 2.6.0
|
||||||
|
* python-build: Add PyPy 2.5.1 portable
|
||||||
|
* python-build: Add CPython 3.5.0 beta releases; 3.5.0b1 and 3.5.0b2
|
||||||
|
* python-build: Removed CPython 3.5.0 alpha releases
|
||||||
|
* python-build: Fix inverted condition for `--altinstall` of ensurepip (#255)
|
||||||
|
* python-build: Skip installing `setuptools` by `ez_setup.py` explicitly (fixes #381)
|
||||||
|
* python-build: Import changes from ruby-build v20150519
|
||||||
|
|
||||||
|
#### 20150524
|
||||||
|
|
||||||
|
* pyenv: Improve `pyenv version`, if there is one missing (#290)
|
||||||
|
* pyenv: Improve pip-rehash to handle versions in command, like `pip2` and `pip3.4` (#368)
|
||||||
|
* python-build: Add CPython release; 2.7.10 (#380)
|
||||||
|
* python-build: Add Miniconda/Miniconda3 3.9.1 and Anaconda/Anaconda3 2.2.0 (#375, #376)
|
||||||
|
|
||||||
|
#### 20150504
|
||||||
|
|
||||||
|
* python-build: Add Jython 2.7.0
|
||||||
|
* python-build: Add CPython alpha release; 3.5.0a4
|
||||||
|
* python-build: Add CPython 3.1, 3.1.1, and 3.1.2
|
||||||
|
* python-build: Fix pip version to 1.5.6 for CPython 3.1.x (#351)
|
||||||
|
|
||||||
|
#### 20150326
|
||||||
|
|
||||||
|
* python-build: Add Portable PyPy binaries from https://github.com/squeaky-pl/portable-pypy (#329)
|
||||||
|
* python-build: Add CPython alpha release; 3.5.0a2 (#328)
|
||||||
|
* python-build: Add pypy-2.5.1 (fixes #338)
|
||||||
|
* pyenv: Import recent changes from rbenv 4d72eefffc548081f6eee2e54d3b9116b9f9ee8e
|
||||||
|
|
||||||
|
#### 20150226
|
||||||
|
|
||||||
|
* python-build: Add CPython release; 3.4.3 (#323)
|
||||||
|
* python-build: Add CPython alpha release; 3.5.0a1 (#324)
|
||||||
|
* python-build: Add Miniconda/Miniconda3 3.8.3 (#318)
|
||||||
|
|
||||||
|
#### 20150204
|
||||||
|
|
||||||
|
* python-build: Add PyPy 2.5.0 release (#311)
|
||||||
|
* python-build: Add note about `--enable-shared` and RPATH (#217)
|
||||||
|
* python-build: Fix regression of `PYTHON_MAKE_INSTALL_TARGET` and add test (#255)
|
||||||
|
* python-build: Symlink `pythonX.Y-config` to `python-config` if `python-config` is missing (#296)
|
||||||
|
* python-build: Latest `pip` can't be installed into `3.0.1` (#309)
|
||||||
|
|
||||||
|
#### 20150124
|
||||||
|
|
||||||
|
* python-build: Import recent changes from ruby-build v20150112
|
||||||
|
* python-build: Prevent adding `/Library/Python/X.X/site-packages` to `sys.path` whtn `--enable-framework` is enabled on OS X. Thanks @s1341 (#292)
|
||||||
|
* python-build: Add new IronPython release; 2.7.5
|
||||||
|
|
||||||
|
#### 20141211
|
||||||
|
|
||||||
|
* pyenv: Add bulit-in `pip-rehash` feature. You don't need to install [pyenv-pip-rehash](https://github.com/yyuu/pyenv-pip-rehash) anymore.
|
||||||
|
* python-build: Add new CPython release; 2.7.9 (#284)
|
||||||
|
* python-build: Add new PyPy releases; pypy3-2.4.0, pypy3-2.4.0-src (#277)
|
||||||
|
* python-build: Add build definitions of PyPy nightly build
|
||||||
|
|
||||||
#### 20141127
|
#### 20141127
|
||||||
|
|
||||||
* python-build: Add new CPython release candidates; 2.7.9rc1 (#276)
|
* python-build: Add new CPython release candidates; 2.7.9rc1 (#276)
|
||||||
@@ -196,7 +281,7 @@
|
|||||||
|
|
||||||
#### 0.4.0-20130726
|
#### 0.4.0-20130726
|
||||||
|
|
||||||
* pyenv: Fix minor issue of variable scope in `pyenv versions`
|
* pyenv: Fix minor issue of variable scope in `pyenv versions`
|
||||||
* python-build: Update base version to ruby-build v20130628
|
* python-build: Update base version to ruby-build v20130628
|
||||||
* python-build: Use brew managed OpenSSL and GNU Readline if they are available
|
* python-build: Use brew managed OpenSSL and GNU Readline if they are available
|
||||||
* python-build: Fix build of CPython 3.3+ on OS X (#29)
|
* python-build: Fix build of CPython 3.3+ on OS X (#29)
|
||||||
|
|||||||
4
Makefile
4
Makefile
@@ -1,5 +1,9 @@
|
|||||||
.PHONY: test
|
.PHONY: test
|
||||||
|
|
||||||
|
# Do not pass in user flags to build tests.
|
||||||
|
unexport PYTHON_CFLAGS
|
||||||
|
unexport PYTHON_CONFIGURE_OPTS
|
||||||
|
|
||||||
test: bats
|
test: bats
|
||||||
PATH="./bats/bin:$$PATH" test/run
|
PATH="./bats/bin:$$PATH" test/run
|
||||||
cd plugins/python-build && $(PWD)/bats/bin/bats $${CI:+--tap} test
|
cd plugins/python-build && $(PWD)/bats/bin/bats $${CI:+--tap} test
|
||||||
|
|||||||
20
README.md
20
README.md
@@ -1,6 +1,6 @@
|
|||||||
# Simple Python Version Management: pyenv
|
# Simple Python Version Management: pyenv
|
||||||
|
|
||||||
[](https://travis-ci.org/yyuu/pyenv)
|
[](https://travis-ci.org/yyuu/pyenv)
|
||||||
|
|
||||||
pyenv lets you easily switch between multiple versions of Python. It's
|
pyenv lets you easily switch between multiple versions of Python. It's
|
||||||
simple, unobtrusive, and follows the UNIX tradition of single-purpose
|
simple, unobtrusive, and follows the UNIX tradition of single-purpose
|
||||||
@@ -126,9 +126,16 @@ reading it from the following sources, in this order:
|
|||||||
Python. (In other words, whatever version would run if pyenv weren't in your
|
Python. (In other words, whatever version would run if pyenv weren't in your
|
||||||
`PATH`.)
|
`PATH`.)
|
||||||
|
|
||||||
**NOTE:** You can activate multiple versions at the same time, e.g. `pyenv
|
**NOTE:** You can activate multiple versions at the same time, including multiple
|
||||||
global 3.4.2 2.7.8`. This allows for parallel usage of python2 and python3,
|
versions of Python2 or Python3 simultaneously. This allows for parallel usage of
|
||||||
and is required with tools like `tox`.
|
Python2 and Python3, and is required with tools like `tox`. For example, to set
|
||||||
|
your path to first use your `system` Python and Python3 (set to 2.7.9 and 3.4.2
|
||||||
|
in this example), but also have Python 3.3.6, 3.2, and 2.5 available on your
|
||||||
|
`PATH`, one would first `pyenv install` the missing versions, then set `pyenv
|
||||||
|
global system 3.3.6 3.2 2.5`. At this point, one should be able to find the full
|
||||||
|
executable path to each of these using `pyenv which`, e.g. `pyenv which python2.5`
|
||||||
|
(should display `$PYENV_ROOT/versions/2.5/bin/python2.5`), or `pyenv which
|
||||||
|
python3.4` (should display path to system Python3).
|
||||||
|
|
||||||
### Locating the Python Installation
|
### Locating the Python Installation
|
||||||
|
|
||||||
@@ -171,8 +178,7 @@ easy to fork and contribute any changes back upstream.
|
|||||||
1. **Check out pyenv where you want it installed.**
|
1. **Check out pyenv where you want it installed.**
|
||||||
A good place to choose is `$HOME/.pyenv` (but you can install it somewhere else).
|
A good place to choose is `$HOME/.pyenv` (but you can install it somewhere else).
|
||||||
|
|
||||||
$ cd
|
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
|
||||||
$ git clone git://github.com/yyuu/pyenv.git .pyenv
|
|
||||||
|
|
||||||
|
|
||||||
2. **Define environment variable `PYENV_ROOT`** to point to the path where
|
2. **Define environment variable `PYENV_ROOT`** to point to the path where
|
||||||
@@ -186,6 +192,8 @@ easy to fork and contribute any changes back upstream.
|
|||||||
**Ubuntu note**: Modify your `~/.bashrc` file instead of `~/.bash_profile`.
|
**Ubuntu note**: Modify your `~/.bashrc` file instead of `~/.bash_profile`.
|
||||||
|
|
||||||
3. **Add `pyenv init` to your shell** to enable shims and autocompletion.
|
3. **Add `pyenv init` to your shell** to enable shims and autocompletion.
|
||||||
|
Please make sure `eval "$(pyenv init -)"` is placed toward the end of shell
|
||||||
|
configuration file since it manipulates `PATH` during the initialization.
|
||||||
|
|
||||||
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
|
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
set -e
|
set -e
|
||||||
[ -n "$PYENV_DEBUG" ] && set -x
|
[ -n "$PYENV_DEBUG" ] && set -x
|
||||||
|
|
||||||
version="20141211"
|
version="20150913"
|
||||||
|
|
||||||
if cd "$PYENV_ROOT" 2>/dev/null; then
|
if cd "$PYENV_ROOT" 2>/dev/null; then
|
||||||
git_revision="$(git describe --tags HEAD 2>/dev/null || true)"
|
git_revision="$(git describe --tags HEAD 2>/dev/null || true)"
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ if [ -z "$print" ]; then
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
{ echo "# Load pyenv automatically by adding"
|
{ echo "# Load pyenv automatically by adding"
|
||||||
echo "# the following to ${profile}:"
|
echo "# the following to the end of ${profile}:"
|
||||||
echo
|
echo
|
||||||
case "$shell" in
|
case "$shell" in
|
||||||
fish )
|
fish )
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ OLDIFS="$IFS"
|
|||||||
{ IFS=:
|
{ IFS=:
|
||||||
for version in ${PYENV_VERSION}; do
|
for version in ${PYENV_VERSION}; do
|
||||||
if [ "$version" = "system" ]; then
|
if [ "$version" = "system" ]; then
|
||||||
if PYTHON_PATH="$(pyenv-which python 2>/dev/null)"; then
|
if PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python 2>/dev/null)"; then
|
||||||
PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
|
PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
|
||||||
else
|
else
|
||||||
echo "pyenv: system version not found in PATH" >&2
|
echo "pyenv: system version not found in PATH" >&2
|
||||||
|
|||||||
@@ -8,10 +8,13 @@
|
|||||||
set -e
|
set -e
|
||||||
[ -n "$PYENV_DEBUG" ] && set -x
|
[ -n "$PYENV_DEBUG" ] && set -x
|
||||||
|
|
||||||
|
exitcode=0
|
||||||
OLDIFS="$IFS"
|
OLDIFS="$IFS"
|
||||||
IFS=: PYENV_VERSION_NAMES=($(pyenv-version-name))
|
IFS=: PYENV_VERSION_NAMES=($(pyenv-version-name)) || exitcode=$?
|
||||||
IFS="$OLDIFS"
|
IFS="$OLDIFS"
|
||||||
|
|
||||||
for PYENV_VERSION_NAME in "${PYENV_VERSION_NAMES[@]}"; do
|
for PYENV_VERSION_NAME in "${PYENV_VERSION_NAMES[@]}"; do
|
||||||
echo "$PYENV_VERSION_NAME (set by $(pyenv-version-origin))"
|
echo "$PYENV_VERSION_NAME (set by $(pyenv-version-origin))"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
exit $exitcode
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ if [ -e "$VERSION_FILE" ]; then
|
|||||||
# Read the first non-whitespace word from the specified version file.
|
# Read the first non-whitespace word from the specified version file.
|
||||||
# Be careful not to load it whole in case there's something crazy in it.
|
# Be careful not to load it whole in case there's something crazy in it.
|
||||||
IFS="${IFS}"$'\r'
|
IFS="${IFS}"$'\r'
|
||||||
words=( $(cut -b 1-1024 "$VERSION_FILE" | $(type -p gawk awk | head -1) '{ print($1) }') )
|
words=($(cut -b 1-1024 "$VERSION_FILE" | sed 's/^\s*\(\S\+\).*/\1/'))
|
||||||
versions=("${words[@]}")
|
versions=("${words[@]}")
|
||||||
|
|
||||||
if [ -n "$versions" ]; then
|
if [ -n "$versions" ]; then
|
||||||
|
|||||||
@@ -21,17 +21,15 @@ version_exists() {
|
|||||||
versions=()
|
versions=()
|
||||||
OLDIFS="$IFS"
|
OLDIFS="$IFS"
|
||||||
{ IFS=:
|
{ IFS=:
|
||||||
|
any_not_installed=0
|
||||||
for version in ${PYENV_VERSION}; do
|
for version in ${PYENV_VERSION}; do
|
||||||
if version_exists "$version" || [ "$version" = "system" ]; then
|
if version_exists "$version" || [ "$version" = "system" ]; then
|
||||||
versions=("${versions[@]}" "${version}")
|
versions=("${versions[@]}" "${version}")
|
||||||
elif version_exists "${version#python-}"; then
|
elif version_exists "${version#python-}"; then
|
||||||
{ echo "warning: ignoring extraneous \`python-' prefix in version \`${version}'"
|
|
||||||
echo " (set by $(pyenv-version-origin))"
|
|
||||||
} >&2
|
|
||||||
versions=("${versions[@]}" "${version#python-}")
|
versions=("${versions[@]}" "${version#python-}")
|
||||||
else
|
else
|
||||||
echo "pyenv: version \`$version' is not installed" >&2
|
echo "pyenv: version \`$version' is not installed" >&2
|
||||||
exit 1
|
any_not_installed=1
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@@ -42,3 +40,7 @@ OLDIFS="$IFS"
|
|||||||
echo "${versions[*]}"
|
echo "${versions[*]}"
|
||||||
}
|
}
|
||||||
IFS="$OLDIFS"
|
IFS="$OLDIFS"
|
||||||
|
|
||||||
|
if [ "$any_not_installed" = 1 ]; then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|||||||
@@ -105,6 +105,20 @@ process.
|
|||||||
configure and make options for buildling CPython. These variables will
|
configure and make options for buildling CPython. These variables will
|
||||||
be passed to Python only, not any dependent packages (e.g. libyaml).
|
be passed to Python only, not any dependent packages (e.g. libyaml).
|
||||||
|
|
||||||
|
### Building as `--enable-shared`
|
||||||
|
|
||||||
|
You can build CPython with `--enable-shared` to install a version with
|
||||||
|
shared object.
|
||||||
|
|
||||||
|
If `--enabled-shared` was found in `PYTHON_CONFIGURE_OPTS` or `CONFIGURE_OPTS`,
|
||||||
|
`python-build` will automatically set `RPATH` to the pyenv's prefix directory.
|
||||||
|
This means you don't have to set `LD_LIBRARY_PATH` or `DYLD_LIBRARY_PATH` for
|
||||||
|
the version(s) installed with `--enable-shared`.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ env PYTHON_CONFIGURE_OPTS="--enable-shared` pyenv install 2.7.9
|
||||||
|
```
|
||||||
|
|
||||||
### Checksum verification
|
### Checksum verification
|
||||||
|
|
||||||
If you have the `shasum`, `openssl`, or `sha256sum` tool installed,
|
If you have the `shasum`, `openssl`, or `sha256sum` tool installed,
|
||||||
|
|||||||
@@ -47,8 +47,7 @@ fi
|
|||||||
eval "$(python-build --lib)"
|
eval "$(python-build --lib)"
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
# We can remove the sed fallback once pyenv 0.4.0 is widely available.
|
pyenv-help install 2>/dev/null
|
||||||
pyenv-help install 2>/dev/null || sed -ne '/^#/!q;s/.//;s/.//;1,4d;p' < "$0"
|
|
||||||
[ -z "$1" ] || exit "$1"
|
[ -z "$1" ] || exit "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -101,11 +100,13 @@ for option in "${OPTIONS[@]}"; do
|
|||||||
exec python-build --version
|
exec python-build --version
|
||||||
;;
|
;;
|
||||||
* )
|
* )
|
||||||
usage 1
|
usage 1 >&2
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
[ "${#ARGUMENTS[@]}" -le 1 ] || usage 1 >&2
|
||||||
|
|
||||||
unset VERSION_NAME
|
unset VERSION_NAME
|
||||||
|
|
||||||
# The first argument contains the definition to install. If the
|
# The first argument contains the definition to install. If the
|
||||||
@@ -114,8 +115,7 @@ unset VERSION_NAME
|
|||||||
# version is not specified.
|
# version is not specified.
|
||||||
DEFINITION="${ARGUMENTS[0]}"
|
DEFINITION="${ARGUMENTS[0]}"
|
||||||
[ -n "$DEFINITION" ] || DEFINITION="$(pyenv-local 2>/dev/null || true)"
|
[ -n "$DEFINITION" ] || DEFINITION="$(pyenv-local 2>/dev/null || true)"
|
||||||
[ -n "$DEFINITION" ] || usage 1
|
[ -n "$DEFINITION" ] || usage 1 >&2
|
||||||
|
|
||||||
|
|
||||||
# Define `before_install` and `after_install` functions that allow
|
# Define `before_install` and `after_install` functions that allow
|
||||||
# plugin hooks to register a string of code for execution before or
|
# plugin hooks to register a string of code for execution before or
|
||||||
@@ -245,7 +245,7 @@ if [ "$STATUS" == "2" ]; then
|
|||||||
echo " brew update && brew upgrade pyenv"
|
echo " brew update && brew upgrade pyenv"
|
||||||
elif [ -d "${here}/.git" ]; then
|
elif [ -d "${here}/.git" ]; then
|
||||||
printf ":\n\n"
|
printf ":\n\n"
|
||||||
echo " cd ${here} && git pull"
|
echo " cd ${here} && git pull && cd -"
|
||||||
else
|
else
|
||||||
printf ".\n"
|
printf ".\n"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -17,24 +17,31 @@ if [ "$1" = "--complete" ]; then
|
|||||||
exec pyenv versions --bare
|
exec pyenv versions --bare
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
pyenv-help uninstall 2>/dev/null
|
||||||
|
[ -z "$1" ] || exit "$1"
|
||||||
|
}
|
||||||
|
|
||||||
if [ -z "$PYENV_ROOT" ]; then
|
if [ -z "$PYENV_ROOT" ]; then
|
||||||
PYENV_ROOT="${HOME}/.pyenv"
|
PYENV_ROOT="${HOME}/.pyenv"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ "$1" = "-h" ] || [ "$1" = "--help" ]; then
|
||||||
|
usage 0
|
||||||
|
fi
|
||||||
|
|
||||||
unset FORCE
|
unset FORCE
|
||||||
if [ "$1" = "-f" ] || [ "$1" = "--force" ]; then
|
if [ "$1" = "-f" ] || [ "$1" = "--force" ]; then
|
||||||
FORCE=true
|
FORCE=true
|
||||||
shift
|
shift
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[ "$#" -eq 1 ] || usage 1 >&2
|
||||||
|
|
||||||
DEFINITION="$1"
|
DEFINITION="$1"
|
||||||
case "$DEFINITION" in
|
case "$DEFINITION" in
|
||||||
"" | -* )
|
"" | -* )
|
||||||
# We can remove the sed fallback once pyenv 0.4.0 is widely available.
|
usage 1 >&2
|
||||||
{ pyenv-help uninstall 2>/dev/null ||
|
|
||||||
sed -ne '/^#/!q;s/.\{1,2\}//;1,4d;p' < "$0"
|
|
||||||
} >&2
|
|
||||||
exit 1
|
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,18 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# Usage: python-build [-kvp] <definition> <prefix>
|
||||||
|
# python-build --definitions
|
||||||
|
#
|
||||||
|
# -k/--keep Do not remove source tree after installation
|
||||||
|
# -v/--verbose Verbose mode: print compilation status to stdout
|
||||||
|
# -p/--patch Apply a patch from stdin before building
|
||||||
|
# -4/--ipv4 Resolve names to IPv4 addresses only
|
||||||
|
# -6/--ipv6 Resolve names to IPv6 addresses only
|
||||||
|
# --definitions List all built-in definitions
|
||||||
|
# -g/--debug Build a debug version
|
||||||
|
#
|
||||||
|
|
||||||
PYTHON_BUILD_VERSION="20141028"
|
PYTHON_BUILD_VERSION="20150818"
|
||||||
|
|
||||||
set -E
|
set -E
|
||||||
exec 3<&2 # preserve original stderr at fd 3
|
exec 3<&2 # preserve original stderr at fd 3
|
||||||
@@ -221,7 +233,7 @@ compute_sha2() {
|
|||||||
output="$(shasum -a 256 -b)" || return 1
|
output="$(shasum -a 256 -b)" || return 1
|
||||||
echo "${output% *}"
|
echo "${output% *}"
|
||||||
elif type openssl &>/dev/null; then
|
elif type openssl &>/dev/null; then
|
||||||
local openssl="$(command -v "$(brew --prefix openssl 2>/dev/null)"/bin/openssl openssl | head -1)"
|
local openssl="$(command -v "$(brew --prefix openssl 2>/dev/null || true)"/bin/openssl openssl | head -1)"
|
||||||
output="$("$openssl" dgst -sha256 2>/dev/null)" || return 1
|
output="$("$openssl" dgst -sha256 2>/dev/null)" || return 1
|
||||||
echo "${output##* }"
|
echo "${output##* }"
|
||||||
elif type sha256sum &>/dev/null; then
|
elif type sha256sum &>/dev/null; then
|
||||||
@@ -297,19 +309,31 @@ http() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
http_head_curl() {
|
http_head_curl() {
|
||||||
curl -qsILf "$1" >&4 2>&1
|
options=""
|
||||||
|
[ -n "${IPV4}" ] && options="--ipv4"
|
||||||
|
[ -n "${IPV6}" ] && options="--ipv6"
|
||||||
|
curl -qsILf ${options} "$1" >&4 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
http_get_curl() {
|
http_get_curl() {
|
||||||
curl -q -o "${2:--}" -sSLf "$1"
|
options=""
|
||||||
|
[ -n "${IPV4}" ] && options="--ipv4"
|
||||||
|
[ -n "${IPV6}" ] && options="--ipv6"
|
||||||
|
curl -q -o "${2:--}" -sSLf ${options} "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
http_head_wget() {
|
http_head_wget() {
|
||||||
wget -q --spider "$1" >&4 2>&1
|
options=""
|
||||||
|
[ -n "${IPV4}" ] && options="--inet4-only"
|
||||||
|
[ -n "${IPV6}" ] && options="--inet6-only"
|
||||||
|
wget -q --spider ${options} "$1" >&4 2>&1
|
||||||
}
|
}
|
||||||
|
|
||||||
http_get_wget() {
|
http_get_wget() {
|
||||||
wget -nv -O "${2:--}" "$1"
|
options=""
|
||||||
|
[ -n "${IPV4}" ] && options="--inet4-only"
|
||||||
|
[ -n "${IPV6}" ] && options="--inet6-only"
|
||||||
|
wget -nv ${options} -O "${2:--}" "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
fetch_tarball() {
|
fetch_tarball() {
|
||||||
@@ -495,7 +519,7 @@ fetch_svn() {
|
|||||||
if type svn &>/dev/null; then
|
if type svn &>/dev/null; then
|
||||||
svn co -r "$svn_rev" "$svn_url" "${package_name}" >&4 2>&1
|
svn co -r "$svn_rev" "$svn_url" "${package_name}" >&4 2>&1
|
||||||
else
|
else
|
||||||
echo "error: please install \`svn\` and try again" >&2
|
echo "error: please install Subversion and try again" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@@ -524,7 +548,9 @@ fetch_jar() {
|
|||||||
download_tarball "$package_url" "$package_filename" "$checksum"
|
download_tarball "$package_url" "$package_filename" "$checksum"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
{ if $JAVA -jar ${package_name}.jar -s -d ${package_name}; then
|
# Must use full path to jar and destination directory:
|
||||||
|
# http://bugs.jython.org/issue2350
|
||||||
|
{ if $JAVA -jar $PWD/${package_name}.jar -s -d $PWD/${package_name}; then
|
||||||
if [ -z "$KEEP_BUILD_PATH" ]; then
|
if [ -z "$KEEP_BUILD_PATH" ]; then
|
||||||
rm -f "$package_filename"
|
rm -f "$package_filename"
|
||||||
else
|
else
|
||||||
@@ -864,10 +890,18 @@ pypy_architecture() {
|
|||||||
build_package_pypy() {
|
build_package_pypy() {
|
||||||
build_package_copy
|
build_package_copy
|
||||||
mkdir -p "${PREFIX_PATH}/bin" "${PREFIX_PATH}/lib"
|
mkdir -p "${PREFIX_PATH}/bin" "${PREFIX_PATH}/lib"
|
||||||
local pypy libpypy
|
local pypy libpypy python
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
for pypy in "bin/pypy"*; do
|
for pypy in "bin/pypy"*; do
|
||||||
( cd "${PREFIX_PATH}/bin" && ln -fs "$(basename "${pypy}")" "$(basename "${pypy}" | sed -e 's/pypy/python/')" )
|
case "${pypy##*/}" in
|
||||||
|
"pypy-stm" )
|
||||||
|
python="bin/python"
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
python="$(basename "${pypy}" | sed -e 's/pypy/python/')"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
( cd "${PREFIX_PATH}/bin" && ln -fs "${pypy##*/}" "${python##*/}" )
|
||||||
done
|
done
|
||||||
for libpypy in "bin/libpypy-c."*; do
|
for libpypy in "bin/libpypy-c."*; do
|
||||||
( cd "${PREFIX_PATH}/lib" && ln -fs "../bin/$(basename "${libpypy}")" "$(basename "${libpypy}")" )
|
( cd "${PREFIX_PATH}/lib" && ln -fs "../bin/$(basename "${libpypy}")" "$(basename "${libpypy}")" )
|
||||||
@@ -970,7 +1004,7 @@ fix_rbx_gem_binstubs() {
|
|||||||
binstub="${bindir}/${file##*/}"
|
binstub="${bindir}/${file##*/}"
|
||||||
rm -f "$binstub"
|
rm -f "$binstub"
|
||||||
{ echo "#!${bindir}/ruby"
|
{ echo "#!${bindir}/ruby"
|
||||||
cat "$file"
|
grep -v '^#!' "$file"
|
||||||
} > "$binstub"
|
} > "$binstub"
|
||||||
chmod +x "$binstub"
|
chmod +x "$binstub"
|
||||||
done
|
done
|
||||||
@@ -987,7 +1021,7 @@ fix_rbx_irb() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
require_java7() {
|
require_java7() {
|
||||||
local version="$(java -version 2>&1 | head -1)"
|
local version="$(java -version 2>&1 | grep '\(java\|openjdk\) version' | head -1)"
|
||||||
if [[ $version != *1.[789]* ]]; then
|
if [[ $version != *1.[789]* ]]; then
|
||||||
colorize 1 "ERROR" >&3
|
colorize 1 "ERROR" >&3
|
||||||
echo ": Java 7 required. Please install a 1.7-compatible JRE." >&3
|
echo ": Java 7 required. Please install a 1.7-compatible JRE." >&3
|
||||||
@@ -1098,11 +1132,48 @@ require_llvm() {
|
|||||||
local llvm_version="$1"
|
local llvm_version="$1"
|
||||||
if [ "$(uname -s)" = "Darwin" ] && [ "$(osx_version)" -ge 1010 ]; then
|
if [ "$(uname -s)" = "Darwin" ] && [ "$(osx_version)" -ge 1010 ]; then
|
||||||
if [[ "$PYTHON_CONFIGURE_OPTS" != *--llvm-* ]]; then
|
if [[ "$PYTHON_CONFIGURE_OPTS" != *--llvm-* ]]; then
|
||||||
package_option python configure --prebuilt-name="llvm-3.2-x86_64-apple-darwin13.tar.bz2"
|
case "$llvm_version" in
|
||||||
|
3.2 )
|
||||||
|
package_option python configure --prebuilt-name="llvm-3.2-x86_64-apple-darwin13.tar.bz2"
|
||||||
|
;;
|
||||||
|
3.5 )
|
||||||
|
local llvm_config="$(locate_llvm "$llvm_version")"
|
||||||
|
if [ -n "$llvm_config" ]; then
|
||||||
|
package_option python configure --llvm-config="$llvm_config"
|
||||||
|
else
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Rubinius will not be able to compile using Apple's LLVM-based "
|
||||||
|
echo "build tools on OS X. You will need to install LLVM 3.5 first."
|
||||||
|
echo
|
||||||
|
colorize 1 "TO FIX THE PROBLEM"
|
||||||
|
echo ": Install Homebrew's llvm package with this"
|
||||||
|
echo -n "command: "
|
||||||
|
colorize 4 "brew tap homebrew/versions ; brew install llvm35"
|
||||||
|
echo
|
||||||
|
} >&3
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
locate_llvm() {
|
||||||
|
local llvm_version="$1"
|
||||||
|
local package llvm_config
|
||||||
|
shopt -s nullglob
|
||||||
|
for package in `brew list 2>/dev/null | grep "^llvm"`; do
|
||||||
|
llvm_config="$(echo "$(brew --prefix "$package")/bin/llvm-config"*)"
|
||||||
|
if [ -n "$llvm_config" ] && [[ "$("$llvm_config" --version)" = "$llvm_version"* ]]; then
|
||||||
|
echo "$llvm_config"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
shopt -u nullglob
|
||||||
|
}
|
||||||
|
|
||||||
require_java() {
|
require_java() {
|
||||||
local java="$(command -v java || true)"
|
local java="$(command -v java || true)"
|
||||||
|
|
||||||
@@ -1122,13 +1193,13 @@ require_java() {
|
|||||||
|
|
||||||
require_distro() {
|
require_distro() {
|
||||||
for arg; do
|
for arg; do
|
||||||
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "$1"* ]]; then
|
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "$arg"* ]]; then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
{ echo
|
{ echo
|
||||||
colorize 1 "WARNING"
|
colorize 1 "WARNING"
|
||||||
echo ": This binary distribution is built for $1."
|
echo ": This binary distribution is built for the following distro(s): $@."
|
||||||
echo "installed binary may not run expectedly on other platforms."
|
echo "installed binary may not run expectedly on other platforms."
|
||||||
echo
|
echo
|
||||||
} >&2
|
} >&2
|
||||||
@@ -1320,13 +1391,21 @@ verify_python() {
|
|||||||
# Not create symlinks on `altinstall` (#255)
|
# Not create symlinks on `altinstall` (#255)
|
||||||
if [[ "$PYTHON_MAKE_INSTALL_TARGET" != *"altinstall"* ]]; then
|
if [[ "$PYTHON_MAKE_INSTALL_TARGET" != *"altinstall"* ]]; then
|
||||||
local suffix="${1#python}"
|
local suffix="${1#python}"
|
||||||
local file
|
local file link
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
for file in "${PREFIX_PATH}/bin"/*; do
|
for file in "${PREFIX_PATH}/bin"/*; do
|
||||||
local link
|
unset link
|
||||||
case "${file}" in
|
case "${file}" in
|
||||||
*"-${suffix}" ) link="${file%%-${suffix}}" ;;
|
*/"python${suffix}-config" )
|
||||||
*"${suffix}" ) link="${file%%${suffix}}" ;;
|
# Symlink `pythonX.Y-config` to `python-config` if `python-config` is missing (#296)
|
||||||
|
link="${file%/*}/python-config"
|
||||||
|
;;
|
||||||
|
*/*"-${suffix}" )
|
||||||
|
link="${file%%-${suffix}}"
|
||||||
|
;;
|
||||||
|
*/*"${suffix}" )
|
||||||
|
link="${file%%${suffix}}"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
if [ -n "$link" ] && [ ! -e "$link" ]; then
|
if [ -n "$link" ] && [ ! -e "$link" ]; then
|
||||||
( cd "${file%/*}" && ln -fs "${file##*/}" "${link##*/}" )
|
( cd "${file%/*}" && ln -fs "${file##*/}" "${link##*/}" )
|
||||||
@@ -1462,6 +1541,11 @@ build_package_verify_py35() {
|
|||||||
build_package_verify_py34 "$1" "${2:-3.5}"
|
build_package_verify_py34 "$1" "${2:-3.5}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Post-install check for Python 3.6.x
|
||||||
|
build_package_verify_py36() {
|
||||||
|
build_package_verify_py35 "$1" "${2:-3.6}"
|
||||||
|
}
|
||||||
|
|
||||||
build_package_ez_setup() {
|
build_package_ez_setup() {
|
||||||
local ez_setup="${BUILD_PATH}/ez_setup.py"
|
local ez_setup="${BUILD_PATH}/ez_setup.py"
|
||||||
rm -f "${ez_setup}"
|
rm -f "${ez_setup}"
|
||||||
@@ -1492,7 +1576,7 @@ build_package_get_pip() {
|
|||||||
http get "${GET_PIP_URL}"
|
http get "${GET_PIP_URL}"
|
||||||
fi
|
fi
|
||||||
} 1> "${get_pip}"
|
} 1> "${get_pip}"
|
||||||
"${PYTHON_BIN}" "${get_pip}" ${GET_PIP_OPTS} 1>&4 2>&1 || {
|
"${PYTHON_BIN}" -s "${get_pip}" ${GET_PIP_OPTS} 1>&4 2>&1 || {
|
||||||
echo "error: failed to install pip via get-pip.py" >&2
|
echo "error: failed to install pip via get-pip.py" >&2
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
@@ -1500,12 +1584,12 @@ build_package_get_pip() {
|
|||||||
|
|
||||||
build_package_ensurepip() {
|
build_package_ensurepip() {
|
||||||
local ensurepip_opts
|
local ensurepip_opts
|
||||||
if [[ "$PYTHON_MAKE_INSTALL_TARGET" != *"altinstall"* ]]; then
|
# Install as `--altinstall` if the Python is installed as `altinstall` (#255)
|
||||||
|
if [[ "$PYTHON_MAKE_INSTALL_TARGET" == *"altinstall"* ]]; then
|
||||||
ensurepip_opts="--altinstall"
|
ensurepip_opts="--altinstall"
|
||||||
fi
|
fi
|
||||||
"$PYTHON_BIN" -m ensurepip $ensurepip_opts 1>/dev/null 2>&1 || {
|
# FIXME: `--altinstall` with `get-pip.py`
|
||||||
build_package_ez_setup "$@" && build_package_get_pip "$@"
|
"$PYTHON_BIN" -s -m ensurepip ${ensurepip_opts} 1>/dev/null 2>&1 || build_package_get_pip "$@" || return 1
|
||||||
} || return 1
|
|
||||||
}
|
}
|
||||||
|
|
||||||
version() {
|
version() {
|
||||||
@@ -1519,14 +1603,8 @@ version() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
{ version
|
sed -ne '/^#/!q;s/.\{1,2\}//;1,2d;p' < "$0"
|
||||||
echo "usage: python-build [-k|--keep] [-v|--verbose] [-p|--patch] [-g|--debug] definition prefix"
|
[ -z "$1" ] || exit "$1"
|
||||||
echo " python-build --definitions"
|
|
||||||
} >&2
|
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
list_definitions() {
|
list_definitions() {
|
||||||
@@ -1546,6 +1624,8 @@ unset VERBOSE
|
|||||||
unset KEEP_BUILD_PATH
|
unset KEEP_BUILD_PATH
|
||||||
unset HAS_PATCH
|
unset HAS_PATCH
|
||||||
unset DEBUG
|
unset DEBUG
|
||||||
|
unset IPV4
|
||||||
|
unset IPV6
|
||||||
|
|
||||||
PYTHON_BUILD_INSTALL_PREFIX="$(abs_dirname "$0")/.."
|
PYTHON_BUILD_INSTALL_PREFIX="$(abs_dirname "$0")/.."
|
||||||
|
|
||||||
@@ -1558,16 +1638,9 @@ parse_options "$@"
|
|||||||
for option in "${OPTIONS[@]}"; do
|
for option in "${OPTIONS[@]}"; do
|
||||||
case "$option" in
|
case "$option" in
|
||||||
"h" | "help" )
|
"h" | "help" )
|
||||||
usage without_exiting
|
version
|
||||||
{ echo
|
echo
|
||||||
echo " -k/--keep Do not remove source tree after installation"
|
usage 0
|
||||||
echo " -v/--verbose Verbose mode: print compilation status to stdout"
|
|
||||||
echo " -p/--patch Apply a patch from stdin before building"
|
|
||||||
echo " -g/--debug Build a debug version"
|
|
||||||
echo " --definitions List all built-in definitions"
|
|
||||||
echo
|
|
||||||
} >&2
|
|
||||||
exit 0
|
|
||||||
;;
|
;;
|
||||||
"definitions" )
|
"definitions" )
|
||||||
list_definitions
|
list_definitions
|
||||||
@@ -1585,6 +1658,12 @@ for option in "${OPTIONS[@]}"; do
|
|||||||
"g" | "debug" )
|
"g" | "debug" )
|
||||||
DEBUG=true
|
DEBUG=true
|
||||||
;;
|
;;
|
||||||
|
"4" | "ipv4")
|
||||||
|
IPV4=true
|
||||||
|
;;
|
||||||
|
"6" | "ipv6")
|
||||||
|
IPV6=true
|
||||||
|
;;
|
||||||
"version" )
|
"version" )
|
||||||
version
|
version
|
||||||
exit 0
|
exit 0
|
||||||
@@ -1592,9 +1671,11 @@ for option in "${OPTIONS[@]}"; do
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
[ "${#ARGUMENTS[@]}" -eq 2 ] || usage 1 >&2
|
||||||
|
|
||||||
DEFINITION_PATH="${ARGUMENTS[0]}"
|
DEFINITION_PATH="${ARGUMENTS[0]}"
|
||||||
if [ -z "$DEFINITION_PATH" ]; then
|
if [ -z "$DEFINITION_PATH" ]; then
|
||||||
usage
|
usage 1 >&2
|
||||||
elif [ ! -f "$DEFINITION_PATH" ]; then
|
elif [ ! -f "$DEFINITION_PATH" ]; then
|
||||||
for DEFINITION_DIR in "${PYTHON_BUILD_DEFINITIONS[@]}"; do
|
for DEFINITION_DIR in "${PYTHON_BUILD_DEFINITIONS[@]}"; do
|
||||||
if [ -f "${DEFINITION_DIR}/${DEFINITION_PATH}" ]; then
|
if [ -f "${DEFINITION_DIR}/${DEFINITION_PATH}" ]; then
|
||||||
@@ -1611,7 +1692,7 @@ fi
|
|||||||
|
|
||||||
PREFIX_PATH="${ARGUMENTS[1]}"
|
PREFIX_PATH="${ARGUMENTS[1]}"
|
||||||
if [ -z "$PREFIX_PATH" ]; then
|
if [ -z "$PREFIX_PATH" ]; then
|
||||||
usage
|
usage 1 >&2
|
||||||
elif [ "${PREFIX_PATH#/}" = "$PREFIX_PATH" ]; then
|
elif [ "${PREFIX_PATH#/}" = "$PREFIX_PATH" ]; then
|
||||||
PREFIX_PATH="${PWD}/${PREFIX_PATH}"
|
PREFIX_PATH="${PWD}/${PREFIX_PATH}"
|
||||||
fi
|
fi
|
||||||
@@ -1763,10 +1844,12 @@ fi
|
|||||||
|
|
||||||
# Set MACOSX_DEPLOYMENT_TARGET from the product version of OS X (#219, #220)
|
# Set MACOSX_DEPLOYMENT_TARGET from the product version of OS X (#219, #220)
|
||||||
if [[ "Darwin" == "$(uname -s)" ]]; then
|
if [[ "Darwin" == "$(uname -s)" ]]; then
|
||||||
MACOS_VERSION="$(sw_vers -productVersion 2>/dev/null || true)"
|
if [ -z "${MACOSX_DEPLOYMENT_TARGET}" ]; then
|
||||||
MACOS_VERSION_ARRAY=(${MACOS_VERSION//\./ })
|
MACOS_VERSION="$(sw_vers -productVersion 2>/dev/null || true)"
|
||||||
if [ "${#MACOS_VERSION_ARRAY[@]}" -ge 2 ]; then
|
MACOS_VERSION_ARRAY=(${MACOS_VERSION//\./ })
|
||||||
export MACOSX_DEPLOYMENT_TARGET="${MACOS_VERSION_ARRAY[0]}.${MACOS_VERSION_ARRAY[1]}"
|
if [ "${#MACOS_VERSION_ARRAY[@]}" -ge 2 ]; then
|
||||||
|
export MACOSX_DEPLOYMENT_TARGET="${MACOS_VERSION_ARRAY[0]}.${MACOS_VERSION_ARRAY[1]}"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-2.7-dev" "https://bitbucket.org/mirror/cpython" "2.7" standard verify_py27 ensurepip
|
install_hg "Python-2.7-dev" "https://hg.python.org/cpython" "2.7" standard verify_py27 ensurepip
|
||||||
|
|||||||
3
plugins/python-build/share/python-build/2.7.10
Normal file
3
plugins/python-build/share/python-build/2.7.10
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-2.7.10" "https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz#eda8ce6eec03e74991abb5384170e7c65fcd7522e409b8e83d7e6372add0f12a" ldflags_dirs standard verify_py27 ensurepip
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_package "Python-3.0.1" "http://python.org/ftp/python/3.0.1/Python-3.0.1.tgz#7d5f2feae9035f1d3d9e6bb7f092dbf374d6bb4b25abd0d2d11f13bba1cb04de" ldflags_dirs standard verify_py30 ensurepip
|
install_package "Python-3.0.1" "http://python.org/ftp/python/3.0.1/Python-3.0.1.tgz#7d5f2feae9035f1d3d9e6bb7f092dbf374d6bb4b25abd0d2d11f13bba1cb04de" ldflags_dirs standard verify_py30
|
||||||
|
install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#263986a60a83aba790a5bffc7d009ac88114ba4e908e5c90e453b3bf2155dbbd" python
|
||||||
|
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#145eaa5d1ea1b062663da1f3a97780d7edea4c63c68a37c463b1deedf7bb4957" python
|
||||||
|
|||||||
4
plugins/python-build/share/python-build/3.1
Normal file
4
plugins/python-build/share/python-build/3.1
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-3.1" "http://python.org/ftp/python/3.1/Python-3.1.tgz#99a034cf574ea3c26412b0a0728126d7fd6ea9593d099d807a25d216ed031e6a" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
4
plugins/python-build/share/python-build/3.1.1
Normal file
4
plugins/python-build/share/python-build/3.1.1
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-3.1.1" "http://python.org/ftp/python/3.1.1/Python-3.1.1.tgz#5d85d7bff11c4db44920af99f64f4227c816f897f6bfa9dd8a2611165ca5f0a1" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
4
plugins/python-build/share/python-build/3.1.2
Normal file
4
plugins/python-build/share/python-build/3.1.2
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-3.1.2" "http://python.org/ftp/python/3.1.2/Python-3.1.2.tgz#dffbc0561a161a4a576c6059e6990a9859a0be16ba9b5736eabe4abbb2700d1c" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_package "Python-3.1.3" "http://python.org/ftp/python/3.1.3/Python-3.1.3.tgz#6311823aeda8be6a7a2b67caaeff48abce6626c9940ba7ed81f9c978666a36bd" ldflags_dirs standard verify_py31 ensurepip
|
install_package "Python-3.1.3" "http://python.org/ftp/python/3.1.3/Python-3.1.3.tgz#6311823aeda8be6a7a2b67caaeff48abce6626c9940ba7ed81f9c978666a36bd" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_package "Python-3.1.4" "http://python.org/ftp/python/3.1.4/Python-3.1.4.tgz#fadc05ea6d05360cff189944a85ecd2180bbc308784d168b350450e70bbdd846" ldflags_dirs standard verify_py31 ensurepip
|
install_package "Python-3.1.4" "http://python.org/ftp/python/3.1.4/Python-3.1.4.tgz#fadc05ea6d05360cff189944a85ecd2180bbc308784d168b350450e70bbdd846" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_package "Python-3.1.5" "http://python.org/ftp/python/3.1.5/Python-3.1.5.tgz#d12dae6d06f52ef6bf1271db4d5b4d14b5dd39813e324314e72b648ef1bc0103" ldflags_dirs standard verify_py31 ensurepip
|
install_package "Python-3.1.5" "http://python.org/ftp/python/3.1.5/Python-3.1.5.tgz#d12dae6d06f52ef6bf1271db4d5b4d14b5dd39813e324314e72b648ef1bc0103" ldflags_dirs standard verify_py31 ez_setup
|
||||||
|
install_package "pip-1.5.6" "https://pypi.python.org/packages/source/p/pip/pip-1.5.6.tar.gz#b1a4ae66baf21b7eb05a5e4f37c50c2706fa28ea1f8780ce8efe14dcd9f1726c" python
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-3.2-dev" "https://bitbucket.org/mirror/cpython" "3.2" standard verify_py32 ensurepip
|
install_hg "Python-3.2-dev" "https://hg.python.org/cpython" "3.2" standard verify_py32 ensurepip
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-3.3-dev" "https://bitbucket.org/mirror/cpython" "3.3" standard verify_py33 ensurepip
|
install_hg "Python-3.3-dev" "https://hg.python.org/cpython" "3.3" standard verify_py33 ensurepip
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-3.4-dev" "https://bitbucket.org/mirror/cpython" "3.4" standard verify_py34 ensurepip
|
install_hg "Python-3.4-dev" "https://hg.python.org/cpython" "3.4" standard verify_py34 ensurepip
|
||||||
|
|||||||
3
plugins/python-build/share/python-build/3.4.3
Normal file
3
plugins/python-build/share/python-build/3.4.3
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-3.4.3" "https://www.python.org/ftp/python/3.4.3/Python-3.4.3.tgz#4281ff86778db65892c05151d5de738d" ldflags_dirs standard verify_py34 ensurepip
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-3.5-dev" "https://bitbucket.org/mirror/cpython" "default" standard verify_py35 ensurepip
|
install_hg "Python-3.5-dev" "https://hg.python.org/cpython" "3.5" standard verify_py35 ensurepip
|
||||||
|
|||||||
3
plugins/python-build/share/python-build/3.5.0
Normal file
3
plugins/python-build/share/python-build/3.5.0
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#require_gcc
|
||||||
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
|
install_package "Python-3.5.0" "https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz#584e3d5a02692ca52fce505e68ecd77248a6f2c99adf9db144a39087336b0fe0" ldflags_dirs standard verify_py35 ensurepip
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
#require_gcc
|
#require_gcc
|
||||||
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
install_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline
|
||||||
install_hg "Python-3.1-dev" "https://bitbucket.org/mirror/cpython" "3.1" standard verify_py31 ensurepip
|
install_hg "Python-3.6-dev" "https://hg.python.org/cpython" "default" standard verify_py36 ensurepip
|
||||||
19
plugins/python-build/share/python-build/anaconda-2.2.0
Normal file
19
plugins/python-build/share/python-build/anaconda-2.2.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Anaconda-2.2.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda-2.2.0-Linux-x86.sh#6437d5b08a19c3501f2f5dc3ae1ae16f91adf6bed0f067ef0806a9911b1bef15" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Anaconda-2.2.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda-2.2.0-Linux-x86_64.sh#ca2582cb2188073b0f348ad42207211a2b85c10b244265b5b27bab04481b88a2" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Anaconda-2.2.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda-2.2.0-MacOSX-x86_64.sh#20570e2f3911e38a78d8f888f3ff445d6c0cf97a2fca40d6956b48d12aaef339" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Anaconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/anaconda-2.3.0
Normal file
19
plugins/python-build/share/python-build/anaconda-2.3.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Anaconda-2.3.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda-2.3.0-Linux-x86.sh#73fdbbb3e38207ed18e5059f71676d18d48fdccbc455a1272eb45a60376cd818" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Anaconda-2.3.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda-2.3.0-Linux-x86_64.sh#7c02499e9511c127d225992cfe1cd815e88fd46cd8a5b3cdf764f3fb4d8d4576" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Anaconda-2.3.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda-2.3.0-MacOSX-x86_64.sh#c4bb59a57bf44dde80612041bbbcfd2e5cab8534842209ef456da7a46f919c33" "anaconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Anaconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
case "$(anaconda_architecture 2>/dev/null || true)" in
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
"Linux-x86" )
|
"Linux-x86" )
|
||||||
install_script "Anaconda3-2.0.0-Linux-x86" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.0-Linux-x86.sh#439761159d5604e182951650a478dd53caff52e9dccf17c20ae66689b7b289dd" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda3-2.0.0-Linux-x86.sh#439761159d5604e182951650a478dd53caff52e9dccf17c20ae66689b7b289dd" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"Linux-x86_64" )
|
"Linux-x86_64" )
|
||||||
install_script "Anaconda3-2.0.0-Linux-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.0-Linux-x86_64.sh#57ce4f97e300cf94c5724f72d992e9eecef708fdaa13bc672ae9779773056540" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.0.0-Linux-x86_64.sh#57ce4f97e300cf94c5724f72d992e9eecef708fdaa13bc672ae9779773056540" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"MacOSX-x86_64" )
|
"MacOSX-x86_64" )
|
||||||
install_script "Anaconda3-2.0.0-MacOSX-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.0-MacOSX-x86_64.sh#776a1cf8a8e898b41bb6558c093632cc922698dc48486fee35d1e8eae3f604fa" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.0.0-MacOSX-x86_64.sh#776a1cf8a8e898b41bb6558c093632cc922698dc48486fee35d1e8eae3f604fa" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
* )
|
* )
|
||||||
{ echo
|
{ echo
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
case "$(anaconda_architecture 2>/dev/null || true)" in
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
"Linux-x86" )
|
"Linux-x86" )
|
||||||
install_script "Anaconda3-2.0.1-Linux-x86" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.1-Linux-x86.sh#21293fabbd3d5cfbb1afe0c9a8b39e0bc4d283cd7dbe3c84a60b335481a41ef3" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.1-Linux-x86" "http://repo.continuum.io/archive/Anaconda3-2.0.1-Linux-x86.sh#21293fabbd3d5cfbb1afe0c9a8b39e0bc4d283cd7dbe3c84a60b335481a41ef3" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"Linux-x86_64" )
|
"Linux-x86_64" )
|
||||||
install_script "Anaconda3-2.0.1-Linux-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.1-Linux-x86_64.sh#3c3b834793e461f3316ad1d9a9178c67859a9d74aaf7bcade076f04134dd1e26" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.1-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.0.1-Linux-x86_64.sh#3c3b834793e461f3316ad1d9a9178c67859a9d74aaf7bcade076f04134dd1e26" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"MacOSX-x86_64" )
|
"MacOSX-x86_64" )
|
||||||
install_script "Anaconda3-2.0.1-MacOSX-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.0.1-MacOSX-x86_64.sh#7a08509d4e45efcc7055a6d06d8406a773716500bd869a4e85312ff131155bd6" "anaconda" verify_py34
|
install_script "Anaconda3-2.0.1-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.0.1-MacOSX-x86_64.sh#7a08509d4e45efcc7055a6d06d8406a773716500bd869a4e85312ff131155bd6" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
* )
|
* )
|
||||||
{ echo
|
{ echo
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
case "$(anaconda_architecture 2>/dev/null || true)" in
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
"Linux-x86" )
|
"Linux-x86" )
|
||||||
install_script "Anaconda3-2.1.0-Linux-x86" "http://repo.continuum.io/anaconda3/Anaconda3-2.1.0-Linux-x86.sh#657cb599004c21e37ce693515ea33922e0084fd7c159ef1b96b57c86eed8385f" "anaconda" verify_py34
|
install_script "Anaconda3-2.1.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda3-2.1.0-Linux-x86.sh#657cb599004c21e37ce693515ea33922e0084fd7c159ef1b96b57c86eed8385f" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"Linux-x86_64" )
|
"Linux-x86_64" )
|
||||||
install_script "Anaconda3-2.1.0-Linux-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.1.0-Linux-x86_64.sh#af3225ccbe8df0ffb918939e009aa57740e35058ebf9dfcf5fec794a77556c3c" "anaconda" verify_py34
|
install_script "Anaconda3-2.1.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.1.0-Linux-x86_64.sh#af3225ccbe8df0ffb918939e009aa57740e35058ebf9dfcf5fec794a77556c3c" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
"MacOSX-x86_64" )
|
"MacOSX-x86_64" )
|
||||||
install_script "Anaconda3-2.1.0-MacOSX-x86_64" "http://repo.continuum.io/anaconda3/Anaconda3-2.1.0-MacOSX-x86_64.sh#efdb7e9d1e539cbed62dc3874b0de6a141f36684e6fbc05018e072b217e24077" "anaconda" verify_py34
|
install_script "Anaconda3-2.1.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.1.0-MacOSX-x86_64.sh#efdb7e9d1e539cbed62dc3874b0de6a141f36684e6fbc05018e072b217e24077" "anaconda" verify_py34
|
||||||
;;
|
;;
|
||||||
* )
|
* )
|
||||||
{ echo
|
{ echo
|
||||||
|
|||||||
19
plugins/python-build/share/python-build/anaconda3-2.2.0
Normal file
19
plugins/python-build/share/python-build/anaconda3-2.2.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Anaconda3-2.2.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda3-2.2.0-Linux-x86.sh#223655cd256aa912dfc83ab24570e47bb3808bc3b0c6bd21b5db0fcf2750883e" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Anaconda3-2.2.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.2.0-Linux-x86_64.sh#4aac68743e7706adb93f042f970373a6e7e087dbf4b02ac467c94ca4ce33d2d1" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Anaconda3-2.2.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.2.0-MacOSX-x86_64.sh#81a2089ea6127717f146454e99ea0be2bd595193e4151bb05b4c15749b1d8124" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Anaconda3 is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/anaconda3-2.3.0
Normal file
19
plugins/python-build/share/python-build/anaconda3-2.3.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Anaconda3-2.3.0-Linux-x86" "http://repo.continuum.io/archive/Anaconda3-2.3.0-Linux-x86.sh#4cc10d65c303191004ada2b6d75562c8ed84e42bf9871af06440dd956077b555" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Anaconda3-2.3.0-Linux-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.3.0-Linux-x86_64.sh#3be5410b2d9db45882c7de07c554cf4f1034becc274ec9074b23fd37a5c87a6f" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Anaconda3-2.3.0-MacOSX-x86_64" "http://repo.continuum.io/archive/Anaconda3-2.3.0-MacOSX-x86_64.sh#6a0c94a49f41f9fda0138c8e966bd7b0a8965d6648fd21ffbd645d1453848ba5" "anaconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Anaconda3 is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
plugins/python-build/share/python-build/ironpython-2.7.5
Normal file
2
plugins/python-build/share/python-build/ironpython-2.7.5
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
install_zip "IronPython-2.7.5" "https://github.com/IronLanguages/main/releases/download/ipy-2.7.5/IronPython-2.7.5.zip#d2651084a61a43379ce6c031f4f29c5e01ba96d1ff89a5282376dd4b84439b5b" ironpython
|
||||||
|
# FIXME: have not confirmed to install setuptools into IronPython yet
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
require_java
|
|
||||||
install_jar "jython-2.7-beta1" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.7-b1/jython-installer-2.7-b1.jar" jython ez_setup
|
|
||||||
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads
|
|
||||||
# * https://github.com/yyuu/pyenv/issues/15
|
|
||||||
install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#12a9302acfca62cdc7bc5d83386cac3e0581db61ac39acdb3a4e766a16b88eb1" python
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
require_java
|
|
||||||
install_jar "jython-2.7-beta2" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.7-b2/jython-installer-2.7-b2.jar" jython ez_setup
|
|
||||||
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads
|
|
||||||
# * https://github.com/yyuu/pyenv/issues/15
|
|
||||||
install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#12a9302acfca62cdc7bc5d83386cac3e0581db61ac39acdb3a4e766a16b88eb1" python
|
|
||||||
@@ -1,5 +0,0 @@
|
|||||||
require_java
|
|
||||||
install_jar "jython-2.7-beta3" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.7-b3/jython-installer-2.7-b3.jar" jython ez_setup
|
|
||||||
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads
|
|
||||||
# * https://github.com/yyuu/pyenv/issues/15
|
|
||||||
install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#12a9302acfca62cdc7bc5d83386cac3e0581db61ac39acdb3a4e766a16b88eb1" python
|
|
||||||
13
plugins/python-build/share/python-build/jython-2.7.0
Normal file
13
plugins/python-build/share/python-build/jython-2.7.0
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
require_java
|
||||||
|
install_jar "jython-2.7.0" "https://repo1.maven.org/maven2/org/python/jython-installer/2.7.0/jython-installer-2.7.0.jar#b44352ece72382268a60e2848741c96609a91d796bb9a9c6ebeff62f0c12c9cf" jython
|
||||||
|
|
||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"osx64"|"win32" )
|
||||||
|
# Jython does not seem to work properly on OSX/windows unless JAVA_HOME is set
|
||||||
|
if [ -z "${JAVA_HOME+defined}" ]; then
|
||||||
|
colorize 1 "WARNING: "
|
||||||
|
echo "Please ensure that your JAVA_HOME environment variable is set correctly!"
|
||||||
|
echo "See http://bugs.jython.org/issue2346 for details."
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda-3.10.1
Normal file
19
plugins/python-build/share/python-build/miniconda-3.10.1
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda-3.10.1-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda-3.10.1-Linux-x86.sh#509ee56f1590705472fdac4a00aa7191f79a6a09daf4af088e92f93c648d815e" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda-3.10.1-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.10.1-Linux-x86_64.sh#363f56f5608d1552325549e7371fcf460c5ed45484eb300058e3b99c997808b5" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda-3.10.1-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.10.1-MacOSX-x86_64.sh#61a1e468a79cca45a518b1760033e7af89108bf88487afead79f96e3229b422a" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda-3.16.0
Normal file
19
plugins/python-build/share/python-build/miniconda-3.16.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda-3.16.0-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda-3.16.0-Linux-x86.sh#57e9659848e6322cb18c1c4a5c844a4f7dc5e784dbd8977245769ff9db28dade" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda-3.16.0-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.16.0-Linux-x86_64.sh#b1facded0d33850e3a467d6e4589830be477bd4f819407b99b033a4d22601e4d" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda-3.16.0-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.16.0-MacOSX-x86_64.sh#e93517696d4ede4f8ff21ea42272f24508023b83f1e2e2c989d1b32ab19347a9" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda-3.8.3
Normal file
19
plugins/python-build/share/python-build/miniconda-3.8.3
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda-3.8.3-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda-3.8.3-Linux-x86.sh#253a95fac2dbcc01ad5ce5a78d241a362482e1fbb24b1000ea5e217f55825cb6" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda-3.8.3-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.8.3-Linux-x86_64.sh#7ac19397731ffb212ed5534c29cd25f5f4c0c81669707ba6da8635cf1431c114" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda-3.8.3-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.8.3-MacOSX-x86_64.sh#e19e16b7969fb256d68f7de3a4e02331ba04e1c48a262d2b9f66db106e016257" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda-3.9.1
Normal file
19
plugins/python-build/share/python-build/miniconda-3.9.1
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda-3.9.1-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda-3.9.1-Linux-x86.sh#f3cdc8d774acce05462eb07d2676162c519e1e5d35c98d1dc3d6eb7b262da0b2" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda-3.9.1-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.9.1-Linux-x86_64.sh#64f2b5047f944bb9b06e46c7281e9edffd412981c93e31d4c111287a1d30fef4" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda-3.9.1-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda-3.9.1-MacOSX-x86_64.sh#ea529626cfb3519eebee83c40965f0a58375e0826c6777b759eb0c42ca9970d2" "miniconda" verify_py27
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda3-3.10.1
Normal file
19
plugins/python-build/share/python-build/miniconda3-3.10.1
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda3-3.10.1-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda3-3.10.1-Linux-x86.sh#e9b751fa8bc5372731512e058fa3867ad9e54983b48d462b4c8f7a031953c2bc" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda3-3.10.1-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.10.1-Linux-x86_64.sh#cbd86f49008319416d1e57f9ac43a42445058f06aaeebe5ab974769887a8628b" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda3-3.10.1-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.10.1-MacOSX-x86_64.sh#58ba40cbd1cf5bba680f94321d2ce22685a2b06ad9252044f06a0018fe99bd62" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda3-3.16.0
Normal file
19
plugins/python-build/share/python-build/miniconda3-3.16.0
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda3-3.16.0-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda3-3.16.0-Linux-x86.sh#faedb7a75584d48d563f0f9b449cb00bf8d05ddb3e1ede1936bf522f03f0e1e2" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda3-3.16.0-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.16.0-Linux-x86_64.sh#3becbcdd36761711850cffa11064b87cfe067dbeb4a5eda544dc341af482de87" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda3-3.16.0-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.16.0-MacOSX-x86_64.sh#36fe954548a6900249270f9632b76252e247313cc9d551c096d7e1f526a88631" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda3-3.8.3
Normal file
19
plugins/python-build/share/python-build/miniconda3-3.8.3
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda3-3.8.3-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda3-3.8.3-Linux-x86.sh#2345cf595864ee0a139f6dd1572070442445baace0dec7a4937267169708f929" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda3-3.8.3-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.8.3-Linux-x86_64.sh#26483a27b56d3567596b866076cb6de75c4b7e376fe359720ec27fca2c05ceec" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda3-3.8.3-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.8.3-MacOSX-x86_64.sh#86be2f1d55755670e0a21902584768b69732b31e87af22d1cca856f3d9e5c20d" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
19
plugins/python-build/share/python-build/miniconda3-3.9.1
Normal file
19
plugins/python-build/share/python-build/miniconda3-3.9.1
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
case "$(anaconda_architecture 2>/dev/null || true)" in
|
||||||
|
"Linux-x86" )
|
||||||
|
install_script "Miniconda3-3.9.1-Linux-x86" "http://repo.continuum.io/miniconda/Miniconda3-3.9.1-Linux-x86.sh#1a9f8abfc63080c2d764039335a24465388533cca86472224c994ed8d32c4d48" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"Linux-x86_64" )
|
||||||
|
install_script "Miniconda3-3.9.1-Linux-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.9.1-Linux-x86_64.sh#6c6b44acdd0bc4229377ee10d52c8ac6160c336d9cdd669db7371aa9344e1ac3" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
"MacOSX-x86_64" )
|
||||||
|
install_script "Miniconda3-3.9.1-MacOSX-x86_64" "http://repo.continuum.io/miniconda/Miniconda3-3.9.1-MacOSX-x86_64.sh#e32523e3fdf0addab008e816c54eb6ae6eb6d62b1122d1e0dc4f4313a97b0591" "miniconda" verify_py34
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of Miniconda is not available for $(anaconda_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
Author: Dwayne Litzenberger <dlitz@dlitz.net>
|
||||||
|
Date: Sun Jun 22 01:15:05 2014 -0700
|
||||||
|
|
||||||
|
Patch configure to handle Ubuntu Bug#286334
|
||||||
|
|
||||||
|
Fixes this crash:
|
||||||
|
|
||||||
|
*** buffer overflow detected ***: ./python terminated
|
||||||
|
======= Backtrace: =========
|
||||||
|
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x2b08765c9007]
|
||||||
|
|
||||||
|
diff --git configure configure
|
||||||
|
index 4838393..654de3f 100755
|
||||||
|
--- configure
|
||||||
|
+++ configure
|
||||||
|
@@ -20798,6 +20798,15 @@ done
|
||||||
|
echo "$as_me:$LINENO: result: done" >&5
|
||||||
|
echo "${ECHO_T}done" >&6
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
ac_config_files="$ac_config_files Makefile.pre Modules/Setup.config"
|
||||||
|
|
||||||
|
diff --git configure.in configure.in
|
||||||
|
index ba7a011..060a73f 100644
|
||||||
|
--- configure.in
|
||||||
|
+++ configure.in
|
||||||
|
@@ -3072,6 +3072,15 @@ for dir in $SRCDIRS; do
|
||||||
|
done
|
||||||
|
AC_MSG_RESULT(done)
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Modules/Setup.config)
|
||||||
|
AC_OUTPUT
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
Author: Dwayne Litzenberger <dlitz@dlitz.net>
|
||||||
|
Date: Sun Jun 22 01:15:05 2014 -0700
|
||||||
|
|
||||||
|
Patch configure to handle Ubuntu Bug#286334
|
||||||
|
|
||||||
|
Fixes this crash:
|
||||||
|
|
||||||
|
*** buffer overflow detected ***: ./python terminated
|
||||||
|
======= Backtrace: =========
|
||||||
|
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x2b08765c9007]
|
||||||
|
|
||||||
|
diff --git configure configure
|
||||||
|
index 4838393..654de3f 100755
|
||||||
|
--- configure
|
||||||
|
+++ configure
|
||||||
|
@@ -20798,6 +20798,15 @@ done
|
||||||
|
echo "$as_me:$LINENO: result: done" >&5
|
||||||
|
echo "${ECHO_T}done" >&6
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
ac_config_files="$ac_config_files Makefile.pre Modules/Setup.config"
|
||||||
|
|
||||||
|
diff --git configure.in configure.in
|
||||||
|
index ba7a011..060a73f 100644
|
||||||
|
--- configure.in
|
||||||
|
+++ configure.in
|
||||||
|
@@ -3072,6 +3072,15 @@ for dir in $SRCDIRS; do
|
||||||
|
done
|
||||||
|
AC_MSG_RESULT(done)
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Modules/Setup.config)
|
||||||
|
AC_OUTPUT
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
Author: Dwayne Litzenberger <dlitz@dlitz.net>
|
||||||
|
Date: Sun Jun 22 01:15:05 2014 -0700
|
||||||
|
|
||||||
|
Patch configure to handle Ubuntu Bug#286334
|
||||||
|
|
||||||
|
Fixes this crash:
|
||||||
|
|
||||||
|
*** buffer overflow detected ***: ./python terminated
|
||||||
|
======= Backtrace: =========
|
||||||
|
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x2b08765c9007]
|
||||||
|
|
||||||
|
diff --git configure configure
|
||||||
|
index 4838393..654de3f 100755
|
||||||
|
--- configure
|
||||||
|
+++ configure
|
||||||
|
@@ -20798,6 +20798,15 @@ done
|
||||||
|
echo "$as_me:$LINENO: result: done" >&5
|
||||||
|
echo "${ECHO_T}done" >&6
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
ac_config_files="$ac_config_files Makefile.pre Modules/Setup.config"
|
||||||
|
|
||||||
|
diff --git configure.in configure.in
|
||||||
|
index ba7a011..060a73f 100644
|
||||||
|
--- configure.in
|
||||||
|
+++ configure.in
|
||||||
|
@@ -3072,6 +3072,15 @@ for dir in $SRCDIRS; do
|
||||||
|
done
|
||||||
|
AC_MSG_RESULT(done)
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Modules/Setup.config)
|
||||||
|
AC_OUTPUT
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
Author: Dwayne Litzenberger <dlitz@dlitz.net>
|
||||||
|
Date: Sun Jun 22 01:15:05 2014 -0700
|
||||||
|
|
||||||
|
Patch configure to handle Ubuntu Bug#286334
|
||||||
|
|
||||||
|
Fixes this crash:
|
||||||
|
|
||||||
|
*** buffer overflow detected ***: ./python terminated
|
||||||
|
======= Backtrace: =========
|
||||||
|
/lib/x86_64-linux-gnu/libc.so.6(__fortify_fail+0x37)[0x2b08765c9007]
|
||||||
|
|
||||||
|
diff --git configure configure
|
||||||
|
index 4838393..654de3f 100755
|
||||||
|
--- configure
|
||||||
|
+++ configure
|
||||||
|
@@ -20798,6 +20798,15 @@ done
|
||||||
|
echo "$as_me:$LINENO: result: done" >&5
|
||||||
|
echo "${ECHO_T}done" >&6
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
ac_config_files="$ac_config_files Makefile.pre Modules/Setup.config"
|
||||||
|
|
||||||
|
diff --git configure.in configure.in
|
||||||
|
index ba7a011..060a73f 100644
|
||||||
|
--- configure.in
|
||||||
|
+++ configure.in
|
||||||
|
@@ -3072,6 +3072,15 @@ for dir in $SRCDIRS; do
|
||||||
|
done
|
||||||
|
AC_MSG_RESULT(done)
|
||||||
|
|
||||||
|
+case $ac_sys_system in
|
||||||
|
+Linux*)
|
||||||
|
+# Workaround for bug in Ubuntu 10.10 amd64 gcc-4.4
|
||||||
|
+# See http://orip.org/2008/10/building-python-235-on-ubuntu-intrepid.html
|
||||||
|
+# and Ubuntu Bug #286334
|
||||||
|
+BASECFLAGS="$BASECFLAGS -U_FORTIFY_SOURCE"
|
||||||
|
+;;
|
||||||
|
+esac
|
||||||
|
+
|
||||||
|
# generate output files
|
||||||
|
AC_CONFIG_FILES(Makefile.pre Modules/Setup.config)
|
||||||
|
AC_OUTPUT
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.10/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.10/Lib/site.py 2014-06-30 05:05:30.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:42:33.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.2/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.2/Lib/site.py 2014-12-12 10:59:47.000000000 +0200
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:24:28.000000000 +0200
|
||||||
|
@@ -312,7 +312,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework and "/%s.framework/"%(framework,) in prefix:
|
||||||
|
+ if False and framework and "/%s.framework/"%(framework,) in prefix:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.3/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.3/Lib/site.py 2012-04-10 02:07:31.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:35:33.000000000 +0200
|
||||||
|
@@ -312,7 +312,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.3/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.3/Lib/site.py 2012-04-10 02:07:31.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:35:33.000000000 +0200
|
||||||
|
@@ -312,7 +312,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.5/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.5/Lib/site.py 2013-05-12 06:32:44.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:29:29.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.5/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.5/Lib/site.py 2013-05-12 06:32:44.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:29:29.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.5/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.5/Lib/site.py 2013-05-12 06:32:44.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:29:29.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.8/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.8/Lib/site.py 2014-06-30 05:05:30.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:42:33.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
Only in .: 003_system_library_path_in_sys_path.patch
|
||||||
|
diff -ur ../Python-2.7.9/Lib/site.py ./Lib/site.py
|
||||||
|
--- ../Python-2.7.9/Lib/site.py 2014-06-30 05:05:30.000000000 +0300
|
||||||
|
+++ ./Lib/site.py 2014-12-12 11:42:33.000000000 +0200
|
||||||
|
@@ -300,7 +300,7 @@
|
||||||
|
# locations.
|
||||||
|
from sysconfig import get_config_var
|
||||||
|
framework = get_config_var("PYTHONFRAMEWORK")
|
||||||
|
- if framework:
|
||||||
|
+ if False and framework:
|
||||||
|
sitepackages.append(
|
||||||
|
os.path.join("/Library", framework,
|
||||||
|
sys.version[:3], "site-packages"))
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
diff -r -u ../Python-3.1/setup.py ./setup.py
|
||||||
|
--- ../Python-3.1/setup.py 2009-05-24 02:13:14.000000000 +0900
|
||||||
|
+++ ./setup.py 2015-08-15 13:29:18.300777605 +0900
|
||||||
|
@@ -14,6 +14,7 @@
|
||||||
|
from distutils.command.build_ext import build_ext
|
||||||
|
from distutils.command.install import install
|
||||||
|
from distutils.command.install_lib import install_lib
|
||||||
|
+from distutils.spawn import find_executable
|
||||||
|
|
||||||
|
# This global variable is used to hold the list of modules to be disabled.
|
||||||
|
disabled_module_list = []
|
||||||
|
@@ -293,10 +294,33 @@
|
||||||
|
return platform
|
||||||
|
return sys.platform
|
||||||
|
|
||||||
|
+ def add_multiarch_paths(self):
|
||||||
|
+ # Debian/Ubuntu multiarch support.
|
||||||
|
+ # https://wiki.ubuntu.com/MultiarchSpec
|
||||||
|
+ if not find_executable('dpkg-architecture'):
|
||||||
|
+ return
|
||||||
|
+ tmpfile = os.path.join(self.build_temp, 'multiarch')
|
||||||
|
+ if not os.path.exists(self.build_temp):
|
||||||
|
+ os.makedirs(self.build_temp)
|
||||||
|
+ ret = os.system(
|
||||||
|
+ 'dpkg-architecture -qDEB_HOST_MULTIARCH > %s 2> /dev/null' %
|
||||||
|
+ tmpfile)
|
||||||
|
+ try:
|
||||||
|
+ if ret >> 8 == 0:
|
||||||
|
+ with open(tmpfile) as fp:
|
||||||
|
+ multiarch_path_component = fp.readline().strip()
|
||||||
|
+ add_dir_to_list(self.compiler.library_dirs,
|
||||||
|
+ '/usr/lib/' + multiarch_path_component)
|
||||||
|
+ add_dir_to_list(self.compiler.include_dirs,
|
||||||
|
+ '/usr/include/' + multiarch_path_component)
|
||||||
|
+ finally:
|
||||||
|
+ os.unlink(tmpfile)
|
||||||
|
+
|
||||||
|
def detect_modules(self):
|
||||||
|
# Ensure that /usr/local is always used
|
||||||
|
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||||
|
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||||
|
+ self.add_multiarch_paths()
|
||||||
|
|
||||||
|
# Add paths specified in the environment variables LDFLAGS and
|
||||||
|
# CPPFLAGS for header and library files.
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
diff -r -u ../Python-3.1/Lib/ssl.py ./Lib/ssl.py
|
||||||
|
--- ../Python-3.1/Lib/ssl.py 2009-06-04 18:42:55.000000000 +0900
|
||||||
|
+++ ./Lib/ssl.py 2015-08-15 13:12:22.270915671 +0900
|
||||||
|
@@ -60,8 +60,20 @@
|
||||||
|
|
||||||
|
from _ssl import SSLError
|
||||||
|
from _ssl import CERT_NONE, CERT_OPTIONAL, CERT_REQUIRED
|
||||||
|
-from _ssl import (PROTOCOL_SSLv2, PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
+from _ssl import (PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
PROTOCOL_TLSv1)
|
||||||
|
+_PROTOCOL_NAMES = {
|
||||||
|
+ PROTOCOL_TLSv1: "TLSv1",
|
||||||
|
+ PROTOCOL_SSLv23: "SSLv23",
|
||||||
|
+ PROTOCOL_SSLv3: "SSLv3",
|
||||||
|
+}
|
||||||
|
+try:
|
||||||
|
+ from _ssl import PROTOCOL_SSLv2
|
||||||
|
+ _SSLv2_IF_EXISTS = PROTOCOL_SSLv2
|
||||||
|
+except ImportError:
|
||||||
|
+ _SSLv2_IF_EXISTS = None
|
||||||
|
+else:
|
||||||
|
+ _PROTOCOL_NAMES[PROTOCOL_SSLv2] = "SSLv2"
|
||||||
|
from _ssl import RAND_status, RAND_egd, RAND_add
|
||||||
|
from _ssl import (
|
||||||
|
SSL_ERROR_ZERO_RETURN,
|
||||||
|
@@ -434,13 +446,4 @@
|
||||||
|
return DER_cert_to_PEM_cert(dercert)
|
||||||
|
|
||||||
|
def get_protocol_name(protocol_code):
|
||||||
|
- if protocol_code == PROTOCOL_TLSv1:
|
||||||
|
- return "TLSv1"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv23:
|
||||||
|
- return "SSLv23"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv2:
|
||||||
|
- return "SSLv2"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv3:
|
||||||
|
- return "SSLv3"
|
||||||
|
- else:
|
||||||
|
- return "<unknown>"
|
||||||
|
+ return _PROTOCOL_NAMES.get(protocol_code, '<unknown>')
|
||||||
|
diff -r -u ../Python-3.1/Modules/_ssl.c ./Modules/_ssl.c
|
||||||
|
--- ../Python-3.1/Modules/_ssl.c 2009-05-06 07:31:58.000000000 +0900
|
||||||
|
+++ ./Modules/_ssl.c 2015-08-15 13:13:23.812369742 +0900
|
||||||
|
@@ -62,7 +62,9 @@
|
||||||
|
};
|
||||||
|
|
||||||
|
enum py_ssl_version {
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PY_SSL_VERSION_SSL2,
|
||||||
|
+#endif
|
||||||
|
PY_SSL_VERSION_SSL3,
|
||||||
|
PY_SSL_VERSION_SSL23,
|
||||||
|
PY_SSL_VERSION_TLS1,
|
||||||
|
@@ -301,8 +303,10 @@
|
||||||
|
self->ctx = SSL_CTX_new(TLSv1_method()); /* Set up context */
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL3)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv3_method()); /* Set up context */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL2)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv2_method()); /* Set up context */
|
||||||
|
+#endif
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL23)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv23_method()); /* Set up context */
|
||||||
|
PySSL_END_ALLOW_THREADS
|
||||||
|
@@ -1693,8 +1697,10 @@
|
||||||
|
PY_SSL_CERT_REQUIRED);
|
||||||
|
|
||||||
|
/* protocol versions */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv2",
|
||||||
|
PY_SSL_VERSION_SSL2);
|
||||||
|
+#endif
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv3",
|
||||||
|
PY_SSL_VERSION_SSL3);
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv23",
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
diff -r -u ../Python-3.1/setup.py ./setup.py
|
||||||
|
--- ../Python-3.1/setup.py 2009-05-24 02:13:14.000000000 +0900
|
||||||
|
+++ ./setup.py 2015-08-15 13:29:18.300777605 +0900
|
||||||
|
@@ -14,6 +14,7 @@
|
||||||
|
from distutils.command.build_ext import build_ext
|
||||||
|
from distutils.command.install import install
|
||||||
|
from distutils.command.install_lib import install_lib
|
||||||
|
+from distutils.spawn import find_executable
|
||||||
|
|
||||||
|
# This global variable is used to hold the list of modules to be disabled.
|
||||||
|
disabled_module_list = []
|
||||||
|
@@ -293,10 +294,33 @@
|
||||||
|
return platform
|
||||||
|
return sys.platform
|
||||||
|
|
||||||
|
+ def add_multiarch_paths(self):
|
||||||
|
+ # Debian/Ubuntu multiarch support.
|
||||||
|
+ # https://wiki.ubuntu.com/MultiarchSpec
|
||||||
|
+ if not find_executable('dpkg-architecture'):
|
||||||
|
+ return
|
||||||
|
+ tmpfile = os.path.join(self.build_temp, 'multiarch')
|
||||||
|
+ if not os.path.exists(self.build_temp):
|
||||||
|
+ os.makedirs(self.build_temp)
|
||||||
|
+ ret = os.system(
|
||||||
|
+ 'dpkg-architecture -qDEB_HOST_MULTIARCH > %s 2> /dev/null' %
|
||||||
|
+ tmpfile)
|
||||||
|
+ try:
|
||||||
|
+ if ret >> 8 == 0:
|
||||||
|
+ with open(tmpfile) as fp:
|
||||||
|
+ multiarch_path_component = fp.readline().strip()
|
||||||
|
+ add_dir_to_list(self.compiler.library_dirs,
|
||||||
|
+ '/usr/lib/' + multiarch_path_component)
|
||||||
|
+ add_dir_to_list(self.compiler.include_dirs,
|
||||||
|
+ '/usr/include/' + multiarch_path_component)
|
||||||
|
+ finally:
|
||||||
|
+ os.unlink(tmpfile)
|
||||||
|
+
|
||||||
|
def detect_modules(self):
|
||||||
|
# Ensure that /usr/local is always used
|
||||||
|
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||||
|
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||||
|
+ self.add_multiarch_paths()
|
||||||
|
|
||||||
|
# Add paths specified in the environment variables LDFLAGS and
|
||||||
|
# CPPFLAGS for header and library files.
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
diff -r -u ../Python-3.1/Lib/ssl.py ./Lib/ssl.py
|
||||||
|
--- ../Python-3.1/Lib/ssl.py 2009-06-04 18:42:55.000000000 +0900
|
||||||
|
+++ ./Lib/ssl.py 2015-08-15 13:12:22.270915671 +0900
|
||||||
|
@@ -60,8 +60,20 @@
|
||||||
|
|
||||||
|
from _ssl import SSLError
|
||||||
|
from _ssl import CERT_NONE, CERT_OPTIONAL, CERT_REQUIRED
|
||||||
|
-from _ssl import (PROTOCOL_SSLv2, PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
+from _ssl import (PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
PROTOCOL_TLSv1)
|
||||||
|
+_PROTOCOL_NAMES = {
|
||||||
|
+ PROTOCOL_TLSv1: "TLSv1",
|
||||||
|
+ PROTOCOL_SSLv23: "SSLv23",
|
||||||
|
+ PROTOCOL_SSLv3: "SSLv3",
|
||||||
|
+}
|
||||||
|
+try:
|
||||||
|
+ from _ssl import PROTOCOL_SSLv2
|
||||||
|
+ _SSLv2_IF_EXISTS = PROTOCOL_SSLv2
|
||||||
|
+except ImportError:
|
||||||
|
+ _SSLv2_IF_EXISTS = None
|
||||||
|
+else:
|
||||||
|
+ _PROTOCOL_NAMES[PROTOCOL_SSLv2] = "SSLv2"
|
||||||
|
from _ssl import RAND_status, RAND_egd, RAND_add
|
||||||
|
from _ssl import (
|
||||||
|
SSL_ERROR_ZERO_RETURN,
|
||||||
|
@@ -434,13 +446,4 @@
|
||||||
|
return DER_cert_to_PEM_cert(dercert)
|
||||||
|
|
||||||
|
def get_protocol_name(protocol_code):
|
||||||
|
- if protocol_code == PROTOCOL_TLSv1:
|
||||||
|
- return "TLSv1"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv23:
|
||||||
|
- return "SSLv23"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv2:
|
||||||
|
- return "SSLv2"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv3:
|
||||||
|
- return "SSLv3"
|
||||||
|
- else:
|
||||||
|
- return "<unknown>"
|
||||||
|
+ return _PROTOCOL_NAMES.get(protocol_code, '<unknown>')
|
||||||
|
diff -r -u ../Python-3.1/Modules/_ssl.c ./Modules/_ssl.c
|
||||||
|
--- ../Python-3.1/Modules/_ssl.c 2009-05-06 07:31:58.000000000 +0900
|
||||||
|
+++ ./Modules/_ssl.c 2015-08-15 13:13:23.812369742 +0900
|
||||||
|
@@ -62,7 +62,9 @@
|
||||||
|
};
|
||||||
|
|
||||||
|
enum py_ssl_version {
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PY_SSL_VERSION_SSL2,
|
||||||
|
+#endif
|
||||||
|
PY_SSL_VERSION_SSL3,
|
||||||
|
PY_SSL_VERSION_SSL23,
|
||||||
|
PY_SSL_VERSION_TLS1,
|
||||||
|
@@ -301,8 +303,10 @@
|
||||||
|
self->ctx = SSL_CTX_new(TLSv1_method()); /* Set up context */
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL3)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv3_method()); /* Set up context */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL2)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv2_method()); /* Set up context */
|
||||||
|
+#endif
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL23)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv23_method()); /* Set up context */
|
||||||
|
PySSL_END_ALLOW_THREADS
|
||||||
|
@@ -1693,8 +1697,10 @@
|
||||||
|
PY_SSL_CERT_REQUIRED);
|
||||||
|
|
||||||
|
/* protocol versions */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv2",
|
||||||
|
PY_SSL_VERSION_SSL2);
|
||||||
|
+#endif
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv3",
|
||||||
|
PY_SSL_VERSION_SSL3);
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv23",
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
diff -r -u ../Python-3.1/setup.py ./setup.py
|
||||||
|
--- ../Python-3.1/setup.py 2009-05-24 02:13:14.000000000 +0900
|
||||||
|
+++ ./setup.py 2015-08-15 13:29:18.300777605 +0900
|
||||||
|
@@ -14,6 +14,7 @@
|
||||||
|
from distutils.command.build_ext import build_ext
|
||||||
|
from distutils.command.install import install
|
||||||
|
from distutils.command.install_lib import install_lib
|
||||||
|
+from distutils.spawn import find_executable
|
||||||
|
|
||||||
|
# This global variable is used to hold the list of modules to be disabled.
|
||||||
|
disabled_module_list = []
|
||||||
|
@@ -293,10 +294,33 @@
|
||||||
|
return platform
|
||||||
|
return sys.platform
|
||||||
|
|
||||||
|
+ def add_multiarch_paths(self):
|
||||||
|
+ # Debian/Ubuntu multiarch support.
|
||||||
|
+ # https://wiki.ubuntu.com/MultiarchSpec
|
||||||
|
+ if not find_executable('dpkg-architecture'):
|
||||||
|
+ return
|
||||||
|
+ tmpfile = os.path.join(self.build_temp, 'multiarch')
|
||||||
|
+ if not os.path.exists(self.build_temp):
|
||||||
|
+ os.makedirs(self.build_temp)
|
||||||
|
+ ret = os.system(
|
||||||
|
+ 'dpkg-architecture -qDEB_HOST_MULTIARCH > %s 2> /dev/null' %
|
||||||
|
+ tmpfile)
|
||||||
|
+ try:
|
||||||
|
+ if ret >> 8 == 0:
|
||||||
|
+ with open(tmpfile) as fp:
|
||||||
|
+ multiarch_path_component = fp.readline().strip()
|
||||||
|
+ add_dir_to_list(self.compiler.library_dirs,
|
||||||
|
+ '/usr/lib/' + multiarch_path_component)
|
||||||
|
+ add_dir_to_list(self.compiler.include_dirs,
|
||||||
|
+ '/usr/include/' + multiarch_path_component)
|
||||||
|
+ finally:
|
||||||
|
+ os.unlink(tmpfile)
|
||||||
|
+
|
||||||
|
def detect_modules(self):
|
||||||
|
# Ensure that /usr/local is always used
|
||||||
|
add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
||||||
|
add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
||||||
|
+ self.add_multiarch_paths()
|
||||||
|
|
||||||
|
# Add paths specified in the environment variables LDFLAGS and
|
||||||
|
# CPPFLAGS for header and library files.
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
diff -r -u ../Python-3.1/Lib/ssl.py ./Lib/ssl.py
|
||||||
|
--- ../Python-3.1/Lib/ssl.py 2009-06-04 18:42:55.000000000 +0900
|
||||||
|
+++ ./Lib/ssl.py 2015-08-15 13:12:22.270915671 +0900
|
||||||
|
@@ -60,8 +60,20 @@
|
||||||
|
|
||||||
|
from _ssl import SSLError
|
||||||
|
from _ssl import CERT_NONE, CERT_OPTIONAL, CERT_REQUIRED
|
||||||
|
-from _ssl import (PROTOCOL_SSLv2, PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
+from _ssl import (PROTOCOL_SSLv3, PROTOCOL_SSLv23,
|
||||||
|
PROTOCOL_TLSv1)
|
||||||
|
+_PROTOCOL_NAMES = {
|
||||||
|
+ PROTOCOL_TLSv1: "TLSv1",
|
||||||
|
+ PROTOCOL_SSLv23: "SSLv23",
|
||||||
|
+ PROTOCOL_SSLv3: "SSLv3",
|
||||||
|
+}
|
||||||
|
+try:
|
||||||
|
+ from _ssl import PROTOCOL_SSLv2
|
||||||
|
+ _SSLv2_IF_EXISTS = PROTOCOL_SSLv2
|
||||||
|
+except ImportError:
|
||||||
|
+ _SSLv2_IF_EXISTS = None
|
||||||
|
+else:
|
||||||
|
+ _PROTOCOL_NAMES[PROTOCOL_SSLv2] = "SSLv2"
|
||||||
|
from _ssl import RAND_status, RAND_egd, RAND_add
|
||||||
|
from _ssl import (
|
||||||
|
SSL_ERROR_ZERO_RETURN,
|
||||||
|
@@ -434,13 +446,4 @@
|
||||||
|
return DER_cert_to_PEM_cert(dercert)
|
||||||
|
|
||||||
|
def get_protocol_name(protocol_code):
|
||||||
|
- if protocol_code == PROTOCOL_TLSv1:
|
||||||
|
- return "TLSv1"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv23:
|
||||||
|
- return "SSLv23"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv2:
|
||||||
|
- return "SSLv2"
|
||||||
|
- elif protocol_code == PROTOCOL_SSLv3:
|
||||||
|
- return "SSLv3"
|
||||||
|
- else:
|
||||||
|
- return "<unknown>"
|
||||||
|
+ return _PROTOCOL_NAMES.get(protocol_code, '<unknown>')
|
||||||
|
diff -r -u ../Python-3.1/Modules/_ssl.c ./Modules/_ssl.c
|
||||||
|
--- ../Python-3.1/Modules/_ssl.c 2009-05-06 07:31:58.000000000 +0900
|
||||||
|
+++ ./Modules/_ssl.c 2015-08-15 13:13:23.812369742 +0900
|
||||||
|
@@ -62,7 +62,9 @@
|
||||||
|
};
|
||||||
|
|
||||||
|
enum py_ssl_version {
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PY_SSL_VERSION_SSL2,
|
||||||
|
+#endif
|
||||||
|
PY_SSL_VERSION_SSL3,
|
||||||
|
PY_SSL_VERSION_SSL23,
|
||||||
|
PY_SSL_VERSION_TLS1,
|
||||||
|
@@ -301,8 +303,10 @@
|
||||||
|
self->ctx = SSL_CTX_new(TLSv1_method()); /* Set up context */
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL3)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv3_method()); /* Set up context */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL2)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv2_method()); /* Set up context */
|
||||||
|
+#endif
|
||||||
|
else if (proto_version == PY_SSL_VERSION_SSL23)
|
||||||
|
self->ctx = SSL_CTX_new(SSLv23_method()); /* Set up context */
|
||||||
|
PySSL_END_ALLOW_THREADS
|
||||||
|
@@ -1693,8 +1697,10 @@
|
||||||
|
PY_SSL_CERT_REQUIRED);
|
||||||
|
|
||||||
|
/* protocol versions */
|
||||||
|
+#ifndef OPENSSL_NO_SSL2
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv2",
|
||||||
|
PY_SSL_VERSION_SSL2);
|
||||||
|
+#endif
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv3",
|
||||||
|
PY_SSL_VERSION_SSL3);
|
||||||
|
PyModule_AddIntConstant(m, "PROTOCOL_SSLv23",
|
||||||
@@ -1,7 +1,10 @@
|
|||||||
case "$(pypy_architecture 2>/dev/null || true)" in
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
"linux" )
|
"linux" )
|
||||||
require_distro "Ubuntu 10.04" || true
|
if require_distro "Ubuntu 10.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy-2.3.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-linux.tar.bz2#3eed698e8533cca7cbd2c2c87fce39dc14baa7dec03f4b082d870131d2a470e4" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.3.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-linux.tar.bz2#3eed698e8533cca7cbd2c2c87fce39dc14baa7dec03f4b082d870131d2a470e4" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.3.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.3.1-linux_i686-portable.tar.bz2#d8784020f6b8a5812fd8b3f5e1df8afb176fd56c2a929d4408d28d4a925525fa" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"linux-armel" )
|
"linux-armel" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
require_distro "Ubuntu 12.04" || true
|
||||||
@@ -16,8 +19,11 @@ case "$(pypy_architecture 2>/dev/null || true)" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
"linux64" )
|
"linux64" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
if require_distro "Ubuntu 12.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy-2.3.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-linux64.tar.bz2#dab7940496d96f1f255a8ef402fa96b94444775e373484e057d2fcabc3928b42" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.3.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-linux64.tar.bz2#dab7940496d96f1f255a8ef402fa96b94444775e373484e057d2fcabc3928b42" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.3.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.3.1-linux_x86_64-portable.tar.bz2#453bd1291f0372e25ceab6b37b7a8d1756bebd3e708fcce1379ef931ccf9f75a" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"osx64" )
|
"osx64" )
|
||||||
install_package "pypy-2.3.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-osx64.tar.bz2#12e363bf5ea3a508600e043b68c47d4148359ca3d999ee207665bb139f8fbf37" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.3.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.3.1-osx64.tar.bz2#12e363bf5ea3a508600e043b68c47d4148359ca3d999ee207665bb139f8fbf37" "pypy" verify_py27 ensurepip
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
case "$(pypy_architecture 2>/dev/null || true)" in
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
"linux" )
|
"linux" )
|
||||||
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy-2.4.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-linux.tar.bz2#a24adb366f87ac0eba829d7188a156a7d897e71893689fab06502c3f4152ac0e" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.4.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-linux.tar.bz2#a24adb366f87ac0eba829d7188a156a7d897e71893689fab06502c3f4152ac0e" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.4-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.4-linux_i686-portable.tar.bz2#2a330bbeae038c143366982f2104bf4096752f1ec7520fc5608f0527c124b0c2" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"linux-armel" )
|
"linux-armel" )
|
||||||
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
@@ -16,8 +19,11 @@ case "$(pypy_architecture 2>/dev/null || true)" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
"linux64" )
|
"linux64" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
if require_distro "Ubuntu 12.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy-2.4.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-linux64.tar.bz2#27cdc0d6e8bce2637678f6d076fc780877dffe1bf9aec9e253f95219af9ed099" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.4.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-linux64.tar.bz2#27cdc0d6e8bce2637678f6d076fc780877dffe1bf9aec9e253f95219af9ed099" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.4-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.4-linux_x86_64-portable.tar.bz2#b6ed31aff0ebcc9b40554576b1ce789fe4e8c93f7a34cd3983515e1a9a8a45b6" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"osx64" )
|
"osx64" )
|
||||||
install_package "pypy-2.4.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-osx64.tar.bz2#3eb8afdfa42bc9b08b4d3058e21d4ce978a52722fdcfdc67d6c3ee5013a51aaa" "pypy" verify_py27 ensurepip
|
install_package "pypy-2.4.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.4.0-osx64.tar.bz2#3eb8afdfa42bc9b08b4d3058e21d4ce978a52722fdcfdc67d6c3ee5013a51aaa" "pypy" verify_py27 ensurepip
|
||||||
|
|||||||
44
plugins/python-build/share/python-build/pypy-2.5.0
Normal file
44
plugins/python-build/share/python-build/pypy-2.5.0
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.5.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-linux.tar.bz2#3dfd56a986d25929b4ed9f40a5484f72f1d513cd816cf8aaa683106c3391247c" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.5-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5-linux_i686-portable.tar.bz2#6cbe3e1a48900f22c8e4412f82906fba92dd4a165bac5fe6866a2a26383fe3b8" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux-armel" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-2.5.0-linux-armel" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-linux-armel.tar.bz2#277fa6c61d63af96893dafd19e1ffea7b988397c6a0fd66cd99dc0db1029be56" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux-armhf" )
|
||||||
|
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "Raspbian"* ]]; then
|
||||||
|
install_package "pypy-2.5.0-linux-armhf-raspbian" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-linux-armhf-raspbian.tar.bz2#6c975e39f0e7d57176b49a987a08862a3cbd9aeb52f47eb4ab148ea334e747fd" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
require_distro "Ubuntu 13.04" || true
|
||||||
|
install_package "pypy-2.5.0-linux-armhf-raring" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-linux-armhf-raring.tar.bz2#1866bf2b8a8144c68d64f2ba982c6c545849913167b4602b762716332ec1fa0b" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.5.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-linux64.tar.bz2#7764fb6b662407f8709eaa334c542aac9cb6bfe3291ac198dad0980ca129f3c2" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.5-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5-linux_x86_64-portable.tar.bz2#26c5a0964b32b09be0282766c27937c843a12b6820ff2d440c6d47a6092837e0" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"osx64" )
|
||||||
|
install_package "pypy-2.5.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-osx64.tar.bz2#30b392b969b54cde281b07f5c10865a7f2e11a229c46b8af384ca1d3fe8d4e6e" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"win32" )
|
||||||
|
# FIXME: never tested on Windows
|
||||||
|
install_zip "pypy-2.5.0-win32" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.0-win32.zip#692391434cf14016d74c6b8bda8f93135ef026f48c8327f3195bfa24d314317d" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo "try 'pypy-2.5.0-src' to build from soruce."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
plugins/python-build/share/python-build/pypy-2.5.0-src
Normal file
2
plugins/python-build/share/python-build/pypy-2.5.0-src
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require_gcc
|
||||||
|
install_package "pypy-pypy-10f1b29a2bd2" "https://bitbucket.org/pypy/pypy/get/release-2.5.0.tar.bz2#8d644a55a3150cf3d18536c784e3410bb3f3438c1505000c4f761863bacedf88" "pypy_builder" verify_py27 ensurepip
|
||||||
44
plugins/python-build/share/python-build/pypy-2.5.1
Normal file
44
plugins/python-build/share/python-build/pypy-2.5.1
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.5.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-linux.tar.bz2#c0035a2650cafcb384050a8c476ddc41c9fd40b0c3677fab68026f57c715907a" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.5.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5.1-linux_i686-portable.tar.bz2#ed532ddde3332d10faa59af49854cacbca458c597889352e619a87ab22363063" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux-armel" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-2.5.1-linux-armel" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-linux-armel.tar.bz2#91d68551b6e738c1e47aaed869a6df8208abb8c60194a1647c6aa13c7363a61d" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux-armhf" )
|
||||||
|
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "Raspbian"* ]]; then
|
||||||
|
install_package "pypy-2.5.1-linux-armhf-raspbian" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-linux-armhf-raspbian.tar.bz2#2b730f86b56fcc72f5bfcfe6a38b5a6fe27654f73b2256e10297373af169a69e" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
require_distro "Ubuntu 13.04" || true
|
||||||
|
install_package "pypy-2.5.1-linux-armhf-raring" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-linux-armhf-raring.tar.bz2#0a5648c18cc604b0a8eaa559549cb332d18358fc551865e9b7ef051b796e4ec7" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.5.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-linux64.tar.bz2#68e0955dbc80a0d51dfa9a8a76d8623f34920ece1bcbc6d910c2be019a653ba8" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.5.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5.1-linux_x86_64-portable.tar.bz2#157bee6349878cf0ef575b0d7bfd6cbb837c00e83b2872c924580ef7bc32c0d7" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"osx64" )
|
||||||
|
install_package "pypy-2.5.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-osx64.tar.bz2#db40dc8b5e95ef9c3322bd9897099e91555ef34188cf1c3852a92b081142d183" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"win32" )
|
||||||
|
# FIXME: never tested on Windows
|
||||||
|
install_zip "pypy-2.5.1-win32" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-win32.zip#0dbf90c30e848a91611bea99968a215244db02cf5f649114f10269cf1a15d607" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo "try 'pypy-2.5.1-src' to build from soruce."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
plugins/python-build/share/python-build/pypy-2.5.1-src
Normal file
2
plugins/python-build/share/python-build/pypy-2.5.1-src
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require_gcc
|
||||||
|
install_package "pypy-2.5.1-src" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.5.1-src.tar.bz2#ddb3a580b1ee99c5a699172d74be91c36dda9a38946d4731d8c6a63120a3ba2a" "pypy_builder" verify_py27 ensurepip
|
||||||
44
plugins/python-build/share/python-build/pypy-2.6.0
Normal file
44
plugins/python-build/share/python-build/pypy-2.6.0
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.6.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-linux.tar.bz2#6e0b052c40a59bf5a85ee239980bbcab8b031b4c2bc33b99efe1b072977d9910" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.6-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6-linux_i686-portable.tar.bz2#e01db0984f7fecd80dadfb1d5f65118e596e3984d12643b4d552e83f92bff549" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux-armel" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-2.6.0-linux-armel" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-linux-armel.tar.bz2#9d0cb9b15283f9c15f83c05293f8bd41d302c96090fd89b778f359df9bc8e619" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux-armhf" )
|
||||||
|
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "Raspbian"* ]]; then
|
||||||
|
install_package "pypy-2.6.0-linux-armhf-raspbian" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-linux-armhf-raspbian.tar.bz2#e9f6a16c3e21f38bd571adb33757649ceef3f2ebfdd6d37eea923ce26ea6728c" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
require_distro "Ubuntu 13.04" || true
|
||||||
|
install_package "pypy-2.6.0-linux-armhf-raring" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-linux-armhf-raring.tar.bz2#ccb37a6d861b6dd69cd038337664885dcf91852a2ab6aef480dd7cfbda8de502" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.6.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-linux64.tar.bz2#f5d2b0e3594cec57e32d3e43a951041ec330e1e962a836be470d591633e51388" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.6-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6-linux_x86_64-portable.tar.bz2#97284b66476c5d1b17a62f5017569a0073730928e19f95b49d78d6bc60b69495" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"osx64" )
|
||||||
|
install_package "pypy-2.6.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-osx64.tar.bz2#77f1d056484e40e0a8e2e2b2b489eedfe785605ef36b144ffce05f7b748f6acd" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"win32" )
|
||||||
|
# FIXME: never tested on Windows
|
||||||
|
install_zip "pypy-2.6.0-win32" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-win32.zip#de907e7fef7b9b6ceccfc8aa5f4781ee3bc4a49b119d4b22ab5e25eab21c6e8d" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo "try 'pypy-2.6.0-src' to build from soruce."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
plugins/python-build/share/python-build/pypy-2.6.0-src
Normal file
2
plugins/python-build/share/python-build/pypy-2.6.0-src
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require_gcc
|
||||||
|
install_package "pypy-2.6.0-src" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.0-src.tar.bz2#9bf353f22d25e97a85a6d3766619966055edea1ea1b2218445d683a8ad0399d9" "pypy_builder" verify_py27 ensurepip
|
||||||
44
plugins/python-build/share/python-build/pypy-2.6.1
Normal file
44
plugins/python-build/share/python-build/pypy-2.6.1
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.6.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-linux.tar.bz2#d010b1f1aafdb01beb107f16843985508ce81698260ce830690686d9b2768c88" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.6.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6.1-linux_i686-portable.tar.bz2#af8f05790fe21bffdb0619d39f2890e2ecabe47bbd3b21c2c97b9778e4cdb378" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux-armel" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-2.6.1-linux-armel" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-linux-armel.tar.bz2#0ca15d289e78a82f927b375a016b7c3246accac5d7eebded4e32a496fb3245ab" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux-armhf" )
|
||||||
|
if [[ "$(cat /etc/issue 2>/dev/null || true)" == "Raspbian"* ]]; then
|
||||||
|
install_package "pypy-2.6.1-linux-armhf-raspbian" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-linux-armhf-raspbian.tar.bz2#13d983805ebc6d9a3627dea3c34898375a4e4e7b6f0171cfbde463c1c04a92aa" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
require_distro "Ubuntu 13.04" || true
|
||||||
|
install_package "pypy-2.6.1-linux-armhf-raring" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-linux-armhf-raring.tar.bz2#4caa7c1922a212cca4690bfa181cd368760a23b50163b3cbbd6d28401dd5cef5" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
if require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" 1>/dev/null 2>&1; then
|
||||||
|
install_package "pypy-2.6.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-linux64.tar.bz2#78a48490d1b2dba8571156c2bf822324ca7dae6f6a56a4bbb96d3e8e8885367b" "pypy" verify_py27 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy-2.6.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6.1-linux_x86_64-portable.tar.bz2#ed6a35dee4c982123af716e62975039e18920b599afc4f6a2f3c7c89d0403389" "pypy" verify_py27 ensurepip
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"osx64" )
|
||||||
|
install_package "pypy-2.6.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-osx64.tar.bz2#4a78ef76ec38a49a9de40225c337e89486fa09938c600df2bd2dd60110066f65" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"win32" )
|
||||||
|
# FIXME: never tested on Windows
|
||||||
|
install_zip "pypy-2.6.1-win32" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-win32.zip#ccea3940fdedc03e2fcb5acf6badfe6d9c1ae876d5faf0a004e1d94edd7fd856" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo "try 'pypy-2.6.1-src' to build from soruce."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
2
plugins/python-build/share/python-build/pypy-2.6.1-src
Normal file
2
plugins/python-build/share/python-build/pypy-2.6.1-src
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require_gcc
|
||||||
|
install_package "pypy-2.6.1-src" "https://bitbucket.org/pypy/pypy/downloads/pypy-2.6.1-src.tar.bz2#7fddd414c9348c2f899f79ad86adc3fc2b19443855b5243f58487e1f0ac46560" "pypy_builder" verify_py27 ensurepip
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.3.1
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.3.1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.3.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.3.1-linux_i686-portable.tar.bz2#d8784020f6b8a5812fd8b3f5e1df8afb176fd56c2a929d4408d28d4a925525fa" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.3.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.3.1-linux_x86_64-portable.tar.bz2#453bd1291f0372e25ceab6b37b7a8d1756bebd3e708fcce1379ef931ccf9f75a" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.4
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.4
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.4-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.4-linux_i686-portable.tar.bz2#2a330bbeae038c143366982f2104bf4096752f1ec7520fc5608f0527c124b0c2" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.4-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.4-linux_x86_64-portable.tar.bz2#b6ed31aff0ebcc9b40554576b1ce789fe4e8c93f7a34cd3983515e1a9a8a45b6" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.5
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.5
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.5-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5-linux_i686-portable.tar.bz2#6cbe3e1a48900f22c8e4412f82906fba92dd4a165bac5fe6866a2a26383fe3b8" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.5-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5-linux_x86_64-portable.tar.bz2#26c5a0964b32b09be0282766c27937c843a12b6820ff2d440c6d47a6092837e0" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.5.1
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.5.1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.5.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5.1-linux_i686-portable.tar.bz2#ed532ddde3332d10faa59af49854cacbca458c597889352e619a87ab22363063" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.5.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.5.1-linux_x86_64-portable.tar.bz2#157bee6349878cf0ef575b0d7bfd6cbb837c00e83b2872c924580ef7bc32c0d7" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.6.0
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.6.0
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.6-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6-linux_i686-portable.tar.bz2#e01db0984f7fecd80dadfb1d5f65118e596e3984d12643b4d552e83f92bff549" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.6-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6-linux_x86_64-portable.tar.bz2#97284b66476c5d1b17a62f5017569a0073730928e19f95b49d78d6bc60b69495" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy-portable-2.6.1
Normal file
16
plugins/python-build/share/python-build/pypy-portable-2.6.1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy-2.6.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6.1-linux_i686-portable.tar.bz2#af8f05790fe21bffdb0619d39f2890e2ecabe47bbd3b21c2c97b9778e4cdb378" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy-2.6.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-2.6.1-linux_x86_64-portable.tar.bz2#ed6a35dee4c982123af716e62975039e18920b599afc4f6a2f3c7c89d0403389" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
14
plugins/python-build/share/python-build/pypy-stm-2.3
Normal file
14
plugins/python-build/share/python-build/pypy-stm-2.3
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux64" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-stm-2.3-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-stm-2.3-linux64.tar.bz2#2a489280c679503442219782a87a2d16504a1467cac85ad4be1361a21d1f4d54" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy-STM is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
14
plugins/python-build/share/python-build/pypy-stm-2.5.1
Normal file
14
plugins/python-build/share/python-build/pypy-stm-2.5.1
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux64" )
|
||||||
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
|
install_package "pypy-stm-2.5.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-stm-2.5.1-linux64.tar.bz2#f280788002f2acf8690b8f9c479bb5b6f0e699ebb42f8bf203da3f70f1a38134" "pypy" verify_py27 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": The binary distribution of PyPy-STM is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
@@ -1,7 +1,10 @@
|
|||||||
case "$(pypy_architecture 2>/dev/null || true)" in
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
"linux" )
|
"linux" )
|
||||||
require_distro "Ubuntu 10.04" || true
|
if require_distro "Ubuntu 10.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy3-2.3.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-linux.tar.bz2#7eddc6826e58c9c89e68b59ec8caf1596b76401517ad8d26ad5e18e0ffa45db9" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.3.1-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-linux.tar.bz2#7eddc6826e58c9c89e68b59ec8caf1596b76401517ad8d26ad5e18e0ffa45db9" "pypy" verify_py32 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy3-2.3.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.3.1-linux_i686-portable.tar.bz2#32a5b3fd4299b13aedf7bc6262eee0f6be9a27744ccf787718553d973ec38abb" "pypy" verify_py32 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"linux-armel" )
|
"linux-armel" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
require_distro "Ubuntu 12.04" || true
|
||||||
@@ -16,8 +19,11 @@ case "$(pypy_architecture 2>/dev/null || true)" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
"linux64" )
|
"linux64" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
if require_distro "Ubuntu 12.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy3-2.3.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-linux64.tar.bz2#303df2cf4766db20ec77786d9091dce284fdab01d7173c5828a35e86bc931b99" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.3.1-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-linux64.tar.bz2#303df2cf4766db20ec77786d9091dce284fdab01d7173c5828a35e86bc931b99" "pypy" verify_py32 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy3-2.3.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.3.1-linux_x86_64-portable.tar.bz2#cb56b5bde8f444d44a0ea9cd475ddeed00aa895f3dcc89fd37577a51439540aa" "pypy" verify_py32 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"osx64" )
|
"osx64" )
|
||||||
install_package "pypy3-2.3.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-osx64.tar.bz2#600d4dad2039b8035582c0e0ce9b71e8236d95db26cff48c84c6d1e0ea6814c1" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.3.1-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.3.1-osx64.tar.bz2#600d4dad2039b8035582c0e0ce9b71e8236d95db26cff48c84c6d1e0ea6814c1" "pypy" verify_py32 ensurepip
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
case "$(pypy_architecture 2>/dev/null || true)" in
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
"linux" )
|
"linux" )
|
||||||
require_distro "Ubuntu 10.04" || true
|
if require_distro "Ubuntu 10.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy3-2.4.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-linux.tar.bz2#108fdcccfddb9b2cb2fc3cbca5e6f7902ed3ab74a24c8ae29da7fbdadbab4345" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.4.0-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-linux.tar.bz2#108fdcccfddb9b2cb2fc3cbca5e6f7902ed3ab74a24c8ae29da7fbdadbab4345" "pypy" verify_py32 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy3-2.4-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.4-linux_i686-portable.tar.bz2#7ce050b4928dc58f7e9dd01e3e48c443c85616ca83f4bcc9147f1078d0fd126c" "pypy" verify_py32 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"linux-armel" )
|
"linux-armel" )
|
||||||
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
require_distro "Ubuntu 12.04" "Ubuntu 12.10" "Ubuntu 13.04" "Ubuntu 13.10" "Ubuntu 14.04" || true
|
||||||
@@ -16,8 +19,11 @@ case "$(pypy_architecture 2>/dev/null || true)" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
"linux64" )
|
"linux64" )
|
||||||
require_distro "Ubuntu 12.04" || true
|
if require_distro "Ubuntu 12.04" 1>/dev/null 2>&1; then
|
||||||
install_package "pypy3-2.4.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-linux64.tar.bz2#24e680b1742af7361107876a421dd793f5ef852dd5f097546f84b1378f7f70cc" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.4.0-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-linux64.tar.bz2#24e680b1742af7361107876a421dd793f5ef852dd5f097546f84b1378f7f70cc" "pypy" verify_py32 ensurepip
|
||||||
|
else
|
||||||
|
install_package "pypy3-2.4-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.4-linux_x86_64-portable.tar.bz2#7b3e0f0bc924bd0d68d85c0b566979e74a2b366595db3d81502267367370a5fb" "pypy" verify_py32 ensurepip
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
"osx64" )
|
"osx64" )
|
||||||
install_package "pypy3-2.4.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-osx64.tar.bz2#dcd86bdb753e93dbf55e1f3af3ffa97eea328b8b77aa60e92ea2260a6258cedb" "pypy" verify_py32 ensurepip
|
install_package "pypy3-2.4.0-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy3-2.4.0-osx64.tar.bz2#dcd86bdb753e93dbf55e1f3af3ffa97eea328b8b77aa60e92ea2260a6258cedb" "pypy" verify_py32 ensurepip
|
||||||
|
|||||||
16
plugins/python-build/share/python-build/pypy3-portable-2.3.1
Normal file
16
plugins/python-build/share/python-build/pypy3-portable-2.3.1
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy3-2.3.1-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.3.1-linux_i686-portable.tar.bz2#32a5b3fd4299b13aedf7bc6262eee0f6be9a27744ccf787718553d973ec38abb" "pypy" verify_py32 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy3-2.3.1-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.3.1-linux_x86_64-portable.tar.bz2#cb56b5bde8f444d44a0ea9cd475ddeed00aa895f3dcc89fd37577a51439540aa" "pypy" verify_py32 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy3 is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
16
plugins/python-build/share/python-build/pypy3-portable-2.4
Normal file
16
plugins/python-build/share/python-build/pypy3-portable-2.4
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
case "$(pypy_architecture 2>/dev/null || true)" in
|
||||||
|
"linux" )
|
||||||
|
install_package "pypy3-2.4-linux_i686-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.4-linux_i686-portable.tar.bz2#7ce050b4928dc58f7e9dd01e3e48c443c85616ca83f4bcc9147f1078d0fd126c" "pypy" verify_py32 ensurepip
|
||||||
|
;;
|
||||||
|
"linux64" )
|
||||||
|
install_package "pypy3-2.4-linux_x86_64-portable" "https://bitbucket.org/squeaky/portable-pypy/downloads/pypy3-2.4-linux_x86_64-portable.tar.bz2#7b3e0f0bc924bd0d68d85c0b566979e74a2b366595db3d81502267367370a5fb" "pypy" verify_py32 ensurepip
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
{ echo
|
||||||
|
colorize 1 "ERROR"
|
||||||
|
echo ": Portable PyPy3 is not available for $(pypy_architecture 2>/dev/null || true)."
|
||||||
|
echo
|
||||||
|
} >&2
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
23
plugins/python-build/test/arguments.bats
Normal file
23
plugins/python-build/test/arguments.bats
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/env bats
|
||||||
|
|
||||||
|
load test_helper
|
||||||
|
|
||||||
|
@test "not enough arguments for python-build" {
|
||||||
|
# use empty inline definition so nothing gets built anyway
|
||||||
|
local definition="${TMP}/build-definition"
|
||||||
|
echo '' > "$definition"
|
||||||
|
|
||||||
|
run python-build "$definition"
|
||||||
|
assert_failure
|
||||||
|
assert_output_contains 'Usage: python-build'
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "extra arguments for python-build" {
|
||||||
|
# use empty inline definition so nothing gets built anyway
|
||||||
|
local definition="${TMP}/build-definition"
|
||||||
|
echo '' > "$definition"
|
||||||
|
|
||||||
|
run python-build "$definition" "${TMP}/install" ""
|
||||||
|
assert_failure
|
||||||
|
assert_output_contains 'Usage: python-build'
|
||||||
|
}
|
||||||
@@ -5,6 +5,7 @@ export PYTHON_BUILD_CACHE_PATH="$TMP/cache"
|
|||||||
export MAKE=make
|
export MAKE=make
|
||||||
export MAKE_OPTS="-j 2"
|
export MAKE_OPTS="-j 2"
|
||||||
export CC=cc
|
export CC=cc
|
||||||
|
export -n PYTHON_CONFIGURE_OPTS
|
||||||
|
|
||||||
setup() {
|
setup() {
|
||||||
mkdir -p "$INSTALL_ROOT"
|
mkdir -p "$INSTALL_ROOT"
|
||||||
@@ -449,6 +450,26 @@ OUT
|
|||||||
# nop
|
# nop
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "JRuby Java 7 missing" {
|
||||||
|
# nop
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "JRuby Java is outdated" {
|
||||||
|
# nop
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "JRuby Java 7 up-to-date" {
|
||||||
|
# nop
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "Java version string not on first line" {
|
||||||
|
# nop
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "Java version string on OpenJDK" {
|
||||||
|
# nop
|
||||||
|
}
|
||||||
|
|
||||||
@test "non-writable TMPDIR aborts build" {
|
@test "non-writable TMPDIR aborts build" {
|
||||||
export TMPDIR="${TMP}/build"
|
export TMPDIR="${TMP}/build"
|
||||||
mkdir -p "$TMPDIR"
|
mkdir -p "$TMPDIR"
|
||||||
|
|||||||
@@ -5,8 +5,13 @@ export MAKE=make
|
|||||||
export MAKE_OPTS='-j 2'
|
export MAKE_OPTS='-j 2'
|
||||||
export -n CFLAGS
|
export -n CFLAGS
|
||||||
export -n CC
|
export -n CC
|
||||||
|
export -n PYTHON_CONFIGURE_OPTS
|
||||||
|
|
||||||
@test "require_gcc on OS X 10.9" {
|
@test "require_gcc on OS X 10.9" {
|
||||||
|
# yyuu/pyenv#222
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
stub sw_vers '-productVersion : echo 10.9.5'
|
||||||
|
|
||||||
stub uname '-s : echo Darwin'
|
stub uname '-s : echo Darwin'
|
||||||
stub sw_vers '-productVersion : echo 10.9.5'
|
stub sw_vers '-productVersion : echo 10.9.5'
|
||||||
stub gcc '--version : echo 4.2.1'
|
stub gcc '--version : echo 4.2.1'
|
||||||
@@ -24,6 +29,10 @@ OUT
|
|||||||
}
|
}
|
||||||
|
|
||||||
@test "require_gcc on OS X 10.10" {
|
@test "require_gcc on OS X 10.10" {
|
||||||
|
# yyuu/pyenv#222
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
stub sw_vers '-productVersion : echo 10.10'
|
||||||
|
|
||||||
stub uname '-s : echo Darwin'
|
stub uname '-s : echo Darwin'
|
||||||
stub sw_vers '-productVersion : echo 10.10'
|
stub sw_vers '-productVersion : echo 10.10'
|
||||||
stub gcc '--version : echo 4.2.1'
|
stub gcc '--version : echo 4.2.1'
|
||||||
@@ -36,7 +45,7 @@ DEF
|
|||||||
assert_success
|
assert_success
|
||||||
assert_output <<OUT
|
assert_output <<OUT
|
||||||
CC=${TMP}/bin/gcc
|
CC=${TMP}/bin/gcc
|
||||||
MACOSX_DEPLOYMENT_TARGET=10.10
|
MACOSX_DEPLOYMENT_TARGET=10.9
|
||||||
OUT
|
OUT
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ See all available versions with \`pyenv install --list'.
|
|||||||
|
|
||||||
If the version you need is missing, try upgrading pyenv:
|
If the version you need is missing, try upgrading pyenv:
|
||||||
|
|
||||||
cd ${BATS_TEST_DIRNAME}/../../.. && git pull
|
cd ${BATS_TEST_DIRNAME}/../../.. && git pull && cd -
|
||||||
OUT
|
OUT
|
||||||
|
|
||||||
unstub python-build
|
unstub python-build
|
||||||
@@ -146,3 +146,64 @@ ${PYENV_ROOT}/plugins/bar/share/python-build
|
|||||||
${PYENV_ROOT}/plugins/foo/share/python-build
|
${PYENV_ROOT}/plugins/foo/share/python-build
|
||||||
OUT
|
OUT
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "not enough arguments for pyenv-install" {
|
||||||
|
stub_python_build
|
||||||
|
stub pyenv-help 'install : true'
|
||||||
|
|
||||||
|
run pyenv-install
|
||||||
|
assert_failure
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "too many arguments for pyenv-install" {
|
||||||
|
stub_python_build
|
||||||
|
stub pyenv-help 'install : true'
|
||||||
|
|
||||||
|
run pyenv-install 3.4.1 3.4.2
|
||||||
|
assert_failure
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "show help for pyenv-install" {
|
||||||
|
stub_python_build
|
||||||
|
stub pyenv-help 'install : true'
|
||||||
|
|
||||||
|
run pyenv-install -h
|
||||||
|
assert_success
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "pyenv-install has usage help preface" {
|
||||||
|
run head "$(which pyenv-install)"
|
||||||
|
assert_output_contains 'Usage: pyenv install'
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "not enough arguments pyenv-uninstall" {
|
||||||
|
stub pyenv-help 'uninstall : true'
|
||||||
|
|
||||||
|
run pyenv-uninstall
|
||||||
|
assert_failure
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "too many arguments for pyenv-uninstall" {
|
||||||
|
stub pyenv-help 'uninstall : true'
|
||||||
|
|
||||||
|
run pyenv-uninstall 3.4.1 3.4.2
|
||||||
|
assert_failure
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "show help for pyenv-uninstall" {
|
||||||
|
stub pyenv-help 'uninstall : true'
|
||||||
|
|
||||||
|
run pyenv-uninstall -h
|
||||||
|
assert_success
|
||||||
|
unstub pyenv-help
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "pyenv-uninstall has usage help preface" {
|
||||||
|
run head "$(which pyenv-uninstall)"
|
||||||
|
assert_output_contains 'Usage: pyenv uninstall'
|
||||||
|
}
|
||||||
|
|||||||
@@ -87,6 +87,10 @@ install_tmp_fixture() {
|
|||||||
run python-build $args "$TMP_FIXTURES/$name" "$destination"
|
run python-build $args "$TMP_FIXTURES/$name" "$destination"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resolve_link() {
|
||||||
|
$(type -p greadlink readlink | head -1) "$1"
|
||||||
|
}
|
||||||
|
|
||||||
@test "apply built-in python patch before building" {
|
@test "apply built-in python patch before building" {
|
||||||
cached_tarball "Python-3.2.1"
|
cached_tarball "Python-3.2.1"
|
||||||
|
|
||||||
@@ -138,3 +142,141 @@ OUT
|
|||||||
unstub make
|
unstub make
|
||||||
unstub patch
|
unstub patch
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@test "allow custom make install target" {
|
||||||
|
cached_tarball "Python-3.2.1"
|
||||||
|
|
||||||
|
stub brew false
|
||||||
|
stub "$MAKE" \
|
||||||
|
" : echo \"$MAKE \$@\" >> build.log" \
|
||||||
|
" : echo \"$MAKE \$@\" >> build.log && cat build.log >> '$INSTALL_ROOT/build.log'"
|
||||||
|
|
||||||
|
PYTHON_MAKE_INSTALL_TARGET="altinstall" TMPDIR="$TMP" install_tmp_fixture definitions/vanilla-python < /dev/null
|
||||||
|
assert_success
|
||||||
|
|
||||||
|
assert_build_log <<OUT
|
||||||
|
Python-3.2.1: CPPFLAGS="-I${TMP}/install/include " LDFLAGS="-L${TMP}/install/lib "
|
||||||
|
Python-3.2.1: --prefix=$INSTALL_ROOT --libdir=$INSTALL_ROOT/lib
|
||||||
|
make -j 2
|
||||||
|
make altinstall
|
||||||
|
OUT
|
||||||
|
|
||||||
|
unstub make
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "ensurepip without altinstall" {
|
||||||
|
mkdir -p "${INSTALL_ROOT}/bin"
|
||||||
|
cat <<OUT > "${INSTALL_ROOT}/bin/python"
|
||||||
|
#!$BASH
|
||||||
|
echo "python \$@" >> "${INSTALL_ROOT}/build.log"
|
||||||
|
OUT
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python"
|
||||||
|
|
||||||
|
PYTHON_MAKE_INSTALL_TARGET="" TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
build_package_ensurepip
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
|
||||||
|
assert_build_log <<OUT
|
||||||
|
python -s -m ensurepip
|
||||||
|
OUT
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "ensurepip with altinstall" {
|
||||||
|
mkdir -p "${INSTALL_ROOT}/bin"
|
||||||
|
cat <<OUT > "${INSTALL_ROOT}/bin/python"
|
||||||
|
#!$BASH
|
||||||
|
echo "python \$@" >> "${INSTALL_ROOT}/build.log"
|
||||||
|
OUT
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python"
|
||||||
|
|
||||||
|
PYTHON_MAKE_INSTALL_TARGET="altinstall" TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
build_package_ensurepip
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
|
||||||
|
assert_build_log <<OUT
|
||||||
|
python -s -m ensurepip --altinstall
|
||||||
|
OUT
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "python3-config" {
|
||||||
|
mkdir -p "${INSTALL_ROOT}/bin"
|
||||||
|
touch "${INSTALL_ROOT}/bin/python3"
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python3"
|
||||||
|
touch "${INSTALL_ROOT}/bin/python3.4"
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python3.4"
|
||||||
|
touch "${INSTALL_ROOT}/bin/python3-config"
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python3-config"
|
||||||
|
touch "${INSTALL_ROOT}/bin/python3.4-config"
|
||||||
|
chmod +x "${INSTALL_ROOT}/bin/python3.4-config"
|
||||||
|
|
||||||
|
TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
verify_python python3.4
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
|
||||||
|
[ -L "${INSTALL_ROOT}/bin/python" ]
|
||||||
|
[ -L "${INSTALL_ROOT}/bin/python-config" ]
|
||||||
|
[[ "$(resolve_link "${INSTALL_ROOT}/bin/python")" == "python3.4" ]]
|
||||||
|
[[ "$(resolve_link "${INSTALL_ROOT}/bin/python-config")" == "python3.4-config" ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "--enable-framework" {
|
||||||
|
mkdir -p "${INSTALL_ROOT}/Python.framework/Versions/Current/bin"
|
||||||
|
touch "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3"
|
||||||
|
chmod +x "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3"
|
||||||
|
touch "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3.4"
|
||||||
|
chmod +x "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3.4"
|
||||||
|
touch "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3-config"
|
||||||
|
chmod +x "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3-config"
|
||||||
|
touch "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3.4-config"
|
||||||
|
chmod +x "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python3.4-config"
|
||||||
|
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
|
||||||
|
PYTHON_CONFIGURE_OPTS="--enable-framework" TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
echo "PYTHON_CONFIGURE_OPTS_ARRAY=(\${PYTHON_CONFIGURE_OPTS_ARRAY[@]})"
|
||||||
|
verify_python python3.4
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
assert_output <<EOS
|
||||||
|
PYTHON_CONFIGURE_OPTS_ARRAY=(--enable-framework=${TMP}/install)
|
||||||
|
EOS
|
||||||
|
|
||||||
|
[ -L "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python" ]
|
||||||
|
[ -L "${INSTALL_ROOT}/Python.framework/Versions/Current/bin/python-config" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "--enable-universalsdk" {
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
|
||||||
|
PYTHON_CONFIGURE_OPTS="--enable-universalsdk" TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
echo "PYTHON_CONFIGURE_OPTS_ARRAY=(\${PYTHON_CONFIGURE_OPTS_ARRAY[@]})"
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
assert_output <<EOS
|
||||||
|
PYTHON_CONFIGURE_OPTS_ARRAY=(--enable-universalsdk=/ --with-universal-archs=intel)
|
||||||
|
EOS
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "default MACOSX_DEPLOYMENT_TARGET" {
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
stub sw_vers '-productVersion : echo 10.10'
|
||||||
|
|
||||||
|
TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
echo "\${MACOSX_DEPLOYMENT_TARGET}"
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
assert_output "10.10"
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "use custom MACOSX_DEPLOYMENT_TARGET if defined" {
|
||||||
|
stub uname '-s : echo Darwin'
|
||||||
|
|
||||||
|
MACOSX_DEPLOYMENT_TARGET="10.4" TMPDIR="$TMP" run_inline_definition <<OUT
|
||||||
|
echo "\${MACOSX_DEPLOYMENT_TARGET}"
|
||||||
|
OUT
|
||||||
|
assert_success
|
||||||
|
assert_output "10.4"
|
||||||
|
}
|
||||||
|
|||||||
@@ -115,6 +115,10 @@ assert_output() {
|
|||||||
|
|
||||||
assert_output_contains() {
|
assert_output_contains() {
|
||||||
local expected="$1"
|
local expected="$1"
|
||||||
|
if [ -z "$expected" ]; then
|
||||||
|
echo "assert_output_contains needs an argument" >&2
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
echo "$output" | $(type -p ggrep grep | head -1) -F "$expected" >/dev/null || {
|
echo "$output" | $(type -p ggrep grep | head -1) -F "$expected" >/dev/null || {
|
||||||
{ echo "expected output to contain $expected"
|
{ echo "expected output to contain $expected"
|
||||||
echo "actual: $output"
|
echo "actual: $output"
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
PYENV_PIP_REHASH_ROOT="${BASH_SOURCE[0]%/*}/pip-rehash"
|
PYENV_PIP_REHASH_ROOT="${BASH_SOURCE[0]%/*}/pip-rehash"
|
||||||
if [ -x "${PYENV_PIP_REHASH_ROOT}/${PYENV_COMMAND##*/}" ]; then
|
PYENV_REHASH_COMMAND="${PYENV_COMMAND##*/}"
|
||||||
PYENV_COMMAND_PATH="${PYENV_PIP_REHASH_ROOT}/${PYENV_COMMAND##*/}"
|
|
||||||
PYENV_BIN_PATH="${PYENV_PIP_REHASH_ROOT}"
|
# Remove any version information, from e.g. "pip2" or "pip3.4".
|
||||||
|
if [[ $PYENV_REHASH_COMMAND =~ ^(pip|easy_install)[23](\.\d)?$ ]]; then
|
||||||
|
PYENV_REHASH_COMMAND="${BASH_REMATCH[1]}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -x "${PYENV_PIP_REHASH_ROOT}/${PYENV_REHASH_COMMAND}" ]; then
|
||||||
|
PYENV_COMMAND_PATH="${PYENV_PIP_REHASH_ROOT}/${PYENV_REHASH_COMMAND##*/}"
|
||||||
|
PYENV_BIN_PATH="${PYENV_PIP_REHASH_ROOT}"
|
||||||
|
export PYENV_REHASH_REAL_COMMAND="${PYENV_COMMAND##*/}"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ _PATH="${_PATH#:}"
|
|||||||
_PATH="${_PATH%:}"
|
_PATH="${_PATH%:}"
|
||||||
PATH="${_PATH}"
|
PATH="${_PATH}"
|
||||||
|
|
||||||
PYENV_COMMAND_PATH="$(pyenv-which "$(basename "$0")")"
|
PYENV_COMMAND_PATH="$(pyenv-which "${PYENV_REHASH_REAL_COMMAND}")"
|
||||||
PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}"
|
PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}"
|
||||||
|
|
||||||
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ _PATH="${_PATH#:}"
|
|||||||
_PATH="${_PATH%:}"
|
_PATH="${_PATH%:}"
|
||||||
PATH="${_PATH}"
|
PATH="${_PATH}"
|
||||||
|
|
||||||
PYENV_COMMAND_PATH="$(pyenv-which "$(basename "$0")")"
|
PYENV_COMMAND_PATH="$(pyenv-which "${PYENV_REHASH_REAL_COMMAND}")"
|
||||||
PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}"
|
PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}"
|
||||||
|
|
||||||
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user