#!/bin/bash # Usage: install_clean TARGET DATE # Where TARGET is e.g. bundle-complete (see ftp://ftp.cs.ru.nl/pub/Clean/builds/linux-x64/) # And DATE is an optional date to check the libraries out TARGET="$1" DATE="$2" if [ "$TARGET" == "nightly" ]; then rm -rf /opt/clean mkdir /opt/clean for pkg in base lib-dynamics lib-gast lib-graphcopy lib-itasks lib-platform lib-sapl lib-tcpip test do curl ftp://ftp.cs.ru.nl/pub/Clean/builds/linux-x64/clean-$pkg-linux-x64-latest.tgz\ | tar xz --strip-components=1 -C /opt/clean done else echo "Broken on GCC >= 6..." sleep 5 if [ "$DATE" != "" ]; then export CLEANDATE="$DATE" fi cd /tmp git clone -b build-by-date https://gitlab.science.ru.nl/cstaps/clean-build cd "clean-build/clean-$TARGET/linux-x64" ./fetch.sh ./setup.sh ./build.sh rm -rf /opt/clean mv "target/clean-$TARGET" /opt/clean cd /tmp rm -rf clean-build fi grep -h '^[[:space:]]' /opt/clean/etc/*.env >> /opt/clean/etc/IDEEnvs cat ~/.clean/iTasksDev.env >> /opt/clean/etc/IDEEnvs sed -i 's=lib/exe/linker=lib/exe/linker:-no-pie=' /opt/clean/etc/IDEEnvs mv /opt/clean/lib/exe /opt/clean/exe ln -s /opt/clean/exe /opt/clean/lib/exe cloogletags -a -c -d /opt/clean/lib -o /opt/clean/lib/tags rm /opt/clean/bin/cleantest; ln -s /home/camil/VersionControl/clean-test/cleantest /opt/clean/bin/cleantest ln -s /home/camil/VersionControl/clean-test-properties/testproperties /opt/clean/bin/testproperties mkdir /opt/clean/data ln -s /home/camil/VersionControl/clean-doc/data/cleandoc-default /opt/clean/data/cleandoc-default ln -s /home/camil/VersionControl/clean-doc/src/cleandoc /opt/clean/bin/cleandoc