-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathDockerfile
More file actions
49 lines (48 loc) · 1.41 KB
/
Dockerfile
File metadata and controls
49 lines (48 loc) · 1.41 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
FROM ubuntu:24.04@sha256:c4a8d5503dfb2a3eb8ab5f807da5bc69a85730fb49b5cfca2330194ebcc41c7b AS builder
WORKDIR /fuzion
COPY . .
RUN apt-get update && apt-get -y --no-install-recommends install \
openjdk-25-jdk-headless \
git \
make \
patch \
libgc1 \
libgc-dev \
shellcheck \
asciidoc \
asciidoctor \
ruby-asciidoctor-pdf \
antlr4 \
clang-18 \
wget
RUN ln -s /usr/bin/clang-18 /usr/bin/clang
ENV FUZION_REPRODUCIBLE_BUILD="true" PRECONDITIONS="true" POSTCONDITIONS="true"
RUN make all build/apidocs_git/index.html
FROM ubuntu:24.04@sha256:c4a8d5503dfb2a3eb8ab5f807da5bc69a85730fb49b5cfca2330194ebcc41c7b AS runner
# NYI: HACK: chmod is a workaround for Jenkins permission issue
COPY --from=builder --chmod=o=g /fuzion/build /fuzion
RUN apt-get update && apt-get -y --no-install-recommends install \
antlr4 \
asciidoc \
asciidoctor \
clang-18 \
ditaa \
git \
inkscape \
libgc-dev \
libgc1 \
libsodium-dev \
libsodium23 \
libwolfssl-dev \
libwolfssl42t64 \
locales \
make \
openjdk-25-jdk-headless \
patch \
ruby-asciidoctor-pdf \
shellcheck \
unzip \
wget
RUN ln -s /usr/bin/clang-18 /usr/bin/clang
RUN localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
ENV LANG=en_US.utf8 PATH="/fuzion/bin:${PATH}" PRECONDITIONS="true" POSTCONDITIONS="true" dev_flang_tools_serializeFUIR="true" dev_flang_fuir_analysis_dfa_DFA_MAX_ITERATIONS="50" FUZION_HOME="/fuzion"