File tree 1 file changed +22
-8
lines changed
1 file changed +22
-8
lines changed Original file line number Diff line number Diff line change 1
- FROM debian:bookworm-slim AS builder
1
+ FROM alpine:3.20.3 AS builder
2
2
3
3
ARG TARGETOS
4
4
ARG TARGETARCH
5
5
6
- RUN apt-get update -qq && apt-get install -qq --no-install-recommends build-essential bison
6
+ RUN --mount=type=cache,id=${TARGETARCH}/var/cache/apk,target=/var/cache/apk \
7
+ apk add --update build-base bison
7
8
8
9
ADD /q3lcc /opt/q3lcc
9
- WORKDIR / opt/q3lcc
10
+ ADD /q3asm / opt/q3asm
10
11
11
- RUN make -j $(nproc) PLATFORM=${TARGETOS} ARCH=${TARGETARCH}
12
+ WORKDIR /opt
13
+
14
+ RUN cd q3lcc && make -j $(nproc) PLATFORM=${TARGETOS} ARCH=${TARGETARCH}
15
+ RUN cd q3asm && make -j $(nproc)
12
16
13
17
WORKDIR /opt/q3lcc/build-${TARGETOS}-${TARGETARCH}
18
+ RUN install -s -m 0755 q3lcc q3cpp q3rcc /usr/local/bin/
19
+
20
+ WORKDIR /opt/q3asm
21
+ RUN install -s -m 0755 q3asm /usr/local/bin/
22
+
23
+ FROM alpine:3.20.3
14
24
15
- RUN install -s -m 0755 q3lcc q3cpp q3rcc /usr/local/bin/
25
+ ARG TARGETOS
26
+ ARG TARGETARCH
16
27
17
- FROM debian:bookworm-slim
28
+ RUN --mount=type=cache,id=${TARGETARCH}/var/cache/apk,target=/var/cache/apk \
29
+ apk add --no-cache cmake bash ninja-build && rm /usr/bin/cpack /usr/bin/ctest
18
30
19
- RUN apt-get update -qq && apt-get install -qq --no-install-recommends build-essential cmake ninja-build && mkdir /src
31
+ COPY --from=builder /usr/local/bin/q3asm /usr/local/bin/q3lcc /usr/local/bin/q3cpp /usr/local/bin/q3rcc /usr/local/bin/
20
32
21
- COPY --from=builder /usr/local/bin/q3lcc /usr/local/bin/q3cpp /usr/local/bin/q3rcc /usr/local/bin/
33
+ # cmake needs to have some kind of cc installed, even if not used for regular C code
34
+ ENV CC="q3lcc" \
35
+ PATH="$PATH:/usr/lib/ninja-build/bin"
22
36
23
37
WORKDIR /src
You can’t perform that action at this time.
0 commit comments