-
Notifications
You must be signed in to change notification settings - Fork 50
Expand file tree
/
Copy pathDockerfile
More file actions
51 lines (40 loc) · 1.44 KB
/
Dockerfile
File metadata and controls
51 lines (40 loc) · 1.44 KB
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
FROM openjdk:8
MAINTAINER Phillip van Heerden <vanheerden.phillip@gmail.com>
# Update the system
RUN apt update -y
RUN apt upgrade -y
# Install ant, libgomp1 (GCC OpenMP support library), vim, patchelf, and tmux.
# These should be available on the NARGA machines.
RUN apt install ant -y
RUN apt install vim -y
RUN apt install tmux -y
RUN apt install patchelf -y
RUN apt install libgomp1
# Clone down the GreenSolver repository
RUN git clone https://github.com/GreenSolver/green
# To work on a branch, uncomment the following:
# WORKDIR green
# RUN git fetch
# RUN git checkout <branch name>
# WORKDIR /
# Download and extract Z3
RUN mkdir z3
WORKDIR z3
RUN wget https://github.com/Z3Prover/z3/releases/download/z3-4.7.1/z3-4.7.1-x64-ubuntu-16.04.zip
RUN unzip z3-4.7.1-x64-ubuntu-16.04.zip
# Fix the link time error with libz3java.so
WORKDIR /z3/z3-4.7.1-x64-ubuntu-16.04/bin
RUN patchelf --set-rpath '.:$ORIGIN' libz3java.so
# Make the z3 path a bit easier for sed
WORKDIR /z3/
RUN mv z3-4.7.1-x64-ubuntu-16.04/ z3/
# Update the build.properties file with the new z3 paths
WORKDIR /green/
RUN sed -i '16s/.*/z3path = \/z3\/z3\/bin\/z3/' build.properties
RUN sed -i '17s/.*/z3lib = \/z3\/z3\/bin/' build.properties
RUN wget -q https://services.gradle.org/distributions/gradle-4.8-bin.zip \
&& unzip gradle-4.8-bin.zip -d /opt \
&& rm gradle-4.8-bin.zip
ENV GRADLE_HOME /opt/gradle-4.8
ENV PATH $PATH:/opt/gradle-4.8/bin
#COPY --chown=gradle:gradle . /green