File tree Expand file tree Collapse file tree 6 files changed +152
-94
lines changed Expand file tree Collapse file tree 6 files changed +152
-94
lines changed Original file line number Diff line number Diff line change @@ -11,37 +11,52 @@ matrix:
11
11
env :
12
12
- RELEASE=precise
13
13
- os : osx
14
+ osx_image : xcode8.2
14
15
env :
15
- - RELEASE=mavericks
16
+ - RELEASE=sierra
17
+ - os : osx
18
+ osx_image : xcode7.3
19
+ env :
20
+ - RELEASE=sierra
21
+ - os : osx
22
+ osx_image : xcode6.4
23
+ env :
24
+ - RELEASE=yosemite
16
25
17
26
env :
18
27
global :
19
28
- VERSION='3.6-dev'
20
29
- ALIAS='nightly'
21
30
22
31
install :
23
- - pushd /opt/pyenv/
24
- - sudo git checkout master
25
- - sudo git pull
26
- - popd
32
+ - pushd /opt/pyenv/
33
+ - sudo git checkout master
34
+ - sudo git pull
35
+ - popd
36
+ - python -m pip install virtualenv
27
37
28
38
before_script :
29
- - ' export INSTALL_DEST=${INSTALL_DEST:-/opt/python}'
30
- - export LSB_RELEASE=$(lsb_release -rs 2>/dev/null || sw_vers -productVersion | sed 's/^\([0-9][0-9]*.[0-9][0-9]*\).*/\1/')
31
- - ' export OS_NAME=${OS_NAME:-$((lsb_release -is || echo "osx") | tr "A-Z" "a-z")}'
32
- - ' export ARCH=${ARCH:-$(uname -m)}'
33
- - ' export PACKAGES=${PACKAGES:-pip numpy nose pytest mock wheel}'
39
+ - ' export INSTALL_DEST=${INSTALL_DEST:-/opt/python}'
40
+ - ' export LSB_RELEASE=${LSB_RELEASE:-$(lsb_release -rs || echo ${$(sw_vers -productVersion)%*.*})}'
41
+ - ' export OS_NAME=${OS_NAME:-$(lsb_release -is | tr "A-Z" "a-z" || echo "osx")}'
42
+ - ' export ARCH=${ARCH:-$(uname -m)}'
43
+ - ' export PACKAGES=${PACKAGES:-pip nose pytest mock wheel}'
44
+ - ' export CPYTHON_ONLY_PKGS="numpy"'
45
+ - export PYTHON_CONFIGURE_OPTS="--with-wide-unicode --enable-shared --enable-ipv6 --enable-loadable-sqlite-extensions --with-computed-gotos $CONFIGURE_OPTS"
34
46
35
- script : ./build-python
47
+ script : ./bin/compile
36
48
37
- after_success : ./create- archive
49
+ after_success : ./bin/ archive
38
50
39
- after_failure :
40
- - cat /tmp/python-build.*.log
51
+ after_failure : cat /tmp/python-build.*.log
41
52
42
53
addons :
54
+ apt :
55
+ packages :
56
+ - openssl
43
57
artifacts :
44
58
paths :
45
59
- $LSB_RELEASE/
46
60
target_paths :
47
61
- /binaries/$OS_NAME/$LSB_RELEASE/$ARCH
62
+
Original file line number Diff line number Diff line change 1
- # cpython-builder
1
+ # ` cpython-builder `
2
+
2
3
Clones and builds CPython using ` python-build `
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ set -o errexit
4
+
5
+ if [[ ! $LSB_RELEASE ]] ; then
6
+ echo ' Missing LSB_RELEASE'
7
+ exit 1
8
+ fi
9
+
10
+ if [[ ! $INSTALL_DEST ]] ; then
11
+ echo ' Missing INSTALL_DEST'
12
+ exit 1
13
+ fi
14
+
15
+ if [[ ! $VERSION ]] ; then
16
+ echo ' Missing VERSION'
17
+ exit 1
18
+ fi
19
+
20
+ set -o xtrace
21
+
22
+ : ${TAR_PATHS:= $INSTALL_DEST / $VERSION }
23
+ : ${DESTS:= }
24
+
25
+ if [[ $VERSION =~ ^python| pypy ]] ; then
26
+ VERSION=" ${VERSION} "
27
+ SHORT_VERSION=" ${VERSION} "
28
+ else
29
+ SHORT_VERSION=" python${VERSION} "
30
+ VERSION=" python-${VERSION} "
31
+ fi
32
+
33
+ TAR_PATHS=" $TAR_PATHS $INSTALL_DEST /$VERSION $HOME /virtualenv/${SHORT_VERSION} "
34
+ DESTS=" $TRAVIS_BUILD_DIR /$LSB_RELEASE /${VERSION} .tar.bz2"
35
+
36
+ if [[ $ALIAS ]] ; then
37
+ if [[ $ALIAS =~ ^python| pypy ]] ; then
38
+ SHORT_ALIAS=" ${ALIAS} "
39
+ LONG_ALIAS=" ${ALIAS} "
40
+ else
41
+ SHORT_ALIAS=" python${ALIAS} "
42
+ LONG_ALIAS=" python-${ALIAS} "
43
+ fi
44
+ TAR_PATHS=" $TAR_PATHS $INSTALL_DEST /$ALIAS $HOME /virtualenv/${SHORT_ALIAS} "
45
+ DESTS=" $DESTS $TRAVIS_BUILD_DIR /$LSB_RELEASE /${LONG_ALIAS} .tar.bz2"
46
+ fi
47
+
48
+ for DEST in $DESTS ; do
49
+ mkdir -p $( dirname $DEST )
50
+ tar -cjf $DEST $( ls -d $TAR_PATHS 2> /dev/null || true)
51
+
52
+ pushd $( dirname $DEST ) & > /dev/null
53
+
54
+ shopt -s nullglob
55
+ for f in * .* ; do
56
+ sha256sum $f > ${f} .sha256sum.txt
57
+ done
58
+
59
+ popd & > /dev/null
60
+
61
+ echo " ---> $DEST "
62
+ done
Original file line number Diff line number Diff line change
1
+ #! /usr/bin/env bash
2
+
3
+ set -o errexit
4
+
5
+ if [[ ! $INSTALL_DEST ]] ; then
6
+ echo ' Missing INSTALL_DEST'
7
+ exit 1
8
+ fi
9
+
10
+ if [[ ! $VERSION ]] ; then
11
+ echo ' Missing $VERSION'
12
+ exit 1
13
+ fi
14
+
15
+ function install_numpy() {
16
+ if [[ $VERSION == pypy* ]]; then
17
+ $HOME /virtualenv/$VIRTENV_VERSION /bin/pypy -m ensurepip
18
+ fi
19
+ $HOME /virtualenv/$VIRTENV_VERSION /bin/pip install --upgrade numpy
20
+ }
21
+
22
+ set -o xtrace
23
+
24
+ sudo env PYTHON_BUILD_ROOT=/opt/pyenv/plugins/python-build \
25
+ /opt/pyenv/plugins/python-build/bin/python-build $VERSION $INSTALL_DEST /$VERSION
26
+
27
+ if [[ $ALIAS ]] ; then
28
+ rm -f $INSTALL_DEST /$ALIAS
29
+ sudo ln -sf $INSTALL_DEST /$VERSION $INSTALL_DEST /$ALIAS
30
+ fi
31
+
32
+ # set up virtualenv arguments
33
+ if [[ $VERSION = pypy-* ]]; then
34
+ PYTHON_BIN=pypy
35
+ VIRTENV_VERSION=$VERSION
36
+ elif [[ $VERSION = pypy3* ]]; then
37
+ PYTHON_BIN=pypy3
38
+ VIRTENV_VERSION=$VERSION
39
+ else
40
+ PYTHON_BIN=python
41
+ VIRTENV_VERSION=python$VERSION
42
+ fi
43
+
44
+ virtualenv --distribute --python=$INSTALL_DEST /$VERSION /bin/python \
45
+ $HOME /virtualenv/$VIRTENV_VERSION
46
+
47
+ if [[ $ALIAS ]] ; then
48
+ rm -f $HOME /virtualenv/python$ALIAS
49
+ ln -sf $HOME /virtualenv/$VIRTENV_VERSION $HOME /virtualenv/python$ALIAS
50
+ fi
51
+
52
+ $HOME /virtualenv/$VIRTENV_VERSION /bin/python -c " import sys; assert sys.maxunicode > 65535"
53
+
54
+ if [[ $PACKAGES ]] ; then
55
+ $HOME /virtualenv/$VIRTENV_VERSION /bin/pip install --upgrade $PACKAGES
56
+ fi
57
+
58
+ install_numpy
59
+
Load Diff This file was deleted.
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments