From 2a420db354f6208b91a8faac4ec9e4438157690a Mon Sep 17 00:00:00 2001 From: Ali Ebrahim Date: Fri, 15 Jul 2016 05:15:52 -0700 Subject: [PATCH] add manylinux building scripts --- .gitignore | 1 + manylinux_builder/Dockerfile | 6 ++++++ manylinux_builder/README.md | 5 +++++ manylinux_builder/build_cobrapy.sh | 11 +++++++++++ manylinux_builder/run_cobrapy_builder.sh | 2 ++ 5 files changed, 25 insertions(+) create mode 100644 manylinux_builder/Dockerfile create mode 100644 manylinux_builder/README.md create mode 100755 manylinux_builder/build_cobrapy.sh create mode 100755 manylinux_builder/run_cobrapy_builder.sh diff --git a/.gitignore b/.gitignore index 854e81a66..b65eea8fc 100644 --- a/.gitignore +++ b/.gitignore @@ -89,3 +89,4 @@ libglpk.a .DS_Store .eggs/ *\.swp +manylinux_builder/wheelhouse diff --git a/manylinux_builder/Dockerfile b/manylinux_builder/Dockerfile new file mode 100644 index 000000000..3784f04b9 --- /dev/null +++ b/manylinux_builder/Dockerfile @@ -0,0 +1,6 @@ +FROM quay.io/pypa/manylinux1_x86_64 + +ENV GLPK_VER="4.60" +RUN wget http://ftp.gnu.org/gnu/glpk/glpk-${GLPK_VER}.tar.gz -O - | tar xz +WORKDIR glpk-${GLPK_VER} +RUN ./configure && make install diff --git a/manylinux_builder/README.md b/manylinux_builder/README.md new file mode 100644 index 000000000..2f3a6ecf9 --- /dev/null +++ b/manylinux_builder/README.md @@ -0,0 +1,5 @@ +This script uses docker to build manylinux wheels for cobrapy. It only +requires a working docker installation. + +To build manylinux wheels, run ```./run_cobrapy_builder.sh```. The +built wheels will then be placed in the ```wheelhouse``` folder. diff --git a/manylinux_builder/build_cobrapy.sh b/manylinux_builder/build_cobrapy.sh new file mode 100755 index 000000000..670364959 --- /dev/null +++ b/manylinux_builder/build_cobrapy.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +for PYBIN in /opt/python/*/bin; do + ${PYBIN}/pip wheel cobra --pre +done + +# Bundle external shared libraries into the wheels +for whl in cobra*.whl; do + auditwheel repair $whl -w /io/wheelhouse/ +done + diff --git a/manylinux_builder/run_cobrapy_builder.sh b/manylinux_builder/run_cobrapy_builder.sh new file mode 100755 index 000000000..3a598613f --- /dev/null +++ b/manylinux_builder/run_cobrapy_builder.sh @@ -0,0 +1,2 @@ +docker build -t cobrapy_builder . +docker run --rm -v `pwd`:/io cobrapy_builder /io/build_cobrapy.sh