chore: Add experimental docker build

This commit is contained in:
EnderIce2 2024-11-26 03:27:25 +02:00
parent 00a37325f6
commit 23853cbb15
Signed by untrusted user who does not match committer: enderice2
GPG Key ID: EACC3AD603BAB4DD
3 changed files with 92 additions and 0 deletions

34
.dockerignore Normal file
View File

@ -0,0 +1,34 @@
# Include any files or directories that you don't want to be copied to your
# container here (e.g., local build artifacts, temporary files, etc.).
#
# For more help, visit the .dockerignore file reference guide at
# https://docs.docker.com/go/build-context-dockerignore/
**/.DS_Store
**/__pycache__
**/.venv
**/.classpath
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/bin
**/charts
**/docker-compose*
**/compose.y*ml
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md

45
Dockerfile Normal file
View File

@ -0,0 +1,45 @@
FROM ubuntu:22.04 AS base
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /fennix
ADD . /fennix
RUN apt -y update
RUN apt -y install \
build-essential \
bison \
flex \
libgmp3-dev \
libmpc-dev \
libmpfr-dev \
texinfo \
libzstd-dev \
libisl-dev \
autoconf \
m4 \
automake \
gettext \
gperf \
dejagnu \
guile-3.0 \
guile-3.0-dev \
expect \
tcl \
autogen \
tex-common \
sphinx-common \
git \
ssh \
diffutils \
patch
RUN apt clean && rm -rf /var/lib/apt/lists
RUN make -C tools __clone_all_no_qemu
RUN make --quiet -C tools do_binutils_64
RUN make --quiet -C tools do_binutils_32
RUN make --quiet -C tools do_gcc_64
RUN make --quiet -C tools do_gcc_32
RUN cd tools && rm -rf binutils-gdb gcc build-binutils64 build-gcc64 build-binutils32 build-gcc32
RUN make build

13
compose.yaml Normal file
View File

@ -0,0 +1,13 @@
# Comments are provided throughout this file to help you get started.
# If you need more help, visit the Docker Compose reference guide at
# https://docs.docker.com/go/compose-spec-reference/
# Here the instructions define your application as a service called "app".
# This service is built from the Dockerfile in the current directory.
# You can add other services your application may depend on here, such as a
# database or a cache. For examples, see the Awesome Compose repository:
# https://github.com/docker/awesome-compose
services:
iso:
build:
context: .