Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
fengzch-das
multibuild
Commits
832bd7a5
Commit
832bd7a5
authored
Jun 15, 2016
by
Matthew Brett
Browse files
Remove terryfy module
parent
9f351072
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
229 additions
and
9 deletions
+229
-9
.gitmodules
.gitmodules
+0
-3
common_utils.sh
common_utils.sh
+4
-0
osx_utils.sh
osx_utils.sh
+221
-0
terryfy
terryfy
+0
-1
travis_linux_steps.sh
travis_linux_steps.sh
+1
-1
travis_osx_steps.sh
travis_osx_steps.sh
+2
-2
travis_steps.sh
travis_steps.sh
+1
-2
No files found.
.gitmodules
deleted
100644 → 0
View file @
9f351072
[submodule "terryfy"]
path = terryfy
url = https://github.com/MacPython/terryfy.git
common_utils.sh
View file @
832bd7a5
...
...
@@ -14,6 +14,10 @@ function relpath {
python
-c
"import os.path; print(os.path.relpath('
$1
','
${
2
:-
$PWD
}
'))"
}
function
realpath
{
python
-c
"import os; print(os.path.realpath('
$1
'))"
}
function
get_root
{
abspath
$MULTIBUILD_DIR
/..
}
...
...
osx_utils.sh
0 → 100644
View file @
832bd7a5
#!/bin/bash
# Use with ``source osx_utils.sh``
set
-e
MACPYTHON_URL
=
https://www.python.org/ftp/python
MACPYTHON_PY_PREFIX
=
/Library/Frameworks/Python.framework/Versions
GET_PIP_URL
=
https://bootstrap.pypa.io/get-pip.py
DOWNLOADS_SDIR
=
downloads
WORKING_SDIR
=
working
# As of 7 April 2016 - latest Python of this version with binary
# download.
LATEST_2p7
=
2.7.11
LATEST_2p6
=
2.6.6
LATEST_3p2
=
3.2.5
LATEST_3p3
=
3.3.5
LATEST_3p4
=
3.4.4
LATEST_3p5
=
3.5.1
# Get our own location on this filesystem
MULTIBUILD_DIR
=
$(
dirname
"
${
BASH_SOURCE
[0]
}
"
)
source
$MULTIBUILD_DIR
/common_utils.sh
function
check_python
{
if
[
-z
"
$PYTHON_EXE
"
]
;
then
echo
"PYTHON_EXE variable not defined"
exit
1
fi
}
function
check_pip
{
if
[
-z
"
$PIP_CMD
"
]
;
then
echo
"PIP_CMD variable not defined"
exit
1
fi
}
function
check_var
{
if
[
-z
"
$1
"
]
;
then
echo
"required variable not defined"
exit
1
fi
}
function
get_py_digit
{
check_python
$PYTHON_EXE
-c
"import sys; print(sys.version_info[0])"
}
function
get_py_mm
{
check_python
$PYTHON_EXE
-c
"import sys; print('{0}.{1}'.format(*sys.version_info[0:2]))"
}
function
get_py_mm_nodot
{
check_python
$PYTHON_EXE
-c
"import sys; print('{0}{1}'.format(*sys.version_info[0:2]))"
}
function
get_py_prefix
{
check_python
$PYTHON_EXE
-c
"import sys; print(sys.prefix)"
}
function
fill_pyver
{
# Convert major or major.minor format to major.minor.micro
#
# Hence:
# 2 -> 2.7.11 (depending on LATEST_2p7 value)
# 2.7 -> 2.7.11 (depending on LATEST_2p7 value)
local
ver
=
$1
check_var
$ver
if
[[
$ver
=
~
[
0-9]+
\.
[
0-9]+
\.
[
0-9]+
]]
;
then
# Major.minor.micro format already
echo
$ver
elif
[
$ver
==
2
]
||
[
$ver
==
"2.7"
]
;
then
echo
$LATEST_2p7
elif
[
$ver
==
"2.6"
]
;
then
echo
$LATEST_2p6
elif
[
$ver
==
3
]
||
[
$ver
==
"3.5"
]
;
then
echo
$LATEST_3p5
elif
[
$ver
==
"3.4"
]
;
then
echo
$LATEST_3p4
elif
[
$ver
==
"3.3"
]
;
then
echo
$LATEST_3p3
elif
[
$ver
==
"3.2"
]
;
then
echo
$LATEST_3p2
else
echo
"Can't fill version
$ver
"
exit
1
fi
}
function
pyinst_ext_for_version
{
# echo "pkg" or "dmg" depending on the passed Python version
# Parameters
# $py_version (python version in major.minor.extra format)
#
# Earlier Python installers are .dmg, later are .pkg.
local
py_version
=
$1
check_var
$py_version
local
py_0
=
${
py_version
:0:1
}
if
[
$py_0
-eq
2
]
;
then
if
[
$(
lex_ver
$py_version
)
-ge
$(
lex_ver 2.7.9
)
]
;
then
echo
"pkg"
else
echo
"dmg"
fi
elif
[
$py_0
-ge
3
]
;
then
if
[
$(
lex_ver
$py_version
)
-ge
$(
lex_ver 3.4.2
)
]
;
then
echo
"pkg"
else
echo
"dmg"
fi
fi
}
function
install_macpython
{
# Installs Python.org Python
# Parameter $version
# Version given in major or major.minor or major.minor.micro e.g
# "3" or "3.4" or "3.4.1".
# sets $PYTHON_EXE variable to python executable
local
py_version
=
$(
fill_pyver
$1
)
local
inst_ext
=
$(
pyinst_ext_for_version
$py_version
)
local
py_inst
=
python-
$py_version
-macosx10
.6.
$inst_ext
local
inst_path
=
$DOWNLOADS_SDIR
/
$py_inst
mkdir
-p
$DOWNLOADS_SDIR
curl
$MACPYTHON_URL
/
$py_version
/
${
py_inst
}
>
$inst_path
if
[
"
$inst_ext
"
==
"dmg"
]
;
then
hdiutil attach
$inst_path
-mountpoint
/Volumes/Python
inst_path
=
/Volumes/Python/Python.mpkg
fi
sudo
installer
-pkg
$inst_path
-target
/
local
py_mm
=
${
py_version
:0:3
}
PYTHON_EXE
=
$MACPYTHON_PY_PREFIX
/
$py_mm
/bin/python
$py_mm
}
function
install_pip
{
# Generic install pip
# Gets needed version from version implied by $PYTHON_EXE
# Installs pip into python given by $PYTHON_EXE
# Assumes pip will be installed into same directory as $PYTHON_EXE
check_python
mkdir
-p
$DOWNLOADS_SDIR
curl
$GET_PIP_URL
>
$DOWNLOADS_SDIR
/get-pip.py
# Travis VMS now install pip for system python by default - force install
# even if installed already
sudo
$PYTHON_EXE
$DOWNLOADS_SDIR
/get-pip.py
--ignore-installed
local
py_mm
=
`
get_py_mm
`
PIP_CMD
=
"sudo
`
dirname
$PYTHON_EXE
`
/pip
$py_mm
"
}
function
install_virtualenv
{
# Generic install of virtualenv
# Installs virtualenv into python given by $PYTHON_EXE
# Assumes virtualenv will be installed into same directory as $PYTHON_EXE
check_pip
# Travis VMS install virtualenv for system python by default - force
# install even if installed already
$PIP_CMD
install
virtualenv
--ignore-installed
check_python
VIRTUALENV_CMD
=
"
`
dirname
$PYTHON_EXE
`
/virtualenv"
}
function
make_workon_venv
{
# Make a virtualenv in given directory ('venv' default)
# Set $PYTHON_EXE, $PIP_CMD to virtualenv versions
# Parameter $venv_dir
# directory for virtualenv
local
venv_dir
=
$1
if
[
-z
"
$venv_dir
"
]
;
then
venv_dir
=
"venv"
fi
venv_dir
=
`
abspath
$venv_dir
`
check_python
$VIRTUALENV_CMD
--python
=
$PYTHON_EXE
$venv_dir
PYTHON_EXE
=
$venv_dir
/bin/python
PIP_CMD
=
$venv_dir
/bin/pip
}
function
remove_travis_ve_pip
{
# Remove travis installs of virtualenv and pip
if
[
"
$(
sudo
which virtualenv
)
"
==
/usr/local/bin/virtualenv
]
;
then
sudo
pip uninstall
-y
virtualenv
;
fi
if
[
"
$(
sudo
which pip
)
"
==
/usr/local/bin/pip
]
;
then
sudo
pip uninstall
-y
pip
;
fi
}
function
set_py_vars
{
export
PATH
=
"
`
dirname
$PYTHON_EXE
`
:
$PATH
"
export
PYTHON_EXE PIP_CMD
}
function
get_macpython_environment
{
# Set up MacPython environment
# Parameters:
# $version :
# major.minor.micro e.g. "3.4.1"
# $venv_dir : {directory_name|not defined}
# If defined - make virtualenv in this directory, set python / pip
# commands accordingly
#
# Installs Python
# Sets $PYTHON_EXE to path to Python executable
# Sets $PIP_CMD to full command for pip (including sudo if necessary)
# If $venv_dir defined, Sets $VIRTUALENV_CMD to virtualenv executable
# Puts directory of $PYTHON_EXE on $PATH
local
version
=
$1
local
venv_dir
=
$2
remove_travis_ve_pip
install_macpython
$version
install_pip
if
[
-n
"
$venv_dir
"
]
;
then
install_virtualenv
make_workon_venv
$venv_dir
fi
set_py_vars
}
terryfy
@
12a4641c
Compare
12a4641c
...
12a4641c
Subproject commit 12a4641c4e922eb4a63c82732df8d0c5045430af
travis_linux_steps.sh
View file @
832bd7a5
...
...
@@ -49,7 +49,7 @@ function relpath {
}
function
install_run
{
local
plat
=
${
2
:-
$PLAT
}
local
plat
=
${
1
:-
$PLAT
}
bitness
=
$(
[
"
$plat
"
==
i686
]
&&
echo
32
||
echo
64
)
local
docker_image
=
"matthewbrett/trusty:
$bitness
"
local
multibuild_sdir
=
$(
relpath
$MULTIBUILD_DIR
)
...
...
travis_osx_steps.sh
View file @
832bd7a5
...
...
@@ -4,7 +4,7 @@ set -e
# Get needed utilities
MULTIBUILD_DIR
=
$(
dirname
"
${
BASH_SOURCE
[0]
}
"
)
source
$MULTIBUILD_DIR
/
terryfy/travis_too
ls.sh
source
$MULTIBUILD_DIR
/
osx_uti
ls.sh
# Local configuration may define custom pre-build, source patching
source
$PWD
/config_funcs.sh
...
...
@@ -12,7 +12,7 @@ source $PWD/config_funcs.sh
function
before_install
{
export
CC
=
clang
export
CXX
=
clang++
get_python_environment
macpython
$TRAVIS_PYTHON_VERSION
venv
get_
mac
python_environment
$TRAVIS_PYTHON_VERSION
venv
source
venv/bin/activate
pip
install
--upgrade
pip wheel
}
...
...
travis_steps.sh
View file @
832bd7a5
#!/bin/bash
# Update submodules
git submodule update
--init
--recursive
WHEEL_SDIR
=
${
WHEEL_SDIR
:-
wheelhouse
}
MANYLINUX_URL
=
${
MANYLINUX_URL
:-
https
://nipy.bic.berkeley.edu/manylinux
}
MULTIBUILD_DIR
=
$(
dirname
"
${
BASH_SOURCE
[0]
}
"
)
# Get utilities common to OSX and Linux
source
$MULTIBUILD_DIR
/common_utils.sh
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment