aboutsummaryrefslogtreecommitdiff
path: root/clean/bin/install_clean
blob: 15543eef6ce3f39b3a03274d3c4573dbed09f4c9 (plain) (blame)
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
51
52
53
54
#!/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