-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathrun_docker_build.sh
executable file
·51 lines (40 loc) · 1.39 KB
/
run_docker_build.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/sh
set -xe
usage()
{
echo "Usage: $0 VERSION PYBASEVER [uid] [gid]"
exit 1
}
test $# -ge 2 || usage
VERSION=$1
PYBASEVER=$2
PYMAJMIN=${PYBASEVER:0:1}${PYBASEVER:2}
ARCH=x86_64
MINGW_PREFIX=/usr/${ARCH}-w64-mingw32
uid=$3
gid=$4
cd /tmp
curl -L https://gitlab.com/agrumery/aGrUM/-/archive/${VERSION}/aGrUM-${VERSION}.tar.gz | tar xz
cd aGrUM-${VERSION}
PREFIX=$PWD/install
${ARCH}-w64-mingw32-cmake \
-DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_INSTALL_LIBDIR=lib \
-DPython_EXECUTABLE=/usr/bin/${ARCH}-w64-mingw32-python${PYMAJMIN}-bin \
-DPython_LIBRARY=${MINGW_PREFIX}/lib/libpython${PYMAJMIN}.dll.a \
-DPython_INCLUDE_DIR=${MINGW_PREFIX}/include/python${PYMAJMIN} \
-DUSE_SWIG=OFF \
-DBUILD_PYTHON=ON \
.
make install
${ARCH}-w64-mingw32-strip --strip-unneeded ${PREFIX}/bin/*.dll ${PREFIX}/Lib/site-packages/*/*.pyd
cd ${PREFIX}/Lib/site-packages
cp -v ${MINGW_PREFIX}/bin/{libgcc_s,libstdc++,libgomp,libwinpthread,libssp}*.dll ${PREFIX}/bin/*.dll pyAgrum
touch numpy.py
curl -fSsLO https://raw.githubusercontent.com/benjaminp/six/master/six.py
PYTHONPATH=${PREFIX}/Lib/site-packages ${ARCH}-w64-mingw32-python${PYMAJMIN}-bin /io/mingw_test.py
zip -r agrum-${VERSION}-py${PYBASEVER}-${ARCH}.zip pyAgrum*
if test -n "${uid}" -a -n "${gid}"
then
sudo cp -v agrum-${VERSION}-py${PYBASEVER}-${ARCH}.zip /io
sudo chown ${uid}:${gid} /io/agrum-${VERSION}-py${PYBASEVER}-${ARCH}.zip
fi