mirror of
https://github.com/pyenv/pyenv.git
synced 2025-11-12 21:33:54 -05:00
Compare commits
118 Commits
v0.4.0-201
...
v0.4.0-201
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e835d447ed | ||
|
|
7f44afc1c0 | ||
|
|
f380967e8d | ||
|
|
d640941976 | ||
|
|
e58ac666c4 | ||
|
|
ce99decad5 | ||
|
|
719e6db358 | ||
|
|
e0547de922 | ||
|
|
4b9907af1c | ||
|
|
1d09851b2b | ||
|
|
800ccaa5e3 | ||
|
|
00da261211 | ||
|
|
b81d0ff0cd | ||
|
|
715a7789ba | ||
|
|
6aa6d6b026 | ||
|
|
62f9b7a731 | ||
|
|
cc967fddb7 | ||
|
|
27ebc8bab7 | ||
|
|
71db79eded | ||
|
|
3aa263b51f | ||
|
|
59fbf8d103 | ||
|
|
b21d2c7dea | ||
|
|
20e5404248 | ||
|
|
56c58e2778 | ||
|
|
3c6ecaf66a | ||
|
|
87ca55100b | ||
|
|
589872affb | ||
|
|
73d5ea7426 | ||
|
|
b992ffca1d | ||
|
|
9c82314570 | ||
|
|
403154e09e | ||
|
|
b44398e954 | ||
|
|
46a01b1643 | ||
|
|
bf94eb8cbe | ||
|
|
b225f2030d | ||
|
|
cbe7d0241b | ||
|
|
e65a10be51 | ||
|
|
badc8255ab | ||
|
|
385d3337ef | ||
|
|
558200285b | ||
|
|
2c26b0870a | ||
|
|
2cea06b88a | ||
|
|
c977774977 | ||
|
|
314937d599 | ||
|
|
07ae0d8e42 | ||
|
|
461c5bbc2d | ||
|
|
a7f5a19a24 | ||
|
|
f344731cf9 | ||
|
|
a3f35b7e0d | ||
|
|
b025dbfdab | ||
|
|
efd9c1cd48 | ||
|
|
38eb9fe948 | ||
|
|
6ee7aaf611 | ||
|
|
93ba3a4c51 | ||
|
|
34087d03ec | ||
|
|
f136b219db | ||
|
|
84705cfe61 | ||
|
|
2a9f6038e0 | ||
|
|
0e3e603429 | ||
|
|
71a916faf2 | ||
|
|
8e02b93e39 | ||
|
|
a7a99c75eb | ||
|
|
bb3b5de179 | ||
|
|
f956502fd8 | ||
|
|
4c5ffc8d99 | ||
|
|
8dc4e8d6f8 | ||
|
|
7edceff71c | ||
|
|
1587d8a03c | ||
|
|
5dea3c9e63 | ||
|
|
12d4fdb307 | ||
|
|
319721b380 | ||
|
|
3dd9332eee | ||
|
|
88922e2bc0 | ||
|
|
0965577b93 | ||
|
|
f538169992 | ||
|
|
d03f290b5d | ||
|
|
8ddf8760d5 | ||
|
|
8fa6b4a184 | ||
|
|
e1a5b326e4 | ||
|
|
8892f3735d | ||
|
|
9eedd4ef84 | ||
|
|
b70dcb9f2d | ||
|
|
008a5a1ff9 | ||
|
|
5b7eb42a9f | ||
|
|
35d4cd2259 | ||
|
|
5bff9c773a | ||
|
|
6efb3c327f | ||
|
|
1a05d9a8cd | ||
|
|
df51c13323 | ||
|
|
a025866bac | ||
|
|
2797f3d80e | ||
|
|
0d85193f39 | ||
|
|
4d534fed31 | ||
|
|
43212f64ed | ||
|
|
75559df89d | ||
|
|
3d5156ed1d | ||
|
|
aa76fd2f9c | ||
|
|
db141f66a4 | ||
|
|
fe07deb193 | ||
|
|
7159e24aa8 | ||
|
|
1cc90d31ae | ||
|
|
76bf3ee0d6 | ||
|
|
fd3dd225ba | ||
|
|
140808e3d4 | ||
|
|
edb5a32620 | ||
|
|
88e2d73d52 | ||
|
|
7b95fea77e | ||
|
|
20eb5c4913 | ||
|
|
bc2d2456ae | ||
|
|
064531ea1f | ||
|
|
80b8508dbc | ||
|
|
02e073a503 | ||
|
|
e094d683ed | ||
|
|
bd1454c69f | ||
|
|
b726d645c3 | ||
|
|
78441ce084 | ||
|
|
4953fa4034 | ||
|
|
1f76effbfb |
6
.travis.yml
Normal file
6
.travis.yml
Normal 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
|
||||||
51
CHANGELOG.md
51
CHANGELOG.md
@@ -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
163
README.md
@@ -1,5 +1,7 @@
|
|||||||
# Simple Python Version Management: pyenv
|
# Simple Python Version Management: pyenv
|
||||||
|
|
||||||
|
[](https://travis-ci.org/yyuu/pyenv)
|
||||||
|
|
||||||
pyenv lets you easily switch between multiple versions of Python. It's
|
pyenv lets you easily switch between multiple versions of Python. It's
|
||||||
simple, unobtrusive, and follows the UNIX tradition of single-purpose
|
simple, unobtrusive, and follows the UNIX tradition of single-purpose
|
||||||
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
|
||||||
|
|
||||||
|
|||||||
@@ -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() {
|
||||||
|
|||||||
@@ -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}"
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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`.
|
||||||
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
# https://github.com/yyuu/pyenv/issues/98
|
||||||
fi
|
export PATH="${PYENV_BIN_PATH}:${PATH}"
|
||||||
exec -a "$PYENV_COMMAND" "$PYENV_COMMAND_PATH" "$@"
|
exec -a "$PYENV_COMMAND" "$PYENV_COMMAND_PATH" "$@"
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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'
|
||||||
|
|||||||
@@ -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=($(
|
||||||
|
|||||||
@@ -16,32 +16,38 @@ 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"
|
||||||
if [ "$version" = "system" ]; then
|
{ IFS=:
|
||||||
PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python || true)"
|
for version in ${PYENV_VERSION}; do
|
||||||
PYENV_PREFIX_PATH="${PYTHON_PATH%/*}"
|
if [ "$version" = "system" ]; then
|
||||||
else
|
if PYTHON_PATH="$(pyenv-which python 2>/dev/null)"; then
|
||||||
PYENV_PREFIX_PATH="${PYENV_ROOT}/versions/${version}"
|
PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
|
||||||
fi
|
else
|
||||||
if [ -d "$PYENV_PREFIX_PATH" ]; then
|
echo "pyenv: system version not found in PATH" >&2
|
||||||
PYENV_PREFIX_PATHS=("${PYENV_PREFIX_PATHS[@]}" "$PYENV_PREFIX_PATH")
|
exit 1
|
||||||
else
|
fi
|
||||||
echo "pyenv: version \`${version}' not installed" >&2
|
else
|
||||||
exit 1
|
PYENV_PREFIX_PATH="${PYENV_ROOT}/versions/${version}"
|
||||||
fi
|
fi
|
||||||
done
|
if [ -d "$PYENV_PREFIX_PATH" ]; then
|
||||||
|
PYENV_PREFIX_PATHS=("${PYENV_PREFIX_PATHS[@]}" "$PYENV_PREFIX_PATH")
|
||||||
|
else
|
||||||
|
echo "pyenv: version \`${version}' not installed" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
IFS="$OLDIFS"
|
||||||
|
|
||||||
OLDIFS="$IFS"
|
OLDIFS="$IFS"
|
||||||
{ IFS=:
|
{ IFS=:
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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"
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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##*/}"
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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"
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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"
|
||||||
echo "pyenv: version \`$version' is not installed" >&2
|
{ IFS=:
|
||||||
exit 1
|
for version in ${PYENV_VERSION}; do
|
||||||
fi
|
if version_exists "$version" || [ "$version" = "system" ]; then
|
||||||
done
|
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
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
IFS="$OLDIFS"
|
||||||
|
|
||||||
echo "${PYENV_VERSION}"
|
OLDIFS="$IFS"
|
||||||
|
{ IFS=:
|
||||||
|
echo "${versions[*]}"
|
||||||
|
}
|
||||||
|
IFS="$OLDIFS"
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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" ||
|
use_homebrew_yaml() {
|
||||||
verify_java "$(command -v java || true)" || {
|
local libdir="$(brew --prefix libyaml 2>/dev/null || true)"
|
||||||
for java in "${javas[@]}"; do
|
if [ -d "$libdir" ]; then
|
||||||
verify_java "$java" && break || true
|
package_option python configure CPPFLAGS="-I$libdir/include" LDFLAGS="-L$libdir/lib"
|
||||||
done
|
else
|
||||||
}
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
configured_with_readline_dir() {
|
||||||
|
# Mac OS X 10.4 has broken readline.
|
||||||
|
# https://github.com/yyuu/pyenv/issues/23
|
||||||
|
local arg flag
|
||||||
|
for arg in ${CONFIGURE_OPTS} ${PYTHON_CONFIGURE_OPTS} "${PYTHON_CONFIGURE_OPTS_ARRAY[@]}"; do
|
||||||
|
if [[ "$arg" == "CPPFLAGS="* ]]; then
|
||||||
|
for flag in ${CPPFLAGS} ${arg##CPPFLAGS=}; do
|
||||||
|
if [[ "$flag" == "-I"* ]] && [ -e "${flag##-I}/readline/rlconf.h" ]; then
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
done
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
javas_in_path() {
|
has_broken_mac_readline() {
|
||||||
local java path paths
|
[ "$(uname -s)" = "Darwin" ] &&
|
||||||
local javas=()
|
! configured_with_readline_dir &&
|
||||||
IFS=: paths=($PATH)
|
! use_homebrew_readline
|
||||||
|
|
||||||
shopt -s nullglob
|
|
||||||
for path in "${paths[@]}"; do
|
|
||||||
local java="$path"/java
|
|
||||||
if [ -x "$java" ]; then
|
|
||||||
javas["${#javas[@]}"]="$java"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
shopt -u nullglob
|
|
||||||
|
|
||||||
printf :%s "${javas[@]}"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
verify_java() {
|
use_homebrew_readline() {
|
||||||
local java="$1"
|
if ! configured_with_readline_dir; then
|
||||||
if [ -z "$java" ]; then
|
local libdir="$(brew --prefix readline 2>/dev/null || true)"
|
||||||
return 1
|
if [ -d "$libdir" ]; then
|
||||||
|
package_option python configure CPPFLAGS="-I$libdir/include" LDFLAGS="-L$libdir/lib"
|
||||||
|
else
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -x "$java" ]; then
|
|
||||||
return 1
|
|
||||||
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"
|
||||||
|
fi
|
||||||
_has_broken_mac_readline() {
|
else
|
||||||
# MacOSX 10.4 has a broken readline.
|
package_option python configure --without-tk
|
||||||
# https://github.com/yyuu/pyenv/issues/23
|
fi
|
||||||
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() {
|
rake() {
|
||||||
local rldir="$(brew --prefix readline 2>/dev/null || true)"
|
if [ -e "./Gemfile" ]; then
|
||||||
if [ -d "$rldir" ]; then
|
bundle exec rake "$@"
|
||||||
CPPFLAGS="-I$rldir/include $CPPFLAGS"
|
|
||||||
LDFLAGS="-L$rldir/lib $LDFLAGS"
|
|
||||||
else
|
else
|
||||||
return 1
|
isolated_gem_dependency "rake --version" rake -v '~> 10.1.0'
|
||||||
|
command rake "$@"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
has_broken_mac_llvm_gcc() {
|
bundle() {
|
||||||
[ "$(uname -s)" = "Darwin" ] &&
|
isolated_gem_dependency "bundle --version" bundler -v '~> 1.3.5'
|
||||||
[[ "$(gcc --version 2>/dev/null || true)" == *"llvm-gcc-4.2"* ]]
|
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
|
|
||||||
done
|
|
||||||
fi
|
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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
5
plugins/python-build/share/python-build/3.3.3
Normal file
5
plugins/python-build/share/python-build/3.3.3
Normal 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
|
||||||
@@ -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
|
|
||||||
@@ -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
|
|
||||||
5
plugins/python-build/share/python-build/3.3.4
Normal file
5
plugins/python-build/share/python-build/3.3.4
Normal 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
|
||||||
@@ -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
|
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
3
plugins/python-build/share/python-build/3.4.0b1
Normal file
3
plugins/python-build/share/python-build/3.4.0b1
Normal 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
|
||||||
3
plugins/python-build/share/python-build/3.4.0b2
Normal file
3
plugins/python-build/share/python-build/3.4.0b2
Normal 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
|
||||||
3
plugins/python-build/share/python-build/3.4.0b3
Normal file
3
plugins/python-build/share/python-build/3.4.0b3
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.4.0
Normal file
26
plugins/python-build/share/python-build/anaconda-1.4.0
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.5.0
Normal file
26
plugins/python-build/share/python-build/anaconda-1.5.0
Normal 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
|
||||||
14
plugins/python-build/share/python-build/anaconda-1.5.1
Normal file
14
plugins/python-build/share/python-build/anaconda-1.5.1
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.6.0
Normal file
26
plugins/python-build/share/python-build/anaconda-1.6.0
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.6.1
Normal file
26
plugins/python-build/share/python-build/anaconda-1.6.1
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.7.0
Normal file
26
plugins/python-build/share/python-build/anaconda-1.7.0
Normal 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
|
||||||
26
plugins/python-build/share/python-build/anaconda-1.8.0
Normal file
26
plugins/python-build/share/python-build/anaconda-1.8.0
Normal 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
|
||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
26
plugins/python-build/share/python-build/miniconda-2.2.2
Normal file
26
plugins/python-build/share/python-build/miniconda-2.2.2
Normal 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
|
||||||
26
plugins/python-build/share/python-build/miniconda-3.0.0
Normal file
26
plugins/python-build/share/python-build/miniconda-3.0.0
Normal 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
|
||||||
26
plugins/python-build/share/python-build/miniconda3-2.2.2
Normal file
26
plugins/python-build/share/python-build/miniconda3-2.2.2
Normal 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
|
||||||
26
plugins/python-build/share/python-build/miniconda3-3.0.0
Normal file
26
plugins/python-build/share/python-build/miniconda3-3.0.0
Normal 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
|
||||||
@@ -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",
|
|
||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
Reference in New Issue
Block a user