1
0
mirror of https://github.com/pyenv/pyenv.git synced 2025-11-12 21:33:54 -05:00

Compare commits

...

118 Commits

Author SHA1 Message Date
Yamashita Yuu
e835d447ed v0.4.0-20140211 2014-02-11 12:11:38 +09:00
Yamashita Yuu
7f44afc1c0 Remove 3.3.4rc1 (fixes #112) 2014-02-11 12:06:09 +09:00
Yamashita, Yuu
f380967e8d Merge pull request #113 from AustinMatherne/master
Add support for Python 3.3.4
2014-02-11 12:04:34 +09:00
Austin Matherne
d640941976 Add support for Python 3.3.4 2014-02-10 20:14:29 -06:00
Yamashita Yuu
e58ac666c4 Fix permission of installed definitinos 2014-02-09 11:20:59 +09:00
Yamashita Yuu
ce99decad5 Update changelog 2014-02-08 19:33:57 +09:00
Yamashita Yuu
719e6db358 Import recent changes from ruby-build 20140204 2014-02-08 19:31:35 +09:00
Yamashita Yuu
e0547de922 Update changelog 2014-02-08 18:51:59 +09:00
Yamashita Yuu
4b9907af1c Update setuptools (2.1.2 -> 2.2) 2014-02-08 18:37:06 +09:00
Yamashita Yuu
1d09851b2b Merge branch 'raspbian' 2014-02-08 01:06:35 +09:00
Yamashita Yuu
800ccaa5e3 Add armv6l and armv7l 2014-02-08 01:02:59 +09:00
Yamashita Yuu
00da261211 Install Raspbian binaries of pypy 2014-02-06 22:26:35 +09:00
Yamashita Yuu
b81d0ff0cd Update setuptools (2.1 -> 2.1.2) 2014-02-06 21:20:57 +09:00
Yamashita Yuu
715a7789ba Run python-build tests as script on travis-ci 2014-02-06 12:26:48 +09:00
Yamashita Yuu
6aa6d6b026 Fix broken test 2014-02-06 12:24:17 +09:00
Yamashita Yuu
62f9b7a731 Display error if wget doesn't support SNI (#60) 2014-02-06 12:18:41 +09:00
Yamashita Yuu
cc967fddb7 Refactor definitions of pypy 2014-02-04 21:03:51 +09:00
Yamashita Yuu
27ebc8bab7 Merge branch 'anaconda' 2014-02-04 18:33:37 +09:00
Yamashita Yuu
71db79eded Add old Anaconda/Miniconda releases 2014-02-04 13:46:07 +09:00
Yamashita Yuu
3aa263b51f Add Miniconda 3.0.0 2014-02-04 13:04:33 +09:00
Yamashita Yuu
59fbf8d103 Add Anaconda 1.8.0 2014-02-04 12:44:45 +09:00
Yamashita Yuu
b21d2c7dea Merge branch 'update-readme' 2014-01-29 18:01:29 +09:00
Yamashita Yuu
20e5404248 Update README about usage with multiple versions (#92) 2014-01-29 18:00:56 +09:00
Yamashita Yuu
56c58e2778 Modernize python versions in README 2014-01-29 17:54:01 +09:00
Yamashita Yuu
3c6ecaf66a Update pip (1.5.1 -> 1.5.2) 2014-01-27 21:55:58 +09:00
Yamashita Yuu
87ca55100b Add 3.3.4rc1 and 3.4.0b3 2014-01-27 21:52:23 +09:00
Yamashita Yuu
589872affb Set proper PYENV_VERSION during pyenv install 2014-01-27 15:04:51 +09:00
Yamashita Yuu
73d5ea7426 v0.4.0-20140123 2014-01-23 19:14:26 +09:00
Yamashita Yuu
b992ffca1d Merge branch 'rbenv-pr531' 2014-01-23 11:16:51 +09:00
Yamashita Yuu
9c82314570 Unset GREP_OPTIONS to avoid unexpected grep behavior (fixes #101) 2014-01-23 11:11:56 +09:00
Yamashita Yuu
403154e09e Update pip (1.5 -> 1.5.1) 2014-01-21 16:18:19 +09:00
Yamashita Yuu
b44398e954 Add .gitignore 2014-01-21 00:04:02 +09:00
Yamashita Yuu
46a01b1643 Merge branch 'enable-framework' 2014-01-18 10:08:37 +09:00
Yamashita Yuu
bf94eb8cbe Add workaround for --enable-framework to work with CPython 2.7.6 2014-01-18 09:59:17 +09:00
Yamashita Yuu
b225f2030d Add support for --enable-framework (#55, #99)
```
$ env PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.3.2
```
2014-01-18 01:52:50 +09:00
Yamashita Yuu
cbe7d0241b Merge branch 'python-build-test' 2014-01-17 21:28:03 +09:00
Yamashita Yuu
e65a10be51 Add bats test for python-build 2014-01-17 21:18:22 +09:00
Yamashita Yuu
badc8255ab Do not invoke use_homebrew_readline twice 2014-01-17 21:09:52 +09:00
Yamashita Yuu
385d3337ef Merge branch 'ensurepip' 2014-01-16 18:33:26 +09:00
Yamashita Yuu
558200285b Use ensurepip to install pip if available 2014-01-16 18:10:52 +09:00
Yamashita Yuu
2c26b0870a Setup built-in patches out from stub functions of `{before,after}_install_package}. 2014-01-15 17:20:41 +09:00
Yamashita Yuu
2cea06b88a Sort built-in patches by its name 2014-01-15 17:09:58 +09:00
Yamashita Yuu
c977774977 Merge branch 'issue98' 2014-01-15 16:42:14 +09:00
Yamashita Yuu
314937d599 Set PYENV_BIN_PATH in PATH even if the version is system (fixes #98) 2014-01-15 16:41:06 +09:00
Yamashita Yuu
07ae0d8e42 Import changes from ruby-build 20140110.1 2014-01-10 20:05:01 +09:00
Yamashita Yuu
461c5bbc2d Merge branch 'release-0.4.0-20140110.1' 2014-01-10 15:04:36 +09:00
Yamashita Yuu
a7f5a19a24 v0.4.0-20140110.1 2014-01-10 15:04:16 +09:00
Yamashita Yuu
f344731cf9 Merge branch 'osx-llvm-gcc' 2014-01-10 13:17:16 +09:00
Yamashita Yuu
a3f35b7e0d Fallback to use clang if there is gcc not installed 2014-01-10 13:16:37 +09:00
Yamashita Yuu
b025dbfdab Add require_cc again 2014-01-10 13:15:56 +09:00
Yamashita Yuu
efd9c1cd48 Merge branch 'release-0.4.0-20140110' 2014-01-10 11:28:17 +09:00
Yamashita Yuu
38eb9fe948 v0.4.0-20140110 2014-01-10 11:27:43 +09:00
Yamashita Yuu
6ee7aaf611 Should not recognize cc as clang 2014-01-09 18:18:50 +09:00
Yamashita Yuu
93ba3a4c51 Use same require_gcc as ruby-build 2014-01-08 22:34:10 +09:00
Yamashita Yuu
34087d03ec Add build status badge 2014-01-08 21:47:36 +09:00
Yamashita Yuu
f136b219db Update pip (1.4.1 -> 1.5) 2014-01-08 21:44:19 +09:00
Yamashita Yuu
84705cfe61 Update setuptools (2.0.2 -> 2.1) 2014-01-08 21:42:59 +09:00
Yamashita Yuu
2a9f6038e0 Use package_option() to setup configure options 2014-01-08 11:49:48 +09:00
Yamashita Yuu
0e3e603429 Don't check $(uname -s) twice 2014-01-08 10:56:43 +09:00
Yamashita Yuu
71a916faf2 simplicy the check for infinite loop 2014-01-08 10:54:11 +09:00
Yamashita Yuu
8e02b93e39 Call build_package_ldflags_dirs to suppress linker warnings 2014-01-07 12:46:40 +09:00
Yamashita Yuu
a7a99c75eb Apply patch only if there are patches exist for the package 2014-01-07 11:52:22 +09:00
Yamashita Yuu
bb3b5de179 Add CPython 3.4.0b2 2014-01-06 13:03:40 +09:00
Yamashita Yuu
f956502fd8 Merge branch 'avoid-infinite-loop-even-if-pwd-returns-relative-path' 2014-01-03 08:36:05 +09:00
Yamashita Yuu
4c5ffc8d99 Avoid infinite loop in case where pwd returns relative path
The `pwd` may return relative path if the `$PWD` is badly declared
in bash/zsh (e.g. `PWD="." bash`). To avoid the infinite loop in
`find_local_version_file()`, stop finding the version file if the
target paths are same consecutively.
2014-01-03 08:35:39 +09:00
Yamashita Yuu
8dc4e8d6f8 Revert "Merge branch 'golang-workaround'"
This reverts commit 7edceff71c, reversing
changes made to 5dea3c9e63.
2014-01-03 07:39:52 +09:00
Yamashita Yuu
7edceff71c Merge branch 'golang-workaround' 2014-01-03 06:23:03 +09:00
Yamashita Yuu
1587d8a03c Apply readlink to output from pwd may returns "." to get actual path 2014-01-03 05:07:21 +09:00
Yamashita Yuu
5dea3c9e63 Import changes from recent rbenv 2014-01-03 04:58:44 +09:00
Yamashita Yuu
12d4fdb307 Merge branch 'unittest' (#21) 2014-01-03 04:43:44 +09:00
Yamashita Yuu
319721b380 Modify applications and versions for Python 2014-01-03 04:41:23 +09:00
Yamashita Yuu
3dd9332eee Fix broken tests 2014-01-03 04:33:30 +09:00
Yamashita Yuu
88922e2bc0 Remove version-ext-compat plugin to make test success 2014-01-03 02:07:20 +09:00
Yamashita Yuu
0965577b93 Import tests from rbenv with sed -e s/rbenv/pyenv/g 2014-01-03 02:06:36 +09:00
Yamashita Yuu
f538169992 Restore OLDIFS expectedly 2014-01-03 01:47:10 +09:00
Yamashita Yuu
d03f290b5d s/rbenv/pyenv/ 2014-01-02 22:49:23 +09:00
Yamashita Yuu
8ddf8760d5 Import recent changes from rbenv 0.4.0 2014-01-02 22:45:02 +09:00
Yamashita Yuu
8fa6b4a184 CPython installer requires existing Pyhthon of similar version. 2013-11-19 18:02:59 +09:00
Yamashita Yuu
e1a5b326e4 Merge branch 'ruby-build-style-patching' 2014-01-01 13:01:34 +09:00
Yamashita Yuu
8892f3735d Use -p0 for all patches to keep things simple (sstephenson/ruby-build#484)
There is filterdiff(1) available to transform strip level of a patch if
optional level is required.

```
git diff HEAD^ | filterdiff --strip=1 | pyenv install -p 3.3.3
```
2014-01-01 12:25:17 +09:00
Yamashita Yuu
9eedd4ef84 Update setuptools (2.0.1 -> 2.0.2) 2013-12-31 22:19:22 +09:00
Yamashita Yuu
b70dcb9f2d Add list_patches() to sort patches by their names 2013-12-26 16:31:43 +09:00
Yamashita Yuu
008a5a1ff9 Force PYTHON_BUILD_PATCH_PATH to be absolute path 2013-12-26 16:30:16 +09:00
Yamashita Yuu
5b7eb42a9f Add -p0 as an option for patch if both PATCH_OPTS and PACKAGE_PATCH_OPTS aren't defined 2013-12-26 15:44:56 +09:00
Yamashita Yuu
35d4cd2259 Remove PACKAGE_PATCH_STRIP. Use PACKAGE_PATCH_OPTS instead. 2013-12-26 14:01:46 +09:00
Yamashita Yuu
5bff9c773a Reliably detect parent shell in pyenv init (fixes #93)
Imported changes from sstephenson/rbenv#453.
2013-12-26 13:48:43 +09:00
Yamashita Yuu
6efb3c327f Revert setuptools version for jython-2.7-beta1 (2.0.1 -> 2.0)
Could not install setuptools 2.0.1 for jython-2.7-beta1 by the
lack of `parser` module.
2013-12-25 20:42:11 +09:00
Yamashita Yuu
1a05d9a8cd Merge branch 'apply-extra-patches' 2013-12-21 01:06:13 +09:00
Yamashita Yuu
df51c13323 Use cp -RPp to copy share directories recursively.
We have some patches for CPython in `share/python-build/patches`.
2013-12-21 01:04:19 +09:00
Yamashita Yuu
a025866bac Update setuptools (2.0 -> 2.0.1) 2013-12-21 00:50:28 +09:00
Yamashita Yuu
2797f3d80e Update README about PYTHON_PATCH_PATH. 2013-12-21 00:36:32 +09:00
Yamashita Yuu
0d85193f39 Remove -Wl,-rpath=... from LDFLAGS on Darwin to fix build.
We don't need to set `rpath` explicitly because the ld on Darwin
embeds the full paths to each dylib by default
2013-12-20 20:37:47 +09:00
Yamashita Yuu
4d534fed31 Merge branch 'enable-shared' 2013-12-20 18:36:42 +09:00
Yamashita Yuu
43212f64ed Pass rpath to linker if --enable-shared was given (#65, #66, #82) 2013-12-20 18:22:43 +09:00
Yamashita Yuu
75559df89d Search extra patches from given directory then apply it during build (#91)
```
$ env PYTHON_PATCH_PATH="./patches" PYTHON_PATCH_OPTS="-p1" pyenv install 2.7.6
```
2013-12-20 17:17:17 +09:00
Yamashita Yuu
3d5156ed1d v0.4.0-20131217 2013-12-17 11:46:44 +09:00
Yamashita Yuu
aa76fd2f9c On Darwin, should not build readline if there is brewed readline 2013-12-16 16:27:45 +09:00
Yamashita Yuu
db141f66a4 Restored has_broken_mac_llvm_gcc which is required to build 3.3+ on Darwin 2013-12-16 16:24:25 +09:00
Yamashita Yuu
fe07deb193 v0.4.0-20131216 2013-12-16 13:51:48 +09:00
Yamashita Yuu
7159e24aa8 Update ChangeLog 2013-12-16 13:50:52 +09:00
Yamashita Yuu
1cc90d31ae Import changes from ruby-build v20131211 2013-12-16 13:44:03 +09:00
Yamashita, Yuu
76bf3ee0d6 Merge pull request #88 from pwdtnx/fix-prefix-system
Fix pyenv-prefix to trim "/bin" in `pyenv prefix system`
2013-12-12 07:38:10 -08:00
Tanix
fd3dd225ba rewrite strip of PYENV_PREFIX_PATH in a single line 2013-12-12 23:05:31 +09:00
Tanix
140808e3d4 Fix pyenv-prefix to trim "/bin" in pyenv prefix system 2013-12-12 22:16:43 +09:00
Yamashita Yuu
edb5a32620 Update setuptools (1.4.2 -> 2.0) for Python 2.6+ 2013-12-12 18:20:57 +09:00
Yamashita Yuu
88e2d73d52 Update setuptools (1.4.1 -> 1.4.2) 2013-12-02 15:35:35 +09:00
Yamashita Yuu
7b95fea77e Add PyPy 2.2.1 2013-11-29 12:58:31 +09:00
Yamashita Yuu
20eb5c4913 Update setuptools (1.4 -> 1.4.1) 2013-11-27 20:48:06 +09:00
Yamashita Yuu
bc2d2456ae Add CPython 3.4.0b1 2013-11-25 16:07:27 +09:00
Yamashita, Yuu
064531ea1f Merge pull request #83 from thedrow/patch-1
Added a link about the common build problems.
2013-11-20 18:41:33 -08:00
Omer Katz
80b8508dbc Added a link about the common build problems. 2013-11-20 18:16:03 +02:00
Yamashita Yuu
02e073a503 remove useless patch from 2.6-dev 2013-11-20 19:06:40 +09:00
Yamashita Yuu
e094d683ed Update setuptools (1.3.2 -> 1.4) 2013-11-19 19:41:44 +09:00
Yamashita Yuu
bd1454c69f Remove 3.3.3-rc[12] because 3.3.3 has been released 2013-11-19 19:06:48 +09:00
Yamashita Yuu
b726d645c3 http://www.python.org/ -> http://python.org/ 2013-11-19 19:03:19 +09:00
Anthon van der Neut
78441ce084 Released Python 3.3.3 2013-11-19 18:56:02 +09:00
Yamashita Yuu
4953fa4034 Apply built-in patches only if patch is not given via STDIN 2013-11-19 05:58:21 +09:00
Yamashita Yuu
1f76effbfb Import changes from ruby-build v20131225.1 2013-12-27 18:44:54 +09:00
175 changed files with 4314 additions and 937 deletions

6
.travis.yml Normal file
View File

@@ -0,0 +1,6 @@
install: git clone https://github.com/sstephenson/bats.git
script: bats/bin/bats --tap test plugins/python-build/test
language: c
notifications:
email:
on_success: never

View File

@@ -1,5 +1,56 @@
## Version History ## Version History
#### 0.4.0-20140211
* python-build: Add new CPython release candidates; 3.3.4, 3.4.0b3
* python-build: Add [Anaconda](https://store.continuum.io/cshop/anaconda/) and [Miniconda](http://repo.continuum.io/miniconda/) binary distributions
* python-build: Display error if the wget does not support Server Name Indication (SNI) to avoid SSL verification error when downloading from https://pypi.python.org. (#60)
* python-build: Update default setuptools version (2.1 -> 2.2)
* python-build: Update default pip version (1.5.1 -> 1.5.2)
* python-build: Import recent changes from ruby-build v20140204
#### 0.4.0-20140123
* pyenv: Always append the directory at the top of the `$PATH` to return proper value for `sys.executable` (#98)
* pyenv: Unset `GREP_OPTIONS` to avoid issues of conflicting options (#101)
* python-build: Install `pip` with using `ensurepip` if available
* python-build: Add support for framework installation (`--enable-framework`) of CPython (#55, #99)
* python-build: Import recent changes from ruby-build v20140110.1
* python-build: Import `bats` tests from ruby-build v20140110.1
#### 0.4.0-20140110.1
* python-build: Fix build error of CPython 2.x on the platform where the `gcc` is llvm-gcc.
#### 0.4.0-20140110
* pyenv: Reliably detect parent shell in `pyenv init` (#93)
* pyenv: Import recent changes from rbenv 0.4.0
* pyenv: Import `bats` tests from rbenv 0.4.0
* python-build: Add new CPython releases candidates; 3.4.0b2
* python-build: Add ruby-build style patching feature (#91)
* python-build: Set `RPATH` if `--enable-shared` was given (#65, #66, 82)
* python-build: Update default setuptools version (2.0 -> 2.1)
* python-build: Update default pip version (1.4.1 -> 1.5)
* python-build: Activate friendly CPython during build if the one is not activated (8fa6b4a1847851919ad7857c6c42ed809a4d277b)
* python-build: Fix broken install.sh
* python-build: Import recent changes from ruby-build v20131225.1
* version-ext-compat: Removed from default plugin. Please use [pyenv-version-ext](https://github.com/yyuu/pyenv-version-ext) instead.
#### 0.4.0-20131217
* python-build: Fix broken build of CPython 3.3+ on Darwin
* python-build: Not build GNU Readline uselessly on Darwin
#### 0.4.0-20131216
* python-build: Add new CPython releases; 3.3.3 (#80)
* python-build: Add new CPython releases candidates; 3.4.0b1
* python-build: Add new PyPy releases; pypy-2.2.1, pypy-2.2.1-src
* python-build: Update default setuptools version (1.3.2 -> 2.0)
* python-build: Imported recent changes from ruby-build v20131211
* pyenv: Fix pyenv-prefix to trim "/bin" in `pyenv prefix system` (#88)
#### 0.4.0-20131116 #### 0.4.0-20131116
* python-build: Add new CPython releases; 2.6.9, 2.7.6 (#76) * python-build: Add new CPython releases; 2.6.9, 2.7.6 (#76)

163
README.md
View File

@@ -1,5 +1,7 @@
# Simple Python Version Management: pyenv # Simple Python Version Management: pyenv
[![Build Status](https://travis-ci.org/yyuu/pyenv.png)](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
tools that do one thing well. tools that do one thing well.
@@ -129,9 +131,9 @@ Each Python version is installed into its own directory under
`~/.pyenv/versions`. For example, you might have these versions `~/.pyenv/versions`. For example, you might have these versions
installed: installed:
* `~/.pyenv/versions/2.7.5/` * `~/.pyenv/versions/2.7.6/`
* `~/.pyenv/versions/3.3.2/` * `~/.pyenv/versions/3.3.3/`
* `~/.pyenv/versions/pypy-1.9/` * `~/.pyenv/versions/pypy-2.2.1/`
Version names to pyenv are simply the names of the directories in Version names to pyenv are simply the names of the directories in
`~/.pyenv/versions`. `~/.pyenv/versions`.
@@ -176,13 +178,15 @@ to the `pyenv` command-line utility.
$ exec $SHELL $ exec $SHELL
5. Install Python versions into `$PYENV_ROOT/versions`. For example, to 5. Install Python versions into `$PYENV_ROOT/versions`. For example, to
install Python 2.7.5, download and unpack the source, then run: install Python 2.7.6, download and unpack the source, then run:
$ pyenv install 2.7.5 $ pyenv install 2.7.6
**NOTE** If you need to pass configure option to build, please use **NOTE** If you need to pass configure option to build, please use
```CONFIGURE_OPTS``` environment variable. ```CONFIGURE_OPTS``` environment variable.
**NOTE** If you are having trouble installing a python version please visit the wiki page about [Common Build Problems](https://github.com/yyuu/pyenv/wiki/Common-build-problems)
6. Rebuild the shim binaries. You should do this any time you install 6. Rebuild the shim binaries. You should do this any time you install
a new Python binary (for example, when installing a new Python version, a new Python binary (for example, when installing a new Python version,
or when installing a package that provides a binary). or when installing a package that provides a binary).
@@ -283,7 +287,7 @@ overrides the global version, and can be overridden itself by setting
the `PYENV_VERSION` environment variable or with the `pyenv shell` the `PYENV_VERSION` environment variable or with the `pyenv shell`
command. command.
$ pyenv local 2.7.5 $ pyenv local 2.7.6
When run without a version number, `pyenv local` reports the currently When run without a version number, `pyenv local` reports the currently
configured local version. You can also unset the local version: configured local version. You can also unset the local version:
@@ -295,21 +299,38 @@ file named `.pyenv-version`. For backwards compatibility, pyenv will
read a local version specified in an `.pyenv-version` file, but a read a local version specified in an `.pyenv-version` file, but a
`.python-version` file in the same directory will take precedence. `.python-version` file in the same directory will take precedence.
**pyenv feature** #### pyenv local (advanced)
You can specify multiple versions as local Python. Commands You can specify multiple versions as local Python at once.
within these Python versions are searched by specified order.
$ pyenv local 2.7.5 3.2.5 Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3,
$ pyenv local
2.7.5 $ pyenv local 2.7.6 3.3.3
3.2.5 $ pyenv versions
$ pyenv which python2.7 system
/home/yyuu/.pyenv/versions/2.7.5/bin/python2.7 * 2.7.6 (set by /Users/yyuu/path/to/project/.python-version)
$ pyenv which python3.2 * 3.3.3 (set by /Users/yyuu/path/to/project/.python-version)
/home/yyuu/.pyenv/versions/3.2.5/bin/python3.2 $ python --version
$ pyenv which python Python 2.7.6
/home/yyuu/.pyenv/versions/2.7.5/bin/python $ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
or, if you prefer 3.3.3 over 2.7.6,
$ pyenv local 3.3.3 2.7.6
$ pyenv versions
system
* 2.7.6 (set by /Users/yyuu/path/to/project/.python-version)
* 3.3.3 (set by /Users/yyuu/path/to/project/.python-version)
venv27
$ python --version
Python 3.3.3
$ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
### pyenv global ### pyenv global
@@ -318,7 +339,7 @@ the version name to the `~/.pyenv/version` file. This version can be
overridden by an application-specific `.python-version` file, or by overridden by an application-specific `.python-version` file, or by
setting the `PYENV_VERSION` environment variable. setting the `PYENV_VERSION` environment variable.
$ pyenv global 2.7.5 $ pyenv global 2.7.6
The special version name `system` tells pyenv to use the system Python The special version name `system` tells pyenv to use the system Python
(detected by searching your `$PATH`). (detected by searching your `$PATH`).
@@ -326,21 +347,38 @@ The special version name `system` tells pyenv to use the system Python
When run without a version number, `pyenv global` reports the When run without a version number, `pyenv global` reports the
currently configured global version. currently configured global version.
**pyenv feature** #### pyenv global (advanced)
You can specify multiple versions as global Python. Commands You can specify multiple versions as global Python at once.
within these Python versions are searched by specified order.
$ pyenv global 2.7.5 3.2.5 Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3,
$ pyenv global
2.7.5 $ pyenv global 2.7.6 3.3.3
3.2.5 $ pyenv versions
$ pyenv which python2.7 system
/home/yyuu/.pyenv/versions/2.7.5/bin/python2.7 * 2.7.6 (set by /Users/yyuu/.pyenv/version)
$ pyenv which python3.2 * 3.3.3 (set by /Users/yyuu/.pyenv/version)
/home/yyuu/.pyenv/versions/3.2.5/bin/python3.2 $ python --version
$ pyenv which python Python 2.7.6
/home/yyuu/.pyenv/versions/2.7.5/bin/python $ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
or, if you prefer 3.3.3 over 2.7.6,
$ pyenv global 3.3.3 2.7.6
$ pyenv versions
system
* 2.7.6 (set by /Users/yyuu/.pyenv/version)
* 3.3.3 (set by /Users/yyuu/.pyenv/version)
venv27
$ python --version
Python 3.3.3
$ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
### pyenv shell ### pyenv shell
@@ -348,7 +386,7 @@ Sets a shell-specific Python version by setting the `PYENV_VERSION`
environment variable in your shell. This version overrides environment variable in your shell. This version overrides
application-specific versions and the global version. application-specific versions and the global version.
$ pyenv shell pypy-1.9 $ pyenv shell pypy-2.2.1
When run without a version number, `pyenv shell` reports the current When run without a version number, `pyenv shell` reports the current
value of `PYENV_VERSION`. You can also unset the shell version: value of `PYENV_VERSION`. You can also unset the shell version:
@@ -360,19 +398,40 @@ the installation instructions) in order to use this command. If you
prefer not to use shell integration, you may simply set the prefer not to use shell integration, you may simply set the
`PYENV_VERSION` variable yourself: `PYENV_VERSION` variable yourself:
$ export PYENV_VERSION=pypy-1.9 $ export PYENV_VERSION=pypy-2.2.1
**pyenv feature** #### pyenv shell (advanced)
You can specify multiple versions via `PYENV_VERSION` You can specify multiple versions via `PYENV_VERSION` at once.
environment variable in your shell.
$ pyenv shell pypy-1.9 2.7.5 Let's say if you have two versions of 2.7.6 and 3.3.3. If you prefer 2.7.6 over 3.3.3,
$ echo $PYENV_VERSION
pypy-1.9:2.7.5 $ pyenv shell 2.7.6 3.3.3
$ pyenv version $ pyenv versions
pypy-1.9 (set by PYENV_VERSION environment variable) system
2.7.5 (set by PYENV_VERSION environment variable) * 2.7.6 (set by PYENV_VERSION environment variable)
* 3.3.3 (set by PYENV_VERSION environment variable)
$ python --version
Python 2.7.6
$ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
or, if you prefer 3.3.3 over 2.7.6,
$ pyenv shell 3.3.3 2.7.6
$ pyenv versions
system
* 2.7.6 (set by PYENV_VERSION environment variable)
* 3.3.3 (set by PYENV_VERSION environment variable)
venv27
$ python --version
Python 3.3.3
$ python2.7 --version
Python 2.7.6
$ python3.3 --version
Python 3.3.3
### pyenv versions ### pyenv versions
@@ -382,10 +441,10 @@ the currently active version.
$ pyenv versions $ pyenv versions
2.5.6 2.5.6
2.6.8 2.6.8
* 2.7.5 (set by /home/yyuu/.pyenv/version) * 2.7.6 (set by /home/yyuu/.pyenv/version)
3.2.5 3.3.3
jython-2.5.3 jython-2.5.3
pypy-1.9 pypy-2.2.1
### pyenv version ### pyenv version
@@ -393,7 +452,7 @@ Displays the currently active Python version, along with information on
how it was set. how it was set.
$ pyenv version $ pyenv version
2.7.5 (set by /home/yyuu/.pyenv/version) 2.7.6 (set by /home/yyuu/.pyenv/version)
### pyenv rehash ### pyenv rehash
@@ -408,8 +467,8 @@ version of Python, or install a package that provides binaries.
Displays the full path to the executable that pyenv will invoke when Displays the full path to the executable that pyenv will invoke when
you run the given command. you run the given command.
$ pyenv which python3.2 $ pyenv which python3.3
/home/yyuu/.pyenv/versions/3.2.5/bin/python3.2 /home/yyuu/.pyenv/versions/3.3.3/bin/python3.3
### pyenv whence ### pyenv whence
@@ -417,8 +476,8 @@ Lists all Python versions with the given command installed.
$ pyenv whence 2to3 $ pyenv whence 2to3
2.6.8 2.6.8
2.7.5 2.7.6
3.2.5 3.3.3
## Development ## Development

View File

@@ -1,9 +1,27 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e set -e
[ -n "$PYENV_DEBUG" ] && set -x export -n CDPATH
if [ "$1" = "--debug" ]; then
export PYENV_DEBUG=1
shift
fi
if [ -n "$PYENV_DEBUG" ]; then
export PS4='+ [${BASH_SOURCE##*/}:${LINENO}] '
set -x
fi
READLINK=$(type -p greadlink readlink | head -1)
if [ -z "$READLINK" ]; then
echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2
exit 1
fi
unset GREP_OPTIONS
resolve_link() { resolve_link() {
$(type -p greadlink readlink | head -1) "$1" $READLINK "$1"
} }
abs_dirname() { abs_dirname() {

View File

@@ -12,10 +12,11 @@
set -e set -e
[ -n "$PYENV_DEBUG" ] && set -x [ -n "$PYENV_DEBUG" ] && set -x
version="0.4.0-20131116" version="0.4.0-20140211"
cd "$PYENV_ROOT" 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)"
git_revision="${git_revision#v}" git_revision="${git_revision#v}"
fi
echo "pyenv ${git_revision:-$version}" echo "pyenv ${git_revision:-$version}"

View File

@@ -11,7 +11,7 @@ if [ -z "$COMMAND" ]; then
fi fi
COMMAND_PATH="$(command -v "pyenv-$COMMAND" || command -v "pyenv-sh-$COMMAND")" COMMAND_PATH="$(command -v "pyenv-$COMMAND" || command -v "pyenv-sh-$COMMAND")"
if grep -i "^\([#%]\|--\|//\) provide pyenv completions" "$COMMAND_PATH" >/dev/null; then if grep -iE "^([#%]|--|//) provide pyenv completions" "$COMMAND_PATH" >/dev/null; then
shift shift
exec "$COMMAND_PATH" --complete "$@" exec "$COMMAND_PATH" --complete "$@"
fi fi

View File

@@ -7,11 +7,11 @@
# Runs an executable by first preparing PATH so that the selected Python # Runs an executable by first preparing PATH so that the selected Python
# version's `bin' directory is at the front. # version's `bin' directory is at the front.
# #
# For example, if the currently selected Python version is 2.7.7: # For example, if the currently selected Python version is 2.7.6:
# pyenv exec pip install -rrequirements.txt # pyenv exec pip install -rrequirements.txt
# #
# is equivalent to: # is equivalent to:
# PATH="$PYENV_ROOT/versions/2.7.7/bin:$PATH" pip install -rrequirements.txt # PATH="$PYENV_ROOT/versions/2.7.6/bin:$PATH" pip install -rrequirements.txt
set -e set -e
[ -n "$PYENV_DEBUG" ] && set -x [ -n "$PYENV_DEBUG" ] && set -x
@@ -21,7 +21,7 @@ if [ "$1" = "--complete" ]; then
exec pyenv shims --short exec pyenv shims --short
fi fi
export PYENV_VERSION="$(pyenv-version-name)" PYENV_VERSION="$(pyenv-version-name)"
PYENV_COMMAND="$1" PYENV_COMMAND="$1"
if [ -z "$PYENV_COMMAND" ]; then if [ -z "$PYENV_COMMAND" ]; then
@@ -29,15 +29,19 @@ if [ -z "$PYENV_COMMAND" ]; then
exit 1 exit 1
fi fi
export PYENV_VERSION
PYENV_COMMAND_PATH="$(pyenv-which "$PYENV_COMMAND")" PYENV_COMMAND_PATH="$(pyenv-which "$PYENV_COMMAND")"
PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}" PYENV_BIN_PATH="${PYENV_COMMAND_PATH%/*}"
for script in $(pyenv-hooks exec); do OLDIFS="$IFS"
IFS=$'\n' scripts=(`pyenv-hooks exec`)
IFS="$OLDIFS"
for script in "${scripts[@]}"; do
source "$script" source "$script"
done done
shift 1 shift 1
if [ "$PYENV_VERSION" != "system" ]; then # CPython's `sys.executable` requires the `PYENV_BIN_PATH` to be at the top of the `PATH`.
# https://github.com/yyuu/pyenv/issues/98
export PATH="${PYENV_BIN_PATH}:${PATH}" export PATH="${PYENV_BIN_PATH}:${PATH}"
fi
exec -a "$PYENV_COMMAND" "$PYENV_COMMAND_PATH" "$@" exec -a "$PYENV_COMMAND" "$PYENV_COMMAND_PATH" "$@"

View File

@@ -19,13 +19,18 @@ if [ -z "$PYENV_COMMAND" ]; then
exit 1 exit 1
fi fi
READLINK=$(type -p greadlink readlink | head -1)
if [ -z "$READLINK" ]; then
echo "pyenv: cannot find readlink - are you missing GNU coreutils?" >&2
exit 1
fi
resolve_link() { resolve_link() {
$(type -p greadlink readlink | head -1) $1 $READLINK "$1"
} }
realpath() { realpath() {
local cwd="$(pwd)" local cwd="$(pwd)"
local base="$(basename $1)"
local path="$1" local path="$1"
while [ -n "$path" ]; do while [ -n "$path" ]; do
@@ -34,13 +39,15 @@ realpath() {
path="$(resolve_link "$name" || true)" path="$(resolve_link "$name" || true)"
done done
echo "$(pwd)/$base" echo "$(pwd)/$name"
cd "$cwd" cd "$cwd"
} }
IFS=: hook_paths=($PYENV_HOOK_PATH)
shopt -s nullglob shopt -s nullglob
for path in ${PYENV_HOOK_PATH//:/$'\n'}; do for path in "${hook_paths[@]}"; do
for script in $path/"$PYENV_COMMAND"/*.bash; do for script in "$path/$PYENV_COMMAND"/*.bash; do
echo $(realpath $script) echo $(realpath $script)
done done
done done

View File

@@ -22,7 +22,10 @@ done
shell="$1" shell="$1"
if [ -z "$shell" ]; then if [ -z "$shell" ]; then
shell="$(basename "$SHELL")" shell="$(ps c -p "$PPID" -o 'ucomm=' 2>/dev/null || true)"
shell="${shell##-}"
shell="${shell%% *}"
shell="$(basename "${shell:-$SHELL}")"
fi fi
READLINK=$(type -p greadlink readlink | head -1) READLINK=$(type -p greadlink readlink | head -1)
@@ -75,7 +78,7 @@ if [ -z "$print" ]; then
echo echo
case "$shell" in case "$shell" in
fish ) fish )
echo '. (pyenv init -|psub)' echo 'status --is-interactive; and . (pyenv init -|psub)'
;; ;;
* ) * )
echo 'eval "$(pyenv init -)"' echo 'eval "$(pyenv init -)"'
@@ -100,8 +103,22 @@ if [[ ":${PATH}:" != *:"${PYENV_ROOT}/shims":* ]]; then
esac esac
fi fi
case "$shell" in
fish )
echo "setenv PYENV_SHELL $shell"
;;
* )
echo "export PYENV_SHELL=$shell"
;;
esac
completion="${root}/completions/pyenv.${shell}" completion="${root}/completions/pyenv.${shell}"
[ -r "$completion" ] && echo ". '$completion'" if [ -r "$completion" ]; then
case "$shell" in
fish ) echo ". '$completion'" ;;
* ) echo "source '$completion'" ;;
esac
fi
if [ -z "$no_rehash" ]; then if [ -z "$no_rehash" ]; then
echo 'pyenv rehash 2>/dev/null' echo 'pyenv rehash 2>/dev/null'

View File

@@ -38,13 +38,14 @@ versions=($@)
if [ "$versions" = "--unset" ]; then if [ "$versions" = "--unset" ]; then
rm -f .python-version .pyenv-version rm -f .python-version .pyenv-version
elif [ -n "$versions" ]; then elif [ -n "$versions" ]; then
if [ "$(PYENV_VERSION= pyenv-version-origin)" -ef .pyenv-version ]; then previous_file="$(PYENV_VERSION= pyenv-version-origin || true)"
pyenv-version-file-write .python-version "${versions[@]}"
if [ "$previous_file" -ef .pyenv-version ]; then
rm -f .pyenv-version rm -f .pyenv-version
{ echo "pyenv: removed existing \`.pyenv-version' file and migrated" { echo "pyenv: removed existing \`.pyenv-version' file and migrated"
echo " local version specification to \`.python-version' file" echo " local version specification to \`.python-version' file"
} >&2 } >&2
fi fi
pyenv-version-file-write .python-version "${versions[@]}"
else else
OLDIFS="$IFS" OLDIFS="$IFS"
IFS=: versions=($( IFS=: versions=($(

View File

@@ -16,22 +16,26 @@ if [ "$1" = "--complete" ]; then
fi fi
if [ -n "$1" ]; then if [ -n "$1" ]; then
versions=($@)
OLDIFS="$IFS" OLDIFS="$IFS"
IFS=: PYENV_VERSION="${versions[*]}" { IFS=:
IFS="$OLDIFS" export PYENV_VERSION="$*"
export PYENV_VERSION }
else
OLDIFS="$IFS"
IFS=: versions=($(pyenv-version-name))
IFS="$OLDIFS" IFS="$OLDIFS"
elif [ -z "$PYENV_VERSION" ]; then
PYENV_VERSION="$(pyenv-version-name)"
fi fi
PYENV_PREFIX_PATHS=() PYENV_PREFIX_PATHS=()
for version in "${versions[@]}"; do OLDIFS="$IFS"
{ IFS=:
for version in ${PYENV_VERSION}; do
if [ "$version" = "system" ]; then if [ "$version" = "system" ]; then
PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python || true)" if PYTHON_PATH="$(pyenv-which python 2>/dev/null)"; then
PYENV_PREFIX_PATH="${PYTHON_PATH%/*}" PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
else
echo "pyenv: system version not found in PATH" >&2
exit 1
fi
else else
PYENV_PREFIX_PATH="${PYENV_ROOT}/versions/${version}" PYENV_PREFIX_PATH="${PYENV_ROOT}/versions/${version}"
fi fi
@@ -42,6 +46,8 @@ for version in "${versions[@]}"; do
exit 1 exit 1
fi fi
done done
}
IFS="$OLDIFS"
OLDIFS="$IFS" OLDIFS="$IFS"
{ IFS=: { IFS=:

View File

@@ -17,7 +17,11 @@ mkdir -p "$SHIM_PATH"
set -o noclobber set -o noclobber
{ echo > "$PROTOTYPE_SHIM_PATH" { echo > "$PROTOTYPE_SHIM_PATH"
} 2>/dev/null || } 2>/dev/null ||
{ echo "pyenv: cannot rehash: $PROTOTYPE_SHIM_PATH exists" { if [ -w "$SHIM_PATH" ]; then
echo "pyenv: cannot rehash: $PROTOTYPE_SHIM_PATH exists"
else
echo "pyenv: cannot rehash: $SHIM_PATH isn't writable"
fi
exit 1 exit 1
} >&2 } >&2
set +o noclobber set +o noclobber
@@ -78,9 +82,9 @@ remove_outdated_shims() {
# registered for installation as a shim. In this way, plugins may call # registered for installation as a shim. In this way, plugins may call
# `make_shims` with a glob to register many shims at once. # `make_shims` with a glob to register many shims at once.
make_shims() { make_shims() {
local shims="$@" local shims=("$@")
for file in $shims; do for file in "${shims[@]}"; do
local shim="${file##*/}" local shim="${file##*/}"
register_shim "$shim" register_shim "$shim"
done done
@@ -92,7 +96,7 @@ registered_shims=()
registered_shims_index="" registered_shims_index=""
# We will keep track of shims registered for installation with the # We will keep track of shims registered for installation with the
# global `reigstered_shims` array and with a global search index # global `registered_shims` array and with a global search index
# string. The array will let us iterate over all registered shims. The # string. The array will let us iterate over all registered shims. The
# index string will let us quickly check whether a shim with the given # index string will let us quickly check whether a shim with the given
# name has been registered or not. # name has been registered or not.
@@ -140,7 +144,11 @@ make_shims ../versions/*/bin/*
cd "$OLDPWD" cd "$OLDPWD"
# Allow plugins to register shims. # Allow plugins to register shims.
for script in $(pyenv-hooks rehash); do OLDIFS="$IFS"
IFS=$'\n' scripts=(`pyenv-hooks rehash`)
IFS="$OLDIFS"
for script in "${scripts[@]}"; do
source "$script" source "$script"
done done

View File

@@ -7,7 +7,7 @@ if [ "$1" = "--complete" ]; then
exec pyenv-rehash --complete exec pyenv-rehash --complete
fi fi
shell="$(basename "$SHELL")" shell="$(basename "${PYENV_SHELL:-$SHELL}")"
# When pyenv shell integration is enabled, delegate to pyenv-rehash, # When pyenv shell integration is enabled, delegate to pyenv-rehash,
# then tell the shell to empty its command lookup cache. # then tell the shell to empty its command lookup cache.
@@ -15,11 +15,9 @@ pyenv-rehash
case "$shell" in case "$shell" in
fish ) fish )
or='; or' # no rehash support
;; ;;
* ) * )
or='||' echo "hash -r 2>/dev/null || true"
;; ;;
esac esac
echo "hash -r 2>/dev/null $or true"

View File

@@ -24,7 +24,7 @@ if [ "$1" = "--complete" ]; then
fi fi
versions=("$@") versions=("$@")
shell="$(basename "$SHELL")" shell="$(basename "${PYENV_SHELL:-$SHELL}")"
if [ -z "$versions" ]; then if [ -z "$versions" ]; then
if [ -z "$PYENV_VERSION" ]; then if [ -z "$PYENV_VERSION" ]; then
@@ -51,14 +51,14 @@ fi
# Make sure the specified version is installed. # Make sure the specified version is installed.
if pyenv-prefix "${versions[@]}" >/dev/null; then if pyenv-prefix "${versions[@]}" >/dev/null; then
OLDIFS="$IFS" OLDIFS="$IFS"
IFS=: PYENV_VERSION="${versions[*]}" IFS=: version="${versions[*]}"
IFS="$OLDIFS" IFS="$OLDIFS"
case "$shell" in case "$shell" in
fish ) fish )
echo "setenv PYENV_VERSION \"${PYENV_VERSION}\"" echo "setenv PYENV_VERSION \"${version}\""
;; ;;
* ) * )
echo "export PYENV_VERSION=\"${PYENV_VERSION}\"" echo "export PYENV_VERSION=\"${version}\""
;; ;;
esac esac
else else

View File

@@ -11,6 +11,8 @@ if [ "$1" = "--complete" ]; then
exit exit
fi fi
shopt -s nullglob
for command in "${PYENV_ROOT}/shims/"*; do for command in "${PYENV_ROOT}/shims/"*; do
if [ "$1" = "--short" ]; then if [ "$1" = "--short" ]; then
echo "${command##*/}" echo "${command##*/}"

View File

@@ -13,6 +13,7 @@ find_local_version_file() {
echo "${root}/.pyenv-version" echo "${root}/.pyenv-version"
exit exit
fi fi
[ "${root}" = "${root%/*}" ] && break
root="${root%/*}" root="${root%/*}"
done done
} }

View File

@@ -8,14 +8,8 @@ VERSION_FILE="$1"
if [ -e "$VERSION_FILE" ]; then 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.
versions=() words=( $(cut -b 1-1024 "$VERSION_FILE") )
while read -a words; do versions=("${words[@]}")
word="${words[0]}"
if [ -n "$word" ]; then
length="${#versions[@]}"
versions=("${versions[@]}" "$word")
fi
done < <( cat "$VERSION_FILE" && echo )
if [ -n "$versions" ]; then if [ -n "$versions" ]; then
OLDIFS="$IFS" OLDIFS="$IFS"

View File

@@ -5,7 +5,7 @@ set -e
[ -n "$PYENV_DEBUG" ] && set -x [ -n "$PYENV_DEBUG" ] && set -x
PYENV_VERSION_FILE="$1" PYENV_VERSION_FILE="$1"
shift shift || true
versions=("$@") versions=("$@")
if [ -z "$versions" ] || [ -z "$PYENV_VERSION_FILE" ]; then if [ -z "$versions" ] || [ -z "$PYENV_VERSION_FILE" ]; then

View File

@@ -3,20 +3,12 @@
set -e set -e
[ -n "$PYENV_DEBUG" ] && set -x [ -n "$PYENV_DEBUG" ] && set -x
if [ -n "$PYENV_VERSION" ]; then if [ -z "$PYENV_VERSION" ]; then
OLDIFS="$IFS"
IFS=: versions=($(echo "${PYENV_VERSION}"))
IFS="$IFS"
else
PYENV_VERSION_FILE="$(pyenv-version-file)" PYENV_VERSION_FILE="$(pyenv-version-file)"
OLDIFS="$IFS" PYENV_VERSION="$(pyenv-version-file-read "$PYENV_VERSION_FILE" || true)"
IFS=: versions=($(pyenv-version-file-read "$PYENV_VERSION_FILE" || true))
IFS=: PYENV_VERSION="${versions[*]}"
IFS="$OLDIFS"
export PYENV_VERSION
fi fi
if [ -z "$versions" ]; then if [ -z "$PYENV_VERSION" ] || [ "$PYENV_VERSION" = "system" ]; then
echo "system" echo "system"
exit exit
fi fi
@@ -26,11 +18,27 @@ version_exists() {
[ -d "${PYENV_ROOT}/versions/${version}" ] [ -d "${PYENV_ROOT}/versions/${version}" ]
} }
for version in "${versions[@]}"; do versions=()
if [ "$version" != "system" ] && ! version_exists "$version"; then OLDIFS="$IFS"
{ IFS=:
for version in ${PYENV_VERSION}; do
if version_exists "$version" || [ "$version" = "system" ]; then
versions=("${versions[@]}" "${version}")
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-}")
else
echo "pyenv: version \`$version' is not installed" >&2 echo "pyenv: version \`$version' is not installed" >&2
exit 1 exit 1
fi fi
done done
}
IFS="$OLDIFS"
echo "${PYENV_VERSION}" OLDIFS="$IFS"
{ IFS=:
echo "${versions[*]}"
}
IFS="$OLDIFS"

View File

@@ -34,9 +34,9 @@ array_exists() {
print_version() { print_version() {
if array_exists "$1" "${current_versions[@]}"; then if array_exists "$1" "${current_versions[@]}"; then
echo "${hit_prefix}${1}${version_origin}" echo "${hit_prefix}$1${version_origin}"
else else
echo "${miss_prefix}${1}" echo "${miss_prefix}$1"
fi fi
} }

View File

@@ -36,9 +36,7 @@ remove_from_path() {
fi fi
local paths local paths
OLDIFS="$IFS"
IFS=: paths=($PATH) IFS=: paths=($PATH)
IFS="$OLDIFS"
for path in "${paths[@]}"; do for path in "${paths[@]}"; do
path="$(expand_path "$path" || true)" path="$(expand_path "$path" || true)"
@@ -73,7 +71,10 @@ for version in "${versions[@]}"; do
fi fi
done done
for script in $(pyenv-hooks which); do OLDIFS="$IFS"
IFS=$'\n' scripts=(`pyenv-hooks which`)
IFS="$OLDIFS"
for script in "${scripts[@]}"; do
source "$script" source "$script"
done done

View File

@@ -1,17 +1,21 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# #
# Summary: Install a Python version using the python-build plugin # Summary: Install a Python version using python-build
# #
# Usage: pyenv install [-f|--force] [-g|--debug] [-k|--keep] [-v|--verbose] <version> # Usage: pyenv install [-f] [-kvp] <version>
# pyenv install [-f|--force] [-g|--debug] [-k|--keep] [-v|--verbose] <definition-file> # pyenv install [-f] [-kvp] <definition-file>
# pyenv install -l|--list # pyenv install -l|--list
# #
# -l/--list List all available versions # -l/--list List all available versions
# -f/--force Install even if the version appears to be installed already # -f/--force Install even if the version appears to be installed already
#
# python-build options:
#
# -k/--keep Keep source tree in $PYENV_BUILD_ROOT after installation # -k/--keep Keep source tree in $PYENV_BUILD_ROOT after installation
# (defaults to $PYENV_ROOT/sources) # (defaults to $PYENV_ROOT/sources)
# -g/--debug Build a debug version
# -v/--verbose Verbose mode: print compilation status to stdout # -v/--verbose Verbose mode: print compilation status to stdout
# -p/--patch Apply a patch from stdin before building
# -g/--debug Build a debug version
# #
# For detailed information on installing Python versions with # For detailed information on installing Python versions with
# python-build, including a list of environment variables for adjusting # python-build, including a list of environment variables for adjusting
@@ -50,6 +54,7 @@ indent() {
unset FORCE unset FORCE
unset KEEP unset KEEP
unset VERBOSE unset VERBOSE
unset HAS_PATCH
unset DEBUG unset DEBUG
parse_options "$@" parse_options "$@"
@@ -72,6 +77,9 @@ for option in "${OPTIONS[@]}"; do
"v" | "verbose" ) "v" | "verbose" )
VERBOSE="-v" VERBOSE="-v"
;; ;;
"p" | "patch" )
HAS_PATCH="-p"
;;
"g" | "debug" ) "g" | "debug" )
DEBUG="-g" DEBUG="-g"
;; ;;
@@ -91,7 +99,7 @@ unset VERSION_NAME
# version is specified by pyenv. Show usage instructions if a local # version is specified by pyenv. Show usage instructions if a local
# 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
@@ -110,10 +118,10 @@ after_install() {
after_hooks["${#after_hooks[@]}"]="$hook" after_hooks["${#after_hooks[@]}"]="$hook"
} }
# Load plugin hooks. OLDIFS="$IFS"
for script in $(pyenv-hooks install); do IFS=$'\n' scripts=(`pyenv-hooks install`)
source "$script" IFS="$OLDIFS"
done for script in "${scripts[@]}"; do source "$script"; done
# Set VERSION_NAME from $DEFINITION, if it is not already set. Then # Set VERSION_NAME from $DEFINITION, if it is not already set. Then
@@ -148,11 +156,19 @@ if [ -z "${PYTHON_BUILD_CACHE_PATH}" ] && [ -d "${PYENV_ROOT}/cache" ]; then
export PYTHON_BUILD_CACHE_PATH="${PYENV_ROOT}/cache" export PYTHON_BUILD_CACHE_PATH="${PYENV_ROOT}/cache"
fi fi
# Default PYENV_VERSION to the globally-specified Python version. (The # Default PYENV_VERSION to the friendly Python version. (The
# CPython installer requires an existing Python installation to run. An # CPython installer requires an existing Python installation to run. An
# unsatisfied local .python-version file can cause the installer to # unsatisfied local python version can cause the installer to
# fail.) # fail.)
#export PYENV_VERSION="$(pyenv global 2>/dev/null || true)" if [[ "${VERSION_NAME}" == [23]"."* ]]; then
for version in "${VERSION_NAME%-dev}" "${VERSION_NAME%.*}" "${VERSION_NAME%%.*}"; do
PYENV_VERSION="$(pyenv-whence "python${version}" 2>/dev/null | tail -n 1 || true)"
if [ -n "${PYENV_VERSION}" ]; then
export PYENV_VERSION
break
fi
done
fi
# Execute `before_install` hooks. # Execute `before_install` hooks.
@@ -167,7 +183,7 @@ trap cleanup SIGINT
# Invoke `python-build` and record the exit status in $STATUS. # Invoke `python-build` and record the exit status in $STATUS.
STATUS=0 STATUS=0
python-build $KEEP $VERBOSE $DEBUG "$DEFINITION" "$PREFIX" || STATUS="$?" python-build $KEEP $VERBOSE $HAS_PATCH $DEBUG "$DEFINITION" "$PREFIX" || STATUS="$?"
# Display a more helpful message if the definition wasn't found. # Display a more helpful message if the definition wasn't found.
if [ "$STATUS" == "2" ]; then if [ "$STATUS" == "2" ]; then
@@ -191,7 +207,7 @@ for hook in "${after_hooks[@]}"; do eval "$hook"; done
# Run `pyenv-rehash` after a successful installation. # Run `pyenv-rehash` after a successful installation.
if [ "$STATUS" == "0" ]; then if [ "$STATUS" == "0" ]; then
pyenv rehash pyenv-rehash
else else
cleanup cleanup
fi fi

View File

@@ -38,6 +38,24 @@ case "$DEFINITION" in
;; ;;
esac esac
declare -a before_hooks after_hooks
before_uninstall() {
local hook="$1"
before_hooks["${#before_hooks[@]}"]="$hook"
}
after_uninstall() {
local hook="$1"
after_hooks["${#after_hooks[@]}"]="$hook"
}
OLDIFS="$IFS"
IFS=$'\n' scripts=(`pyenv-hooks uninstall`)
IFS="$OLDIFS"
for script in "${scripts[@]}"; do source "$script"; done
VERSION_NAME="${DEFINITION##*/}" VERSION_NAME="${DEFINITION##*/}"
PREFIX="${PYENV_ROOT}/versions/${VERSION_NAME}" PREFIX="${PYENV_ROOT}/versions/${VERSION_NAME}"
@@ -54,7 +72,11 @@ if [ -z "$FORCE" ]; then
esac esac
fi fi
for hook in "${before_hooks[@]}"; do eval "$hook"; done
if [ -d "$PREFIX" ]; then if [ -d "$PREFIX" ]; then
rm -rf "$PREFIX" rm -rf "$PREFIX"
pyenv rehash pyenv-rehash
fi fi
for hook in "${after_hooks[@]}"; do eval "$hook"; done

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env bash #!/usr/bin/env bash
PYTHON_BUILD_VERSION="20131030" PYTHON_BUILD_VERSION="20140204"
set -E set -E
exec 3<&2 # preserve original stderr at fd 3 exec 3<&2 # preserve original stderr at fd 3
@@ -101,7 +101,7 @@ num_cpu_cores() {
if [ "Darwin" = "$(uname -s)" ]; then if [ "Darwin" = "$(uname -s)" ]; then
num="$(sysctl -n hw.ncpu 2>/dev/null || true)" num="$(sysctl -n hw.ncpu 2>/dev/null || true)"
elif [ -r /proc/cpuinfo ]; then elif [ -r /proc/cpuinfo ]; then
num="$(grep -c ^processor /proc/cpuinfo)" num="$(grep ^processor /proc/cpuinfo | wc -l)"
[ "$num" -gt 0 ] || num="" [ "$num" -gt 0 ] || num=""
fi fi
echo "${num:-2}" echo "${num:-2}"
@@ -131,6 +131,10 @@ install_zip() {
install_package_using "zip" 1 "$@" install_package_using "zip" 1 "$@"
} }
install_script() {
install_package_using "script" 1 "$@"
}
install_package_using() { install_package_using() {
local package_type="$1" local package_type="$1"
local package_type_nargs="$2" local package_type_nargs="$2"
@@ -160,33 +164,16 @@ install_package_using() {
} >&2 } >&2
} }
apply_patches() {
local package_name="$1"
local patches_path="${PYTHON_BUILD_ROOT}/share/python-build/patches/${DEFINITION_PATH##*/}"
# Support PYTHON_PATCH_STRIP, etc.
local package_var_name="$(capitalize "${package_name%%-*}")"
local PACKAGE_PATCH_STRIP="${package_var_name}_PATCH_STRIP"
for patch in "${patches_path}/${package_name}/"*; do
if [ -f "$patch" ]; then
{
echo "Applying ${patch##*/} to ${package_name}..."
patch "-p${!PACKAGE_PATCH_STRIP:-0}" < "$patch"
} >&4 2>&1
fi
done
}
make_package() { make_package() {
local package_name="$1" local package_name="$1"
shift shift
pushd "$package_name" >&4 pushd "$package_name" >&4
setup_builtin_patches "$package_name"
before_install_package "$package_name" before_install_package "$package_name"
apply_patches "$package_name"
build_package "$package_name" $* build_package "$package_name" $*
after_install_package "$package_name" after_install_package "$package_name"
cleanup_builtin_patches "$package_name"
fix_directory_permissions fix_directory_permissions
popd >&4 popd >&4
} }
@@ -281,16 +268,14 @@ fetch_tarball() {
local tar_args="xzvf" local tar_args="xzvf"
local package_filename="${package_name}.tar.gz" local package_filename="${package_name}.tar.gz"
local package_suffix extract_option if [ "$package_url" != "${package_url%tgz}" ]; then
case "${package_url}" in package_filename="${package_filename%tar.gz}tgz"
*".tgz" ) fi
package_filename="${package_name}.tgz"
;; if [ "$package_url" != "${package_url%bz2}" ]; then
*".tar.bz2" ) package_filename="${package_filename%.gz}.bz2"
package_filename="${package_name}.tar.bz2"
tar_args="${tar_args/z/j}" tar_args="${tar_args/z/j}"
;; fi
esac
if ! symlink_tarball_from_cache "$package_filename" "$checksum"; then if ! symlink_tarball_from_cache "$package_filename" "$checksum"; then
echo "Downloading ${package_filename}..." >&2 echo "Downloading ${package_filename}..." >&2
@@ -489,6 +474,34 @@ fetch_zip() {
} >&4 2>&1 } >&4 2>&1
} }
fetch_script() {
local package_name="$1"
local package_url="$2"
local mirror_url
local checksum
if [ "$package_url" != "${package_url/\#}" ]; then
checksum="${package_url#*#}"
package_url="${package_url%%#*}"
if [ -n "$PYTHON_BUILD_MIRROR_URL" ]; then
mirror_url="${PYTHON_BUILD_MIRROR_URL}/$checksum"
fi
fi
local package_filename="${package_name}.sh" # TODO: extract suffix from ${package_url}
if ! symlink_tarball_from_cache "$package_filename" "$checksum"; then
echo "Downloading ${package_filename}..." >&2
http head "$mirror_url" &&
download_tarball "$mirror_url" "$package_filename" "$checksum" ||
download_tarball "$package_url" "$package_filename" "$checksum"
fi
mkdir -p "$(dirname "${package_name}/${package_filename}")"
mv -f "${package_filename}" "${package_name}/${package_filename}"
}
build_package() { build_package() {
local package_name="$1" local package_name="$1"
shift shift
@@ -501,6 +514,8 @@ build_package() {
echo "Installing ${package_name}..." >&2 echo "Installing ${package_name}..." >&2
[ -n "$HAS_PATCH" ] && apply_python_patch "$package_name"
for command in $commands; do for command in $commands; do
"build_package_${command}" "$package_name" "build_package_${command}" "$package_name"
done done
@@ -533,8 +548,12 @@ build_package_standard() {
local PACKAGE_CONFIGURE_OPTS_ARRAY="${package_var_name}_CONFIGURE_OPTS_ARRAY[@]" local PACKAGE_CONFIGURE_OPTS_ARRAY="${package_var_name}_CONFIGURE_OPTS_ARRAY[@]"
local PACKAGE_MAKE_OPTS="${package_var_name}_MAKE_OPTS" local PACKAGE_MAKE_OPTS="${package_var_name}_MAKE_OPTS"
local PACKAGE_MAKE_OPTS_ARRAY="${package_var_name}_MAKE_OPTS_ARRAY[@]" local PACKAGE_MAKE_OPTS_ARRAY="${package_var_name}_MAKE_OPTS_ARRAY[@]"
local PACKAGE_MAKE_INSTALL_OPTS="${package_var_name}_MAKE_INSTALL_OPTS"
local PACKAGE_MAKE_INSTALL_OPTS_ARRAY="${package_var_name}_MAKE_INSTALL_OPTS_ARRAY[@]"
local PACKAGE_CFLAGS="${package_var_name}_CFLAGS" local PACKAGE_CFLAGS="${package_var_name}_CFLAGS"
[ "$package_var_name" = "PYTHON" ] && use_homebrew_readline || true
( if [ "${CFLAGS+defined}" ] || [ "${!PACKAGE_CFLAGS+defined}" ]; then ( if [ "${CFLAGS+defined}" ] || [ "${!PACKAGE_CFLAGS+defined}" ]; then
export CFLAGS="$CFLAGS ${!PACKAGE_CFLAGS}" export CFLAGS="$CFLAGS ${!PACKAGE_CFLAGS}"
fi fi
@@ -544,7 +563,7 @@ build_package_standard() {
) >&4 2>&1 ) >&4 2>&1
{ "$MAKE" $MAKE_OPTS ${!PACKAGE_MAKE_OPTS} "${!PACKAGE_MAKE_OPTS_ARRAY}" { "$MAKE" $MAKE_OPTS ${!PACKAGE_MAKE_OPTS} "${!PACKAGE_MAKE_OPTS_ARRAY}"
"$MAKE" install "$MAKE" install $MAKE_INSTALL_OPTS ${!PACKAGE_MAKE_INSTALL_OPTS} "${!PACKAGE_MAKE_INSTALL_OPTS_ARRAY}"
} >&4 2>&1 } >&4 2>&1
} }
@@ -553,6 +572,13 @@ build_package_autoconf() {
} >&4 2>&1 } >&4 2>&1
} }
build_package_ruby() {
local package_name="$1"
{ "$RUBY_BIN" setup.rb
} >&4 2>&1
}
build_package_python() { build_package_python() {
local package_name="$1" local package_name="$1"
@@ -560,6 +586,111 @@ build_package_python() {
} >&4 2>&1 } >&4 2>&1
} }
build_package_ree_installer() {
build_package_auto_tcltk
local options=""
if [[ "Darwin" = "$(uname)" ]]; then
options="--no-tcmalloc"
fi
local option
for option in $RUBY_CONFIGURE_OPTS ${RUBY_CONFIGURE_OPTS_ARRAY[@]}; do
options="$options -c $option"
done
# Work around install_useful_libraries crash with --dont-install-useful-gems
mkdir -p "$PREFIX_PATH/lib/ruby/gems/1.8/gems"
{ ./installer --auto "$PREFIX_PATH" --dont-install-useful-gems $options $CONFIGURE_OPTS
} >&4 2>&1
}
build_package_rbx() {
local package_name="$1"
{ bundle --path=vendor/bundle
RUBYOPT="-rubygems $RUBYOPT" ./configure --prefix="$PREFIX_PATH" $RUBY_CONFIGURE_OPTS
rake install
fix_rbx_gem_binstubs "$PREFIX_PATH"
fix_rbx_irb "$PREFIX_PATH"
} >&4 2>&1
}
build_package_mruby() {
local package_name="$1"
{ rake
mkdir -p "$PREFIX_PATH"
cp -fR build/host/* "$PREFIX_PATH"
cd "$PREFIX_PATH/bin"
ln -fs mruby ruby
ln -fs mirb irb
} >&4 2>&1
}
build_package_maglev() {
build_package_copy
{ cd "${PREFIX_PATH}"
./install.sh
cd "${PREFIX_PATH}/bin"
echo "Creating symlink for ruby*"
ln -fs maglev-ruby ruby
echo "Creating symlink for irb*"
ln -fs maglev-irb irb
} >&4 2>&1
echo
echo "Run 'maglev start' to start up the stone before using 'ruby' or 'irb'"
}
build_package_topaz() {
build_package_copy
{ cd "${PREFIX_PATH}/bin"
echo "Creating symlink for ruby*"
ln -fs topaz ruby
} >&4 2>&1
}
topaz_architecture() {
case "$(uname -s)" in
"Darwin") echo "osx64";;
"Linux") [[ "$(uname -m)" = "x86_64" ]] && echo "linux64" || echo "linux32";;
*)
echo "no nightly builds available" >&2
exit 1;;
esac
}
build_package_jruby() {
build_package_copy
cd "${PREFIX_PATH}/bin"
ln -fs jruby ruby
install_jruby_launcher
remove_windows_files
fix_jruby_shebangs
}
install_jruby_launcher() {
cd "${PREFIX_PATH}/bin"
{ ./ruby gem install jruby-launcher
} >&4 2>&1
}
fix_jruby_shebangs() {
for file in "${PREFIX_PATH}/bin"/*; do
if [ "$(head -c 20 "$file")" = "#!/usr/bin/env jruby" ]; then
sed -i.bak "1 s:.*:#\!${PREFIX_PATH}\/bin\/jruby:" "$file"
rm "$file".bak
fi
done
}
remove_windows_files() {
cd "$PREFIX_PATH"
rm -f bin/*.exe bin/*.dll bin/*.bat bin/jruby.sh
}
build_package_jython() { build_package_jython() {
build_package_copy build_package_copy
{ if [ -x "${PREFIX_PATH}/bin/jython" ] && [ ! -x "${PREFIX_PATH}/bin/python" ]; then { if [ -x "${PREFIX_PATH}/bin/jython" ] && [ ! -x "${PREFIX_PATH}/bin/python" ]; then
@@ -597,6 +728,17 @@ build_package_pypy_builder() {
build_package_pypy build_package_pypy
} }
build_package_anaconda() {
local package_name="$1"
{ bash "${package_name}.sh" -b -p "${PREFIX_PATH}"
} >&4 2>&1
}
build_package_miniconda() {
build_package_anaconda "$@"
"${PREFIX_PATH}/bin/conda" install --yes "pip"
}
build_package_copy() { build_package_copy() {
mkdir -p "$PREFIX_PATH" mkdir -p "$PREFIX_PATH"
cp -fR . "$PREFIX_PATH" cp -fR . "$PREFIX_PATH"
@@ -610,59 +752,111 @@ after_install_package() {
local stub=1 local stub=1
} }
setup_builtin_patches() {
local package_name="$1"
local package_patch_path="${PYTHON_BUILD_ROOT}/share/python-build/patches/${DEFINITION_PATH##*/}/${package_name}"
ORIG_HAS_PATCH="$HAS_PATCH"
# Apply built-in patches if patch was not given from stdin
if [ -z "$HAS_PATCH" ] && [ -d "${package_patch_path}" ]; then
local patch
{ for patch in "${package_patch_path}"/*; do
[ -f "${patch}" ] && echo "${patch}"
done
} 2>/dev/null | sort | xargs cat 1>"${package_name}.patch"
exec <&-
exec <"${package_name}.patch"
HAS_PATCH=true
fi
}
cleanup_builtin_patches() {
local package_name="$1"
rm -f "${package_name}.patch"
HAS_PATCH="$ORIG_HAS_PATCH"
}
fix_directory_permissions() { fix_directory_permissions() {
# Ensure installed directories are not world-writable to avoid Bundler warnings # Ensure installed directories are not world-writable to avoid Bundler warnings
find "$PREFIX_PATH" -type d \( -perm -020 -o -perm -002 \) -exec chmod go-w {} \; find "$PREFIX_PATH" -type d \( -perm -020 -o -perm -002 \) -exec chmod go-w {} \;
} }
require_gcc() { fix_rbx_gem_binstubs() {
require_cc "gcc" local prefix="$1"
local gemdir="${prefix}/gems/bin"
local bindir="${prefix}/bin"
local file binstub
# Symlink Rubinius' `gems/bin/` into `bin/`
if [ -d "$gemdir" ]; then
for file in "$gemdir"/*; do
binstub="${bindir}/${file##*/}"
rm -f "$binstub"
sed -E "s:^#\!.+:#\!${bindir}/ruby:" < "$file" > "$binstub"
chmod +x "$binstub"
done
rm -rf "$gemdir"
ln -s ../bin "$gemdir"
fi
} }
require_cc() { fix_rbx_irb() {
while [ -n "$1" ]; do local prefix="$1"
if [ "$1" = "--if" ]; then "${prefix}/bin/irb" --version &>/dev/null ||
"$2" || return 0 "${prefix}/bin/gem" install rubysl-tracer -v '~> 2.0' --no-rdoc --no-ri &>/dev/null ||
shift 2 true
else }
break
fi
done
local cc require_gcc() {
local ccname="${1:-cc}" local gcc="$(locate_gcc || true)"
cc="$(locate_cc "$ccname" || true)"
if [ -z "$cc" ]; then if [ -z "$gcc" ]; then
local esc=$'\033' local esc=$'\033'
{ echo { echo
echo "${esc}[1mERROR${esc}[0m: This package must be compiled with $ccname, but python-build couldn't" echo "${esc}[1mERROR${esc}[0m: This package must be compiled with GCC, but python-build couldn't"
echo "find a suitable \`$ccname\` executable on your system. Please install $ccname" echo "find a suitable \`gcc\` executable on your system. Please install GCC"
echo "and try again." echo "and try again."
echo echo
if [ "$(uname -s)" = "Darwin" ]; then
echo "${esc}[1mDETAILS${esc}[0m: Apple no longer includes the official GCC compiler with Xcode"
echo "as of version 4.2. Instead, the \`gcc\` executable is a symlink to"
echo "\`llvm-gcc\`, a modified version of GCC which outputs LLVM bytecode."
echo
echo "For most programs the \`llvm-gcc\` compiler works fine. However,"
echo "versions of CPython newer than 3.3.0 are incompatible with"
echo "\`llvm-gcc\`. To build newer versions of CPython you must have the official"
echo "GCC compiler installed on your system."
echo
if type brew &>/dev/null; then
echo "${esc}[1mTO FIX THE PROBLEM${esc}[0m: Install Homebrew's apple-gcc42 package with this"
echo "command: ${esc}[4mbrew tap homebrew/dupes ; brew install apple-gcc42${esc}[0m"
else
echo "${esc}[1mTO FIX THE PROBLEM${esc}[0m: Install the official GCC compiler using these"
echo "packages: ${esc}[4mhttps://github.com/kennethreitz/osx-gcc-installer/downloads${esc}[0m"
fi
echo
echo "You will need to install the official GCC compiler to build newer"
echo "versions of CPython even if you have installed Apple's Command Line Tools"
echo "for Xcode package. The Command Line Tools for Xcode package only"
echo "includes \`llvm-gcc\`."
fi
} >&3 } >&3
return 1 return 1
fi fi
export CC="$cc" export CC="$gcc"
} }
locate_gcc() { locate_gcc() {
locate_cc "gcc" "$@" local gcc gccs
} IFS=: gccs=($(gccs_in_path))
locate_cc() { verify_gcc "$CC" ||
local ccname="$1"; shift verify_gcc "$(command -v gcc || true)" || {
if [ -z "$ccname" ]; then for gcc in "${gccs[@]}"; do
return 1 verify_gcc "$gcc" && break || true
fi
local cc ccs
IFS=: ccs=($(ccs_in_path "${ccname}"))
verify_cc "${ccname}" "$CC" ||
verify_cc "${ccname}" "$(command -v "${ccname}" || true)" || {
for cc in "${ccs[@]}"; do
verify_cc "${ccname}" "$cc" && break || true
done done
} }
@@ -670,53 +864,72 @@ locate_cc() {
} }
gccs_in_path() { gccs_in_path() {
ccs_in_path "gcc" "$@" local gcc path paths
} local gccs=()
ccs_in_path() {
local ccname="$1"; shift
if [ -z "$ccname" ]; then
return 1
fi
local cc path paths
local ccs=()
IFS=: paths=($PATH) IFS=: paths=($PATH)
shopt -s nullglob shopt -s nullglob
for path in "${paths[@]}"; do for path in "${paths[@]}"; do
for cc in "$path"/${ccname}-*; do for gcc in "$path"/gcc-*; do
ccs["${#ccs[@]}"]="$cc" gccs["${#gccs[@]}"]="$gcc"
done done
done done
shopt -u nullglob shopt -u nullglob
printf :%s "${ccs[@]}" printf :%s "${gccs[@]}"
} }
verify_gcc() { verify_gcc() {
verify_cc "gcc" "$@" local gcc="$1"
} if [ -z "$gcc" ]; then
verify_cc() {
local ccname="$1"; shift
if [ -z "$ccname" ]; then
return 1
fi
local cc="$1"
if [ -z "$cc" ]; then
return 1 return 1
fi fi
local version="$("$cc" --version || true)" local version="$("$gcc" --version || true)"
if [ -z "$version" ]; then if [ -z "$version" ]; then
return 1 return 1
fi fi
echo "$cc" if echo "$version" | grep LLVM >/dev/null; then
return 1
fi
echo "$gcc"
}
require_cc() {
local cc=("$@")
while [ -n "${cc}" ]; do
{ if [ "${#cc[@]}" -le 1 ]; then
"require_${cc}" # display last error
else
"require_${cc}" 3>/dev/null
fi
} && return 0
cc=("${cc[@]:1}")
done
return 1
}
require_clang() {
local clang="$(command -v "$CC" || command -v "clang" || true)"
if [ -z "$clang" ]; then
local esc=$'\033'
{ echo
echo "${esc}[1mERROR${esc}[0m: This package must be compiled with clang, but python-build couldn't"
echo "find a suitable \`clang\` executable on your system. Please install clang"
echo "and try again."
echo
} >&3
return 1
fi
export CC="$clang"
} }
require_java() { require_java() {
local java="$(locate_java || true)" local java="$(command -v java || true)"
if [ -z "$java" ]; then if [ -z "$java" ]; then
local esc=$'\033' local esc=$'\033'
@@ -732,48 +945,50 @@ require_java() {
export JAVA="$java" export JAVA="$java"
} }
locate_java() { needs_yaml() {
local java javas ! use_homebrew_yaml
IFS=: javas=($(javas_in_path))
verify_java "$JAVA" ||
verify_java "$(command -v java || true)" || {
for java in "${javas[@]}"; do
verify_java "$java" && break || true
done
} }
use_homebrew_yaml() {
local libdir="$(brew --prefix libyaml 2>/dev/null || true)"
if [ -d "$libdir" ]; then
package_option python configure CPPFLAGS="-I$libdir/include" LDFLAGS="-L$libdir/lib"
else
return 1 return 1
fi
} }
javas_in_path() { configured_with_readline_dir() {
local java path paths # Mac OS X 10.4 has broken readline.
local javas=() # https://github.com/yyuu/pyenv/issues/23
IFS=: paths=($PATH) local arg flag
for arg in ${CONFIGURE_OPTS} ${PYTHON_CONFIGURE_OPTS} "${PYTHON_CONFIGURE_OPTS_ARRAY[@]}"; do
shopt -s nullglob if [[ "$arg" == "CPPFLAGS="* ]]; then
for path in "${paths[@]}"; do for flag in ${CPPFLAGS} ${arg##CPPFLAGS=}; do
local java="$path"/java if [[ "$flag" == "-I"* ]] && [ -e "${flag##-I}/readline/rlconf.h" ]; then
if [ -x "$java" ]; then return 0
javas["${#javas[@]}"]="$java"
fi fi
done done
shopt -u nullglob fi
done
printf :%s "${javas[@]}" return 1
} }
verify_java() { has_broken_mac_readline() {
local java="$1" [ "$(uname -s)" = "Darwin" ] &&
if [ -z "$java" ]; then ! configured_with_readline_dir &&
! use_homebrew_readline
}
use_homebrew_readline() {
if ! configured_with_readline_dir; then
local libdir="$(brew --prefix readline 2>/dev/null || true)"
if [ -d "$libdir" ]; then
package_option python configure CPPFLAGS="-I$libdir/include" LDFLAGS="-L$libdir/lib"
else
return 1 return 1
fi fi
if [ ! -x "$java" ]; then
return 1
fi fi
echo "$java"
} }
has_broken_mac_openssl() { has_broken_mac_openssl() {
@@ -785,8 +1000,7 @@ has_broken_mac_openssl() {
use_homebrew_openssl() { use_homebrew_openssl() {
local ssldir="$(brew --prefix openssl 2>/dev/null || true)" local ssldir="$(brew --prefix openssl 2>/dev/null || true)"
if [ -d "$ssldir" ]; then if [ -d "$ssldir" ]; then
CPPFLAGS="-I$ssldir/include $CPPFLAGS" package_option python configure CPPFLAGS="-I$ssldir/include" LDFLAGS="-L$ssldir/lib"
LDFLAGS="-L$ssldir/lib $LDFLAGS"
else else
return 1 return 1
fi fi
@@ -800,7 +1014,7 @@ build_package_mac_openssl() {
OPENSSLDIR="${OPENSSLDIR:-$OPENSSL_PREFIX_PATH/ssl}" OPENSSLDIR="${OPENSSLDIR:-$OPENSSL_PREFIX_PATH/ssl}"
# Tell Python to use this openssl for its extension. # Tell Python to use this openssl for its extension.
package_option python configure --with-openssl-dir="$OPENSSL_PREFIX_PATH" package_option python configure CPPFLAGS="-I${OPENSSL_PREFIX_PATH}/include" LDFLAGS="-L${OPENSSL_PREFIX_PATH}/lib"
# Hint OpenSSL that we prefer a 64-bit build. # Hint OpenSSL that we prefer a 64-bit build.
export KERNEL_BITS="64" export KERNEL_BITS="64"
@@ -821,6 +1035,15 @@ build_package_mac_openssl() {
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> "$pem_file" security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> "$pem_file"
} }
# Post-install check that the openssl extension was built.
build_package_verify_openssl() {
"$RUBY_BIN" -e 'begin
require "openssl"
rescue LoadError
abort "The Ruby openssl extension was not compiled. Missing the OpenSSL lib?"
end' >&4 2>&1
}
# Ensure that directories listed in LDFLAGS exist # Ensure that directories listed in LDFLAGS exist
build_package_ldflags_dirs() { build_package_ldflags_dirs() {
local arg local arg
@@ -831,58 +1054,67 @@ build_package_ldflags_dirs() {
done done
} }
has_broken_mac_readline() { build_package_auto_tcltk() {
[ "$(uname -s)" = "Darwin" ] && if [ "Darwin" = "$(uname -s)" ] && [ ! -d /usr/include/X11 ]; then
_has_broken_mac_readline && if [ -d /opt/X11/include ]; then
! use_homebrew_readline if [[ "$CPPFLAGS" != *-I/opt/X11/include* ]]; then
} export CPPFLAGS="-I/opt/X11/include $CPPFLAGS"
_has_broken_mac_readline() {
# MacOSX 10.4 has a broken readline.
# https://github.com/yyuu/pyenv/issues/23
local retval=1
local conftest="$BUILD_PATH/has_broken_mac_readline.h"
if [ "$(uname -s)" = "Darwin" ]; then
echo "#include <readline/rlconf.h>" > "$conftest"
"${CPP:-cpp}" $CPPFLAGS "$conftest" 1>/dev/null 2>&1 || retval=0
rm -f "$conftest"
fi fi
return "$retval"
}
use_homebrew_readline() {
local rldir="$(brew --prefix readline 2>/dev/null || true)"
if [ -d "$rldir" ]; then
CPPFLAGS="-I$rldir/include $CPPFLAGS"
LDFLAGS="-L$rldir/lib $LDFLAGS"
else else
return 1 package_option python configure --without-tk
fi
fi fi
} }
has_broken_mac_llvm_gcc() { rake() {
[ "$(uname -s)" = "Darwin" ] && if [ -e "./Gemfile" ]; then
[[ "$(gcc --version 2>/dev/null || true)" == *"llvm-gcc-4.2"* ]] bundle exec rake "$@"
else
isolated_gem_dependency "rake --version" rake -v '~> 10.1.0'
command rake "$@"
fi
}
bundle() {
isolated_gem_dependency "bundle --version" bundler -v '~> 1.3.5'
command bundle "$@"
}
isolated_gem_dependency() {
set +E
( command $1 &>/dev/null ) || {
set -E
shift 1
isolated_gem_install "$@"
}
set -E
}
isolated_gem_install() {
export GEM_HOME="${PWD}/.gem"
export PATH="${GEM_HOME}/bin:${PATH}"
gem install "$@"
}
apply_python_patch() {
case "$1" in
Python-* | jython-* | pypy-* )
patch -p0 -i "${2:--}"
;;
esac
} }
build_package_verify_python() { build_package_verify_python() {
# Check the existence of ./bin since pyenv-which searches the executables from there local package_name="$1"
if [ ! -d "${PREFIX_PATH}/bin" ]; then local python="$2"
echo "pyenv: invalid Python installation" >&4 2>&1 if [[ "$PYTHON_CONFIGURE_OPTS" == *"--enable-framework"* ]]; then
return 1 # Only symlinks are installed in ${PREFIX_PATH}/bin
rm -fr "${PREFIX_PATH}/bin"
ln -fs "${PREFIX_PATH}/Python.framework/Versions/Current/bin" "${PREFIX_PATH}/bin"
fi fi
if [ ! -e "${PREFIX_PATH}/bin/python" ] && [ -e "${PREFIX_PATH}/bin/${python}" ]; then
# Create `python` executable if missing. Especially for Py3k. ( cd "${PREFIX_PATH}/bin" && ln -fs "${python}" "python" )
if [ ! -e "${PREFIX_PATH}/bin/python" ]; then
local python
for python in "${PREFIX_PATH}/bin/python"*; do
if expr "$(basename "$python")" : '^python[0-9][0-9]*\.[0-9][0-9]*$' 2>&1 >/dev/null; then
( cd "${PREFIX_PATH}/bin" && ln -fs "$(basename "$python")" python )
break
fi fi
done
fi
if [ ! -x "${PYTHON_BIN}" ]; then if [ ! -x "${PYTHON_BIN}" ]; then
echo "pyenv: invalid Python executable: ${PYTHON_BIN}" >&4 2>&1 echo "pyenv: invalid Python executable: ${PYTHON_BIN}" >&4 2>&1
return 1 return 1
@@ -891,57 +1123,69 @@ build_package_verify_python() {
# Post-install check for Python 2.4.x # Post-install check for Python 2.4.x
build_package_verify_py24() { build_package_verify_py24() {
build_package_verify_python "$@" build_package_verify_python "$1" "${2:-python2.4}"
build_package_verify_readline "$@" build_package_verify_readline "$1" "${2:-python2.4}"
build_package_verify_zlib "$@" build_package_verify_zlib "$1" "${2:-python2.4}"
build_package_verify_bz2 "$@" build_package_verify_bz2 "$1" "${2:-python2.4}"
} }
# Post-install check for Python 2.5.x # Post-install check for Python 2.5.x
build_package_verify_py25() { build_package_verify_py25() {
build_package_verify_py24 "$@" build_package_verify_py24 "$1" "${2:-python2.5}"
build_package_verify_sqlite3 "$@" build_package_verify_sqlite3 "$1" "${2:-python2.5}"
} }
# Post-install check for Python 2.6.x # Post-install check for Python 2.6.x
build_package_verify_py26() { build_package_verify_py26() {
build_package_verify_py25 "$@" build_package_verify_py25 "$1" "${2:-python2.6}"
build_package_verify_ssl "$@" build_package_verify_ssl "$1" "${2:-python2.6}"
} }
# Post-install check for Python 2.7.x # Post-install check for Python 2.7.x
build_package_verify_py27() { build_package_verify_py27() {
build_package_verify_py26 "$@" build_package_verify_py26 "$1" "${2:-python2.7}"
} }
# Post-install check for Python 3.0.x # Post-install check for Python 3.0.x
build_package_verify_py30() { build_package_verify_py30() {
build_package_verify_python "$@" build_package_verify_python "$1" "${2:-python3.0}"
build_package_verify_readline "$@" build_package_verify_readline "$1" "${2:-python3.0}"
build_package_verify_ssl "$@" build_package_verify_ssl "$1" "${2:-python3.0}"
build_package_verify_sqlite3 "$@" build_package_verify_sqlite3 "$1" "${2:-python3.0}"
build_package_verify_zlib "$@" build_package_verify_zlib "$1" "${2:-python3.0}"
build_package_verify_bz2 "$@" build_package_verify_bz2 "$1" "${2:-python3.0}"
} }
# Post-install check for Python 3.1.x # Post-install check for Python 3.1.x
build_package_verify_py31() { build_package_verify_py31() {
build_package_verify_py30 "$@" build_package_verify_py30 "$1" "${2:-python3.1}"
} }
# Post-install check for Python 3.2.x # Post-install check for Python 3.2.x
build_package_verify_py32() { build_package_verify_py32() {
build_package_verify_py31 "$@" build_package_verify_py31 "$1" "${2:-python3.2}"
} }
# Post-install check for Python 3.3.x # Post-install check for Python 3.3.x
build_package_verify_py33() { build_package_verify_py33() {
build_package_verify_py32 "$@" build_package_verify_py32 "$1" "${2:-python3.3}"
} }
# Post-install check for Python 3.4.x # Post-install check for Python 3.4.x
build_package_verify_py34() { build_package_verify_py34() {
build_package_verify_py33 "$@" build_package_verify_py33 "$1" "${2:-python3.4}"
}
build_package_ensurepip() {
{ "$PYTHON_BIN" -m ensurepip
} >&4 2>&1
if [ ! -e "${PREFIX_PATH}/bin/pip" ]; then
local pip="$("$PYTHON_BIN" -c 'import sys;v=sys.version_info;sys.stdout.write("pip%d.%d"%(v[0],v[1]))')"
if [ -e "${PREFIX_PATH}/bin/${pip}" ]; then
( cd "${PREFIX_PATH}/bin" && ln -fs "${pip}" "pip" )
fi
fi
} }
build_package_verify_import() { build_package_verify_import() {
@@ -990,7 +1234,7 @@ version() {
usage() { usage() {
{ version { version
echo "usage: python-build [-g|--debug] [-k|--keep] [-v|--verbose] definition prefix" echo "usage: python-build [-k|--keep] [-v|--verbose] [-p|--patch] [-g|--debug] definition prefix"
echo " python-build --definitions" echo " python-build --definitions"
} >&2 } >&2
@@ -1010,6 +1254,7 @@ list_definitions() {
unset VERBOSE unset VERBOSE
unset KEEP_BUILD_PATH unset KEEP_BUILD_PATH
unset HAS_PATCH
PYTHON_BUILD_ROOT="$(abs_dirname "$0")/.." PYTHON_BUILD_ROOT="$(abs_dirname "$0")/.."
unset DEBUG unset DEBUG
@@ -1021,8 +1266,9 @@ for option in "${OPTIONS[@]}"; do
usage without_exiting usage without_exiting
{ echo { echo
echo " -k/--keep Do not remove source tree after installation" echo " -k/--keep Do not remove source tree after installation"
echo " -g/--debug Build a debug version"
echo " -v/--verbose Verbose mode: print compilation status to stdout" 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 " --definitions List all built-in definitions"
echo echo
} >&2 } >&2
@@ -1038,6 +1284,9 @@ for option in "${OPTIONS[@]}"; do
"v" | "verbose" ) "v" | "verbose" )
VERBOSE=true VERBOSE=true
;; ;;
"p" | "patch" )
HAS_PATCH=true
;;
"g" | "debug" ) "g" | "debug" )
DEBUG=true DEBUG=true
;; ;;
@@ -1121,7 +1370,34 @@ else
fi fi
if [ -n "$DEBUG" ]; then if [ -n "$DEBUG" ]; then
PYTHON_CONFIGURE_OPTS="--with-pydebug $PYTHON_CONFIGURE_OPTS" package_option python configure --with-pydebug
fi
if [[ "$CONFIGURE_OPTS" == *"--enable-shared"* ]] || [[ "$PYTHON_CONFIGURE_OPTS" == *"--enable-shared"* ]]; then
# The ld on Darwin embeds the full paths to each dylib by default
if [[ "$LDFLAGS" != *"-rpath="* ]] && [[ "Darwin" != "$(uname -s)" ]]; then
export LDFLAGS="-Wl,-rpath=${PREFIX_PATH}/lib ${LDFLAGS}"
fi
fi
if [[ "$PYTHON_CONFIGURE_OPTS" == *"--enable-framework"* ]]; then
create_framework_dirs() {
local version="$(echo "$1" | sed -E 's/^[^0-9]*([0-9]+\.[0-9]+).*$/\1/')"
mkdir -p "${PREFIX_PATH}/Python.framework/Versions/${version}"
( cd "${PREFIX_PATH}/Python.framework/Versions" && ln -fs "${version}" "Current")
local path
for path in include lib share; do
mkdir -p "${PREFIX_PATH}/Python.framework/Versions/Current/${path}"
ln -fs "${PREFIX_PATH}/Python.framework/Versions/Current/${path}" "${PREFIX_PATH}/${path}"
done
}
create_framework_dirs "${DEFINITION_PATH##*/}"
package_option python configure --enable-framework="${PREFIX_PATH}"
fi
if ! command -v curl 1>/dev/null 2>&1 && [[ "$(wget --version 2>/dev/null || true)" = "GNU Wget 1.1"[0-3]* ]]; then
echo "python-build: wget (< 1.14) doesn't support Server Name Indication. Please install curl (>= 7.18.1) and try again" >&2
exit 1
fi fi
SEED="$(date "+%Y%m%d%H%M%S").$$" SEED="$(date "+%Y%m%d%H%M%S").$$"
@@ -1129,7 +1405,7 @@ LOG_PATH="${TMP}/python-build.${SEED}.log"
PYTHON_BIN="${PREFIX_PATH}/bin/python" PYTHON_BIN="${PREFIX_PATH}/bin/python"
CWD="$(pwd)" CWD="$(pwd)"
if [ -z $PYTHON_BUILD_BUILD_PATH ]; then if [ -z "$PYTHON_BUILD_BUILD_PATH" ]; then
BUILD_PATH="${TMP}/python-build.${SEED}" BUILD_PATH="${TMP}/python-build.${SEED}"
else else
BUILD_PATH="$PYTHON_BUILD_BUILD_PATH" BUILD_PATH="$PYTHON_BUILD_BUILD_PATH"
@@ -1142,8 +1418,8 @@ if [ -n "$VERBOSE" ]; then
trap "kill $TAIL_PID" SIGINT SIGTERM EXIT trap "kill $TAIL_PID" SIGINT SIGTERM EXIT
fi fi
export LDFLAGS="-L'${PREFIX_PATH}/lib' ${LDFLAGS}" export LDFLAGS="-L${PREFIX_PATH}/lib ${LDFLAGS}"
export CPPFLAGS="-I'${PREFIX_PATH}/include' ${CPPFLAGS}" export CPPFLAGS="-I${PREFIX_PATH}/include ${CPPFLAGS}"
unset PYTHONHOME unset PYTHONHOME
unset PYTHONPATH unset PYTHONPATH

View File

@@ -17,4 +17,10 @@ SHARE_PATH="${PREFIX}/share/python-build"
mkdir -p "$BIN_PATH" "$SHARE_PATH" mkdir -p "$BIN_PATH" "$SHARE_PATH"
install -p bin/* "$BIN_PATH" install -p bin/* "$BIN_PATH"
install -p share/python-build/* "$SHARE_PATH" for share in share/python-build/*; do
if [ -d "$share" ]; then
cp -RPp "$share" "$SHARE_PATH"
else
install -p -m 0644 "$share" "$SHARE_PATH"
fi
done

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4" "http://www.python.org/ftp/python/2.4/Python-2.4.tgz#149ad508f936eccf669d52682cf8e606" standard verify_py24 install_package "Python-2.4" "http://python.org/ftp/python/2.4/Python-2.4.tgz#149ad508f936eccf669d52682cf8e606" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.1" "http://www.python.org/ftp/python/2.4.1/Python-2.4.1.tgz#7bb2416a4f421c3452d306694d3efbba" standard verify_py24 install_package "Python-2.4.1" "http://python.org/ftp/python/2.4.1/Python-2.4.1.tgz#7bb2416a4f421c3452d306694d3efbba" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.2" "http://www.python.org/ftp/python/2.4.2/Python-2.4.2.tgz#07cfc759546f6723bb367be5b1ce9875" standard verify_py24 install_package "Python-2.4.2" "http://python.org/ftp/python/2.4.2/Python-2.4.2.tgz#07cfc759546f6723bb367be5b1ce9875" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.3" "http://www.python.org/ftp/python/2.4.3/Python-2.4.3.tgz#edf994473a8c1a963aaa71e442b285b7" standard verify_py24 install_package "Python-2.4.3" "http://python.org/ftp/python/2.4.3/Python-2.4.3.tgz#edf994473a8c1a963aaa71e442b285b7" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.4" "http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tgz#82d000617baaef269ad5795c595fdc58" standard verify_py24 install_package "Python-2.4.4" "http://python.org/ftp/python/2.4.4/Python-2.4.4.tgz#82d000617baaef269ad5795c595fdc58" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.5" "http://www.python.org/ftp/python/2.4.5/Python-2.4.5.tgz#750b652bfdd12675e102bbe25e5e9893" standard verify_py24 install_package "Python-2.4.5" "http://python.org/ftp/python/2.4.5/Python-2.4.5.tgz#750b652bfdd12675e102bbe25e5e9893" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.4.6" "http://www.python.org/ftp/python/2.4.6/Python-2.4.6.tgz#7564b2b142b1b8345cd5358b7aaaa482" standard verify_py24 install_package "Python-2.4.6" "http://python.org/ftp/python/2.4.6/Python-2.4.6.tgz#7564b2b142b1b8345cd5358b7aaaa482" ldflags_dirs standard verify_py24
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python install_package "pip-1.1" "https://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz#62a9f08dd5dc69d76734568a6c040508" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5" "http://www.python.org/ftp/python/2.5/Python-2.5.tgz#bc1b74f90a472a6c0a85481aaeb43f95" standard verify_py25 install_package "Python-2.5" "http://python.org/ftp/python/2.5/Python-2.5.tgz#bc1b74f90a472a6c0a85481aaeb43f95" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.1" "http://www.python.org/ftp/python/2.5.1/Python-2.5.1.tgz#cca695828df8adc3e69b637af07522e1" standard verify_py25 install_package "Python-2.5.1" "http://python.org/ftp/python/2.5.1/Python-2.5.1.tgz#cca695828df8adc3e69b637af07522e1" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.2" "http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tgz#3f7ca8aa86c6bd275426d63b46e07992" standard verify_py25 install_package "Python-2.5.2" "http://python.org/ftp/python/2.5.2/Python-2.5.2.tgz#3f7ca8aa86c6bd275426d63b46e07992" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.3" "http://www.python.org/ftp/python/2.5.3/Python-2.5.3.tgz#a971f8928d6beb31ae0de56f7034d6a2" standard verify_py25 install_package "Python-2.5.3" "http://python.org/ftp/python/2.5.3/Python-2.5.3.tgz#a971f8928d6beb31ae0de56f7034d6a2" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.4" "http://www.python.org/ftp/python/2.5.4/Python-2.5.4.tgz#ad47b23778f64edadaaa8b5534986eed" standard verify_py25 install_package "Python-2.5.4" "http://python.org/ftp/python/2.5.4/Python-2.5.4.tgz#ad47b23778f64edadaaa8b5534986eed" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.5" "http://www.python.org/ftp/python/2.5.5/Python-2.5.5.tgz#abc02139ca38f4258e8e372f7da05c88" standard verify_py25 install_package "Python-2.5.5" "http://python.org/ftp/python/2.5.5/Python-2.5.5.tgz#abc02139ca38f4258e8e372f7da05c88" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.5.6" "http://www.python.org/ftp/python/2.5.6/Python-2.5.6.tgz#d1d9c83928561addf11d00b22a18ca50" standard verify_py25 install_package "Python-2.5.6" "http://python.org/ftp/python/2.5.6/Python-2.5.6.tgz#d1d9c83928561addf11d00b22a18ca50" ldflags_dirs standard verify_py25
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python install_package "pip-1.3.1" "https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz#cbb27a191cebc58997c4da8513863153" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-2.6-dev" "https://bitbucket.org/mirror/cpython" "2.6" standard verify_py26 install_hg "Python-2.6-dev" "https://bitbucket.org/mirror/cpython" "2.6" standard verify_py26
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.6.6" "http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tgz#b2f209df270a33315e62c1ffac1937f0" standard verify_py26 install_package "Python-2.6.6" "http://python.org/ftp/python/2.6.6/Python-2.6.6.tgz#b2f209df270a33315e62c1ffac1937f0" ldflags_dirs standard verify_py26
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.6.7" "http://www.python.org/ftp/python/2.6.7/Python-2.6.7.tgz#af474f85a3af69ea50438a2a48039d7d" standard verify_py26 install_package "Python-2.6.7" "http://python.org/ftp/python/2.6.7/Python-2.6.7.tgz#af474f85a3af69ea50438a2a48039d7d" ldflags_dirs standard verify_py26
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.6.8" "http://www.python.org/ftp/python/2.6.8/Python-2.6.8.tgz#f6c1781f5d73ab7dfa5181f43ea065f6" standard verify_py26 install_package "Python-2.6.8" "http://python.org/ftp/python/2.6.8/Python-2.6.8.tgz#f6c1781f5d73ab7dfa5181f43ea065f6" ldflags_dirs standard verify_py26
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.6.9" "http://www.python.org/ftp/python/2.6.9/Python-2.6.9.tgz#bddbd64bf6f5344fc55bbe49a72fe4f3" standard verify_py26 install_package "Python-2.6.9" "http://python.org/ftp/python/2.6.9/Python-2.6.9.tgz#bddbd64bf6f5344fc55bbe49a72fe4f3" ldflags_dirs standard verify_py26
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7" "http://www.python.org/ftp/python/2.7/Python-2.7.tgz#35f56b092ecf39a6bd59d64f142aae0f" standard verify_py27 install_package "Python-2.7" "http://python.org/ftp/python/2.7/Python-2.7.tgz#35f56b092ecf39a6bd59d64f142aae0f" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-2.7-dev" "https://bitbucket.org/mirror/cpython" "2.7" standard verify_py27 install_hg "Python-2.7-dev" "https://bitbucket.org/mirror/cpython" "2.7" standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.1" "http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz#15ed56733655e3fab785e49a7278d2fb" standard verify_py27 install_package "Python-2.7.1" "http://python.org/ftp/python/2.7.1/Python-2.7.1.tgz#15ed56733655e3fab785e49a7278d2fb" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.2" "http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz#0ddfe265f1b3d0a8c2459f5bf66894c7" standard verify_py27 install_package "Python-2.7.2" "http://python.org/ftp/python/2.7.2/Python-2.7.2.tgz#0ddfe265f1b3d0a8c2459f5bf66894c7" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.3" "http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz#2cf641732ac23b18d139be077bd906cd" standard verify_py27 install_package "Python-2.7.3" "http://python.org/ftp/python/2.7.3/Python-2.7.3.tgz#2cf641732ac23b18d139be077bd906cd" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.4" "http://www.python.org/ftp/python/2.7.4/Python-2.7.4.tgz#592603cfaf4490a980e93ecb92bde44a" standard verify_py27 install_package "Python-2.7.4" "http://python.org/ftp/python/2.7.4/Python-2.7.4.tgz#592603cfaf4490a980e93ecb92bde44a" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.5" "http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz#b4f01a1d0ba0b46b05c73b2ac909b1df" standard verify_py27 install_package "Python-2.7.5" "http://python.org/ftp/python/2.7.5/Python-2.7.5.tgz#b4f01a1d0ba0b46b05c73b2ac909b1df" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-2.7.6" "http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz#1d8728eb0dfcac72a0fd99c17ec7f386" standard verify_py27 install_package "Python-2.7.6" "http://python.org/ftp/python/2.7.6/Python-2.7.6.tgz#1d8728eb0dfcac72a0fd99c17ec7f386" ldflags_dirs standard verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.0.1" "http://www.python.org/ftp/python/3.0.1/Python-3.0.1.tgz#220b73f0a1a20c4b1cdf9f9db4cd52fe" standard verify_py30 install_package "Python-3.0.1" "http://python.org/ftp/python/3.0.1/Python-3.0.1.tgz#220b73f0a1a20c4b1cdf9f9db4cd52fe" ldflags_dirs standard verify_py30
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-3.1-dev" "https://bitbucket.org/mirror/cpython" "3.1" standard verify_py31 install_hg "Python-3.1-dev" "https://bitbucket.org/mirror/cpython" "3.1" standard verify_py31
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.1.3" "http://www.python.org/ftp/python/3.1.3/Python-3.1.3.tgz#d797fa6abe82c21227e328f05a535424" standard verify_py31 install_package "Python-3.1.3" "http://python.org/ftp/python/3.1.3/Python-3.1.3.tgz#d797fa6abe82c21227e328f05a535424" ldflags_dirs standard verify_py31
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.1.4" "http://www.python.org/ftp/python/3.1.4/Python-3.1.4.tgz#fa9f8efdc63944c8393870282e8b5c35" standard verify_py31 install_package "Python-3.1.4" "http://python.org/ftp/python/3.1.4/Python-3.1.4.tgz#fa9f8efdc63944c8393870282e8b5c35" ldflags_dirs standard verify_py31
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.1.5" "http://www.python.org/ftp/python/3.1.5/Python-3.1.5.tgz#02196d3fc7bc76bdda68aa36b0dd16ab" standard verify_py31 install_package "Python-3.1.5" "http://python.org/ftp/python/3.1.5/Python-3.1.5.tgz#02196d3fc7bc76bdda68aa36b0dd16ab" ldflags_dirs standard verify_py31
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2" "http://www.python.org/ftp/python/3.2/Python-3.2.tgz#5efe838a7878b170f6728d7e5d7517af" standard verify_py32 install_package "Python-3.2" "http://python.org/ftp/python/3.2/Python-3.2.tgz#5efe838a7878b170f6728d7e5d7517af" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-3.2-dev" "https://bitbucket.org/mirror/cpython" "3.2" standard verify_py32 install_hg "Python-3.2-dev" "https://bitbucket.org/mirror/cpython" "3.2" standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2.1" "http://www.python.org/ftp/python/3.2.1/Python-3.2.1.tgz#6c2aa3481cadb7bdf74e625fffc352b2" standard verify_py32 install_package "Python-3.2.1" "http://python.org/ftp/python/3.2.1/Python-3.2.1.tgz#6c2aa3481cadb7bdf74e625fffc352b2" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2.2" "http://www.python.org/ftp/python/3.2.2/Python-3.2.2.tgz#3c63a6d97333f4da35976b6a0755eb67" standard verify_py32 install_package "Python-3.2.2" "http://python.org/ftp/python/3.2.2/Python-3.2.2.tgz#3c63a6d97333f4da35976b6a0755eb67" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2.3" "http://www.python.org/ftp/python/3.2.3/Python-3.2.3.tgz#dcf3a738e7028f1deb41b180bf0e2cbc" standard verify_py32 install_package "Python-3.2.3" "http://python.org/ftp/python/3.2.3/Python-3.2.3.tgz#dcf3a738e7028f1deb41b180bf0e2cbc" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2.4" "http://www.python.org/ftp/python/3.2.4/Python-3.2.4.tgz#3af05758d0bc2b1a27249e8d622c3e91" standard verify_py32 install_package "Python-3.2.4" "http://python.org/ftp/python/3.2.4/Python-3.2.4.tgz#3af05758d0bc2b1a27249e8d622c3e91" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_gcc require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.2.5" "http://www.python.org/ftp/python/3.2.5/Python-3.2.5.tgz#ed8d5529d2aebc36b53f4e0a0c9e6728" standard verify_py32 install_package "Python-3.2.5" "http://python.org/ftp/python/3.2.5/Python-3.2.5.tgz#ed8d5529d2aebc36b53f4e0a0c9e6728" ldflags_dirs standard verify_py32
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-3.3-dev" "https://bitbucket.org/mirror/cpython" "3.3" standard verify_py33 install_hg "Python-3.3-dev" "https://bitbucket.org/mirror/cpython" "3.3" standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.0" "http://python.org/ftp/python/3.3.0/Python-3.3.0.tgz#198a64f7a04d1d5e95ce2782d5fd8254" standard verify_py33 install_package "Python-3.3.0" "http://python.org/ftp/python/3.3.0/Python-3.3.0.tgz#198a64f7a04d1d5e95ce2782d5fd8254" ldflags_dirs standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.1" "http://python.org/ftp/python/3.3.1/Python-3.3.1.tgz#c19bfd6ea252b61779a4f2996fb3b330" standard verify_py33 install_package "Python-3.3.1" "http://python.org/ftp/python/3.3.1/Python-3.3.1.tgz#c19bfd6ea252b61779a4f2996fb3b330" ldflags_dirs standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.2" "http://python.org/ftp/python/3.3.2/Python-3.3.2.tgz#0a2ea57f6184baf45b150aee53c0c8da" standard verify_py33 install_package "Python-3.3.2" "http://python.org/ftp/python/3.3.2/Python-3.3.2.tgz#0a2ea57f6184baf45b150aee53c0c8da" ldflags_dirs standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -0,0 +1,5 @@
require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.3" "http://python.org/ftp/python/3.3.3/Python-3.3.3.tgz#831d59212568dc12c95df222865d3441" ldflags_dirs standard verify_py33
install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +0,0 @@
require_cc --if has_broken_mac_llvm_gcc "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.3rc1" "http://python.org/ftp/python/3.3.3/Python-3.3.3rc1.tgz#f91e09aa838743f7243f8ebfa7e7368c" standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python

View File

@@ -1,5 +0,0 @@
require_cc --if has_broken_mac_llvm_gcc "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.3rc2" "http://python.org/ftp/python/3.3.3/Python-3.3.3rc2.tgz#64c3f7cf6832edf86f796b66689f7184" standard verify_py33
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python

View File

@@ -0,0 +1,5 @@
require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.3.4" "http://python.org/ftp/python/3.3.4/Python-3.3.4.tgz#9f7df0dde690132c63b1dd2b640ed3a6" ldflags_dirs standard verify_py33
install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,3 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_hg "Python-3.4-dev" "https://bitbucket.org/mirror/cpython" "default" standard verify_py34 install_hg "Python-3.4-dev" "https://bitbucket.org/mirror/cpython" "default" standard verify_py34 ensurepip
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0a2" "http://python.org/ftp/python/3.4.0/Python-3.4.0a2.tgz#e6e81242a32e6f63d224254d24edbd2f" standard verify_py34 install_package "Python-3.4.0a2" "http://python.org/ftp/python/3.4.0/Python-3.4.0a2.tgz#e6e81242a32e6f63d224254d24edbd2f" ldflags_dirs standard verify_py34
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0a3" "http://python.org/ftp/python/3.4.0/Python-3.4.0a3.tgz#3598af9717cddd4c346d731913fdfd64" standard verify_py34 install_package "Python-3.4.0a3" "http://python.org/ftp/python/3.4.0/Python-3.4.0a3.tgz#3598af9717cddd4c346d731913fdfd64" ldflags_dirs standard verify_py34
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,5 +1,5 @@
require_cc --if has_broken_mac_llvm_gcc "clang" require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0a4" "http://python.org/ftp/python/3.4.0/Python-3.4.0a4.tgz#f874d97c90130b0249848be889b5e6e1" standard verify_py34 install_package "Python-3.4.0a4" "http://python.org/ftp/python/3.4.0/Python-3.4.0a4.tgz#f874d97c90130b0249848be889b5e6e1" ldflags_dirs standard verify_py34
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -0,0 +1,3 @@
require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0b1" "http://python.org/ftp/python/3.4.0/Python-3.4.0b1.tgz#83143a755b8a29a59026c1fdfb8d18fc" ldflags_dirs standard verify_py34 ensurepip

View File

@@ -0,0 +1,3 @@
require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0b2" "http://python.org/ftp/python/3.4.0/Python-3.4.0b2.tgz#afe112d6fe595f501f1dcb3627e7b476" ldflags_dirs standard verify_py34 ensurepip

View File

@@ -0,0 +1,3 @@
require_cc "gcc" "clang"
install_package "readline-6.2" "http://ftpmirror.gnu.org/readline/readline-6.2.tar.gz#67948acb2ca081f23359d0256e9a271c" standard --if has_broken_mac_readline
install_package "Python-3.4.0b3" "http://python.org/ftp/python/3.4.0/Python-3.4.0b3.tgz#1ea3d96a270db1c7113c560e419edc55" ldflags_dirs standard verify_py34 ensurepip

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.4.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.4.0-MacOSX-x86_64.sh#db8779f0a663e025da1b19755f372a57"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.4.0-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.4.0-Linux-x86.sh#d5826bb10bb25d2f03639f841ef2f65f"
;;
"x86_64" )
package_name="Anaconda-1.4.0-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.4.0-Linux-x86_64.sh#9be0e7340f0cd2d2cbd5acbe8e988f45"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.4.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.5.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.5.0-MacOSX-x86_64.sh#6fe90601dbcecb29a2afcaf44aeb37f6"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.5.0-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.5.0-Linux-x86.sh#2a75cab6536838635fd38ee7fd3e2411"
;;
"x86_64" )
package_name="Anaconda-1.5.0-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.5.0-Linux-x86_64.sh#8319288082262fefbe322451aeae06ce"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.5.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,14 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.5.1-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.5.1-MacOSX-x86_64.sh#03942512daf1b39eb3ff9016fc7efa0c"
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.5.1 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.6.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.0-MacOSX-x86_64.sh#cccdd0353bfd46d3a93143fc6e47d728"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.6.0-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.0-Linux-x86.sh#7a7f1f53684d38a7aa36935e34af30a3"
;;
"x86_64" )
package_name="Anaconda-1.6.0-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.0-Linux-x86_64.sh#207a0b4ebde49bcde67925ac8c72fe37"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.6.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.6.1-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.1-MacOSX-x86_64.sh#4b60123e71864c447a0adc16398d5386"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.6.1-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.1-Linux-x86.sh#06412ae8de02c87b8de7d7e6d35ed092"
;;
"x86_64" )
package_name="Anaconda-1.6.1-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.6.1-Linux-x86_64.sh#70a1294c01e3ab5925fc52f2603de159"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.6.1 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.7.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.7.0-MacOSX-x86_64.sh#16194eb9be2301eeb135f9f01695a566"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.7.0-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.7.0-Linux-x86.sh#bbde22bd0346ad9c8932b4d98c0f4000"
;;
"x86_64" )
package_name="Anaconda-1.7.0-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.7.0-Linux-x86_64.sh#01dc7d6df2ed592e5401ab4fbe3aed4a"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.7.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Anaconda-1.8.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.8.0-MacOSX-x86_64.sh#9fd7dd485c5f04fb65699a290e69671c"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Anaconda-1.8.0-Linux-x86"
package_url="http://repo.continuum.io/archive/Anaconda-1.8.0-Linux-x86.sh#5028bf0aa7ff8a071d5532b8f8ec924c"
;;
"x86_64" )
package_name="Anaconda-1.8.0-Linux-x86_64"
package_url="http://repo.continuum.io/archive/Anaconda-1.8.0-Linux-x86_64.sh#398d4b7ddc5c0a16c556c415b2444266"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "anaconda" verify_py27
else
{ echo "Precompiled binary of anaconda-1.8.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -1,6 +1,6 @@
require_java require_java
install_hg "jython-2.5-dev" "http://hg.python.org/jython" "2.5" jython_builder install_hg "jython-2.5-dev" "http://hg.python.org/jython" "2.5" jython_builder
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -1,6 +1,6 @@
require_java require_java
install_jar "Jython-2.5.2" "https://downloads.sourceforge.net/project/jython/jython/2.5.2/jython_installer-2.5.2.jar#7c7d9abd8985df480edeacd27ed9dcd5" jython install_jar "Jython-2.5.2" "https://downloads.sourceforge.net/project/jython/jython/2.5.2/jython_installer-2.5.2.jar#7c7d9abd8985df480edeacd27ed9dcd5" jython
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -1,6 +1,6 @@
require_java require_java
install_jar "Jython-2.5.3" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.3/jython-installer-2.5.3.jar#41633b4557483d6d4237ee79ffcebe7b" jython install_jar "Jython-2.5.3" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.3/jython-installer-2.5.3.jar#41633b4557483d6d4237ee79ffcebe7b" jython
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -1,6 +1,6 @@
require_java require_java
install_jar "Jython-2.5.4-rc1" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.4-rc1/jython-installer-2.5.4-rc1.jar#1be8d75d02886ce1a8542bb794a20db2" jython install_jar "Jython-2.5.4-rc1" "http://search.maven.org/remotecontent?filepath=org/python/jython-installer/2.5.4-rc1/jython-installer-2.5.4-rc1.jar#1be8d75d02886ce1a8542bb794a20db2" jython
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-1.4.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz#13951be6711438073fbe50843e7f141f" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -1,6 +1,6 @@
require_java 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 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
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -1,6 +1,6 @@
require_java require_java
install_hg "jython-dev" "http://hg.python.org/jython" "default" jython_builder install_hg "jython-dev" "http://hg.python.org/jython" "default" jython_builder
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
# pip (>= 1.3) does not work properly since it uses HTTPS for downloads # pip (>= 1.3) does not work properly since it uses HTTPS for downloads
# * https://github.com/yyuu/pyenv/issues/15 # * 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#db8a6d8a4564d3dc7f337ebed67b1a85" python install_package "pip-1.2.1" "https://pypi.python.org/packages/source/p/pip/pip-1.2.1.tar.gz#db8a6d8a4564d3dc7f337ebed67b1a85" python

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Miniconda-2.2.2-MacOSX-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda-2.2.2-MacOSX-x86_64.sh#cd0c8059fd7040a25d015c67f85bbc44"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Miniconda-2.2.2-Linux-x86"
package_url="http://repo.continuum.io/miniconda/Miniconda-2.2.2-Linux-x86.sh#26a4bdf7183aefa360f2aba8e9386a7f"
;;
"x86_64" )
package_name="Miniconda-2.2.2-Linux-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda-2.2.2-Linux-x86_64.sh#a24a8baa264dee7cfd9286ae3d4add60"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "miniconda" verify_py27
else
{ echo "Precompiled binary of miniconda-2.2.2 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Miniconda-3.0.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda-3.0.0-MacOSX-x86_64.sh#4dc63992aca6ddb3d10aba902ed00a56"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Miniconda-3.0.0-Linux-x86"
package_url="http://repo.continuum.io/miniconda/Miniconda-3.0.0-Linux-x86.sh#9d1473a904a39f44d6f8e0860424d16b"
;;
"x86_64" )
package_name="Miniconda-3.0.0-Linux-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda-3.0.0-Linux-x86_64.sh#acf150992cf8d5c332064b31ff885858"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "miniconda" verify_py27
else
{ echo "Precompiled binary of miniconda-3.0.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Miniconda3-2.2.2-MacOSX-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda3-2.2.2-MacOSX-x86_64.sh#cc227b40bee9ea5f117114726f3b8a35"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Miniconda3-2.2.2-Linux-x86"
package_url="http://repo.continuum.io/miniconda/Miniconda3-2.2.2-Linux-x86.sh#2dac0e1abf6b0599b6c59ccf3a8cbcf2"
;;
"x86_64" )
package_name="Miniconda3-2.2.2-Linux-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda3-2.2.2-Linux-x86_64.sh#486bd0f9fa6a6f51e4194ce2a91a4b8e"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "miniconda" verify_py33
else
{ echo "Precompiled binary of miniconda3-2.2.2 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -0,0 +1,26 @@
case "$(uname -s)" in
"Darwin" )
package_name="Miniconda3-3.0.0-MacOSX-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda3-3.0.0-MacOSX-x86_64.sh#2b356f05895a0694fc59f7cd809038f2"
;;
"Linux" )
case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" )
package_name="Miniconda3-3.0.0-Linux-x86"
package_url="http://repo.continuum.io/miniconda/Miniconda3-3.0.0-Linux-x86.sh#4abe8655f5c361338fb317b018ce7c98"
;;
"x86_64" )
package_name="Miniconda3-3.0.0-Linux-x86_64"
package_url="http://repo.continuum.io/miniconda/Miniconda3-3.0.0-Linux-x86_64.sh#f74f8e9223492ef292a9b2d87e265de9"
;;
esac
;;
esac
if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_script "${package_name}" "${package_url}" "miniconda" verify_py33
else
{ echo "Precompiled binary of miniconda3-3.0.0 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi

View File

@@ -1,77 +0,0 @@
diff -r -u ./Lib/ssl.py ../Python-2.6.8/Lib/ssl.py
--- ./Lib/ssl.py 2012-04-11 00:32:06.000000000 +0900
+++ ../Python-2.6.8/Lib/ssl.py 2013-05-08 19:44:49.000000000 +0900
@@ -61,7 +61,19 @@
from _ssl import SSLError
from _ssl import CERT_NONE, CERT_OPTIONAL, CERT_REQUIRED
-from _ssl import PROTOCOL_SSLv2, PROTOCOL_SSLv3, PROTOCOL_SSLv23, PROTOCOL_TLSv1
+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, \
@@ -402,16 +414,7 @@
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>')
# a replacement for the old socket.ssl function
diff -r -u ./Modules/_ssl.c ../Python-2.6.8/Modules/_ssl.c
--- ./Modules/_ssl.c 2012-04-11 00:32:09.000000000 +0900
+++ ../Python-2.6.8/Modules/_ssl.c 2013-05-08 17:34:38.000000000 +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
@@ -302,8 +304,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
@@ -1688,8 +1692,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",

View File

@@ -1,28 +1,39 @@
case "$(uname -s)" in case "$(uname -s)" in
"Darwin" ) "Darwin" )
install_package "pypy-c-jit-43780-b590cf6de419-osx64" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-osx64.tar.bz2#b1417916bc01ebb9f95c666f5e397fb5" pypy verify_py27 package_name="pypy-c-jit-43780-b590cf6de419-osx64"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-osx64.tar.bz2#b1417916bc01ebb9f95c666f5e397fb5"
;; ;;
"Linux" ) "Linux" )
case "$(uname -m)" in case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" ) "i386" | "i486" | "i586" | "i686" | "i786" )
install_package "pypy-c-jit-43780-b590cf6de419-linux" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-linux.tar.bz2#08a2c95163c95f91772abb8bf5f8b9cb" pypy verify_py27 package_name="pypy-c-jit-43780-b590cf6de419-linux"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-linux.tar.bz2#08a2c95163c95f91772abb8bf5f8b9cb"
;; ;;
"x86_64" ) "x86_64" )
install_package "pypy-c-jit-43780-b590cf6de419-linux64" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-linux64.tar.bz2#32392b7986eb34cd657d5b6c5d242cc7" pypy verify_py27 package_name="pypy-c-jit-43780-b590cf6de419-linux64"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-linux64.tar.bz2#32392b7986eb34cd657d5b6c5d242cc7"
;; ;;
esac esac
;; ;;
"CYGWIN"* | "MINGW"* ) "CYGWIN"* | "MINGW"* )
# FIXME: never tested on Windows # FIXME: never tested on Windows
install_zip "pypy-1.5.0a0-win32" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-win32.zip#b6cc12bed5e7243ed44aa3430eb14885" pypy verify_py27 package_name="pypy-1.5.0a0-win32"
;; package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-win32.zip#b6cc12bed5e7243ed44aa3430eb14885"
* )
{ echo "Precompiled binary of pypy-1.5 is not available for $(uname -s)-$(uname -m)."
echo "To build pypy-1.5 from soruce, use 'pypy-1.5-src'."
} 1>&4 2>&1
false
;; ;;
esac esac
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python if [ "${package_url}" != "${package_url%%.zip*}" ]; then
install_zip "${package_name}" "${package_url}" "pypy" verify_py27
else
install_package "${package_name}" "${package_url}" "pypy" verify_py27
fi
else
{ echo "Precompiled binary of pypy-1.5 is not available for $(uname -s)-$(uname -m)."
echo "To build pypy-1.5 from soruce, use 'pypy-1.5-src'."
} 1>&4 2>&1
exit 1
fi
install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,4 +1,4 @@
require_gcc require_gcc
install_package "pypy-1.5-src" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-src.tar.bz2" "pypy_builder" verify_py27 install_package "pypy-1.5-src" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.5-src.tar.bz2" "pypy_builder" verify_py27
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

View File

@@ -1,27 +1,38 @@
case "$(uname -s)" in case "$(uname -s)" in
"Darwin" ) "Darwin" )
install_package "pypy-1.6" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-osx64.tar.bz2#78bbf70f55e9fec20d7ac22531a997fc" pypy verify_py27 package_name="pypy-1.6"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-osx64.tar.bz2#78bbf70f55e9fec20d7ac22531a997fc"
;; ;;
"Linux" ) "Linux" )
case "$(uname -m)" in case "$(uname -m)" in
"i386" | "i486" | "i586" | "i686" | "i786" ) "i386" | "i486" | "i586" | "i686" | "i786" )
install_package "pypy-1.6" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-linux.tar.bz2#ee949986fc5ec5c4a11ecbd546b87fbb" pypy verify_py27 package_name="pypy-1.6"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-linux.tar.bz2#ee949986fc5ec5c4a11ecbd546b87fbb"
;; ;;
"x86_64" ) "x86_64" )
install_package "pypy-1.6" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-linux64.tar.bz2#a34e3113508449393e874f409dd888fc" pypy verify_py27 package_name="pypy-1.6"
package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-linux64.tar.bz2#a34e3113508449393e874f409dd888fc"
;; ;;
esac esac
;; ;;
"CYGWIN"* | "MINGW"* ) "CYGWIN"* | "MINGW"* )
# FIXME: never tested on Windows # FIXME: never tested on Windows
install_zip "pypy-1.6" "https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-win32-c.zip#62b9eb914954aeab32905d632d3904f1" pypy verify_py27 package_name="pypy-1.6"
;; package_url="https://bitbucket.org/pypy/pypy/downloads/pypy-1.6-win32-c.zip#62b9eb914954aeab32905d632d3904f1"
* )
{ echo "Precompiled binary of pypy-1.6 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
false
;; ;;
esac esac
install_package "setuptools-1.3.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-1.3.2.tar.gz#441f2e58c0599d31597622a7b9eb605f" python if [ -n "${package_name}" ] && [ -n "${package_url}" ]; then
install_package "pip-1.4.1" "https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz#6afbb46aeb48abac658d4df742bff714" python if [ "${package_url}" != "${package_url%%.zip*}" ]; then
install_zip "${package_name}" "${package_url}" "pypy" verify_py27
else
install_package "${package_name}" "${package_url}" "pypy" verify_py27
fi
else
{ echo "Precompiled binary of pypy-1.6 is not available for $(uname -s)-$(uname -m)."
} 1>&4 2>&1
exit 1
fi
install_package "setuptools-2.2" "https://pypi.python.org/packages/source/s/setuptools/setuptools-2.2.tar.gz#04a7664538957b832710653fd7d5b4e6" python
install_package "pip-1.5.2" "https://pypi.python.org/packages/source/p/pip/pip-1.5.2.tar.gz#5da30919f732d68b1c666e484e7676f5" python

Some files were not shown because too many files have changed in this diff Show More