diff --git a/python-3.7.6-0.build.sh b/python-3.7.6-0.build.sh deleted file mode 100644 index 186ee89..0000000 --- a/python-3.7.6-0.build.sh +++ /dev/null @@ -1,330 +0,0 @@ -#! /bin/bash - -COOKIE=$(mcookie); grep -v V_GREP_ME $0 > /dev/shm/runme-$COOKIE.sh ; sleep 1; exec bash /dev/shm/runme-$COOKIE.sh $1 - - -PKG=python -VERSION=3.7.6 -BUILD=0 -PYTHONVER=${VERSION%.*} - -CUDADIR=/pkg/cuda-10.1.105-0 - -PREFIX=/pkg/$PKG-$VERSION-$BUILD -if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi - -PATH=/bin:/usr/bin:/usr/sbin:/usr/local/bin - -set -xe -umask 022 - -BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.build.tmp -test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR ) -mkdir -p $BUILD_TMPDIR/home -export TMPDIR=$BUILD_TMPDIR -export HOME=$BUILD_TMPDIR/home - -exec $PREFIX/profile <<-EOF - \. $CUDADIR/profile - PATH=$PREFIX/bin:\$PATH - export LD_LIBRARY_PATH=$PREFIX/lib\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH - export PYTHONPATH=$PREFIX/lib/python3.7/site-packages\${PYTHONPATH:+:}\$PYTHONPATH - PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig\${PKG_CONFIG_PATH:+:\$PKG_CONFIG_PATH} - export PKG_CONFIG_PATH - if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi -EOF -. $PREFIX/profile - -export MAKEFLAGS="-j $(nproc)" - -BUILDDIR=$PREFIX/build - -mkdir -p $BUILDDIR -cd $BUILDDIR - -test -e Python-$VERSION.tar.xz || wget https://www.python.org/ftp/python/$VERSION/Python-$VERSION.tar.xz -test -d Python-$VERSION || tar xvf Python-$VERSION.tar.xz -cd Python-$VERSION - -LDFLAGS="-Wl,-rpath=$PREFIX/lib" \ -./configure \ - --prefix=$PREFIX \ - --enable-shared - -make -j $(nproc) -# make test || true # 'test_socket' seems to run for ever -make install - -( # sip: tool to create Python bindings for C and C++ libraries. - cd $PREFIX/build - SIP_VERSION=4.19.18 - SIP_SRC=https://www.riverbankcomputing.com/static/Downloads/sip/$SIP_VERSION/sip-$SIP_VERSION.tar.gz - test -e sip-$SIP_VERSION.tar.gz || wget $SIP_SRC - test -d sip-$SIP_VERSION || tar -xf sip-$SIP_VERSION.tar.gz - - cd sip-$SIP_VERSION - - python3 configure.py \ - -b $PREFIX/bin \ - -d $PREFIX/lib/python$PYTHONVER/site-packages \ - -e $PREFIX/include/python${PYTHONVER}m \ - -v $PREFIX/share/sip \ - --sip-module=sip - - # well, right here share/sip is spoilage, but maybe some packages will use the decent sip later on ... - mkdir -p $PREFIX/share/sip - make -j $(nproc); - make install -) - - -( # now for the private (sic!) version required by newer PyQt - cd $PREFIX/build - mkdir -p private_sip - cd private_sip - SIP_VERSION=4.19.18 - SIP_SRC=https://www.riverbankcomputing.com/static/Downloads/sip/$SIP_VERSION/sip-$SIP_VERSION.tar.gz - test -e sip-$SIP_VERSION.tar.gz || wget $SIP_SRC - test -d sip-$SIP_VERSION || tar -xf sip-$SIP_VERSION.tar.gz - - cd sip-$SIP_VERSION - - # note $PREFIX/share/sip/PyQt5 is mandatory - python3 configure.py \ - -d $PREFIX/lib/python$PYTHONVER/site-packages \ - -v $PREFIX/share/sip/PyQt5 \ - --no-tools \ - --sip-module=PyQt5.sip - - mkdir -p $PREFIX/share/sip/PyQt5 - make -j $(nproc) - # The resulting sip.so in site-packages/PyQt5 differs indeed a bit (grep for PyQt5) - make install -) - -( - PYQT_VERSION=5.13.0 - PYQT_SRC=https://www.riverbankcomputing.com/static/Downloads/PyQt5/$PYQT_VERSION/PyQt5_gpl-$PYQT_VERSION.tar.gz - - cd $BUILDDIR - test -e PyQt5_gpl-$PYQT_VERSION.tar.gz || wget $PYQT_SRC - test -d PyQt5_gpl-$PYQT_VERSION || tar -xf PyQt5_gpl-$PYQT_VERSION.tar.gz - - cd PyQt5_gpl-$PYQT_VERSION - - # export QTDIR=/usr/local/qt5 - python3 configure.py \ - -b $PREFIX/bin \ - -d $PREFIX/lib/python$PYTHONVER/site-packages \ - -n $PREFIX/share/qsci \ - -q /usr/local/qt5/bin/qmake \ - -v $PREFIX/share/sip/PyQt5 \ - --sip-incdir=$PREFIX/include/python${PYTHONVER}m \ - --confirm-license \ - --no-qml-plugin \ - --no-designer-plugin \ - --no-dist-info \ - --verbose - - make -j $(nproc) - - # Did I miss something in the docs ??? - # w/o the *.so files inplace a clean 'make install' fails with file not found ... - # -> FileNotFoundError: [Errno 2] No such file or directory: - # '/dev/shm/python-3.7.4-0/lib/python3.7/site-packages/PyQt5/QtCore.so' - mkdir -p $PREFIX/lib/python$PYTHONVER/site-packages/PyQt5 - for F in `find | grep '\.so$' | grep -v '/lib'` ; do - cp -vp $F $PREFIX/lib/python$PYTHONVER/site-packages/PyQt5/ - done - make install -) - -( - QSCINTILLA_VERSION=2.11.2 - QSCINTILLA_SRC=https://www.riverbankcomputing.com/static/Downloads/QScintilla/$QSCINTILLA_VERSION/QScintilla_gpl-$QSCINTILLA_VERSION.tar.gz - - cd $BUILDDIR - test -e QScintilla_gpl-$QSCINTILLA_VERSION.tar.gz || wget $QSCINTILLA_SRC - test -d QScintilla_gpl-$QSCINTILLA_VERSION || tar -xf QScintilla_gpl-$QSCINTILLA_VERSION.tar.gz - cd QScintilla_gpl-$QSCINTILLA_VERSION - - cd Python - - # apidir follows PyQt, not Qt (default is: QT_INSTALL_DATA/qsci) - # creation of PEP 376 .dist-info fails in $PREFIX/share - python3 configure.py \ - --pyqt=PyQt5 \ - --qmake=/usr/local/qt5/bin/qmake \ - --apidir=$PREFIX/share/qsci \ - --no-dist-info - - make -j $(nproc) - - # Call it a deja-vu, nerve ... - # -> FileNotFoundError: [Errno 2] No such file or directory: '/dev/shm/python-3.7.4-0/lib/python3.7/site-packages/PyQt5/Qsci.so' - mkdir -p $PREFIX/lib/python$PYTHONVER/site-packages/PyQt5 - for F in `find | grep '\.so$' | grep -v '/lib'` ; do - cp -vp $F $PREFIX/lib/python$PYTHONVER/site-packages/PyQt5 - done - make install -) - -python3 -m ensurepip -pip3 install --prefix=$PREFIX -I pip - -pip3 install --prefix=$PREFIX ipython[all] - -pip3 install --prefix=$PREFIX SciPy NumPy Matplotlib pandas SymPy nose statsmodels -# clean up some dirt that statsmodels placed also into $PREFIX -rm -vf $PREFIX/LICENSE.txt -rm -vf $PREFIX/setup.cfg - -pip3 install --prefix=$PREFIX Cython - -pip3 install --prefix=$PREFIX pysam -pip3 install --prefix=$PREFIX seaborn -pip3 install --prefix=$PREFIX scikit-learn -#pip3 install --prefix=$PREFIX metaseq # fails (Latest commit fa875d1 on Jan 10, 2017) -pip3 install --prefix=$PREFIX Mako -pip3 install --prefix=$PREFIX meson # required in mariux - -pip3 install --prefix=$PREFIX cutadapt # Helpdesk 01/24/18 16:19, Sabrina Krakau -pip3 install --prefix=$PREFIX pygobject # Helpdesk 03/26/18 14:19, Virginie Stanisla -pip3 install --prefix=$PREFIX blink1 # Blink1-lib 07/04/18 12:00, Niclas Hofmann - -pip3 install --prefix=$PREFIX umi-tools -pip3 install --prefix=$PREFIX sphinx -pip3 install --prefix=$PREFIX recommonmark -pip3 install --prefix=$PREFIX fastcluster -pip3 install --prefix=$PREFIX pydot -pip3 install --prefix=$PREFIX pygraphviz -pip3 install --prefix=$PREFIX deeptools -pip3 install --prefix=$PREFIX HTSeq -pip3 install --prefix=$PREFIX keras -pip3 install --prefix=$PREFIX MotifScan # Alena 30.8.2018 -pip3 install --prefix=$PREFIX MAmotif -#pip3 install --prefix=$PREFIX hic2cool # Helpdesk Robert Schoepflin 17.09.2018 Would be a nice to have, but it likes to downgrade too much, pick some cherries -#pip3 install --prefix=$PREFIX hifive # only python 2.7+ -pip3 install --prefix=$PREFIX snakemake -pip3 install --prefix=$PREFIX virtualenv # Donald -pip3 install --prefix=$PREFIX odfpy # Donald -pip3 install --prefix=$PREFIX Dumper # Thomas -pip3 install --prefix=$PREFIX igraph -pip3 install --prefix=$PREFIX louvain # monocle3 prep for Helene -pip3 install --prefix=$PREFIX selenium # 19.7.19 Kreitler -> https://webxray.org/ -pip3 install --prefix=$PREFIX cooltools # Maria Valieva 17.7.2019 -pip3 install --prefix=$PREFIX gmpy # From viper context (Helpdesk Laura Glaser 9.8.2019) -pip3 install --prefix=$PREFIX tensorflow==2.0.1 # tensorflow-2.1.0 needs spezial libs and nightly version(2.2.0) dont -pip3 install --prefix=$PREFIX torch -pip3 install --prefix=$PREFIX torchvision -pip3 install --prefix=$PREFIX plotly -pip3 install --prefix=$PREFIX pyOpenCL -pip3 install --prefix=$PREFIX docopt -pip3 install --prefix=$PREFIX dbus-python -pip3 install --prefix=$PREFIX distro -pip3 install --prefix=$PREFIX notify -pip3 install --prefix=$PREFIX ply -pip3 install --prefix=$PREFIX threadpoolctl - -pip3 install --prefix=$PREFIX pyopengl -rm -rf ${PREFIX}/lib/python$PYTHONVER/site-packages/OpenGL/Tk -# create error, so remove it - -# pip3 install --prefix=$PREFIX HiCExplorer # Would be a nice to have, but it likes to downgrade too much, pick some cherries -pip3 install --prefix=$PREFIX HiCMatrix -pip3 install --prefix=$PREFIX pyGenomeTracks - -pip3 install --prefix=$PREFIX python-bioformats - -pip3 install --prefix=$PREFIX jupyterlab # request Peter Arndt -pip3 install --prefix=$PREFIX jupyterlab-git -pip3 install --prefix=$PREFIX libxml2-python3 # required by several bee packages after swich to python3 -pip3 install --prefix=$PREFIX scour # https://github.molgen.mpg.de/mariux64/pkg-scripts/issues/98 - -#boost for pycuda -( - . ${PREFIX}/profile - BOOST_VERSION="1.72.0 1_72_0" - BOOST_SRC=https://dl.bintray.com/boostorg/release/$( echo $BOOST_VERSION | cut -d" " -f1 )/source/boost_$( echo $BOOST_VERSION | cut -d" " -f2 ).tar.gz - PKGCFLAGS="-O2 -fPIC" - - cd $BUILDDIR - test -e boost_$( echo $BOOST_VERSION | cut -d" " -f2 ).tar.gz || wget $BOOST_SRC - test -d boost-$( echo $BOOST_VERSION | cut -d" " -f1 ) || mkdir boost-$( echo $BOOST_VERSION | cut -d" " -f1 ) && tar -xf boost_$( echo $BOOST_VERSION | cut -d" " -f2 ).tar.gz -C boost-$( echo $BOOST_VERSION | cut -d" " -f1 ) --strip-components=1 - - cd boost-$( echo $BOOST_VERSION | cut -d" " -f1 ) - sed -e "/using python/ s|;|: ${PREFIX}/include/python${PYTHONVER}m ;|" \ - -i bootstrap.sh - - ./bootstrap.sh \ - --with-toolset=gcc \ - --with-icu \ - --with-python=$PREFIX/bin/python3 \ - --with-libraries=python,thread || exit 1 - - ./b2 \ - $NUMJOBS \ - --layout=system \ - --build-dir=build-python3 \ - --prefix=$PREFIX \ - --libdir=$PREFIX/lib \ - --build-type=minimal \ - toolset=gcc \ - variant=release \ - debug-symbols=off \ - link=shared \ - threading=multi \ - runtime-link=shared \ - python=$PYTHONVER \ - cflags="$PKGCFLAGS" \ - cxxflags="$PKGCFLAGS" \ - stage || exit 1 - - ./b2 \ - $NUMJOBS \ - --layout=system \ - --build-dir=build-python3 \ - --prefix=$PREFIX \ - --libdir=$PREFIX/lib \ - --build-type=minimal \ - toolset=gcc \ - variant=release \ - debug-symbols=off \ - link=shared \ - threading=multi \ - runtime-link=shared \ - python=$PYTHONVER \ - cflags="$PKGCFLAGS" \ - cxxflags="$PKGCFLAGS" \ - install || exit 1 -) - -#pycuda git version to get GL support -( - . ${PREFIX}/profile - cd $BUILDDIR - test -d pycuda || git clone --recursive http://git.tiker.net/trees/pycuda.git - - cd pycuda - git clean -dffx - python3 configure.py \ - --cuda-enable-gl \ - --cuda-root=$CUDADIR \ - --no-use-shipped-boost \ - --boost-python-libname=boost_python37 \ - --boost-inc-dir=$PREFIX/include \ - --boost-lib-dir=$PREFIX/lib \ - --cudadrv-lib-dir='${CUDA_ROOT}/lib64,${CUDA_ROOT}/lib64/stubs' \ - --cudart-lib-dir='${CUDA_ROOT}/lib64,${CUDA_ROOT}/lib64/stubs' \ - --curand-lib-dir='${CUDA_ROOT}/lib64,${CUDA_ROOT}/lib64/stubs'\ - --ldflags=-L$PREFIX/lib - - python3 setup.py install --prefix $PREFIX -) -# try to load all packages, maybe we can see installation errors -python3 -c 'help("modules")' > /dev/null - -exit