OILS / deps / source.medo / python2 / WEDGE View on Github | oilshell.org

62 lines, 46 significant
1# Wedge definition for python3
2#
3# Loaded by deps/wedge.sh.
4
5set -o nounset
6set -o pipefail
7set -o errexit
8
9# sourced
10WEDGE_NAME='python2'
11WEDGE_VERSION='2.7.18'
12
13WEDGE_TARBALL_NAME='Python'
14WEDGE_IS_ABSOLUTE=1 # This is probably a requirement, but not sure
15
16wedge-make() {
17 local src_dir=$1
18 local build_dir=$2
19 local install_dir=$3
20
21 pushd $build_dir
22
23 # Note: we need PY3_BUILD_DEPS on the base image to get a working 'pip
24 # install'
25 # And then Dockerfile.* may need the corresponding runtime deps
26
27 time $src_dir/configure --prefix=$install_dir
28
29 time make
30
31 popd
32}
33
34wedge-install() {
35 local build_dir=$1
36 local install_dir=$2
37
38 pushd $build_dir
39
40 # It makes a symlink called python2
41 #
42 # TODO: minimize the size? There are some duplicate files
43 time make install
44
45 # Size optimization, remove these 2 files
46 # /wedge/oils-for-unix.org/pkg/python2/2.7.18/lib/libpython2.7.a
47 # /wedge/oils-for-unix.org/pkg/python2/2.7.18/lib/python2.7/config/libpython2.7.a
48 #
49 # This is like --without-static-libpython in Python 3
50 # https://bugs.python.org/issue43103
51 #
52 # but Python 2 doesn't support it
53 find $install_dir -name '*.a' | xargs rm -v -f
54
55 popd
56}
57
58wedge-smoke-test() {
59 local install_dir=$1
60
61 $install_dir/bin/python2 -c 'print("hi from python 2")'
62}