aboutsummaryrefslogtreecommitdiff
path: root/clean/bin/install_clean
blob: dbbdbb256fc3b6ccb502df14571c599a53db4dd5 (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
55
56
57
58
59
60
61
62
63
#!/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-directory 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

# clm
rm /opt/clean/bin/clm; ln -s /home/camil/VersionControl/clean-tools-git/clm/clm /opt/clean/bin/clm
# clean-test
rm /opt/clean/bin/cleantest; ln -s /home/camil/VersionControl/clean-test/cleantest /opt/clean/bin/cleantest
# clean-test-properties
ln -s /home/camil/VersionControl/clean-test-properties/src/testproperties /opt/clean/bin/testproperties
# clean-doc
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
# abc-interpreter
ln -s /home/camil/VersionControl/abc-interpreter/src/optimise /opt/clean/exe/optimise
ln -s /home/camil/VersionControl/abc-interpreter/src/bcgen /opt/clean/exe/bcgen
ln -s /home/camil/VersionControl/abc-interpreter/src/link /opt/clean/exe/bclink