From: ljsebald <ljs...@us...> - 2023-03-03 01:44:47
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via b7a56620c43e56c6d39a7764a69fe7ea0a4c0abd (commit) via be8bde0fc5792da5a335c75bb1b41aac8a7c24da (commit) from 721f56eae47a423a75c39aebcf28f1bef6bed780 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit b7a56620c43e56c6d39a7764a69fe7ea0a4c0abd Author: Tchan0 <617...@us...> Date: Fri Mar 3 02:43:55 2023 +0100 Merge Dockerfiles See GitHub PR #117 . commit be8bde0fc5792da5a335c75bb1b41aac8a7c24da Author: darcagn <da...@pr...> Date: Tue Feb 28 02:07:47 2023 -0600 Update GDB to version 13.1 for testing config GDB 13.1 released Feb 19, tested successful build and connect to KOS/dcloadip. ----------------------------------------------------------------------- Summary of changes: utils/dc-chain/config.mk.testing.sample | 2 +- utils/dc-chain/docker/{stable => }/Dockerfile | 13 +++++++-- utils/dc-chain/docker/README.md | 8 +++--- utils/dc-chain/docker/testing/Dockerfile | 39 --------------------------- 4 files changed, 16 insertions(+), 46 deletions(-) rename utils/dc-chain/docker/{stable => }/Dockerfile (65%) delete mode 100644 utils/dc-chain/docker/testing/Dockerfile diff --git a/utils/dc-chain/config.mk.testing.sample b/utils/dc-chain/config.mk.testing.sample index 489ad1d..5467456 100644 --- a/utils/dc-chain/config.mk.testing.sample +++ b/utils/dc-chain/config.mk.testing.sample @@ -21,7 +21,7 @@ sh_binutils_ver=2.40 sh_gcc_ver=12.2.0 newlib_ver=4.3.0.20230120 -gdb_ver=12.1 +gdb_ver=13.1 insight_ver=6.8-1 # Tarball extensions to download for SH diff --git a/utils/dc-chain/docker/stable/Dockerfile b/utils/dc-chain/docker/Dockerfile similarity index 65% rename from utils/dc-chain/docker/stable/Dockerfile rename to utils/dc-chain/docker/Dockerfile index ab5be1e..362f0e3 100644 --- a/utils/dc-chain/docker/stable/Dockerfile +++ b/utils/dc-chain/docker/Dockerfile @@ -1,6 +1,14 @@ # -# Dockerfile for Sega Dreamcast Toolchains Maker (dc-chain): Stable +# Dockerfile for Sega Dreamcast Toolchains Maker (dc-chain) # +# usage: +# - build one of the images: +# docker build -t dcchain:latest . +# docker build -t dcchain:testing --build-arg dc_chain=testing . +# docker build -t dcchain:bleeding --build-arg dc_chain=bleeding . +# docker build -t dcchain:legacy --build-arg dc_chain=legacy . +# - create and run a container, eg for latest: +# docker run -it --name containername dcchain:latest /bin/bash # Stage 1 FROM alpine:latest as build @@ -25,10 +33,11 @@ RUN apk --update add --no-cache \ # Making Sega Dreamcast toolchains # You may adapt the KallistiOS repository URL if needed +ARG dc_chain=stable RUN mkdir -p /opt/toolchains/dc \ && git clone https://git.code.sf.net/p/cadcdev/kallistios /opt/toolchains/dc/kos \ && cd /opt/toolchains/dc/kos/utils/dc-chain \ - && cp config.mk.stable.sample config.mk \ + && cp config.mk.$dc_chain.sample config.mk \ && sed -i -e 's/#use_custom_dependencies=1/use_custom_dependencies=1/g' config.mk \ && ./download.sh && ./unpack.sh && make && make gdb \ && rm -rf /opt/toolchains/dc/kos diff --git a/utils/dc-chain/docker/README.md b/utils/dc-chain/docker/README.md index ed14587..65d5bd9 100644 --- a/utils/dc-chain/docker/README.md +++ b/utils/dc-chain/docker/README.md @@ -1,6 +1,6 @@ # Dockerfile -This directory contain a `Dockerfile` which demonstrate you how to build a +This directory contains a `Dockerfile` which demonstrates you how to build a Docker image containing the minimal toolchains used for **Sega Dreamcast** development. @@ -23,6 +23,6 @@ building them can take hours and don't change often. Of course, the Docker image produced here can be used for CI/CD pipelines! -Don't hesitate to have multiple `config.mk` files; this may be useful for -building customized toolchains (e.g. a `testing` Docker image with `gcc-9.3.0` -and a `stable` one with `gcc-4.7.4`...). +This Dockerfile builds the `stable` toolchain by default, but can be used to build the other +toolchains like `legacy`, `testing`, ..., as long as you pass the `dc_chain` argument +in the docker command line (cfr Dockerfile for an example of the syntax). diff --git a/utils/dc-chain/docker/testing/Dockerfile b/utils/dc-chain/docker/testing/Dockerfile deleted file mode 100644 index 50b86c0..0000000 --- a/utils/dc-chain/docker/testing/Dockerfile +++ /dev/null @@ -1,39 +0,0 @@ -# -# Dockerfile for Sega Dreamcast Toolchains Maker (dc-chain): Testing -# - -# Stage 1 -FROM alpine:latest as build -MAINTAINER KallistiOS <cad...@li...> - -# Installing prerequisites -# Note: libelf-dev is not available in main repository, so we use the v3.9 package -RUN apk --update add --no-cache \ - build-base \ - patch \ - bash \ - texinfo \ - libjpeg-turbo-dev \ - libpng-dev \ - curl \ - wget \ - git \ - python3 \ - subversion \ - && apk --update add --no-cache libelf-dev --repository=http://dl-cdn.alpinelinux.org/alpine/v3.9/main \ - && rm -rf /var/cache/apk/* - -# Making Sega Dreamcast toolchains -# You may adapt the KallistiOS repository URL if needed -RUN mkdir -p /opt/toolchains/dc \ - && git clone https://git.code.sf.net/p/cadcdev/kallistios /opt/toolchains/dc/kos \ - && cd /opt/toolchains/dc/kos/utils/dc-chain \ - && cp config.mk.testing.sample config.mk \ - && sed -i -e 's/#use_custom_dependencies=1/use_custom_dependencies=1/g' config.mk \ - && ./download.sh && ./unpack.sh && make && make gdb \ - && rm -rf /opt/toolchains/dc/kos - -# Stage 2 -# Optimize image size -FROM scratch -COPY --from=build / / hooks/post-receive -- A pseudo Operating System for the Dreamcast. |