Skip to content

Commit 8c5eaf4

Browse files
Merge pull request #3 from dreamer-coding-555/docker_targets
2 parents 815c9bc + 3b2f9ff commit 8c5eaf4

File tree

15 files changed

+365
-21
lines changed

15 files changed

+365
-21
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Use a specific Arch Linux base image
2+
FROM archlinux:latest
3+
4+
# Set environment variables to avoid interaction
5+
ENV TZ=UTC
6+
7+
# Update and install system dependencies
8+
RUN pacman -Syu --noconfirm && \
9+
pacman -S --noconfirm \
10+
gcc \
11+
clang \
12+
gdb \
13+
llvm \
14+
rust \
15+
cargo \
16+
wget \
17+
python \
18+
python-pip \
19+
git \
20+
meson \
21+
ninja && \
22+
pacman -Scc --noconfirm
23+
24+
# Set environment variables
25+
ENV CC=/usr/bin/clang
26+
ENV CXX=/usr/bin/clang++
27+
ENV LD_LIBRARY_PATH=/usr/local/lib
28+
29+
# Set working directory
30+
WORKDIR /workspace
31+
32+
# Default command
33+
CMD ["bash"]

.github/ciimage/Dockerfile.debian

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Use a specific Debian base image
2+
FROM debian:buster
3+
4+
# Set environment variables to avoid interaction
5+
ENV DEBIAN_FRONTEND=noninteractive \
6+
TZ=UTC
7+
8+
# Install system dependencies and clean up
9+
RUN apt-get update && \
10+
apt-get install -y \
11+
build-essential \
12+
clang \
13+
gcc \
14+
g++ \
15+
gdb \
16+
llvm \
17+
gobjc \
18+
gobjc++ \
19+
libobjc-8-dev \
20+
libstdc++-8-dev \
21+
rustc \
22+
cargo \
23+
wget \
24+
python3 \
25+
python3-pip \
26+
git && \
27+
apt-get clean && \
28+
rm -rf /var/lib/apt/lists/*
29+
30+
# Install Meson, Ninja, and Cython using pip
31+
RUN python3 -m pip install --no-cache-dir meson ninja
32+
33+
# Set environment variables
34+
ENV CC=/usr/bin/clang
35+
ENV CXX=/usr/bin/clang++
36+
ENV LD_LIBRARY_PATH=/usr/local/lib
37+
38+
# Set working directory
39+
WORKDIR /workspace
40+
41+
# Default command
42+
CMD ["bash"]

.github/ciimage/Dockerfile.fedora

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Use a specific Fedora base image
2+
FROM fedora:34
3+
4+
# Set environment variables to avoid interaction
5+
ENV TZ=UTC
6+
7+
# Install system dependencies and clean up
8+
RUN dnf -y update && \
9+
dnf install -y \
10+
gcc \
11+
gcc-c++ \
12+
clang \
13+
gdb \
14+
llvm \
15+
rust \
16+
cargo \
17+
wget \
18+
python3 \
19+
python3-pip \
20+
git && \
21+
dnf clean all
22+
23+
# Install Meson and Ninja using pip
24+
RUN python3 -m pip install --no-cache-dir meson ninja
25+
26+
# Set environment variables
27+
ENV CC=/usr/bin/clang
28+
ENV CXX=/usr/bin/clang++
29+
ENV LD_LIBRARY_PATH=/usr/local/lib64
30+
31+
# Set working directory
32+
WORKDIR /workspace
33+
34+
# Default command
35+
CMD ["bash"]

.github/ciimage/Dockerfile.ubuntu

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# Use a specific Ubuntu base image
2+
FROM ubuntu:20.04
3+
4+
# Set environment variables to avoid interaction
5+
ENV DEBIAN_FRONTEND=noninteractive \
6+
TZ=UTC
7+
8+
# Install system dependencies and clean up
9+
RUN apt-get update && \
10+
apt-get install -y \
11+
build-essential \
12+
clang \
13+
gcc \
14+
g++ \
15+
gdb \
16+
llvm \
17+
gobjc \
18+
gobjc++ \
19+
libobjc-10-dev \
20+
libstdc++-10-dev \
21+
rustc \
22+
cargo \
23+
dub \
24+
wget \
25+
python3 \
26+
python3-pip \
27+
git && \
28+
apt-get clean && \
29+
rm -rf /var/lib/apt/lists/*
30+
31+
# Install Meson, Ninja, and Cython using pip
32+
RUN python3 -m pip install --no-cache-dir meson ninja
33+
34+
# Set environment variables
35+
ENV CC=/usr/bin/gcc
36+
ENV CXX=/usr/bin/g++
37+
ENV LD_LIBRARY_PATH=/usr/local/lib

.github/crossfiles/arm.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'arm-linux-gnueabi-gcc'
3+
cpp = 'arm-linux-gnueabi-g++'
4+
ar = 'arm-linux-gnueabi-ar'
5+
strip = 'arm-linux-gnueabi-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'arm'
10+
cpu = 'armv7'
11+
endian = 'little'

.github/crossfiles/arm64.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'aarch64-linux-gnu-gcc'
3+
cpp = 'aarch64-linux-gnu-g++'
4+
ar = 'aarch64-linux-gnu-ar'
5+
strip = 'aarch64-linux-gnu-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'aarch64'
10+
cpu = 'aarch64'
11+
endian = 'little'

.github/crossfiles/mips.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'mips-linux-gnu-gcc'
3+
cpp = 'mips-linux-gnu-g++'
4+
ar = 'mips-linux-gnu-ar'
5+
strip = 'mips-linux-gnu-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'mips'
10+
cpu = 'mips'
11+
endian = 'big'

.github/crossfiles/mipsel.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'mipsel-linux-gnu-gcc'
3+
cpp = 'mipsel-linux-gnu-g++'
4+
ar = 'mipsel-linux-gnu-ar'
5+
strip = 'mipsel-linux-gnu-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'mips'
10+
cpu = 'mipsel'
11+
endian = 'little'

.github/crossfiles/ppc.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'powerpc-linux-gnu-gcc'
3+
cpp = 'powerpc-linux-gnu-g++'
4+
ar = 'powerpc-linux-gnu-ar'
5+
strip = 'powerpc-linux-gnu-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'ppc'
10+
cpu = 'powerpc'
11+
endian = 'big'

.github/crossfiles/ppc64le.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
[binaries]
2+
c = 'powerpc64le-linux-gnu-gcc'
3+
cpp = 'powerpc64le-linux-gnu-g++'
4+
ar = 'powerpc64le-linux-gnu-ar'
5+
strip = 'powerpc64le-linux-gnu-strip'
6+
7+
[host_machine]
8+
system = 'linux'
9+
cpu_family = 'ppc64'
10+
cpu = 'ppc64le'
11+
endian = 'little'

0 commit comments

Comments
 (0)