|
1 | | -FROM ubuntu:20.04 |
2 | | -ARG LLVM_INSTALL_DIR="/usr/local/llvm-12" |
| 1 | +FROM ubuntu:22.04 |
| 2 | +ARG LLVM_INSTALL_DIR="/usr/local/llvm-14" |
3 | 3 | LABEL Name=phasar Version=1.0.0 |
4 | 4 |
|
5 | 5 | RUN apt -y update && apt install bash sudo -y |
6 | 6 |
|
| 7 | + |
7 | 8 | WORKDIR /usr/src/phasar |
8 | 9 | RUN mkdir -p /usr/src/phasar/utils |
9 | 10 |
|
10 | 11 | COPY ./utils/InitializeEnvironment.sh /usr/src/phasar/utils/ |
11 | 12 | RUN ./utils/InitializeEnvironment.sh |
12 | 13 |
|
| 14 | +RUN apt-get -y install --no-install-recommends \ |
| 15 | + cmake \ |
| 16 | + ninja-build \ |
| 17 | + libstdc++6 \ |
| 18 | + libboost-all-dev |
| 19 | + |
13 | 20 | COPY ./utils/InstallAptDependencies.sh /usr/src/phasar/utils/ |
14 | 21 | RUN ./utils/InstallAptDependencies.sh |
15 | 22 |
|
| 23 | +RUN apt-get update && \ |
| 24 | + apt-get install -y software-properties-common |
| 25 | + |
| 26 | +RUN apt-key adv --fetch-keys https://apt.llvm.org/llvm-snapshot.gpg.key && \ |
| 27 | + add-apt-repository -y 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main' && \ |
| 28 | + apt-get update && \ |
| 29 | + apt-get -y install --no-install-recommends \ |
| 30 | + clang-14 \ |
| 31 | + llvm-14-dev \ |
| 32 | + libllvm14 \ |
| 33 | + libclang-common-14-dev \ |
| 34 | + libclang-14-dev \ |
| 35 | + libclang-cpp14-dev \ |
| 36 | + clang-tidy-14 |
| 37 | + |
16 | 38 | RUN pip3 install Pygments pyyaml |
17 | 39 |
|
18 | 40 | # installing boost |
19 | 41 | RUN apt install libboost-all-dev -y |
20 | 42 |
|
21 | | -# installing LLVM |
22 | | -COPY utils/safeCommandsSet.sh /usr/src/phasar/utils/safeCommandsSet.sh |
23 | | -COPY utils/install-llvm.sh /usr/src/phasar/utils/install-llvm.sh |
24 | | -RUN ./utils/install-llvm.sh $(nproc) . ${LLVM_INSTALL_DIR} "llvmorg-12.0.0" |
25 | 43 |
|
26 | 44 | # installing wllvm |
27 | 45 | RUN pip3 install wllvm |
28 | 46 |
|
29 | | -ENV CC=${LLVM_INSTALL_DIR}/bin/clang |
30 | | -ENV CXX=${LLVM_INSTALL_DIR}/bin/clang++ |
31 | | -ENV LD_LIBRARY_PATH=${LLVM_INSTALL_DIR}/lib:$LD_LIBRARY_PATH |
| 47 | +ENV CC=/usr/bin/clang-14 |
| 48 | +ENV CXX=/usr/bin/clang++-14 |
32 | 49 |
|
33 | 50 | COPY . /usr/src/phasar |
34 | 51 |
|
35 | 52 | RUN git submodule init |
36 | 53 | RUN git submodule update |
37 | | -RUN mkdir -p build && \ |
38 | | - cd build && \ |
39 | | - cmake -DCMAKE_BUILD_TYPE=Release .. && \ |
40 | | - make -j $(nproc) && \ |
41 | | - make install && \ |
42 | | - ldconfig |
| 54 | +RUN mkdir -p build && cd build && \ |
| 55 | + cmake .. \ |
| 56 | + -DCMAKE_BUILD_TYPE=Release \ |
| 57 | + -DCMAKE_CXX_COMPILER=$CXX \ |
| 58 | + -G Ninja && \ |
| 59 | + cmake --build . |
43 | 60 |
|
44 | 61 | ENTRYPOINT [ "./build/tools/phasar-llvm/phasar-llvm" ] |
0 commit comments