| 1 | FROM oilshell/soil-common
 | 
| 2 | 
 | 
| 3 | # Copy again to prevent unsound caching
 | 
| 4 | COPY deps/from-apt.sh /home/uke/tmp/deps/from-apt.sh
 | 
| 5 | 
 | 
| 6 | RUN --mount=type=cache,id=var-cache-apt,target=/var/cache/apt,sharing=locked \
 | 
| 7 |     --mount=type=cache,id=var-lib-apt,target=/var/lib/apt,sharing=locked \
 | 
| 8 |     du --si -s /var/cache/apt /var/lib/apt && \
 | 
| 9 |     deps/from-apt.sh clang
 | 
| 10 | 
 | 
| 11 | USER uke
 | 
| 12 | 
 | 
| 13 | # Copy pre-built Clang to use Clang's coverage
 | 
| 14 | #
 | 
| 15 | # Note we don't expand the .xz file at build time.  That makes the Docker image
 | 
| 16 | # bigger.  Instead, we expand it at runtime.
 | 
| 17 | 
 | 
| 18 | COPY --chown=uke _cache/clang+llvm-14.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz \
 | 
| 19 |   /home/uke/oil_DEPS/clang+llvm-14.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz
 | 
| 20 | 
 | 
| 21 | # cmark
 | 
| 22 | COPY --chown=uke \
 | 
| 23 |   _build/wedge/binary/oils-for-unix.org/pkg/cmark/0.29.0 \
 | 
| 24 |   /wedge/oils-for-unix.org/pkg/cmark/0.29.0
 | 
| 25 | 
 | 
| 26 | # re2c
 | 
| 27 | COPY --chown=uke \
 | 
| 28 |   _build/wedge/binary/oils-for-unix.org/pkg/re2c/3.0 \
 | 
| 29 |   /wedge/oils-for-unix.org/pkg/re2c/3.0
 | 
| 30 | 
 | 
| 31 | # To install MyPy and deps
 | 
| 32 | COPY --chown=uke \
 | 
| 33 |   _build/wedge/binary/oils-for-unix.org/pkg/python3/3.10.4 \
 | 
| 34 |   /wedge/oils-for-unix.org/pkg/python3/3.10.4
 | 
| 35 | 
 | 
| 36 | # Copy _build/deps-source -> /home/uke/wedge for now.
 | 
| 37 | COPY --chown=uke \
 | 
| 38 |   _build/deps-source/mypy/mypy-0.780/ \
 | 
| 39 |   /home/uke/wedge/oils-for-unix.org/pkg/mypy/0.780/
 | 
| 40 | 
 | 
| 41 | COPY devtools/run-task.sh /home/uke/tmp/devtools/run-task.sh
 | 
| 42 | COPY build/deps.sh /home/uke/tmp/build/deps.sh
 | 
| 43 | COPY build/dev-shell.sh /home/uke/tmp/build/dev-shell.sh
 | 
| 44 | 
 | 
| 45 | # Hack for now: pass a different MyPy dir
 | 
| 46 | # Ideally py3-libs would be created a BUILD TIME with wedge-builder, not at
 | 
| 47 | # RUNTIME with uke!
 | 
| 48 | RUN build/deps.sh install-py3-libs /home/uke/wedge/oils-for-unix.org/pkg/mypy/0.780/
 | 
| 49 | 
 | 
| 50 | CMD ["sh", "-c", "echo 'hello from oilshell/soil-clang'"]
 |