mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-06-17 16:39:25 +02:00
Compare commits
146 Commits
feature/up
...
master
Author | SHA1 | Date | |
---|---|---|---|
b7f8ddd484 | |||
d75b3333c0 | |||
5887d4c55c | |||
de6a4b0be3 | |||
055c60ebab | |||
7577ed208d | |||
27edf0f8a9 | |||
1afd48ee6a | |||
9dea22ab64 | |||
85496b648d | |||
8d3f1362c2 | |||
af6a85faf1 | |||
f473b99340 | |||
0ee58e2d4d | |||
456e7e0494 | |||
07ac7479b5 | |||
2b491aeb9a | |||
c0efd5bf10 | |||
1d459d9fbc | |||
7bf589c088 | |||
f5b3739d8d | |||
aac97dfb18 | |||
a9ee159efb | |||
54a4417c3d | |||
96e8620255 | |||
86044ff4b3 | |||
741af4cb06 | |||
10b1c1d579 | |||
306612b685 | |||
7631cba894 | |||
180160da50 | |||
8cdda7ec64 | |||
c1cf751a31 | |||
d3dc3ed8e8 | |||
599f950297 | |||
6bf03cc540 | |||
8cda4cf962 | |||
5082131705 | |||
5370aa6fe9 | |||
72e51cae18 | |||
96d423101c | |||
88f3aa6c31 | |||
d9696e44b7 | |||
d0e5a437dd | |||
285ba494bf | |||
b459265243 | |||
7a62133ff7 | |||
858a3d8755 | |||
103d6485e6 | |||
5dc9be4d3b | |||
fbb53a3786 | |||
a5a1cc9287 | |||
e2bc513d3f | |||
43b2dd1550 | |||
54ee1fddbc | |||
86a1cca977 | |||
2dd09b2d3f | |||
2fbd0af24a | |||
ad25ffbf7f | |||
81c74ac1f0 | |||
5d2ddaa26d | |||
bef5f26ead | |||
03adcfcd84 | |||
40e5e7517f | |||
0bed4bf8e7 | |||
2e70d66615 | |||
9560d75124 | |||
2e07fc0772 | |||
aad63e3a41 | |||
60fa1b0e0b | |||
2b500e4150 | |||
018c591202 | |||
3603d82802 | |||
8231b1f6d0 | |||
9751032bf7 | |||
7910242a3c | |||
1276ade1f0 | |||
ac61758ca6 | |||
748f3c06fe | |||
a1ff15e206 | |||
45c870a3f5 | |||
26baad281a | |||
24fa6a0962 | |||
ab75e7c5a0 | |||
4f1ad856dd | |||
0803d604a1 | |||
64da83ae96 | |||
13d3b718b8 | |||
8bd9dd4d62 | |||
3995c0cf44 | |||
e9090a2473 | |||
27d1ed241a | |||
1123bbcb3f | |||
f11237cd73 | |||
f7b6d06a53 | |||
0dade71fa2 | |||
2f39fc8b8d | |||
f36800d70b | |||
b2adff168b | |||
f010b6fcbd | |||
88c04a4ba6 | |||
d292408a32 | |||
20a1bd6ae4 | |||
0b5e4fbf2e | |||
518fe0572e | |||
72a6a72d80 | |||
2c6c0a52fb | |||
d4e7c0aff2 | |||
8106a3b245 | |||
488369f3d7 | |||
f52fb3821a | |||
a8e3072e4f | |||
e40a33d02b | |||
00e75583b2 | |||
0ee05c1f5a | |||
9f4fe90923 | |||
50120593a3 | |||
ba27b1fc51 | |||
55d275535c | |||
9e57d2bd8f | |||
137dda204d | |||
3ac4aed3aa | |||
50baccd0fa | |||
fa87501f12 | |||
6eda62728a | |||
6dfa69bdaa | |||
24f9bdefe2 | |||
eaba673170 | |||
7e034e5282 | |||
424b61e9ec | |||
4e4d3ad7ed | |||
9476e910d9 | |||
f93e2f73bf | |||
2b0d4b1792 | |||
ce2342deee | |||
b0831b3619 | |||
a5f9b49a37 | |||
0b56496e9c | |||
714b61dd7a | |||
e5106c5fd4 | |||
4282105d11 | |||
ae06c00377 | |||
af3fa9b013 | |||
46b2600a3f | |||
9eb419cf6b | |||
f430265d9c |
2
.github/workflows/expired.yml
vendored
2
.github/workflows/expired.yml
vendored
@ -6,7 +6,7 @@ jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v8
|
||||
- uses: actions/stale@v9
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
exempt-issue-milestones: 'future,alpha,beta,release,bugfix,improvement,enhancement,help wanted'
|
||||
|
442
.github/workflows/main.yml
vendored
442
.github/workflows/main.yml
vendored
File diff suppressed because it is too large
Load Diff
2
.gitignore
vendored
2
.gitignore
vendored
@ -8,3 +8,5 @@ Dockerfile
|
||||
web-wasm/Dockerfile
|
||||
*/imagefiles/*
|
||||
!imagefiles/*
|
||||
crosstool-ng/*
|
||||
llama.cpp/*
|
@ -67,7 +67,7 @@ We will take the example of `aarch64-rpi4-linux-gnu`, a `.config` file will be c
|
||||
*Alternatively*, we could copy an existing `crosstool-ng.config` from one of the target folders in the `dockcross` project to the local `.config`:
|
||||
|
||||
```bash
|
||||
cp path/to/dockcross/linux-arm64 .config
|
||||
cp path/to/dockcross/linux-arm64/crosstool-ng.config .config
|
||||
```
|
||||
|
||||
We will configure the toolchains according to our needs:
|
||||
@ -115,7 +115,7 @@ set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm64)
|
||||
```
|
||||
|
||||
Then ou must change these lines according to the targeted architecture, here **ARM64**:
|
||||
Then you must change these lines according to the targeted architecture, here **ARM64**:
|
||||
|
||||
```cmake
|
||||
set(CMAKE_SYSTEM_PROCESSOR ARM64)
|
||||
@ -130,7 +130,7 @@ Copy text to `Dockerfile.in` file:
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit ARM Linux machine
|
||||
|
||||
@ -174,7 +174,7 @@ ENV ARCH arm64
|
||||
#include "common.label-and-env"
|
||||
```
|
||||
|
||||
Then ou must change these lines according to the targeted architecture.
|
||||
Then you must change these lines according to the targeted architecture.
|
||||
|
||||
Here you have to change the value according to the name of the toolchain (./ct-ng show-tuple):
|
||||
|
||||
@ -185,7 +185,7 @@ ENV CROSS_TRIPLE aarch64-unknown-linux-gnu
|
||||
These lines also need to be changed:
|
||||
|
||||
```docker
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
ENV PKG_CONFIG_PATH /usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
ENV ARCH arm64
|
||||
```
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG DOCKER_IMAGE=debian:bullseye-slim
|
||||
ARG DOCKER_IMAGE=debian:bookworm-slim
|
||||
FROM $DOCKER_IMAGE
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
#include "common.debian"
|
||||
|
||||
|
175
Makefile
175
Makefile
@ -3,23 +3,45 @@
|
||||
# Parameters
|
||||
#
|
||||
|
||||
# Name of the docker executable
|
||||
DOCKER := docker
|
||||
# Name of the docker-equivalent executable for building images.
|
||||
# OCI: open container interface.
|
||||
# Common values: docker, podman, buildah
|
||||
DOCKER := $(or $(OCI_EXE), docker)
|
||||
BUILD_DOCKER := $(or $(BUILD_DOCKER), $(DOCKER))
|
||||
BUILDAH := $(or $(BUILDAH_EXE), buildah)
|
||||
# Name of the docker-equivalent executable for running test containers.
|
||||
# Supports the use case:
|
||||
#
|
||||
# DOCKER=buildah
|
||||
# TEST_DOCKER=podman
|
||||
#
|
||||
# because buildah does not run containers.
|
||||
TEST_DOCKER := $(or $(TEST_DOCKER), $(DOCKER))
|
||||
|
||||
# The build sub-command. Use:
|
||||
#
|
||||
# export "BUILD_CMD=buildx build --platform linux/amd64,linux/arm64"
|
||||
#
|
||||
# to generate multi-platform images.
|
||||
BUILD_CMD := $(or $(BUILD_CMD), build)
|
||||
TAG_FLAG := $(or $(TAG_FLAG), --tag)
|
||||
|
||||
# Docker organization to pull the images from
|
||||
ORG = dockcross
|
||||
|
||||
# Host architecture
|
||||
HOST_ARCH := $(shell uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||
|
||||
# Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64)
|
||||
BIN = ./bin
|
||||
|
||||
# These images are built using the "build implicit rule"
|
||||
STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \
|
||||
linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64 linux-arm64-musl linux-arm64-full \
|
||||
linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64-musl linux-arm64-full \
|
||||
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-m68k-uclibc linux-s390x linux-x64-tinycc \
|
||||
linux-armv6 linux-armv6-lts linux-armv6-musl linux-arm64-lts linux-mipsel-lts \
|
||||
linux-armv7l-musl linux-armv7 linux-armv7a linux-armv7-lts linux-armv7a-lts linux-x86_64-full \
|
||||
linux-mips linux-mips-uclibc linux-mips-lts linux-ppc64le linux-ppc64le-lts linux-riscv64 linux-riscv32 linux-xtensa-uclibc \
|
||||
web-wasi \
|
||||
linux-mips linux-mips-uclibc linux-mips-lts linux-ppc linux-ppc64le linux-ppc64le-lts linux-riscv64 linux-riscv32 linux-xtensa-uclibc \
|
||||
windows-static-x86 windows-static-x64 windows-static-x64-posix windows-armv7 \
|
||||
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix windows-arm64 \
|
||||
bare-armv7emhf-nano_newlib
|
||||
@ -30,20 +52,24 @@ GEN_IMAGES := android-arm android-arm64 \
|
||||
manylinux_2_28-x64 \
|
||||
manylinux2014-x64 manylinux2014-x86 \
|
||||
manylinux2014-aarch64 linux-arm64-lts \
|
||||
web-wasm web-wasi linux-mips linux-mips-uclibc linux-mips-lts windows-arm64 windows-armv7 \
|
||||
web-wasm web-wasi web-wasi-emulated-threads web-wasi-threads linux-mips linux-mips-uclibc linux-mips-lts windows-arm64 windows-armv7 \
|
||||
windows-static-x86 windows-static-x64 windows-static-x64-posix \
|
||||
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix \
|
||||
linux-armv7 linux-armv7a linux-armv7l-musl linux-armv7-lts linux-armv7a-lts linux-x86_64-full \
|
||||
linux-armv6 linux-armv6-lts linux-armv6-musl linux-mipsel-lts \
|
||||
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-ppc64le linux-ppc64le-lts linux-s390x \
|
||||
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-ppc linux-ppc64le linux-ppc64le-lts linux-s390x \
|
||||
linux-riscv64 linux-riscv32 linux-m68k-uclibc linux-x64-tinycc linux-xtensa-uclibc \
|
||||
bare-armv7emhf-nano_newlib
|
||||
|
||||
# Generate both amd64 and arm64 images
|
||||
MULTIARCH_IMAGES := linux-arm64 \
|
||||
web-wasi web-wasi-emulated-threads
|
||||
|
||||
GEN_IMAGE_DOCKERFILES = $(addsuffix /Dockerfile,$(GEN_IMAGES))
|
||||
|
||||
# These images are expected to have explicit rules for *both* build and testing
|
||||
NON_STANDARD_IMAGES := manylinux_2_28-x64 manylinux2014-x64 manylinux2014-x86 \
|
||||
manylinux2014-aarch64 web-wasm
|
||||
manylinux2014-aarch64 web-wasm web-wasi-emulated-threads web-wasi-threads
|
||||
|
||||
# Docker composite files
|
||||
DOCKER_COMPOSITE_SOURCES = common.docker common.debian common.manylinux2014 common.manylinux_2_28 common.buildroot \
|
||||
@ -53,7 +79,7 @@ DOCKER_COMPOSITE_FOLDER_PATH = common/
|
||||
DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
|
||||
|
||||
# This list all available images
|
||||
IMAGES := $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)
|
||||
IMAGES := $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES) $(MULTIARCH_IMAGES)
|
||||
|
||||
# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
|
||||
linux-x64-tinycc.test_ARGS = --languages C
|
||||
@ -115,13 +141,20 @@ $(GEN_IMAGE_DOCKERFILES) Dockerfile: %Dockerfile: %Dockerfile.in $(DOCKER_COMPOS
|
||||
#
|
||||
# web-wasm
|
||||
#
|
||||
ifeq ($(HOST_ARCH),amd64)
|
||||
EMSCRIPTEN_HOST_ARCH_TAG = ""
|
||||
endif
|
||||
ifeq ($(HOST_ARCH),arm64)
|
||||
EMSCRIPTEN_HOST_ARCH_TAG = "-arm64"
|
||||
endif
|
||||
web-wasm: web-wasm/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
cp -r test web-wasm/
|
||||
$(DOCKER) build -t $(ORG)/web-wasm:$(TAG) \
|
||||
-t $(ORG)/web-wasm:latest \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/web-wasm:$(TAG)-$(HOST_ARCH) \
|
||||
$(TAG_FLAG) $(ORG)/web-wasm:latest-$(HOST_ARCH) \
|
||||
--build-arg IMAGE=$(ORG)/web-wasm \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg HOST_ARCH_TAG=$(EMSCRIPTEN_HOST_ARCH_TAG) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||
@ -131,21 +164,37 @@ web-wasm: web-wasm/Dockerfile
|
||||
|
||||
web-wasm.test: web-wasm
|
||||
cp -r test web-wasm/
|
||||
$(DOCKER) run $(RM) $(ORG)/web-wasm:latest > $(BIN)/dockcross-web-wasm && chmod +x $(BIN)/dockcross-web-wasm
|
||||
$(BIN)/dockcross-web-wasm -i $(ORG)/web-wasm:latest python test/run.py --exe-suffix ".js"
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/web-wasm:latest-$(HOST_ARCH) > $(BIN)/dockcross-web-wasm && chmod +x $(BIN)/dockcross-web-wasm
|
||||
$(BIN)/dockcross-web-wasm -i $(ORG)/web-wasm:latest-$(HOST_ARCH) python test/run.py --exe-suffix ".js"
|
||||
rm -rf web-wasm/test
|
||||
|
||||
#
|
||||
# web-wasi-threads
|
||||
#
|
||||
web-wasi-threads: web-wasi web-wasi-threads/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
cp -r test web-wasi-threads/
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/web-wasi-threads:$(TAG)-$(HOST_ARCH) \
|
||||
-t $(ORG)/web-wasi-threads:latest-$(HOST_ARCH) \
|
||||
--build-arg IMAGE=$(ORG)/web-wasi-threads \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg HOST_ARCH=$(HOST_ARCH) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||
web-wasi-threads
|
||||
|
||||
#
|
||||
# manylinux2014-aarch64
|
||||
#
|
||||
manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile
|
||||
manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile manylinux2014-x64
|
||||
@# Register qemu
|
||||
docker run --rm --privileged hypriot/qemu-register
|
||||
@# Get libstdc++ from quay.io/pypa/manylinux2014_aarch64 container
|
||||
docker run -v `pwd`:/host --rm -e LIB_PATH=/host/$@/xc_script/ quay.io/pypa/manylinux2014_aarch64 bash -c "PASS=1 /host/$@/xc_script/docker_setup_scrpits/copy_libstd.sh"
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux2014-aarch64:$(TAG) \
|
||||
-t $(ORG)/manylinux2014-aarch64:latest \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-aarch64:$(TAG) \
|
||||
$(TAG_FLAG) $(ORG)/manylinux2014-aarch64:latest \
|
||||
--build-arg IMAGE=$(ORG)/manylinux2014-aarch64 \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
@ -157,7 +206,7 @@ manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile
|
||||
docker run -v `pwd`:/host --rm quay.io/pypa/manylinux2014_aarch64 bash -c "rm -rf /host/$@/xc_script/usr"
|
||||
|
||||
manylinux2014-aarch64.test: manylinux2014-aarch64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64:latest > $(BIN)/dockcross-manylinux2014-aarch64 \
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64:latest > $(BIN)/dockcross-manylinux2014-aarch64 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-aarch64
|
||||
$(BIN)/dockcross-manylinux2014-aarch64 -i $(ORG)/manylinux2014-aarch64:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
@ -166,8 +215,8 @@ manylinux2014-aarch64.test: manylinux2014-aarch64
|
||||
#
|
||||
manylinux_2_28-x64: manylinux_2_28-x64/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux_2_28-x64:$(TAG) \
|
||||
-t $(ORG)/manylinux_2_28-x64:latest \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux_2_28-x64:$(TAG) \
|
||||
$(TAG_FLAG) $(ORG)/manylinux_2_28-x64:latest \
|
||||
--build-arg IMAGE=$(ORG)/manylinux_2_28-x64 \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
@ -177,7 +226,7 @@ manylinux_2_28-x64: manylinux_2_28-x64/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux_2_28-x64.test: manylinux_2_28-x64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux_2_28-x64:latest > $(BIN)/dockcross-manylinux_2_28-x64 \
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux_2_28-x64:latest > $(BIN)/dockcross-manylinux_2_28-x64 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux_2_28-x64
|
||||
$(BIN)/dockcross-manylinux_2_28-x64 -i $(ORG)/manylinux_2_28-x64:latest /opt/python/cp310-cp310/bin/python test/run.py
|
||||
|
||||
@ -186,8 +235,8 @@ manylinux_2_28-x64.test: manylinux_2_28-x64
|
||||
#
|
||||
manylinux2014-x64: manylinux2014-x64/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux2014-x64:$(TAG) \
|
||||
-t $(ORG)/manylinux2014-x64:latest \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-x64:$(TAG) \
|
||||
$(TAG_FLAG) $(ORG)/manylinux2014-x64:latest \
|
||||
--build-arg IMAGE=$(ORG)/manylinux2014-x64 \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
@ -197,7 +246,7 @@ manylinux2014-x64: manylinux2014-x64/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2014-x64.test: manylinux2014-x64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x64:latest > $(BIN)/dockcross-manylinux2014-x64 \
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-x64:latest > $(BIN)/dockcross-manylinux2014-x64 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x64
|
||||
$(BIN)/dockcross-manylinux2014-x64 -i $(ORG)/manylinux2014-x64:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
@ -206,7 +255,7 @@ manylinux2014-x64.test: manylinux2014-x64
|
||||
#
|
||||
manylinux2014-x86: manylinux2014-x86/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux2014-x86:$(TAG) \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-x86:$(TAG) \
|
||||
-t $(ORG)/manylinux2014-x86:latest \
|
||||
--build-arg IMAGE=$(ORG)/manylinux2014-x86 \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
@ -217,22 +266,32 @@ manylinux2014-x86: manylinux2014-x86/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2014-x86.test: manylinux2014-x86
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x86:latest > $(BIN)/dockcross-manylinux2014-x86 \
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-x86:latest > $(BIN)/dockcross-manylinux2014-x86 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x86
|
||||
$(BIN)/dockcross-manylinux2014-x86 -i $(ORG)/manylinux2014-x86:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# base
|
||||
# base-$(HOST_ARCH)
|
||||
#
|
||||
base-$(HOST_ARCH): Dockerfile imagefiles/
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/base:latest-$(HOST_ARCH) \
|
||||
$(TAG_FLAG) $(ORG)/base:$(TAG)-$(HOST_ARCH) \
|
||||
--build-arg IMAGE=$(ORG)/base \
|
||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||
.
|
||||
|
||||
base-$(HOST_ARCH).test: base-$(HOST_ARCH)
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/base:latest-$(HOST_ARCH) > $(BIN)/dockcross-base && chmod +x $(BIN)/dockcross-base
|
||||
|
||||
base: Dockerfile imagefiles/
|
||||
$(DOCKER) build -t $(ORG)/base:latest \
|
||||
-t $(ORG)/base:$(TAG) \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/base:latest \
|
||||
$(TAG_FLAG) $(ORG)/base:$(TAG) \
|
||||
--build-arg IMAGE=$(ORG)/base \
|
||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||
.
|
||||
|
||||
base.test: base
|
||||
$(DOCKER) run $(RM) $(ORG)/base:latest > $(BIN)/dockcross-base && chmod +x $(BIN)/dockcross-base
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/base:latest > $(BIN)/dockcross-base && chmod +x $(BIN)/dockcross-base
|
||||
|
||||
# display
|
||||
#
|
||||
@ -247,8 +306,8 @@ $(VERBOSE).SILENT: display_images
|
||||
|
||||
$(STANDARD_IMAGES): %: %/Dockerfile base
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/$@:latest \
|
||||
-t $(ORG)/$@:$(TAG) \
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/$@:latest \
|
||||
$(TAG_FLAG) $(ORG)/$@:$(TAG) \
|
||||
--build-arg ORG=$(ORG) \
|
||||
--build-arg IMAGE=$(ORG)/$@ \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
@ -258,6 +317,20 @@ $(STANDARD_IMAGES): %: %/Dockerfile base
|
||||
$@
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
$(MULTIARCH_IMAGES): %: %/Dockerfile base-$(HOST_ARCH)
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/$@:latest-$(HOST_ARCH) \
|
||||
$(TAG_FLAG) $(ORG)/$@:$(TAG)-$(HOST_ARCH) \
|
||||
--build-arg ORG=$(ORG) \
|
||||
--build-arg IMAGE=$(ORG)/$@ \
|
||||
--build-arg HOST_ARCH=$(HOST_ARCH) \
|
||||
--build-arg VERSION=$(TAG) \
|
||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||
$@
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
clean:
|
||||
for d in $(IMAGES) ; do rm -rf $$d/imagefiles ; done
|
||||
for d in $(IMAGES) ; do rm -rf $(BIN)/dockcross-$$d ; done
|
||||
@ -266,9 +339,9 @@ clean:
|
||||
|
||||
purge: clean
|
||||
# Remove all untagged images
|
||||
$(DOCKER) container ls -aq | xargs -r $(DOCKER) container rm -f
|
||||
$(TEST_DOCKER) container ls -aq | xargs -r $(DOCKER) container rm -f
|
||||
# Remove all images with organization (ex dockcross/*)
|
||||
$(DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
|
||||
$(BUILD_DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
|
||||
|
||||
# Check bash syntax
|
||||
bash-check:
|
||||
@ -280,10 +353,44 @@ bash-check:
|
||||
#
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .test,$(STANDARD_IMAGES)): $$(basename $$@)
|
||||
$(DOCKER) run $(RM) $(ORG)/$(basename $@):latest > $(BIN)/dockcross-$(basename $@) \
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/$(basename $@):latest > $(BIN)/dockcross-$(basename $@) \
|
||||
&& chmod +x $(BIN)/dockcross-$(basename $@)
|
||||
$(BIN)/dockcross-$(basename $@) -i $(ORG)/$(basename $@):latest python3 test/run.py $($@_ARGS)
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .test,$(MULTIARCH_IMAGES) web-wasi-threads): $$(basename $$@)
|
||||
$(TEST_DOCKER) run $(RM) $(ORG)/$(basename $@):latest-$(HOST_ARCH) > $(BIN)/dockcross-$(basename $@) \
|
||||
&& chmod +x $(BIN)/dockcross-$(basename $@)
|
||||
$(BIN)/dockcross-$(basename $@) -i $(ORG)/$(basename $@):latest-$(HOST_ARCH) python3 test/run.py $($@_ARGS)
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .tag-$(HOST_ARCH),$(MULTIARCH_IMAGES) web-wasi-threads web-wasm): $$(basename $$@)
|
||||
$(BUILD_DOCKER) tag $(ORG)/$(basename $@):latest-$(HOST_ARCH) \
|
||||
$(ORG)/$(basename $@):$(TAG)-$(HOST_ARCH)
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .push-$(HOST_ARCH),$(MULTIARCH_IMAGES) web-wasi-threads web-wasm): $$(basename $$@)
|
||||
$(BUILD_DOCKER) push $(ORG)/$(basename $@):latest-$(HOST_ARCH) \
|
||||
&& $(BUILD_DOCKER) push $(ORG)/$(basename $@):$(TAG)-$(HOST_ARCH)
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .push,$(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)): $$(basename $$@)
|
||||
$(BUILD_DOCKER) push $(ORG)/$(basename $@):latest \
|
||||
&& $(BUILD_DOCKER) push $(ORG)/$(basename $@):$(TAG)
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .manifest,$(MULTIARCH_IMAGES) web-wasi-threads web-wasm): $$(basename $$@)
|
||||
if $(BUILDAH) manifest exists $(ORG)/$(basename $@); then \
|
||||
$(BUILDAH) manifest rm $(ORG)/$(basename $@); fi
|
||||
$(BUILDAH) manifest create $(ORG)/$(basename $@)
|
||||
$(BUILDAH) manifest add $(ORG)/$(basename $@) docker://$(ORG)/$(basename $@):latest-amd64
|
||||
$(BUILDAH) manifest add $(ORG)/$(basename $@) docker://$(ORG)/$(basename $@):latest-arm64
|
||||
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .push,$(MULTIARCH_IMAGES) web-wasi-threads web-wasm): $$(basename $$@).manifest
|
||||
$(BUILDAH) manifest push --all --format v2s2 $(ORG)/$(basename $@) docker://$(ORG)/$(basename $@):latest
|
||||
$(BUILDAH) manifest push --all --format v2s2 $(ORG)/$(basename $@) docker://$(ORG)/$(basename $@):$(TAG)
|
||||
|
||||
#
|
||||
# testing prerequisites implicit rule
|
||||
#
|
||||
|
20
README.md
20
README.md
@ -13,7 +13,7 @@ Cross compiling toolchains in Docker images.
|
||||
- Most images also contain an emulator for the target system.
|
||||
- Clean separation of build tools, source code, and build artifacts.
|
||||
- Commands in the container are run as the calling user, so that any created files have the expected ownership, (i.e. not root).
|
||||
- Make variables **CC**, **CXX**, **LD**, **AS** etc) are set to point to the appropriate tools in the container.
|
||||
- Make variables (**CC**, **CXX**, **LD**, **AS** etc) are set to point to the appropriate tools in the container.
|
||||
- Recent [CMake](https://cmake.org) and ninja are precompiled.
|
||||
- [Meson](https://mesonbuild.com) is pre-installed.
|
||||
- [Conan.io](https://www.conan.io) can be used as a package manager.
|
||||
@ -105,6 +105,7 @@ The dockcross script will execute the given command-line inside the container, a
|
||||
| dockcross/linux-mips-lts | mips | GCC 8.5.0 + Glibc 2.28 | Linux |
|
||||
| dockcross/linux-mipsel-lts | mipsel | GCC 8.5.0 + Glibc 2.28 | Linux |
|
||||
| dockcross/linux-s390x | s390x | GCC | Linux |
|
||||
| dockcross/linux-ppc | ppc | GCC | Linux |
|
||||
| dockcross/linux-ppc64le | ppc64le | GCC | Linux |
|
||||
| dockcross/linux-ppc64le-lts | ppc64le | GCC 8.5.0 + Glibc 2.28 | Linux |
|
||||
| dockcross/linux-riscv32 | riscv32 | GCC | Linux |
|
||||
@ -122,6 +123,7 @@ The dockcross script will execute the given command-line inside the container, a
|
||||
| dockcross/linux-x64-tinycc | x86_64 | tinycc + GCC | Linux |
|
||||
| dockcross/web-wasm | Wasm | LLVM | Web (JS) |
|
||||
| dockcross/web-wasi | Wasm | LLVM | Web (Universal) |
|
||||
| dockcross/web-wasi-threads | Wasm | LLVM | Web (Universal) |
|
||||
| dockcross/windows-shared-x86 | x86 | GCC | Windows |
|
||||
| dockcross/windows-shared-x64 | x86_64 | GCC | Windows |
|
||||
| dockcross/windows-shared-x64-posix | x86_64 | GCC | Windows |
|
||||
@ -156,7 +158,7 @@ The list of docker images that are **no longer maintained**.
|
||||
|
||||
  
|
||||
|
||||
Base image for other toolchain images. From Debian Jessie with GCC, make, autotools, CMake, Ninja, Git, and Python.
|
||||
Base image for other toolchain images. From Debian Bookworm with GCC, make, autotools, CMake, Ninja, Git, and Python.
|
||||
|
||||
### dockcross/android-arm
|
||||
|
||||
@ -319,6 +321,12 @@ Linux risc-v 32bit cross compiler toolchain for risc-v 32bit GNU systems.
|
||||
|
||||
Linux m68k cross compiler toolchain for m68k GNU systems (http://www.mac.linux-m68k.org/ and http://www.linux-m68k.org/).
|
||||
|
||||
### dockcross/linux-ppc
|
||||
|
||||
 
|
||||
|
||||
Linux PowerPC cross compiler toolchain for CPUs like the G3, G4, etc.
|
||||
|
||||
### dockcross/linux-ppc64le
|
||||
|
||||
 
|
||||
@ -403,6 +411,12 @@ The [Emscripten](https://emscripten.org/) [WebAssembly](https://webassembly.org/
|
||||
|
||||
The [WebAssembly System Interface (WASI)](https://wasi.dev/) SDK LLVM/Clang/WASI Sysroot cross compiler.
|
||||
|
||||
### dockcross/web-wasi-threads
|
||||
|
||||
 
|
||||
|
||||
The [WebAssembly System Interface (WASI)](https://wasi.dev/) SDK LLVM/Clang/WASI Sysroot cross compiler with the toolchain configured to enable the wasm threading proposal.
|
||||
|
||||
### dockcross/windows-static-x64
|
||||
|
||||
 
|
||||
@ -576,7 +590,7 @@ The key difference is that [dockbuild](https://github.com/dockbuild/dockbuild#re
|
||||
|
||||
## Build images by yourself
|
||||
|
||||
Prebuilt images available on Docker hub are single architecture amd64 images. Those images work evan on different architectures: for example, if you run a dockcross image on Docker running on an Apple M1, the image will run in emulation mode, meaning that it will still work as expected, although it will be slower than running on native hardware (you can expect a factor or 10 or more).
|
||||
Prebuilt images available on Docker hub are single architecture amd64 images. Those images work even on different architectures: for example, if you run a dockcross image on Docker running on an Apple M1, the image will run in emulation mode, meaning that it will still work as expected, although it will be slower than running on native hardware (you can expect a factor or 10 or more).
|
||||
|
||||
To overcome this limitation, you can build your own images on non-amd64 architectures. To do so, you can use the `Makefile` provided in this repository. For example, to build the `linux-armv7` image, and provided that your Docker hub organization name is `ACME`, you can run:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
MAINTAINER Matt McCormick "matt@mmmccormick.com"
|
||||
|
||||
# The cross-compiling emulator
|
||||
RUN apt-get update && apt-get install -y \
|
||||
|
@ -1,8 +1,8 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
MAINTAINER Matt McCormick "matt@mmmccormick.com"
|
||||
RUN \
|
||||
sed -i '/debian-security/d' /etc/apt/sources.list && \
|
||||
echo Enabled: no >> /etc/apt/sources.list.d/debian.sources && \
|
||||
dpkg --add-architecture arm64 && \
|
||||
apt-get update
|
||||
|
||||
|
@ -11,6 +11,7 @@ RUN \
|
||||
build-essential \
|
||||
bzip2 \
|
||||
ca-certificates \
|
||||
ccache \
|
||||
curl \
|
||||
dirmngr \
|
||||
file \
|
||||
|
@ -11,4 +11,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
||||
org.label-schema.vcs-url=$VCS_URL \
|
||||
org.label-schema.schema-version="1.0"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
||||
|
@ -1,5 +1,6 @@
|
||||
RUN \
|
||||
set -x && \
|
||||
yum upgrade -y almalinux-release && \
|
||||
yum -y install \
|
||||
gpg \
|
||||
python3-devel \
|
||||
|
@ -2,8 +2,8 @@
|
||||
#
|
||||
# Common WebAssembly tools.
|
||||
|
||||
# main 2022-12-27
|
||||
ENV BINARYEN_GIT_TAG cec66beba45668dbad74abd2396bb80d33595ff0
|
||||
# 2024-12, version 121
|
||||
ENV BINARYEN_GIT_TAG=353b759b230dff8fb82aeb157aeb6db360d74a49
|
||||
RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
||||
cd binaryen && \
|
||||
git checkout ${BINARYEN_GIT_TAG} && \
|
||||
@ -14,6 +14,7 @@ RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
||||
-DCMAKE_C_COMPILER=/usr/bin/cc \
|
||||
-DCMAKE_CXX_COMPILER=/usr/bin/c++ \
|
||||
-G Ninja \
|
||||
-DENABLE_WERROR:BOOL=OFF \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
||||
-DCMAKE_TOOLCHAIN_FILE="" \
|
||||
../binaryen && \
|
||||
@ -22,8 +23,8 @@ RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
||||
cd ../ && \
|
||||
rm -rf binaryen*
|
||||
|
||||
# main 2023-03-16
|
||||
ENV WABT_GIT_TAG 090d4674c86b00e31d18e77f2c8f8570a68e1cf1
|
||||
# main 2024-12-23
|
||||
ENV WABT_GIT_TAG=ea193b40d6d4a1a697d68ae855b2b3b3e263b377
|
||||
RUN git clone --recurse-submodules https://github.com/WebAssembly/wabt.git && \
|
||||
cd wabt && \
|
||||
git checkout ${WABT_GIT_TAG} && \
|
||||
@ -42,12 +43,13 @@ RUN git clone --recurse-submodules https://github.com/WebAssembly/wabt.git && \
|
||||
cd ../ && \
|
||||
rm -rf wabt*
|
||||
|
||||
RUN mkdir /wasi-runtimes
|
||||
RUN mkdir -p /wasi-runtimes
|
||||
|
||||
ENV WASMTIME_HOME /wasi-runtimes/wasmtime
|
||||
RUN mkdir ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash
|
||||
ENV WASMTIME_HOME=/wasi-runtimes/wasmtime
|
||||
RUN mkdir -p ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash
|
||||
COPY imagefiles/wasmtime-pwd.sh ${WASMTIME_HOME}/bin/
|
||||
ENV PATH "$WASMTIME_HOME/bin:$PATH"
|
||||
COPY imagefiles/wasmtime-pwd-threads.sh ${WASMTIME_HOME}/bin/
|
||||
ENV PATH="$WASMTIME_HOME/bin:$PATH"
|
||||
|
||||
# For wasmer
|
||||
RUN \
|
||||
@ -55,20 +57,20 @@ RUN \
|
||||
apt-get install --no-install-recommends --yes \
|
||||
libxkbcommon0
|
||||
|
||||
ENV WASMER_DIR /wasi-runtimes/wasmer
|
||||
ENV WASMER_DIR=/wasi-runtimes/wasmer
|
||||
RUN curl https://get.wasmer.io -sSfL | sh
|
||||
COPY imagefiles/wasmer-pwd.sh ${WASMER_DIR}/bin/
|
||||
ENV PATH "$WASMER_DIR/bin:$PATH"
|
||||
ENV PATH="$WASMER_DIR/bin:$PATH"
|
||||
|
||||
ENV WASM3_VERSION 0.5.0
|
||||
ENV WASM3_VERSION=0.5.0
|
||||
RUN mkdir -p /wasi-runtimes/wasm3/bin && \
|
||||
curl -LO https://github.com/wasm3/wasm3/releases/download/v${WASM3_VERSION}/wasm3-linux-x64.elf && \
|
||||
mv wasm3-linux-x64.elf /wasi-runtimes/wasm3/bin/wasm3 && \
|
||||
chmod +x /wasi-runtimes/wasm3/bin/wasm3
|
||||
ENV PATH "/wasi-runtimes/wasm3/bin:$PATH"
|
||||
ENV PATH="/wasi-runtimes/wasm3/bin:$PATH"
|
||||
|
||||
ENV WAVM_VERSION 2022-05-14
|
||||
ENV WAVM_VERSION=2022-05-14
|
||||
RUN mkdir -p /wasi-runtimes/wavm/ && \
|
||||
curl -LO https://github.com/WAVM/WAVM/releases/download/nightly%2F${WAVM_VERSION}/wavm-0.0.0-prerelease-linux.tar.gz && \
|
||||
tar -xv -C /wasi-runtimes/wavm/ -f wavm-0.0.0-prerelease-linux.tar.gz
|
||||
ENV PATH "/wasi-runtimes/wavm/bin:$PATH"
|
||||
ENV PATH="/wasi-runtimes/wavm/bin:$PATH"
|
||||
|
@ -15,8 +15,8 @@
|
||||
# ARG MXE_TARGET_LINK=shared
|
||||
#
|
||||
|
||||
# mxe master 2021-10-18
|
||||
ARG MXE_GIT_TAG=8838ac3938cd8e47424a4cb5d3676d1ae9a4d670
|
||||
# mxe master 2024-07-27
|
||||
ARG MXE_GIT_TAG=9f349e0de62a4a68bfc0f13d835a6c685dae9daa
|
||||
|
||||
ENV CMAKE_TOOLCHAIN_FILE /usr/src/mxe/usr/${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}/share/cmake/mxe-conf.cmake
|
||||
|
||||
@ -61,7 +61,7 @@ RUN \
|
||||
patch \
|
||||
perl \
|
||||
pkg-config \
|
||||
python \
|
||||
python3 \
|
||||
ruby \
|
||||
scons \
|
||||
sed \
|
||||
@ -69,6 +69,7 @@ RUN \
|
||||
wget \
|
||||
wine \
|
||||
xz-utils \
|
||||
python3-mako \
|
||||
&& \
|
||||
#
|
||||
# Install Wine
|
||||
|
@ -14,9 +14,44 @@ if ! command -v gpg &> /dev/null; then
|
||||
fi
|
||||
|
||||
GOSU_VERSION=1.12
|
||||
dpkgArch=$(if test "$(uname -m)" = "x86_64"; then echo amd64; else echo i386; fi)
|
||||
url="https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-${dpkgArch}"
|
||||
url_key="https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-${dpkgArch}.asc"
|
||||
|
||||
ARCH=$(uname -m)
|
||||
case "$ARCH" in
|
||||
x86_64)
|
||||
GOSU_ARCH=amd64
|
||||
;;
|
||||
aarch64)
|
||||
GOSU_ARCH=arm64
|
||||
;;
|
||||
armv7l)
|
||||
GOSU_ARCH=armhf
|
||||
;;
|
||||
armv6l)
|
||||
GOSU_ARCH=armel
|
||||
;;
|
||||
i686|i386)
|
||||
GOSU_ARCH=i386
|
||||
;;
|
||||
mips64el)
|
||||
GOSU_ARCH=mips64el
|
||||
;;
|
||||
ppc64el)
|
||||
GOSU_ARCH=ppc64el
|
||||
;;
|
||||
riscv64)
|
||||
GOSU_ARCH=riscv64
|
||||
;;
|
||||
s390x)
|
||||
GOSU_ARCH=s390x
|
||||
;;
|
||||
*)
|
||||
echo "Error: unsupported arch (${ARCH}) by gosu (https://github.com/tianon/gosu/releases)" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
url="https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-${GOSU_ARCH}"
|
||||
url_key="https://github.com/tianon/gosu/releases/download/${GOSU_VERSION}/gosu-${GOSU_ARCH}.asc"
|
||||
|
||||
# download and verify the signature
|
||||
export GNUPGHOME="$(mktemp -d)"
|
||||
|
@ -23,10 +23,11 @@ cd /tmp
|
||||
curl -# -LO https://bootstrap.pypa.io/pip/get-pip.py
|
||||
# https://github.com/pypa/setuptools/issues/2993
|
||||
export SETUPTOOLS_USE_DISTUTILS=stdlib
|
||||
${PYTHON} get-pip.py --ignore-installed
|
||||
# Add --break-system-packages to fix change since python 3.11: https://stackoverflow.com/a/75722775/10152334
|
||||
${PYTHON} get-pip.py --ignore-installed --break-system-packages
|
||||
rm get-pip.py
|
||||
|
||||
${PYTHON} -m pip install --upgrade --ignore-installed setuptools
|
||||
${PYTHON} -m pip install --ignore-installed conan meson
|
||||
${PYTHON} -m pip install --break-system-packages --upgrade --ignore-installed setuptools
|
||||
${PYTHON} -m pip install --break-system-packages --ignore-installed conan meson
|
||||
# Purge cache to save space: https://stackoverflow.com/questions/37513597/is-it-safe-to-delete-cache-pip-directory
|
||||
${PYTHON} -m pip cache purge
|
||||
|
4
imagefiles/wasmtime-pwd-threads.sh
Executable file
4
imagefiles/wasmtime-pwd-threads.sh
Executable file
@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Mount the PWD and the /work mount dir to enable access in try_run commands
|
||||
exec ${WASMTIME_HOME}/bin/wasmtime run -W threads=y -S threads=y,cli=y --dir=. --dir=$PWD --dir=/work/ "$@"
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit ARM Linux machine
|
||||
|
||||
|
@ -1,12 +1,13 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
ARG HOST_ARCH=amd64
|
||||
FROM ${ORG}/base:latest-${HOST_ARCH}
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit ARM Linux machine
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
# Crosstool-ng version 2024-05-04
|
||||
ENV CT_VERSION=crosstool-ng-1.26.0
|
||||
|
||||
#include "common.crosstool"
|
||||
|
||||
@ -18,9 +19,9 @@ RUN apt-get update \
|
||||
&& apt-get clean --yes
|
||||
|
||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnu" target.
|
||||
ENV CROSS_TRIPLE aarch64-unknown-linux-gnu
|
||||
ENV CROSS_TRIPLE=aarch64-unknown-linux-gnu
|
||||
|
||||
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||
@ -29,17 +30,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||
|
||||
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
|
||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
ENV PKG_CONFIG_PATH /usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
ENV PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig
|
||||
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||
ENV ARCH arm64
|
||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
||||
ENV ARCH=arm64
|
||||
|
||||
#include "common.label-and-env"
|
||||
|
@ -1,16 +1,16 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.26_db6f703 Configuration
|
||||
# crosstool-NG 1.26.0 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_wget=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
@ -19,6 +19,7 @@ CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_dtc=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
@ -27,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.26_db6f703"
|
||||
CT_VERSION="1.26.0"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
@ -71,7 +72,7 @@ CT_DOWNLOAD_AGENT_WGET=y
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary"
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=5 -nc --progress=dot:binary"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
@ -132,6 +133,7 @@ CT_LOG_FILE_COMPRESS=y
|
||||
# CT_ARCH_ARC is not set
|
||||
CT_ARCH_ARM=y
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_BPF is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
@ -145,14 +147,14 @@ CT_ARCH_ARM=y
|
||||
CT_ARCH="arm"
|
||||
CT_ARCH_CHOICE_KSYM="ARM"
|
||||
CT_ARCH_CPU=""
|
||||
CT_ARCH_TUNE=""
|
||||
CT_ARCH_TUNE="cortex-a72"
|
||||
CT_ARCH_ARM_SHOW=y
|
||||
|
||||
#
|
||||
# Options for arm
|
||||
#
|
||||
CT_ARCH_ARM_PKG_KSYM=""
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
@ -165,6 +167,7 @@ CT_ARCH_SUPPORTS_BOTH_MMU=y
|
||||
CT_ARCH_DEFAULT_HAS_MMU=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_FLAT_FORMAT=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_EITHER_ENDIAN=y
|
||||
CT_ARCH_DEFAULT_LE=y
|
||||
# CT_ARCH_BE is not set
|
||||
@ -256,10 +259,17 @@ CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
# CT_LINUX_V_6_4 is not set
|
||||
# CT_LINUX_V_6_3 is not set
|
||||
# CT_LINUX_V_6_2 is not set
|
||||
CT_LINUX_V_6_1=y
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
@ -290,12 +300,14 @@ CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_3_13 is not set
|
||||
# CT_LINUX_V_3_12 is not set
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
CT_LINUX_VERSION="5.14.18"
|
||||
CT_LINUX_VERSION="6.1.35"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_later_than_5_19=y
|
||||
CT_LINUX_5_19_or_later=y
|
||||
CT_LINUX_later_than_5_12=y
|
||||
CT_LINUX_5_12_or_later=y
|
||||
CT_LINUX_later_than_5_5=y
|
||||
@ -344,6 +356,8 @@ CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
# CT_BINUTILS_V_2_40 is not set
|
||||
# CT_BINUTILS_V_2_39 is not set
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
CT_BINUTILS_V_2_37=y
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
@ -363,6 +377,8 @@ CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_2_39_or_older=y
|
||||
CT_BINUTILS_older_than_2_39=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
@ -413,8 +429,11 @@ CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
# CT_GLIBC_V_2_38 is not set
|
||||
# CT_GLIBC_V_2_37 is not set
|
||||
CT_GLIBC_V_2_36=y
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
CT_GLIBC_V_2_34=y
|
||||
# CT_GLIBC_V_2_34 is not set
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
# CT_GLIBC_V_2_32 is not set
|
||||
# CT_GLIBC_V_2_31 is not set
|
||||
@ -428,14 +447,20 @@ CT_GLIBC_V_2_34=y
|
||||
# CT_GLIBC_V_2_23 is not set
|
||||
# CT_GLIBC_V_2_19 is not set
|
||||
# CT_GLIBC_V_2_17 is not set
|
||||
CT_GLIBC_VERSION="2.34"
|
||||
CT_GLIBC_VERSION="2.36"
|
||||
CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)"
|
||||
CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_38_or_older=y
|
||||
CT_GLIBC_older_than_2_38=y
|
||||
CT_GLIBC_2_37_or_older=y
|
||||
CT_GLIBC_older_than_2_37=y
|
||||
CT_GLIBC_2_36_or_later=y
|
||||
CT_GLIBC_2_36_or_older=y
|
||||
CT_GLIBC_later_than_2_34=y
|
||||
CT_GLIBC_2_34_or_later=y
|
||||
CT_GLIBC_2_34_or_older=y
|
||||
CT_GLIBC_later_than_2_32=y
|
||||
CT_GLIBC_2_32_or_later=y
|
||||
CT_GLIBC_later_than_2_31=y
|
||||
@ -469,28 +494,28 @@ CT_GLIBC_DEP_PYTHON=y
|
||||
CT_THREADS="nptl"
|
||||
CT_GLIBC_BUILD_SSP=y
|
||||
CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
# CT_GLIBC_USE_LIBIDN_ADDON is not set
|
||||
CT_GLIBC_USE_LIBIDN_ADDON=y
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
CT_GLIBC_ENABLE_DEBUG=y
|
||||
CT_GLIBC_EXTRA_CFLAGS=""
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
CT_GLIBC_FORCE_UNWIND=y
|
||||
# CT_GLIBC_LOCALES is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_AS_HEADERS is not set
|
||||
CT_GLIBC_KERNEL_VERSION_CHOSEN=y
|
||||
CT_GLIBC_MIN_KERNEL_VERSION="5.4.0"
|
||||
CT_GLIBC_MIN_KERNEL="5.4.0"
|
||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||
CT_GLIBC_MIN_KERNEL="6.1.35"
|
||||
CT_GLIBC_SSP_DEFAULT=y
|
||||
# CT_GLIBC_SSP_NO is not set
|
||||
# CT_GLIBC_SSP_YES is not set
|
||||
# CT_GLIBC_SSP_ALL is not set
|
||||
# CT_GLIBC_SSP_STRONG is not set
|
||||
# CT_GLIBC_ENABLE_WERROR is not set
|
||||
CT_GLIBC_ENABLE_WERROR=y
|
||||
# CT_GLIBC_ENABLE_COMMON_FLAG is not set
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
@ -509,6 +534,8 @@ CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_JIT=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
@ -523,26 +550,30 @@ CT_CC_GCC_SHOW=y
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
# CT_GCC_V_12 is not set
|
||||
CT_GCC_V_11=y
|
||||
# CT_GCC_V_13 is not set
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
CT_GCC_VERSION="11.3.0"
|
||||
CT_GCC_VERSION="12.3.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_12_or_older=y
|
||||
CT_GCC_older_than_12=y
|
||||
CT_GCC_13_or_older=y
|
||||
CT_GCC_older_than_13=y
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
@ -569,7 +600,7 @@ CT_CC_GCC_ENABLE_CXX_FLAGS=""
|
||||
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY=""
|
||||
CT_CC_GCC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_CC_GCC_STATIC_LIBSTDCXX=y
|
||||
CT_CC_GCC_SYSTEM_ZLIB=y
|
||||
# CT_CC_GCC_SYSTEM_ZLIB is not set
|
||||
CT_CC_GCC_CONFIG_TLS=m
|
||||
|
||||
#
|
||||
@ -582,12 +613,14 @@ CT_CC_GCC_LTO_ZSTD=m
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
||||
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
||||
CT_CC_GCC_LIBMUDFLAP=y
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
CT_CC_GCC_LIBQUADMATH=y
|
||||
CT_CC_GCC_LIBSANITIZER=y
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSANITIZER is not set
|
||||
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
@ -628,17 +661,20 @@ CT_GDB_PKG_NAME="gdb"
|
||||
CT_GDB_SRC_RELEASE=y
|
||||
# CT_GDB_SRC_DEVEL is not set
|
||||
CT_GDB_PATCH_ORDER="global"
|
||||
CT_GDB_V_12=y
|
||||
CT_GDB_V_13=y
|
||||
# CT_GDB_V_12 is not set
|
||||
# CT_GDB_V_11 is not set
|
||||
# CT_GDB_V_10 is not set
|
||||
# CT_GDB_V_9 is not set
|
||||
# CT_GDB_V_8_3 is not set
|
||||
CT_GDB_VERSION="12.1"
|
||||
CT_GDB_VERSION="13.2"
|
||||
CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)"
|
||||
CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GDB_SIGNATURE_FORMAT=""
|
||||
CT_GDB_later_than_13=y
|
||||
CT_GDB_13_or_later=y
|
||||
CT_GDB_later_than_12=y
|
||||
CT_GDB_12_or_later=y
|
||||
CT_GDB_later_than_11=y
|
||||
@ -650,7 +686,8 @@ CT_GDB_8_3_or_later=y
|
||||
CT_GDB_CROSS=y
|
||||
# CT_GDB_CROSS_STATIC is not set
|
||||
# CT_GDB_CROSS_SIM is not set
|
||||
# CT_GDB_CROSS_PYTHON is not set
|
||||
CT_GDB_CROSS_PYTHON=y
|
||||
CT_GDB_CROSS_PYTHON_BINARY=""
|
||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY=""
|
||||
# CT_GDB_NATIVE is not set
|
||||
CT_GDB_GDBSERVER=y
|
||||
@ -658,7 +695,20 @@ CT_GDB_GDBSERVER=y
|
||||
# CT_GDB_NATIVE_STATIC_LIBSTDCXX is not set
|
||||
CT_GDB_GDBSERVER_TOPLEVEL=y
|
||||
# CT_DEBUG_LTRACE is not set
|
||||
# CT_DEBUG_STRACE is not set
|
||||
CT_DEBUG_STRACE=y
|
||||
CT_DEBUG_STRACE_PKG_KSYM="STRACE"
|
||||
CT_STRACE_DIR_NAME="strace"
|
||||
CT_STRACE_PKG_NAME="strace"
|
||||
CT_STRACE_SRC_RELEASE=y
|
||||
# CT_STRACE_SRC_DEVEL is not set
|
||||
CT_STRACE_PATCH_ORDER="global"
|
||||
CT_STRACE_V_6_4=y
|
||||
CT_STRACE_VERSION="6.4"
|
||||
CT_STRACE_MIRRORS="https://strace.io/files/${CT_STRACE_VERSION} https://github.com/strace/strace/releases/download/v${CT_STRACE_VERSION}"
|
||||
CT_STRACE_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_STRACE_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_STRACE_ARCHIVE_FORMATS=".tar.xz"
|
||||
CT_STRACE_SIGNATURE_FORMAT=""
|
||||
CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# end of Debug facilities
|
||||
|
||||
@ -666,20 +716,7 @@ CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# Companion libraries
|
||||
#
|
||||
# CT_COMPLIBS_CHECK is not set
|
||||
CT_COMP_LIBS_CLOOG=y
|
||||
CT_COMP_LIBS_CLOOG_PKG_KSYM="CLOOG"
|
||||
CT_CLOOG_DIR_NAME="cloog"
|
||||
CT_CLOOG_PKG_NAME="cloog"
|
||||
CT_CLOOG_SRC_RELEASE=y
|
||||
# CT_CLOOG_SRC_DEVEL is not set
|
||||
CT_CLOOG_PATCH_ORDER="global"
|
||||
CT_CLOOG_V_0_18_4=y
|
||||
CT_CLOOG_VERSION="0.18.4"
|
||||
CT_CLOOG_MIRRORS="http://www.bastoul.net/cloog/pages/download"
|
||||
CT_CLOOG_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_CLOOG_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_CLOOG_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_CLOOG_SIGNATURE_FORMAT=""
|
||||
# CT_COMP_LIBS_CLOOG is not set
|
||||
CT_COMP_LIBS_EXPAT=y
|
||||
CT_COMP_LIBS_EXPAT_PKG_KSYM="EXPAT"
|
||||
CT_EXPAT_DIR_NAME="expat"
|
||||
@ -687,8 +724,8 @@ CT_EXPAT_PKG_NAME="expat"
|
||||
CT_EXPAT_SRC_RELEASE=y
|
||||
# CT_EXPAT_SRC_DEVEL is not set
|
||||
CT_EXPAT_PATCH_ORDER="global"
|
||||
CT_EXPAT_V_2_4=y
|
||||
CT_EXPAT_VERSION="2.4.1"
|
||||
CT_EXPAT_V_2_5=y
|
||||
CT_EXPAT_VERSION="2.5.0"
|
||||
CT_EXPAT_MIRRORS="http://downloads.sourceforge.net/project/expat/expat/${CT_EXPAT_VERSION} https://github.com/libexpat/libexpat/releases/download/R_${CT_EXPAT_VERSION//./_}"
|
||||
CT_EXPAT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_EXPAT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -701,17 +738,30 @@ CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
# CT_GETTEXT_V_0_21 is not set
|
||||
CT_GETTEXT_V_0_20_1=y
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.20.1"
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_older_than_0_21=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
@ -734,7 +784,9 @@ CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_24=y
|
||||
CT_ISL_V_0_26=y
|
||||
# CT_ISL_V_0_25 is not set
|
||||
# CT_ISL_V_0_24 is not set
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
@ -744,7 +796,7 @@ CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
CT_ISL_VERSION="0.24"
|
||||
CT_ISL_VERSION="0.26"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -754,7 +806,20 @@ CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
CT_COMP_LIBS_LIBELF=y
|
||||
CT_COMP_LIBS_LIBELF_PKG_KSYM="LIBELF"
|
||||
CT_LIBELF_DIR_NAME="libelf"
|
||||
CT_LIBELF_PKG_NAME="libelf"
|
||||
CT_LIBELF_SRC_RELEASE=y
|
||||
# CT_LIBELF_SRC_DEVEL is not set
|
||||
CT_LIBELF_PATCH_ORDER="global"
|
||||
CT_LIBELF_V_0_8=y
|
||||
CT_LIBELF_VERSION="0.8.13"
|
||||
CT_LIBELF_MIRRORS="https://fossies.org/linux/misc/old http://oe-lite.org/mirror/libelf/ http://ftp.osuosl.org/pub/blfs/conglomeration/libelf/"
|
||||
CT_LIBELF_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LIBELF_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LIBELF_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_LIBELF_SIGNATURE_FORMAT=""
|
||||
CT_COMP_LIBS_LIBICONV=y
|
||||
CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV"
|
||||
CT_LIBICONV_DIR_NAME="libiconv"
|
||||
@ -778,10 +843,8 @@ CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
@ -795,11 +858,9 @@ CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_V_4_2=y
|
||||
CT_MPFR_VERSION="4.2.1"
|
||||
CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
@ -813,10 +874,11 @@ CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
CT_NCURSES_V_6_2=y
|
||||
CT_NCURSES_V_6_4=y
|
||||
# CT_NCURSES_V_6_2 is not set
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
CT_NCURSES_VERSION="6.2"
|
||||
CT_NCURSES_VERSION="6.4"
|
||||
CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)"
|
||||
CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -836,14 +898,29 @@ CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_12=y
|
||||
CT_ZLIB_VERSION="1.2.12"
|
||||
CT_ZLIB_MIRRORS="http://downloads.sourceforge.net/project/libpng/zlib/${CT_ZLIB_VERSION} https://www.zlib.net/ https://www.zlib.net/fossils"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
CT_COMP_LIBS_ZSTD=y
|
||||
CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD"
|
||||
CT_ZSTD_DIR_NAME="zstd"
|
||||
CT_ZSTD_PKG_NAME="zstd"
|
||||
CT_ZSTD_SRC_RELEASE=y
|
||||
# CT_ZSTD_SRC_DEVEL is not set
|
||||
CT_ZSTD_PATCH_ORDER="global"
|
||||
CT_ZSTD_V_1_5_5=y
|
||||
# CT_ZSTD_V_1_5_2 is not set
|
||||
CT_ZSTD_VERSION="1.5.5"
|
||||
CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/"
|
||||
CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_ZSTD_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
@ -853,6 +930,7 @@ CT_MPC_NEEDED=y
|
||||
CT_EXPAT_NEEDED=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_ZSTD_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
@ -862,6 +940,7 @@ CT_MPC=y
|
||||
CT_EXPAT=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
CT_ZSTD=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
||||
# VFP instructions (armhf).
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
||||
# VFP instructions (armhf).
|
||||
@ -38,7 +38,7 @@ ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabi/pkgconfig
|
||||
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 32-bit ARMv7a Linux
|
||||
|
||||
|
@ -1,12 +1,12 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 32-bit ARMv7 Linux
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
# Crosstool-ng version 2024-05-21
|
||||
ENV CT_VERSION crosstool-ng-1.26.0
|
||||
|
||||
#include "common.crosstool"
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.26_db6f703 Configuration
|
||||
# crosstool-NG 1.26.0 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
@ -19,15 +19,15 @@ CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_dtc=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
CT_CONFIGURE_has_md5sum=y
|
||||
CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.26_db6f703"
|
||||
CT_VERSION="1.26.0"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
@ -132,6 +132,7 @@ CT_LOG_FILE_COMPRESS=y
|
||||
# CT_ARCH_ARC is not set
|
||||
CT_ARCH_ARM=y
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_BPF is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
@ -158,7 +159,7 @@ CT_ARCH_ARM_MODE_ARM=y
|
||||
CT_ARCH_ARM_EABI_FORCE=y
|
||||
CT_ARCH_ARM_EABI=y
|
||||
CT_ARCH_ARM_TUPLE_USE_EABIHF=y
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
@ -171,6 +172,7 @@ CT_ARCH_SUPPORTS_BOTH_MMU=y
|
||||
CT_ARCH_DEFAULT_HAS_MMU=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_FLAT_FORMAT=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_EITHER_ENDIAN=y
|
||||
CT_ARCH_DEFAULT_LE=y
|
||||
# CT_ARCH_BE is not set
|
||||
@ -270,10 +272,17 @@ CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
# CT_LINUX_V_6_4 is not set
|
||||
# CT_LINUX_V_6_3 is not set
|
||||
# CT_LINUX_V_6_2 is not set
|
||||
CT_LINUX_V_6_1=y
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
@ -306,12 +315,14 @@ CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
# CT_LINUX_V_3_4 is not set
|
||||
# CT_LINUX_V_3_2 is not set
|
||||
CT_LINUX_VERSION="5.14.18"
|
||||
CT_LINUX_VERSION="6.1.35"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_later_than_5_19=y
|
||||
CT_LINUX_5_19_or_later=y
|
||||
CT_LINUX_later_than_5_12=y
|
||||
CT_LINUX_5_12_or_later=y
|
||||
CT_LINUX_later_than_5_5=y
|
||||
@ -359,9 +370,11 @@ CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
CT_BINUTILS_V_2_40=y
|
||||
# CT_BINUTILS_V_2_39 is not set
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
# CT_BINUTILS_V_2_37 is not set
|
||||
CT_BINUTILS_V_2_36=y
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
# CT_BINUTILS_V_2_35 is not set
|
||||
# CT_BINUTILS_V_2_34 is not set
|
||||
# CT_BINUTILS_V_2_33 is not set
|
||||
@ -372,12 +385,14 @@ CT_BINUTILS_V_2_36=y
|
||||
# CT_BINUTILS_V_2_28 is not set
|
||||
# CT_BINUTILS_V_2_27 is not set
|
||||
# CT_BINUTILS_V_2_26 is not set
|
||||
CT_BINUTILS_VERSION="2.36.1"
|
||||
CT_BINUTILS_VERSION="2.40"
|
||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_later_than_2_39=y
|
||||
CT_BINUTILS_2_39_or_later=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
@ -428,6 +443,9 @@ CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
# CT_GLIBC_V_2_38 is not set
|
||||
# CT_GLIBC_V_2_37 is not set
|
||||
# CT_GLIBC_V_2_36 is not set
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
CT_GLIBC_V_2_34=y
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
@ -449,6 +467,12 @@ CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_38_or_older=y
|
||||
CT_GLIBC_older_than_2_38=y
|
||||
CT_GLIBC_2_37_or_older=y
|
||||
CT_GLIBC_older_than_2_37=y
|
||||
CT_GLIBC_2_36_or_older=y
|
||||
CT_GLIBC_older_than_2_36=y
|
||||
CT_GLIBC_2_34_or_later=y
|
||||
CT_GLIBC_2_34_or_older=y
|
||||
CT_GLIBC_later_than_2_32=y
|
||||
@ -488,6 +512,7 @@ CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
CT_GLIBC_ENABLE_DEBUG=y
|
||||
CT_GLIBC_EXTRA_CFLAGS=""
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
@ -505,7 +530,7 @@ CT_GLIBC_SSP_DEFAULT=y
|
||||
# CT_GLIBC_SSP_STRONG is not set
|
||||
# CT_GLIBC_ENABLE_WERROR is not set
|
||||
# CT_GLIBC_ENABLE_COMMON_FLAG is not set
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
@ -524,6 +549,8 @@ CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_JIT=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
@ -538,26 +565,30 @@ CT_CC_GCC_SHOW=y
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
# CT_GCC_V_12 is not set
|
||||
CT_GCC_V_11=y
|
||||
# CT_GCC_V_13 is not set
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
CT_GCC_VERSION="11.3.0"
|
||||
CT_GCC_VERSION="12.3.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_12_or_older=y
|
||||
CT_GCC_older_than_12=y
|
||||
CT_GCC_13_or_older=y
|
||||
CT_GCC_older_than_13=y
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
@ -597,12 +628,14 @@ CT_CC_GCC_LTO_ZSTD=m
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
||||
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
||||
CT_CC_GCC_LIBMUDFLAP=y
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
CT_CC_GCC_LIBQUADMATH=y
|
||||
CT_CC_GCC_LIBSANITIZER=y
|
||||
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
@ -643,6 +676,7 @@ CT_GDB_PKG_NAME="gdb"
|
||||
CT_GDB_SRC_RELEASE=y
|
||||
# CT_GDB_SRC_DEVEL is not set
|
||||
CT_GDB_PATCH_ORDER="global"
|
||||
# CT_GDB_V_13 is not set
|
||||
CT_GDB_V_12=y
|
||||
# CT_GDB_V_11 is not set
|
||||
# CT_GDB_V_10 is not set
|
||||
@ -654,6 +688,8 @@ CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GDB_SIGNATURE_FORMAT=""
|
||||
CT_GDB_13_or_older=y
|
||||
CT_GDB_older_than_13=y
|
||||
CT_GDB_later_than_12=y
|
||||
CT_GDB_12_or_later=y
|
||||
CT_GDB_later_than_11=y
|
||||
@ -703,8 +739,8 @@ CT_EXPAT_PKG_NAME="expat"
|
||||
CT_EXPAT_SRC_RELEASE=y
|
||||
# CT_EXPAT_SRC_DEVEL is not set
|
||||
CT_EXPAT_PATCH_ORDER="global"
|
||||
CT_EXPAT_V_2_4=y
|
||||
CT_EXPAT_VERSION="2.4.1"
|
||||
CT_EXPAT_V_2_5=y
|
||||
CT_EXPAT_VERSION="2.5.0"
|
||||
CT_EXPAT_MIRRORS="http://downloads.sourceforge.net/project/expat/expat/${CT_EXPAT_VERSION} https://github.com/libexpat/libexpat/releases/download/R_${CT_EXPAT_VERSION//./_}"
|
||||
CT_EXPAT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_EXPAT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -750,6 +786,8 @@ CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
# CT_ISL_V_0_26 is not set
|
||||
# CT_ISL_V_0_25 is not set
|
||||
CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
@ -794,10 +832,8 @@ CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
@ -811,11 +847,9 @@ CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_V_4_2=y
|
||||
CT_MPFR_VERSION="4.2.1"
|
||||
CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
@ -829,6 +863,7 @@ CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
# CT_NCURSES_V_6_4 is not set
|
||||
CT_NCURSES_V_6_2=y
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
@ -852,14 +887,29 @@ CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_12=y
|
||||
CT_ZLIB_VERSION="1.2.12"
|
||||
CT_ZLIB_MIRRORS="http://downloads.sourceforge.net/project/libpng/zlib/${CT_ZLIB_VERSION} https://www.zlib.net/ https://www.zlib.net/fossils"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
CT_COMP_LIBS_ZSTD=y
|
||||
CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD"
|
||||
CT_ZSTD_DIR_NAME="zstd"
|
||||
CT_ZSTD_PKG_NAME="zstd"
|
||||
CT_ZSTD_SRC_RELEASE=y
|
||||
# CT_ZSTD_SRC_DEVEL is not set
|
||||
CT_ZSTD_PATCH_ORDER="global"
|
||||
CT_ZSTD_V_1_5_5=y
|
||||
# CT_ZSTD_V_1_5_2 is not set
|
||||
CT_ZSTD_VERSION="1.5.5"
|
||||
CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/"
|
||||
CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_ZSTD_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
@ -869,6 +919,7 @@ CT_MPC_NEEDED=y
|
||||
CT_EXPAT_NEEDED=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_ZSTD_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
@ -878,6 +929,7 @@ CT_MPC=y
|
||||
CT_EXPAT=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
CT_ZSTD=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE m68k-unknown-uclinux-uclibc
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=m68k-softmmu --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
|
49
linux-ppc/Dockerfile.in
Normal file
49
linux-ppc/Dockerfile.in
Normal file
@ -0,0 +1,49 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com and Fancy2209"
|
||||
|
||||
# Crosstool-ng version 2024-08-04
|
||||
ENV CT_VERSION crosstool-ng-1.26.0
|
||||
|
||||
ARG QEMU_VERSION=6.0.0
|
||||
|
||||
#include "common.crosstool"
|
||||
|
||||
ENV CROSS_TRIPLE powerpc-unknown-linux-gnu
|
||||
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=ppc-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
make install && \
|
||||
cd .. && rm -rf qemu-${QEMU_VERSION}
|
||||
|
||||
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||
CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \
|
||||
CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-g++ \
|
||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||
|
||||
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||
|
||||
WORKDIR /work
|
||||
|
||||
COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_TRIPLE}/Toolchain.cmake
|
||||
|
||||
ENV PKG_CONFIG_PATH /usr/lib/powerpc-unknown-linux-gnu/pkgconfig
|
||||
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||
ENV ARCH powerpc
|
||||
|
||||
#include "common.label-and-env"
|
20
linux-ppc/Toolchain.cmake
Normal file
20
linux-ppc/Toolchain.cmake
Normal file
@ -0,0 +1,20 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(CMAKE_SYSTEM_PROCESSOR ppc)
|
||||
|
||||
set(cross_triple $ENV{CROSS_TRIPLE})
|
||||
set(cross_root $ENV{CROSS_ROOT})
|
||||
|
||||
set(CMAKE_C_COMPILER $ENV{CC})
|
||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
||||
|
||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH ${cross_root} ${cross_root}/${cross_triple})
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||
|
||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-ppc)
|
962
linux-ppc/crosstool-ng.config
Normal file
962
linux-ppc/crosstool-ng.config
Normal file
@ -0,0 +1,962 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.26.0 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_lzip=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_autoreconf_2_65_or_newer=y
|
||||
CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
CT_CONFIGURE_has_md5sum=y
|
||||
CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.26.0"
|
||||
CT_VCHECK="load"
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
CT_CONFIG_VERSION="4"
|
||||
CT_MODULES=y
|
||||
|
||||
#
|
||||
# Paths and misc options
|
||||
#
|
||||
|
||||
#
|
||||
# crosstool-NG behavior
|
||||
#
|
||||
# CT_OBSOLETE is not set
|
||||
# CT_EXPERIMENTAL is not set
|
||||
# CT_DEBUG_CT is not set
|
||||
|
||||
#
|
||||
# Paths
|
||||
#
|
||||
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
||||
CT_SAVE_TARBALLS=y
|
||||
# CT_TARBALLS_BUILDROOT_LAYOUT is not set
|
||||
CT_WORK_DIR="${CT_TOP_DIR}/.build"
|
||||
CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
|
||||
CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build"
|
||||
CT_PREFIX_DIR="${CT_PREFIX:-${HOME}/x-tools}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
|
||||
CT_RM_RF_PREFIX_DIR=y
|
||||
CT_REMOVE_DOCS=y
|
||||
CT_INSTALL_LICENSES=y
|
||||
CT_PREFIX_DIR_RO=y
|
||||
CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y
|
||||
# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set
|
||||
|
||||
#
|
||||
# Downloading
|
||||
#
|
||||
CT_DOWNLOAD_AGENT_CURL=y
|
||||
# CT_DOWNLOAD_AGENT_NONE is not set
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_CURL_OPTIONS="--location --ftp-pasv --retry 3 --fail --silent"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set
|
||||
# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512"
|
||||
# CT_VERIFY_DOWNLOAD_SIGNATURE is not set
|
||||
|
||||
#
|
||||
# Extracting
|
||||
#
|
||||
# CT_FORCE_EXTRACT is not set
|
||||
CT_OVERRIDE_CONFIG_GUESS_SUB=y
|
||||
# CT_ONLY_EXTRACT is not set
|
||||
CT_PATCH_BUNDLED=y
|
||||
# CT_PATCH_BUNDLED_LOCAL is not set
|
||||
CT_PATCH_ORDER="bundled"
|
||||
|
||||
#
|
||||
# Build behavior
|
||||
#
|
||||
CT_PARALLEL_JOBS=0
|
||||
CT_LOAD=""
|
||||
CT_USE_PIPES=y
|
||||
CT_EXTRA_CFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CXXFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_LDFLAGS_FOR_BUILD=""
|
||||
CT_EXTRA_CFLAGS_FOR_HOST=""
|
||||
CT_EXTRA_LDFLAGS_FOR_HOST=""
|
||||
# CT_CONFIG_SHELL_SH is not set
|
||||
# CT_CONFIG_SHELL_ASH is not set
|
||||
CT_CONFIG_SHELL_BASH=y
|
||||
# CT_CONFIG_SHELL_CUSTOM is not set
|
||||
CT_CONFIG_SHELL="${bash}"
|
||||
|
||||
#
|
||||
# Logging
|
||||
#
|
||||
# CT_LOG_ERROR is not set
|
||||
# CT_LOG_WARN is not set
|
||||
# CT_LOG_INFO is not set
|
||||
CT_LOG_EXTRA=y
|
||||
# CT_LOG_ALL is not set
|
||||
# CT_LOG_DEBUG is not set
|
||||
CT_LOG_LEVEL_MAX="EXTRA"
|
||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||
CT_LOG_PROGRESS_BAR=y
|
||||
CT_LOG_TO_FILE=y
|
||||
CT_LOG_FILE_COMPRESS=y
|
||||
# end of Paths and misc options
|
||||
|
||||
#
|
||||
# Target options
|
||||
#
|
||||
# CT_ARCH_ALPHA is not set
|
||||
# CT_ARCH_ARC is not set
|
||||
# CT_ARCH_ARM is not set
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_BPF is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
CT_ARCH_POWERPC=y
|
||||
# CT_ARCH_PRU is not set
|
||||
# CT_ARCH_S390 is not set
|
||||
# CT_ARCH_SH is not set
|
||||
# CT_ARCH_SPARC is not set
|
||||
# CT_ARCH_X86 is not set
|
||||
# CT_ARCH_XTENSA is not set
|
||||
CT_ARCH="powerpc"
|
||||
CT_ARCH_CHOICE_KSYM="POWERPC"
|
||||
CT_ARCH_CPU=""
|
||||
CT_ARCH_TUNE=""
|
||||
CT_ARCH_POWERPC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for powerpc
|
||||
#
|
||||
CT_ARCH_POWERPC_PKG_KSYM=""
|
||||
CT_ARCH_powerpc_ABI=""
|
||||
CT_ARCH_powerpc_ABI_DEFAULT=y
|
||||
# CT_ARCH_powerpc_ABI_SPE is not set
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
#
|
||||
# Generic target options
|
||||
#
|
||||
# CT_MULTILIB is not set
|
||||
CT_DEMULTILIB=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_EITHER_ENDIAN=y
|
||||
CT_ARCH_DEFAULT_BE=y
|
||||
CT_ARCH_BE=y
|
||||
# CT_ARCH_LE is not set
|
||||
CT_ARCH_ENDIAN="big"
|
||||
CT_ARCH_SUPPORTS_32=y
|
||||
CT_ARCH_SUPPORTS_64=y
|
||||
CT_ARCH_DEFAULT_32=y
|
||||
CT_ARCH_BITNESS=32
|
||||
CT_ARCH_32=y
|
||||
# CT_ARCH_64 is not set
|
||||
CT_ARCH_SUPPORTS_WITH_32_64=y
|
||||
|
||||
#
|
||||
# Target optimisations
|
||||
#
|
||||
CT_ARCH_SUPPORTS_WITH_ABI=y
|
||||
CT_ARCH_SUPPORTS_WITH_CPU=y
|
||||
CT_ARCH_SUPPORTS_WITH_TUNE=y
|
||||
CT_ARCH_SUPPORTS_WITH_FLOAT=y
|
||||
CT_ARCH_ABI=""
|
||||
CT_ARCH_FLOAT_AUTO=y
|
||||
# CT_ARCH_FLOAT_HW is not set
|
||||
# CT_ARCH_FLOAT_SW is not set
|
||||
CT_TARGET_CFLAGS=""
|
||||
CT_TARGET_LDFLAGS=""
|
||||
CT_ARCH_FLOAT="auto"
|
||||
# end of Target options
|
||||
|
||||
#
|
||||
# Toolchain options
|
||||
#
|
||||
|
||||
#
|
||||
# General toolchain options
|
||||
#
|
||||
CT_FORCE_SYSROOT=y
|
||||
CT_USE_SYSROOT=y
|
||||
CT_SYSROOT_NAME="sysroot"
|
||||
CT_SYSROOT_DIR_PREFIX=""
|
||||
CT_WANTS_STATIC_LINK=y
|
||||
CT_WANTS_STATIC_LINK_CXX=y
|
||||
# CT_STATIC_TOOLCHAIN is not set
|
||||
CT_SHOW_CT_VERSION=y
|
||||
CT_TOOLCHAIN_PKGVERSION=""
|
||||
CT_TOOLCHAIN_BUGURL=""
|
||||
|
||||
#
|
||||
# Tuple completion and aliasing
|
||||
#
|
||||
CT_TARGET_VENDOR="unknown"
|
||||
CT_TARGET_ALIAS_SED_EXPR=""
|
||||
CT_TARGET_ALIAS=""
|
||||
|
||||
#
|
||||
# Toolchain type
|
||||
#
|
||||
CT_CROSS=y
|
||||
# CT_CANADIAN is not set
|
||||
CT_TOOLCHAIN_TYPE="cross"
|
||||
|
||||
#
|
||||
# Build system
|
||||
#
|
||||
CT_BUILD=""
|
||||
CT_BUILD_PREFIX=""
|
||||
CT_BUILD_SUFFIX=""
|
||||
|
||||
#
|
||||
# Misc options
|
||||
#
|
||||
# CT_TOOLCHAIN_ENABLE_NLS is not set
|
||||
# end of Toolchain options
|
||||
|
||||
#
|
||||
# Operating System
|
||||
#
|
||||
CT_KERNEL_SUPPORTS_SHARED_LIBS=y
|
||||
# CT_KERNEL_BARE_METAL is not set
|
||||
CT_KERNEL_LINUX=y
|
||||
CT_KERNEL="linux"
|
||||
CT_KERNEL_CHOICE_KSYM="LINUX"
|
||||
CT_KERNEL_LINUX_SHOW=y
|
||||
|
||||
#
|
||||
# Options for linux
|
||||
#
|
||||
CT_KERNEL_LINUX_PKG_KSYM="LINUX"
|
||||
CT_LINUX_DIR_NAME="linux"
|
||||
CT_LINUX_USE_WWW_KERNEL_ORG=y
|
||||
# CT_LINUX_USE_ORACLE is not set
|
||||
CT_LINUX_USE="LINUX"
|
||||
CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
CT_LINUX_V_6_4=y
|
||||
# CT_LINUX_V_6_3 is not set
|
||||
# CT_LINUX_V_6_2 is not set
|
||||
# CT_LINUX_V_6_1 is not set
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
# CT_LINUX_V_5_10 is not set
|
||||
# CT_LINUX_V_5_9 is not set
|
||||
# CT_LINUX_V_5_8 is not set
|
||||
# CT_LINUX_V_5_7 is not set
|
||||
# CT_LINUX_V_5_4 is not set
|
||||
# CT_LINUX_V_5_3 is not set
|
||||
# CT_LINUX_V_5_2 is not set
|
||||
# CT_LINUX_V_5_1 is not set
|
||||
# CT_LINUX_V_5_0 is not set
|
||||
# CT_LINUX_V_4_20 is not set
|
||||
# CT_LINUX_V_4_19 is not set
|
||||
# CT_LINUX_V_4_18 is not set
|
||||
# CT_LINUX_V_4_17 is not set
|
||||
# CT_LINUX_V_4_16 is not set
|
||||
# CT_LINUX_V_4_15 is not set
|
||||
# CT_LINUX_V_4_14 is not set
|
||||
# CT_LINUX_V_4_13 is not set
|
||||
# CT_LINUX_V_4_12 is not set
|
||||
# CT_LINUX_V_4_11 is not set
|
||||
# CT_LINUX_V_4_10 is not set
|
||||
# CT_LINUX_V_4_9 is not set
|
||||
# CT_LINUX_V_4_4 is not set
|
||||
# CT_LINUX_V_4_1 is not set
|
||||
# CT_LINUX_V_3_16 is not set
|
||||
# CT_LINUX_V_3_13 is not set
|
||||
# CT_LINUX_V_3_12 is not set
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
# CT_LINUX_V_3_4 is not set
|
||||
# CT_LINUX_V_3_2 is not set
|
||||
CT_LINUX_VERSION="6.4"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_later_than_5_19=y
|
||||
CT_LINUX_5_19_or_later=y
|
||||
CT_LINUX_later_than_5_12=y
|
||||
CT_LINUX_5_12_or_later=y
|
||||
CT_LINUX_later_than_5_5=y
|
||||
CT_LINUX_5_5_or_later=y
|
||||
CT_LINUX_later_than_5_3=y
|
||||
CT_LINUX_5_3_or_later=y
|
||||
CT_LINUX_later_than_4_8=y
|
||||
CT_LINUX_4_8_or_later=y
|
||||
CT_LINUX_later_than_3_7=y
|
||||
CT_LINUX_3_7_or_later=y
|
||||
CT_LINUX_later_than_3_2=y
|
||||
CT_LINUX_3_2_or_later=y
|
||||
CT_LINUX_REQUIRE_3_2_or_later=y
|
||||
CT_KERNEL_DEP_RSYNC=y
|
||||
CT_KERNEL_LINUX_VERBOSITY_0=y
|
||||
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
|
||||
# CT_KERNEL_LINUX_VERBOSITY_2 is not set
|
||||
CT_KERNEL_LINUX_VERBOSE_LEVEL=0
|
||||
CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS"
|
||||
|
||||
#
|
||||
# Common kernel options
|
||||
#
|
||||
CT_SHARED_LIBS=y
|
||||
# end of Operating System
|
||||
|
||||
#
|
||||
# Binary utilities
|
||||
#
|
||||
CT_ARCH_BINFMT_ELF=y
|
||||
CT_BINUTILS_BINUTILS=y
|
||||
CT_BINUTILS="binutils"
|
||||
CT_BINUTILS_CHOICE_KSYM="BINUTILS"
|
||||
CT_BINUTILS_BINUTILS_SHOW=y
|
||||
|
||||
#
|
||||
# Options for binutils
|
||||
#
|
||||
CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS"
|
||||
CT_BINUTILS_DIR_NAME="binutils"
|
||||
CT_BINUTILS_USE_GNU=y
|
||||
# CT_BINUTILS_USE_ORACLE is not set
|
||||
CT_BINUTILS_USE="BINUTILS"
|
||||
CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
CT_BINUTILS_V_2_40=y
|
||||
# CT_BINUTILS_V_2_39 is not set
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
# CT_BINUTILS_V_2_37 is not set
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
# CT_BINUTILS_V_2_35 is not set
|
||||
# CT_BINUTILS_V_2_34 is not set
|
||||
# CT_BINUTILS_V_2_33 is not set
|
||||
# CT_BINUTILS_V_2_32 is not set
|
||||
# CT_BINUTILS_V_2_31 is not set
|
||||
# CT_BINUTILS_V_2_30 is not set
|
||||
# CT_BINUTILS_V_2_29 is not set
|
||||
# CT_BINUTILS_V_2_28 is not set
|
||||
# CT_BINUTILS_V_2_27 is not set
|
||||
# CT_BINUTILS_V_2_26 is not set
|
||||
CT_BINUTILS_VERSION="2.40"
|
||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_later_than_2_39=y
|
||||
CT_BINUTILS_2_39_or_later=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
CT_BINUTILS_2_27_or_later=y
|
||||
CT_BINUTILS_later_than_2_26=y
|
||||
CT_BINUTILS_2_26_or_later=y
|
||||
|
||||
#
|
||||
# GNU binutils
|
||||
#
|
||||
CT_BINUTILS_FORCE_LD_BFD_DEFAULT=y
|
||||
CT_BINUTILS_LINKER_LD=y
|
||||
CT_BINUTILS_LINKERS_LIST="ld"
|
||||
CT_BINUTILS_LINKER_DEFAULT="bfd"
|
||||
CT_BINUTILS_PLUGINS=y
|
||||
CT_BINUTILS_RELRO=m
|
||||
CT_BINUTILS_DETERMINISTIC_ARCHIVES=y
|
||||
CT_BINUTILS_EXTRA_CONFIG_ARRAY=""
|
||||
# CT_BINUTILS_FOR_TARGET is not set
|
||||
CT_ALL_BINUTILS_CHOICES="BINUTILS"
|
||||
# end of Binary utilities
|
||||
|
||||
#
|
||||
# C-library
|
||||
#
|
||||
CT_LIBC_GLIBC=y
|
||||
# CT_LIBC_UCLIBC_NG is not set
|
||||
CT_LIBC="glibc"
|
||||
CT_LIBC_CHOICE_KSYM="GLIBC"
|
||||
CT_LIBC_GLIBC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for glibc
|
||||
#
|
||||
CT_LIBC_GLIBC_PKG_KSYM="GLIBC"
|
||||
CT_GLIBC_DIR_NAME="glibc"
|
||||
CT_GLIBC_USE_GNU=y
|
||||
# CT_GLIBC_USE_ORACLE is not set
|
||||
CT_GLIBC_USE="GLIBC"
|
||||
CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
CT_GLIBC_V_2_38=y
|
||||
# CT_GLIBC_V_2_37 is not set
|
||||
# CT_GLIBC_V_2_36 is not set
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
# CT_GLIBC_V_2_34 is not set
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
# CT_GLIBC_V_2_32 is not set
|
||||
# CT_GLIBC_V_2_31 is not set
|
||||
# CT_GLIBC_V_2_30 is not set
|
||||
# CT_GLIBC_V_2_29 is not set
|
||||
# CT_GLIBC_V_2_28 is not set
|
||||
# CT_GLIBC_V_2_27 is not set
|
||||
# CT_GLIBC_V_2_26 is not set
|
||||
# CT_GLIBC_V_2_25 is not set
|
||||
# CT_GLIBC_V_2_24 is not set
|
||||
# CT_GLIBC_V_2_23 is not set
|
||||
# CT_GLIBC_V_2_19 is not set
|
||||
# CT_GLIBC_V_2_17 is not set
|
||||
CT_GLIBC_VERSION="2.38"
|
||||
CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)"
|
||||
CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_38_or_later=y
|
||||
CT_GLIBC_2_38_or_older=y
|
||||
CT_GLIBC_later_than_2_37=y
|
||||
CT_GLIBC_2_37_or_later=y
|
||||
CT_GLIBC_later_than_2_36=y
|
||||
CT_GLIBC_2_36_or_later=y
|
||||
CT_GLIBC_later_than_2_34=y
|
||||
CT_GLIBC_2_34_or_later=y
|
||||
CT_GLIBC_later_than_2_32=y
|
||||
CT_GLIBC_2_32_or_later=y
|
||||
CT_GLIBC_later_than_2_31=y
|
||||
CT_GLIBC_2_31_or_later=y
|
||||
CT_GLIBC_later_than_2_30=y
|
||||
CT_GLIBC_2_30_or_later=y
|
||||
CT_GLIBC_later_than_2_29=y
|
||||
CT_GLIBC_2_29_or_later=y
|
||||
CT_GLIBC_later_than_2_28=y
|
||||
CT_GLIBC_2_28_or_later=y
|
||||
CT_GLIBC_later_than_2_27=y
|
||||
CT_GLIBC_2_27_or_later=y
|
||||
CT_GLIBC_later_than_2_26=y
|
||||
CT_GLIBC_2_26_or_later=y
|
||||
CT_GLIBC_later_than_2_25=y
|
||||
CT_GLIBC_2_25_or_later=y
|
||||
CT_GLIBC_later_than_2_24=y
|
||||
CT_GLIBC_2_24_or_later=y
|
||||
CT_GLIBC_later_than_2_23=y
|
||||
CT_GLIBC_2_23_or_later=y
|
||||
CT_GLIBC_later_than_2_20=y
|
||||
CT_GLIBC_2_20_or_later=y
|
||||
CT_GLIBC_later_than_2_17=y
|
||||
CT_GLIBC_2_17_or_later=y
|
||||
CT_GLIBC_later_than_2_14=y
|
||||
CT_GLIBC_2_14_or_later=y
|
||||
CT_GLIBC_DEP_KERNEL_HEADERS_VERSION=y
|
||||
CT_GLIBC_DEP_BINUTILS=y
|
||||
CT_GLIBC_DEP_GCC=y
|
||||
CT_GLIBC_DEP_PYTHON=y
|
||||
CT_THREADS="nptl"
|
||||
CT_GLIBC_BUILD_SSP=y
|
||||
CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
# CT_GLIBC_USE_LIBIDN_ADDON is not set
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_HAS_OBSOLETE_LIBCRYPT=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
CT_GLIBC_ENABLE_DEBUG=y
|
||||
CT_GLIBC_EXTRA_CFLAGS=""
|
||||
# CT_GLIBC_ENABLE_OBSOLETE_LIBCRYPT is not set
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
CT_GLIBC_FORCE_UNWIND=y
|
||||
# CT_GLIBC_LOCALES is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||
CT_GLIBC_MIN_KERNEL="6.4"
|
||||
CT_GLIBC_SSP_DEFAULT=y
|
||||
# CT_GLIBC_SSP_NO is not set
|
||||
# CT_GLIBC_SSP_YES is not set
|
||||
# CT_GLIBC_SSP_ALL is not set
|
||||
# CT_GLIBC_SSP_STRONG is not set
|
||||
CT_GLIBC_ENABLE_WERROR=y
|
||||
# CT_GLIBC_ENABLE_COMMON_FLAG is not set
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
#
|
||||
# Common C library options
|
||||
#
|
||||
CT_THREADS_NATIVE=y
|
||||
# CT_CREATE_LDSO_CONF is not set
|
||||
CT_LIBC_XLDD=y
|
||||
# end of C-library
|
||||
|
||||
#
|
||||
# C compiler
|
||||
#
|
||||
CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_JIT=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
CT_CC_GCC=y
|
||||
CT_CC="gcc"
|
||||
CT_CC_CHOICE_KSYM="GCC"
|
||||
CT_CC_GCC_SHOW=y
|
||||
|
||||
#
|
||||
# Options for gcc
|
||||
#
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
CT_GCC_V_13=y
|
||||
# CT_GCC_V_12 is not set
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
CT_GCC_VERSION="13.2.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_later_than_13=y
|
||||
CT_GCC_13_or_later=y
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
CT_GCC_10_or_later=y
|
||||
CT_GCC_later_than_9=y
|
||||
CT_GCC_9_or_later=y
|
||||
CT_GCC_later_than_8=y
|
||||
CT_GCC_8_or_later=y
|
||||
CT_GCC_later_than_7=y
|
||||
CT_GCC_7_or_later=y
|
||||
CT_GCC_later_than_6=y
|
||||
CT_GCC_6_or_later=y
|
||||
CT_GCC_REQUIRE_6_or_later=y
|
||||
CT_GCC_later_than_5=y
|
||||
CT_GCC_5_or_later=y
|
||||
CT_GCC_REQUIRE_5_or_later=y
|
||||
CT_GCC_later_than_4_9=y
|
||||
CT_GCC_4_9_or_later=y
|
||||
CT_GCC_REQUIRE_4_9_or_later=y
|
||||
CT_CC_GCC_ENABLE_PLUGINS=y
|
||||
CT_CC_GCC_HAS_LIBMPX=y
|
||||
CT_CC_GCC_ENABLE_CXX_FLAGS=""
|
||||
CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY=""
|
||||
CT_CC_GCC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_CC_GCC_STATIC_LIBSTDCXX=y
|
||||
# CT_CC_GCC_SYSTEM_ZLIB is not set
|
||||
CT_CC_GCC_CONFIG_TLS=m
|
||||
|
||||
#
|
||||
# Optimisation features
|
||||
#
|
||||
CT_CC_GCC_USE_GRAPHITE=y
|
||||
CT_CC_GCC_USE_LTO=y
|
||||
CT_CC_GCC_LTO_ZSTD=m
|
||||
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
||||
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
||||
# CT_CC_GCC_LIBMUDFLAP is not set
|
||||
# CT_CC_GCC_LIBGOMP is not set
|
||||
# CT_CC_GCC_LIBSSP is not set
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSANITIZER is not set
|
||||
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
#
|
||||
CT_CC_CXA_ATEXIT=y
|
||||
CT_CC_GCC_TM_CLONE_REGISTRY=m
|
||||
# CT_CC_GCC_DISABLE_PCH is not set
|
||||
CT_CC_GCC_SJLJ_EXCEPTIONS=m
|
||||
CT_CC_GCC_LDBL_128=m
|
||||
# CT_CC_GCC_BUILD_ID is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set
|
||||
# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set
|
||||
CT_CC_GCC_LNK_HASH_STYLE=""
|
||||
CT_CC_GCC_DEC_FLOATS_AUTO=y
|
||||
# CT_CC_GCC_DEC_FLOATS_BID is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_DPD is not set
|
||||
# CT_CC_GCC_DEC_FLOATS_NO is not set
|
||||
CT_CC_GCC_DEC_FLOATS=""
|
||||
CT_ALL_CC_CHOICES="GCC"
|
||||
|
||||
#
|
||||
# Additional supported languages:
|
||||
#
|
||||
CT_CC_LANG_CXX=y
|
||||
# CT_CC_LANG_FORTRAN is not set
|
||||
# end of C compiler
|
||||
|
||||
#
|
||||
# Debug facilities
|
||||
#
|
||||
CT_DEBUG_DUMA=y
|
||||
CT_DEBUG_DUMA_PKG_KSYM="DUMA"
|
||||
CT_DUMA_DIR_NAME="duma"
|
||||
CT_DUMA_PKG_NAME="duma"
|
||||
CT_DUMA_SRC_RELEASE=y
|
||||
# CT_DUMA_SRC_DEVEL is not set
|
||||
CT_DUMA_PATCH_ORDER="global"
|
||||
CT_DUMA_V_2_5_21=y
|
||||
CT_DUMA_VERSION="2_5_21"
|
||||
CT_DUMA_MIRRORS="https://github.com/johnsonjh/duma/archive/refs/tags"
|
||||
CT_DUMA_ARCHIVE_FILENAME="VERSION_@{version}"
|
||||
CT_DUMA_ARCHIVE_DIRNAME="@{pkg_name}-VERSION_@{version}"
|
||||
CT_DUMA_ARCHIVE_FORMATS=".tar.gz .zip"
|
||||
CT_DUMA_SIGNATURE_FORMAT=""
|
||||
CT_DUMA_SO=y
|
||||
CT_DUMA_CUSTOM_WRAPPER=y
|
||||
CT_DEBUG_GDB=y
|
||||
CT_DEBUG_GDB_PKG_KSYM="GDB"
|
||||
CT_GDB_DIR_NAME="gdb"
|
||||
CT_GDB_PKG_NAME="gdb"
|
||||
CT_GDB_SRC_RELEASE=y
|
||||
# CT_GDB_SRC_DEVEL is not set
|
||||
CT_GDB_PATCH_ORDER="global"
|
||||
CT_GDB_V_13=y
|
||||
# CT_GDB_V_12 is not set
|
||||
# CT_GDB_V_11 is not set
|
||||
# CT_GDB_V_10 is not set
|
||||
# CT_GDB_V_9 is not set
|
||||
# CT_GDB_V_8_3 is not set
|
||||
CT_GDB_VERSION="13.2"
|
||||
CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)"
|
||||
CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GDB_SIGNATURE_FORMAT=""
|
||||
CT_GDB_later_than_13=y
|
||||
CT_GDB_13_or_later=y
|
||||
CT_GDB_later_than_12=y
|
||||
CT_GDB_12_or_later=y
|
||||
CT_GDB_later_than_11=y
|
||||
CT_GDB_11_or_later=y
|
||||
CT_GDB_later_than_10=y
|
||||
CT_GDB_10_or_later=y
|
||||
CT_GDB_later_than_8_3=y
|
||||
CT_GDB_8_3_or_later=y
|
||||
CT_GDB_CROSS=y
|
||||
# CT_GDB_CROSS_STATIC is not set
|
||||
# CT_GDB_CROSS_SIM is not set
|
||||
# CT_GDB_CROSS_PYTHON is not set
|
||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY=""
|
||||
CT_GDB_NATIVE=y
|
||||
CT_GDB_GDBSERVER=y
|
||||
# CT_GDB_NATIVE_BUILD_IPA_LIB is not set
|
||||
# CT_GDB_NATIVE_STATIC_LIBSTDCXX is not set
|
||||
CT_GDB_GDBSERVER_TOPLEVEL=y
|
||||
# CT_DEBUG_LTRACE is not set
|
||||
CT_DEBUG_STRACE=y
|
||||
CT_DEBUG_STRACE_PKG_KSYM="STRACE"
|
||||
CT_STRACE_DIR_NAME="strace"
|
||||
CT_STRACE_PKG_NAME="strace"
|
||||
CT_STRACE_SRC_RELEASE=y
|
||||
# CT_STRACE_SRC_DEVEL is not set
|
||||
CT_STRACE_PATCH_ORDER="global"
|
||||
CT_STRACE_V_6_4=y
|
||||
CT_STRACE_VERSION="6.4"
|
||||
CT_STRACE_MIRRORS="https://strace.io/files/${CT_STRACE_VERSION} https://github.com/strace/strace/releases/download/v${CT_STRACE_VERSION}"
|
||||
CT_STRACE_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_STRACE_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_STRACE_ARCHIVE_FORMATS=".tar.xz"
|
||||
CT_STRACE_SIGNATURE_FORMAT=""
|
||||
CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE"
|
||||
# end of Debug facilities
|
||||
|
||||
#
|
||||
# Companion libraries
|
||||
#
|
||||
# CT_COMPLIBS_CHECK is not set
|
||||
# CT_COMP_LIBS_CLOOG is not set
|
||||
CT_COMP_LIBS_EXPAT=y
|
||||
CT_COMP_LIBS_EXPAT_PKG_KSYM="EXPAT"
|
||||
CT_EXPAT_DIR_NAME="expat"
|
||||
CT_EXPAT_PKG_NAME="expat"
|
||||
CT_EXPAT_SRC_RELEASE=y
|
||||
# CT_EXPAT_SRC_DEVEL is not set
|
||||
CT_EXPAT_PATCH_ORDER="global"
|
||||
CT_EXPAT_V_2_5=y
|
||||
CT_EXPAT_VERSION="2.5.0"
|
||||
CT_EXPAT_MIRRORS="http://downloads.sourceforge.net/project/expat/expat/${CT_EXPAT_VERSION} https://github.com/libexpat/libexpat/releases/download/R_${CT_EXPAT_VERSION//./_}"
|
||||
CT_EXPAT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_EXPAT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_EXPAT_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2 .tar.gz"
|
||||
CT_EXPAT_SIGNATURE_FORMAT=""
|
||||
CT_COMP_LIBS_GETTEXT=y
|
||||
CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT"
|
||||
CT_GETTEXT_DIR_NAME="gettext"
|
||||
CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
CT_GMP_PKG_NAME="gmp"
|
||||
CT_GMP_SRC_RELEASE=y
|
||||
# CT_GMP_SRC_DEVEL is not set
|
||||
CT_GMP_PATCH_ORDER="global"
|
||||
CT_GMP_V_6_2=y
|
||||
# CT_GMP_V_6_1 is not set
|
||||
CT_GMP_VERSION="6.2.1"
|
||||
CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)"
|
||||
CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2"
|
||||
CT_GMP_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_ISL=y
|
||||
CT_COMP_LIBS_ISL_PKG_KSYM="ISL"
|
||||
CT_ISL_DIR_NAME="isl"
|
||||
CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_26=y
|
||||
# CT_ISL_V_0_25 is not set
|
||||
# CT_ISL_V_0_24 is not set
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
# CT_ISL_V_0_20 is not set
|
||||
# CT_ISL_V_0_19 is not set
|
||||
# CT_ISL_V_0_18 is not set
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
CT_ISL_VERSION="0.26"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_ISL_SIGNATURE_FORMAT=""
|
||||
CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
CT_COMP_LIBS_LIBICONV=y
|
||||
CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV"
|
||||
CT_LIBICONV_DIR_NAME="libiconv"
|
||||
CT_LIBICONV_PKG_NAME="libiconv"
|
||||
CT_LIBICONV_SRC_RELEASE=y
|
||||
# CT_LIBICONV_SRC_DEVEL is not set
|
||||
CT_LIBICONV_PATCH_ORDER="global"
|
||||
CT_LIBICONV_V_1_16=y
|
||||
# CT_LIBICONV_V_1_15 is not set
|
||||
CT_LIBICONV_VERSION="1.16"
|
||||
CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)"
|
||||
CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_COMP_LIBS_MPC=y
|
||||
CT_COMP_LIBS_MPC_PKG_KSYM="MPC"
|
||||
CT_MPC_DIR_NAME="mpc"
|
||||
CT_MPC_PKG_NAME="mpc"
|
||||
CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_MPC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_MPC_later_than_1_1_0=y
|
||||
CT_MPC_1_1_0_or_later=y
|
||||
CT_COMP_LIBS_MPFR=y
|
||||
CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR"
|
||||
CT_MPFR_DIR_NAME="mpfr"
|
||||
CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_2=y
|
||||
CT_MPFR_VERSION="4.2.1"
|
||||
CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
CT_MPFR_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_MPFR_later_than_4_0_0=y
|
||||
CT_MPFR_4_0_0_or_later=y
|
||||
CT_COMP_LIBS_NCURSES=y
|
||||
CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES"
|
||||
CT_NCURSES_DIR_NAME="ncurses"
|
||||
CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
CT_NCURSES_V_6_4=y
|
||||
# CT_NCURSES_V_6_2 is not set
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
CT_NCURSES_VERSION="6.4"
|
||||
CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)"
|
||||
CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_NCURSES_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_NCURSES_NEW_ABI=y
|
||||
CT_NCURSES_HOST_CONFIG_ARGS=""
|
||||
CT_NCURSES_HOST_DISABLE_DB=y
|
||||
CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100"
|
||||
CT_NCURSES_TARGET_CONFIG_ARGS=""
|
||||
# CT_NCURSES_TARGET_DISABLE_DB is not set
|
||||
CT_NCURSES_TARGET_FALLBACKS=""
|
||||
CT_COMP_LIBS_ZLIB=y
|
||||
CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB"
|
||||
CT_ZLIB_DIR_NAME="zlib"
|
||||
CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_COMP_LIBS_ZSTD=y
|
||||
CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD"
|
||||
CT_ZSTD_DIR_NAME="zstd"
|
||||
CT_ZSTD_PKG_NAME="zstd"
|
||||
CT_ZSTD_SRC_RELEASE=y
|
||||
# CT_ZSTD_SRC_DEVEL is not set
|
||||
CT_ZSTD_PATCH_ORDER="global"
|
||||
CT_ZSTD_V_1_5_5=y
|
||||
# CT_ZSTD_V_1_5_2 is not set
|
||||
CT_ZSTD_VERSION="1.5.5"
|
||||
CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/"
|
||||
CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_ZSTD_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
CT_GMP_TARGET=y
|
||||
CT_MPFR_NEEDED=y
|
||||
CT_MPFR_TARGET=y
|
||||
CT_ISL_NEEDED=y
|
||||
CT_MPC_NEEDED=y
|
||||
CT_EXPAT_NEEDED=y
|
||||
CT_EXPAT_TARGET=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_NCURSES_TARGET=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_ZSTD_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
CT_MPFR=y
|
||||
CT_ISL=y
|
||||
CT_MPC=y
|
||||
CT_EXPAT=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
CT_ZSTD=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
# Companion tools
|
||||
#
|
||||
# CT_COMP_TOOLS_FOR_HOST is not set
|
||||
# CT_COMP_TOOLS_AUTOCONF is not set
|
||||
# CT_COMP_TOOLS_AUTOMAKE is not set
|
||||
# CT_COMP_TOOLS_BISON is not set
|
||||
# CT_COMP_TOOLS_DTC is not set
|
||||
# CT_COMP_TOOLS_LIBTOOL is not set
|
||||
# CT_COMP_TOOLS_M4 is not set
|
||||
# CT_COMP_TOOLS_MAKE is not set
|
||||
CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE"
|
||||
# end of Companion tools
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2023-09-21
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE powerpc64le-unknown-linux-gnu
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=ppc64le-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
|
@ -1,10 +1,10 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
# Crosstool-ng version 2024-08-04
|
||||
ENV CT_VERSION crosstool-ng-1.26.0
|
||||
|
||||
ARG QEMU_VERSION=6.0.0
|
||||
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE powerpc64le-unknown-linux-gnu
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=ppc64le-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
|
@ -1,16 +1,16 @@
|
||||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# crosstool-NG 1.25.0.26_db6f703 Configuration
|
||||
# crosstool-NG 1.26.0 Configuration
|
||||
#
|
||||
CT_CONFIGURE_has_static_link=y
|
||||
CT_CONFIGURE_has_cxx11=y
|
||||
CT_CONFIGURE_has_wget=y
|
||||
CT_CONFIGURE_has_curl=y
|
||||
CT_CONFIGURE_has_meson=y
|
||||
CT_CONFIGURE_has_ninja=y
|
||||
CT_CONFIGURE_has_rsync=y
|
||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||
CT_CONFIGURE_has_make_4_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtool_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_libtoolize_2_4_or_newer=y
|
||||
CT_CONFIGURE_has_autoconf_2_65_or_newer=y
|
||||
@ -19,6 +19,7 @@ CT_CONFIGURE_has_automake_1_15_or_newer=y
|
||||
CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y
|
||||
CT_CONFIGURE_has_python_3_4_or_newer=y
|
||||
CT_CONFIGURE_has_bison_2_7_or_newer=y
|
||||
CT_CONFIGURE_has_bison_3_0_4_or_newer=y
|
||||
CT_CONFIGURE_has_python=y
|
||||
CT_CONFIGURE_has_dtc=y
|
||||
CT_CONFIGURE_has_git=y
|
||||
@ -27,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y
|
||||
CT_CONFIGURE_has_sha256sum=y
|
||||
CT_CONFIGURE_has_sha512sum=y
|
||||
CT_CONFIGURE_has_install_with_strip_program=y
|
||||
CT_VERSION="1.25.0.26_db6f703"
|
||||
CT_VERSION="1.26.0"
|
||||
CT_VCHECK=""
|
||||
CT_CONFIG_VERSION_ENV="4"
|
||||
CT_CONFIG_VERSION_CURRENT="4"
|
||||
@ -71,7 +72,7 @@ CT_DOWNLOAD_AGENT_WGET=y
|
||||
# CT_FORBID_DOWNLOAD is not set
|
||||
# CT_FORCE_DOWNLOAD is not set
|
||||
CT_CONNECT_TIMEOUT=10
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=3 -nc --progress=dot:binary"
|
||||
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=5 -nc --progress=dot:binary"
|
||||
# CT_ONLY_DOWNLOAD is not set
|
||||
# CT_USE_MIRROR is not set
|
||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||
@ -132,6 +133,7 @@ CT_LOG_FILE_COMPRESS=y
|
||||
# CT_ARCH_ARC is not set
|
||||
# CT_ARCH_ARM is not set
|
||||
# CT_ARCH_AVR is not set
|
||||
# CT_ARCH_BPF is not set
|
||||
# CT_ARCH_M68K is not set
|
||||
# CT_ARCH_MIPS is not set
|
||||
# CT_ARCH_NIOS2 is not set
|
||||
@ -155,7 +157,7 @@ CT_ARCH_POWERPC_PKG_KSYM=""
|
||||
CT_ARCH_powerpc_ABI=""
|
||||
CT_ARCH_powerpc_ABI_DEFAULT=y
|
||||
# CT_ARCH_powerpc_ABI_SPE is not set
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR C6X M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 POWERPC PRU RISCV S390 SH SPARC X86 XTENSA"
|
||||
CT_ARCH_SUFFIX=""
|
||||
# CT_OMIT_TARGET_VENDOR is not set
|
||||
|
||||
@ -165,6 +167,7 @@ CT_ARCH_SUFFIX=""
|
||||
# CT_MULTILIB is not set
|
||||
CT_DEMULTILIB=y
|
||||
CT_ARCH_USE_MMU=y
|
||||
CT_ARCH_SUPPORTS_LIBSANITIZER=y
|
||||
CT_ARCH_SUPPORTS_EITHER_ENDIAN=y
|
||||
CT_ARCH_DEFAULT_BE=y
|
||||
# CT_ARCH_BE is not set
|
||||
@ -215,7 +218,7 @@ CT_TOOLCHAIN_BUGURL=""
|
||||
#
|
||||
# Tuple completion and aliasing
|
||||
#
|
||||
CT_TARGET_VENDOR=""
|
||||
CT_TARGET_VENDOR="unknown"
|
||||
CT_TARGET_ALIAS_SED_EXPR=""
|
||||
CT_TARGET_ALIAS=""
|
||||
|
||||
@ -261,10 +264,17 @@ CT_LINUX_PKG_NAME="linux"
|
||||
CT_LINUX_SRC_RELEASE=y
|
||||
# CT_LINUX_SRC_DEVEL is not set
|
||||
CT_LINUX_PATCH_ORDER="global"
|
||||
# CT_LINUX_V_6_4 is not set
|
||||
# CT_LINUX_V_6_3 is not set
|
||||
# CT_LINUX_V_6_2 is not set
|
||||
CT_LINUX_V_6_1=y
|
||||
# CT_LINUX_V_6_0 is not set
|
||||
# CT_LINUX_V_5_19 is not set
|
||||
# CT_LINUX_V_5_18 is not set
|
||||
# CT_LINUX_V_5_17 is not set
|
||||
# CT_LINUX_V_5_16 is not set
|
||||
# CT_LINUX_V_5_15 is not set
|
||||
CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_5_14 is not set
|
||||
# CT_LINUX_V_5_13 is not set
|
||||
# CT_LINUX_V_5_12 is not set
|
||||
# CT_LINUX_V_5_11 is not set
|
||||
@ -297,12 +307,14 @@ CT_LINUX_V_5_14=y
|
||||
# CT_LINUX_V_3_10 is not set
|
||||
# CT_LINUX_V_3_4 is not set
|
||||
# CT_LINUX_V_3_2 is not set
|
||||
CT_LINUX_VERSION="5.14.18"
|
||||
CT_LINUX_VERSION="6.1.35"
|
||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign"
|
||||
CT_LINUX_later_than_5_19=y
|
||||
CT_LINUX_5_19_or_later=y
|
||||
CT_LINUX_later_than_5_12=y
|
||||
CT_LINUX_5_12_or_later=y
|
||||
CT_LINUX_later_than_5_5=y
|
||||
@ -350,6 +362,8 @@ CT_BINUTILS_PKG_NAME="binutils"
|
||||
CT_BINUTILS_SRC_RELEASE=y
|
||||
# CT_BINUTILS_SRC_DEVEL is not set
|
||||
CT_BINUTILS_PATCH_ORDER="global"
|
||||
# CT_BINUTILS_V_2_40 is not set
|
||||
# CT_BINUTILS_V_2_39 is not set
|
||||
# CT_BINUTILS_V_2_38 is not set
|
||||
CT_BINUTILS_V_2_37=y
|
||||
# CT_BINUTILS_V_2_36 is not set
|
||||
@ -369,6 +383,8 @@ CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_BINUTILS_2_39_or_older=y
|
||||
CT_BINUTILS_older_than_2_39=y
|
||||
CT_BINUTILS_later_than_2_30=y
|
||||
CT_BINUTILS_2_30_or_later=y
|
||||
CT_BINUTILS_later_than_2_27=y
|
||||
@ -412,8 +428,11 @@ CT_GLIBC_PKG_NAME="glibc"
|
||||
CT_GLIBC_SRC_RELEASE=y
|
||||
# CT_GLIBC_SRC_DEVEL is not set
|
||||
CT_GLIBC_PATCH_ORDER="global"
|
||||
# CT_GLIBC_V_2_38 is not set
|
||||
# CT_GLIBC_V_2_37 is not set
|
||||
CT_GLIBC_V_2_36=y
|
||||
# CT_GLIBC_V_2_35 is not set
|
||||
CT_GLIBC_V_2_34=y
|
||||
# CT_GLIBC_V_2_34 is not set
|
||||
# CT_GLIBC_V_2_33 is not set
|
||||
# CT_GLIBC_V_2_32 is not set
|
||||
# CT_GLIBC_V_2_31 is not set
|
||||
@ -427,14 +446,20 @@ CT_GLIBC_V_2_34=y
|
||||
# CT_GLIBC_V_2_23 is not set
|
||||
# CT_GLIBC_V_2_19 is not set
|
||||
# CT_GLIBC_V_2_17 is not set
|
||||
CT_GLIBC_VERSION="2.34"
|
||||
CT_GLIBC_VERSION="2.36"
|
||||
CT_GLIBC_MIRRORS="$(CT_Mirrors GNU glibc)"
|
||||
CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GLIBC_2_38_or_older=y
|
||||
CT_GLIBC_older_than_2_38=y
|
||||
CT_GLIBC_2_37_or_older=y
|
||||
CT_GLIBC_older_than_2_37=y
|
||||
CT_GLIBC_2_36_or_later=y
|
||||
CT_GLIBC_2_36_or_older=y
|
||||
CT_GLIBC_later_than_2_34=y
|
||||
CT_GLIBC_2_34_or_later=y
|
||||
CT_GLIBC_2_34_or_older=y
|
||||
CT_GLIBC_later_than_2_32=y
|
||||
CT_GLIBC_2_32_or_later=y
|
||||
CT_GLIBC_later_than_2_31=y
|
||||
@ -472,24 +497,24 @@ CT_GLIBC_HAS_LIBIDN_ADDON=y
|
||||
CT_GLIBC_NO_SPARC_V8=y
|
||||
CT_GLIBC_EXTRA_CONFIG_ARRAY=""
|
||||
CT_GLIBC_CONFIGPARMS=""
|
||||
CT_GLIBC_ENABLE_DEBUG=y
|
||||
CT_GLIBC_EXTRA_CFLAGS=""
|
||||
# CT_GLIBC_DISABLE_VERSIONING is not set
|
||||
CT_GLIBC_OLDEST_ABI=""
|
||||
CT_GLIBC_FORCE_UNWIND=y
|
||||
# CT_GLIBC_LOCALES is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||
# CT_GLIBC_KERNEL_VERSION_AS_HEADERS is not set
|
||||
CT_GLIBC_KERNEL_VERSION_CHOSEN=y
|
||||
CT_GLIBC_MIN_KERNEL_VERSION="5.4.0"
|
||||
CT_GLIBC_MIN_KERNEL="5.4.0"
|
||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||
CT_GLIBC_MIN_KERNEL="6.1.35"
|
||||
CT_GLIBC_SSP_DEFAULT=y
|
||||
# CT_GLIBC_SSP_NO is not set
|
||||
# CT_GLIBC_SSP_YES is not set
|
||||
# CT_GLIBC_SSP_ALL is not set
|
||||
# CT_GLIBC_SSP_STRONG is not set
|
||||
# CT_GLIBC_ENABLE_WERROR is not set
|
||||
CT_GLIBC_ENABLE_WERROR=y
|
||||
# CT_GLIBC_ENABLE_COMMON_FLAG is not set
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE UCLIBC_NG"
|
||||
CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG"
|
||||
CT_LIBC_SUPPORT_THREADS_ANY=y
|
||||
CT_LIBC_SUPPORT_THREADS_NATIVE=y
|
||||
|
||||
@ -508,6 +533,8 @@ CT_CC_CORE_NEEDED=y
|
||||
CT_CC_SUPPORT_CXX=y
|
||||
CT_CC_SUPPORT_FORTRAN=y
|
||||
CT_CC_SUPPORT_ADA=y
|
||||
CT_CC_SUPPORT_D=y
|
||||
CT_CC_SUPPORT_JIT=y
|
||||
CT_CC_SUPPORT_OBJC=y
|
||||
CT_CC_SUPPORT_OBJCXX=y
|
||||
CT_CC_SUPPORT_GOLANG=y
|
||||
@ -522,26 +549,30 @@ CT_CC_GCC_SHOW=y
|
||||
CT_CC_GCC_PKG_KSYM="GCC"
|
||||
CT_GCC_DIR_NAME="gcc"
|
||||
CT_GCC_USE_GNU=y
|
||||
# CT_GCC_USE_ORACLE is not set
|
||||
CT_GCC_USE="GCC"
|
||||
CT_GCC_PKG_NAME="gcc"
|
||||
CT_GCC_SRC_RELEASE=y
|
||||
# CT_GCC_SRC_DEVEL is not set
|
||||
CT_GCC_PATCH_ORDER="global"
|
||||
# CT_GCC_V_12 is not set
|
||||
CT_GCC_V_11=y
|
||||
# CT_GCC_V_13 is not set
|
||||
CT_GCC_V_12=y
|
||||
# CT_GCC_V_11 is not set
|
||||
# CT_GCC_V_10 is not set
|
||||
# CT_GCC_V_9 is not set
|
||||
# CT_GCC_V_8 is not set
|
||||
# CT_GCC_V_7 is not set
|
||||
# CT_GCC_V_6 is not set
|
||||
CT_GCC_VERSION="11.3.0"
|
||||
CT_GCC_VERSION="12.3.0"
|
||||
CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})"
|
||||
CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GCC_SIGNATURE_FORMAT=""
|
||||
CT_GCC_12_or_older=y
|
||||
CT_GCC_older_than_12=y
|
||||
CT_GCC_13_or_older=y
|
||||
CT_GCC_older_than_13=y
|
||||
CT_GCC_later_than_12=y
|
||||
CT_GCC_12_or_later=y
|
||||
CT_GCC_later_than_11=y
|
||||
CT_GCC_11_or_later=y
|
||||
CT_GCC_later_than_10=y
|
||||
@ -580,12 +611,14 @@ CT_CC_GCC_LTO_ZSTD=m
|
||||
#
|
||||
# Settings for libraries running on target
|
||||
#
|
||||
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
||||
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
||||
CT_CC_GCC_LIBMUDFLAP=y
|
||||
CT_CC_GCC_LIBGOMP=y
|
||||
CT_CC_GCC_LIBSSP=m
|
||||
CT_CC_GCC_LIBQUADMATH=y
|
||||
CT_CC_GCC_LIBSANITIZER=y
|
||||
# CT_CC_GCC_LIBQUADMATH is not set
|
||||
# CT_CC_GCC_LIBSANITIZER is not set
|
||||
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
||||
|
||||
#
|
||||
# Misc. obscure options.
|
||||
@ -612,7 +645,7 @@ CT_ALL_CC_CHOICES="GCC"
|
||||
# Additional supported languages:
|
||||
#
|
||||
CT_CC_LANG_CXX=y
|
||||
CT_CC_LANG_FORTRAN=y
|
||||
# CT_CC_LANG_FORTRAN is not set
|
||||
# end of C compiler
|
||||
|
||||
#
|
||||
@ -626,17 +659,20 @@ CT_GDB_PKG_NAME="gdb"
|
||||
CT_GDB_SRC_RELEASE=y
|
||||
# CT_GDB_SRC_DEVEL is not set
|
||||
CT_GDB_PATCH_ORDER="global"
|
||||
CT_GDB_V_12=y
|
||||
CT_GDB_V_13=y
|
||||
# CT_GDB_V_12 is not set
|
||||
# CT_GDB_V_11 is not set
|
||||
# CT_GDB_V_10 is not set
|
||||
# CT_GDB_V_9 is not set
|
||||
# CT_GDB_V_8_3 is not set
|
||||
CT_GDB_VERSION="12.1"
|
||||
CT_GDB_VERSION="13.2"
|
||||
CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)"
|
||||
CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GDB_SIGNATURE_FORMAT=""
|
||||
CT_GDB_later_than_13=y
|
||||
CT_GDB_13_or_later=y
|
||||
CT_GDB_later_than_12=y
|
||||
CT_GDB_12_or_later=y
|
||||
CT_GDB_later_than_11=y
|
||||
@ -685,8 +721,8 @@ CT_EXPAT_PKG_NAME="expat"
|
||||
CT_EXPAT_SRC_RELEASE=y
|
||||
# CT_EXPAT_SRC_DEVEL is not set
|
||||
CT_EXPAT_PATCH_ORDER="global"
|
||||
CT_EXPAT_V_2_4=y
|
||||
CT_EXPAT_VERSION="2.4.1"
|
||||
CT_EXPAT_V_2_5=y
|
||||
CT_EXPAT_VERSION="2.5.0"
|
||||
CT_EXPAT_MIRRORS="http://downloads.sourceforge.net/project/expat/expat/${CT_EXPAT_VERSION} https://github.com/libexpat/libexpat/releases/download/R_${CT_EXPAT_VERSION//./_}"
|
||||
CT_EXPAT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_EXPAT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -699,17 +735,30 @@ CT_GETTEXT_PKG_NAME="gettext"
|
||||
CT_GETTEXT_SRC_RELEASE=y
|
||||
# CT_GETTEXT_SRC_DEVEL is not set
|
||||
CT_GETTEXT_PATCH_ORDER="global"
|
||||
# CT_GETTEXT_V_0_21 is not set
|
||||
CT_GETTEXT_V_0_20_1=y
|
||||
CT_GETTEXT_V_0_21=y
|
||||
# CT_GETTEXT_V_0_20_1 is not set
|
||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||
CT_GETTEXT_VERSION="0.20.1"
|
||||
CT_GETTEXT_VERSION="0.21"
|
||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_GETTEXT_0_21_or_later=y
|
||||
CT_GETTEXT_0_21_or_older=y
|
||||
CT_GETTEXT_older_than_0_21=y
|
||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||
|
||||
#
|
||||
# This version of gettext is not compatible with uClibc-NG. Select
|
||||
#
|
||||
|
||||
#
|
||||
# a different version if uClibc-NG is used on the target or (in a
|
||||
#
|
||||
|
||||
#
|
||||
# Canadian cross build) on the host.
|
||||
#
|
||||
CT_COMP_LIBS_GMP=y
|
||||
CT_COMP_LIBS_GMP_PKG_KSYM="GMP"
|
||||
CT_GMP_DIR_NAME="gmp"
|
||||
@ -732,7 +781,9 @@ CT_ISL_PKG_NAME="isl"
|
||||
CT_ISL_SRC_RELEASE=y
|
||||
# CT_ISL_SRC_DEVEL is not set
|
||||
CT_ISL_PATCH_ORDER="global"
|
||||
CT_ISL_V_0_24=y
|
||||
CT_ISL_V_0_26=y
|
||||
# CT_ISL_V_0_25 is not set
|
||||
# CT_ISL_V_0_24 is not set
|
||||
# CT_ISL_V_0_23 is not set
|
||||
# CT_ISL_V_0_22 is not set
|
||||
# CT_ISL_V_0_21 is not set
|
||||
@ -742,7 +793,7 @@ CT_ISL_V_0_24=y
|
||||
# CT_ISL_V_0_17 is not set
|
||||
# CT_ISL_V_0_16 is not set
|
||||
# CT_ISL_V_0_15 is not set
|
||||
CT_ISL_VERSION="0.24"
|
||||
CT_ISL_VERSION="0.26"
|
||||
CT_ISL_MIRRORS="https://libisl.sourceforge.io"
|
||||
CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -752,7 +803,20 @@ CT_ISL_later_than_0_18=y
|
||||
CT_ISL_0_18_or_later=y
|
||||
CT_ISL_later_than_0_15=y
|
||||
CT_ISL_0_15_or_later=y
|
||||
# CT_COMP_LIBS_LIBELF is not set
|
||||
CT_COMP_LIBS_LIBELF=y
|
||||
CT_COMP_LIBS_LIBELF_PKG_KSYM="LIBELF"
|
||||
CT_LIBELF_DIR_NAME="libelf"
|
||||
CT_LIBELF_PKG_NAME="libelf"
|
||||
CT_LIBELF_SRC_RELEASE=y
|
||||
# CT_LIBELF_SRC_DEVEL is not set
|
||||
CT_LIBELF_PATCH_ORDER="global"
|
||||
CT_LIBELF_V_0_8=y
|
||||
CT_LIBELF_VERSION="0.8.13"
|
||||
CT_LIBELF_MIRRORS="https://fossies.org/linux/misc/old http://oe-lite.org/mirror/libelf/ http://ftp.osuosl.org/pub/blfs/conglomeration/libelf/"
|
||||
CT_LIBELF_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_LIBELF_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_LIBELF_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_LIBELF_SIGNATURE_FORMAT=""
|
||||
CT_COMP_LIBS_LIBICONV=y
|
||||
CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV"
|
||||
CT_LIBICONV_DIR_NAME="libiconv"
|
||||
@ -776,10 +840,8 @@ CT_MPC_SRC_RELEASE=y
|
||||
# CT_MPC_SRC_DEVEL is not set
|
||||
CT_MPC_PATCH_ORDER="global"
|
||||
CT_MPC_V_1_2=y
|
||||
# CT_MPC_V_1_1 is not set
|
||||
# CT_MPC_V_1_0 is not set
|
||||
CT_MPC_VERSION="1.2.1"
|
||||
CT_MPC_MIRRORS="http://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)"
|
||||
CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPC_ARCHIVE_FORMATS=".tar.gz"
|
||||
@ -793,11 +855,9 @@ CT_MPFR_PKG_NAME="mpfr"
|
||||
CT_MPFR_SRC_RELEASE=y
|
||||
# CT_MPFR_SRC_DEVEL is not set
|
||||
CT_MPFR_PATCH_ORDER="global"
|
||||
CT_MPFR_V_4_1=y
|
||||
# CT_MPFR_V_4_0 is not set
|
||||
# CT_MPFR_V_3_1 is not set
|
||||
CT_MPFR_VERSION="4.1.0"
|
||||
CT_MPFR_MIRRORS="http://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_V_4_2=y
|
||||
CT_MPFR_VERSION="4.2.1"
|
||||
CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)"
|
||||
CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip"
|
||||
@ -811,10 +871,11 @@ CT_NCURSES_PKG_NAME="ncurses"
|
||||
CT_NCURSES_SRC_RELEASE=y
|
||||
# CT_NCURSES_SRC_DEVEL is not set
|
||||
CT_NCURSES_PATCH_ORDER="global"
|
||||
CT_NCURSES_V_6_2=y
|
||||
CT_NCURSES_V_6_4=y
|
||||
# CT_NCURSES_V_6_2 is not set
|
||||
# CT_NCURSES_V_6_1 is not set
|
||||
# CT_NCURSES_V_6_0 is not set
|
||||
CT_NCURSES_VERSION="6.2"
|
||||
CT_NCURSES_VERSION="6.4"
|
||||
CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)"
|
||||
CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
@ -834,19 +895,35 @@ CT_ZLIB_PKG_NAME="zlib"
|
||||
CT_ZLIB_SRC_RELEASE=y
|
||||
# CT_ZLIB_SRC_DEVEL is not set
|
||||
CT_ZLIB_PATCH_ORDER="global"
|
||||
CT_ZLIB_V_1_2_12=y
|
||||
CT_ZLIB_VERSION="1.2.12"
|
||||
CT_ZLIB_MIRRORS="http://downloads.sourceforge.net/project/libpng/zlib/${CT_ZLIB_VERSION} https://www.zlib.net/ https://www.zlib.net/fossils"
|
||||
CT_ZLIB_V_1_2_13=y
|
||||
CT_ZLIB_VERSION="1.2.13"
|
||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
||||
CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||
CT_ZLIB_SIGNATURE_FORMAT="packed/.asc"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB"
|
||||
CT_COMP_LIBS_ZSTD=y
|
||||
CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD"
|
||||
CT_ZSTD_DIR_NAME="zstd"
|
||||
CT_ZSTD_PKG_NAME="zstd"
|
||||
CT_ZSTD_SRC_RELEASE=y
|
||||
# CT_ZSTD_SRC_DEVEL is not set
|
||||
CT_ZSTD_PATCH_ORDER="global"
|
||||
CT_ZSTD_V_1_5_5=y
|
||||
# CT_ZSTD_V_1_5_2 is not set
|
||||
CT_ZSTD_VERSION="1.5.5"
|
||||
CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/"
|
||||
CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||
CT_ZSTD_ARCHIVE_FORMATS=".tar.gz"
|
||||
CT_ZSTD_SIGNATURE_FORMAT="packed/.sig"
|
||||
CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD"
|
||||
CT_LIBICONV_NEEDED=y
|
||||
CT_GETTEXT_NEEDED=y
|
||||
CT_GMP_NEEDED=y
|
||||
CT_GMP_TARGET=y
|
||||
CT_MPFR_NEEDED=y
|
||||
CT_MPFR_TARGET=y
|
||||
CT_ISL_NEEDED=y
|
||||
CT_MPC_NEEDED=y
|
||||
CT_EXPAT_NEEDED=y
|
||||
@ -854,6 +931,7 @@ CT_EXPAT_TARGET=y
|
||||
CT_NCURSES_NEEDED=y
|
||||
CT_NCURSES_TARGET=y
|
||||
CT_ZLIB_NEEDED=y
|
||||
CT_ZSTD_NEEDED=y
|
||||
CT_LIBICONV=y
|
||||
CT_GETTEXT=y
|
||||
CT_GMP=y
|
||||
@ -863,6 +941,7 @@ CT_MPC=y
|
||||
CT_EXPAT=y
|
||||
CT_NCURSES=y
|
||||
CT_ZLIB=y
|
||||
CT_ZSTD=y
|
||||
# end of Companion libraries
|
||||
|
||||
#
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE riscv32-unknown-linux-gnu
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=riscv32-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
@ -39,11 +39,11 @@ WORKDIR /work
|
||||
COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_TRIPLE}/Toolchain.cmake
|
||||
|
||||
ENV PKG_CONFIG_PATH /usr/lib/riscv64-unknown-linux-gnu/pkgconfig
|
||||
ENV PKG_CONFIG_PATH /usr/lib/riscv32-unknown-linux-gnu/pkgconfig
|
||||
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||
ENV ARCH powerpc
|
||||
ENV ARCH riscv32
|
||||
|
||||
#include "common.label-and-env"
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE riscv64-unknown-linux-gnu
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=riscv64-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
@ -44,6 +44,6 @@ ENV PKG_CONFIG_PATH /usr/lib/riscv64-unknown-linux-gnu/pkgconfig
|
||||
# Linux kernel cross compilation variables
|
||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||
ENV ARCH powerpc
|
||||
ENV ARCH riscv64
|
||||
|
||||
#include "common.label-and-env"
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit S390X Linux machine
|
||||
|
||||
|
@ -1,15 +1,15 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ARG CLANG_VERSION=14
|
||||
ARG CLANG_VERSION=15
|
||||
ENV CLANG_VERSION=${CLANG_VERSION}
|
||||
|
||||
RUN echo "deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main" >> /etc/apt/sources.list \
|
||||
&& echo "deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${CLANG_VERSION} main" >> /etc/apt/sources.list \
|
||||
&& echo "deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main" >> /etc/apt/sources.list \
|
||||
&& echo "deb-src http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${CLANG_VERSION} main" >> /etc/apt/sources.list \
|
||||
RUN echo "deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm main" >> /etc/apt/sources.list.d/llvm.list \
|
||||
&& echo "deb http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-${CLANG_VERSION} main" >> /etc/apt/sources.list.d/llvm.list \
|
||||
&& echo "deb-src http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm main" >> /etc/apt/sources.list.d/llvm.list \
|
||||
&& echo "deb-src http://apt.llvm.org/bookworm/ llvm-toolchain-bookworm-${CLANG_VERSION} main" >> /etc/apt/sources.list.d/llvm.list \
|
||||
&& wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add - \
|
||||
&& apt-get update \
|
||||
&& apt-get -y install clang-${CLANG_VERSION} libc++-${CLANG_VERSION}-dev libc++abi-${CLANG_VERSION}-dev clang-format-${CLANG_VERSION} clang-tidy-${CLANG_VERSION} lldb-${CLANG_VERSION} liblld-${CLANG_VERSION}-dev \
|
||||
@ -18,6 +18,7 @@ RUN echo "deb http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye main" >> /et
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& update-alternatives --install /usr/bin/cc cc /usr/bin/clang-${CLANG_VERSION} 90 \
|
||||
&& update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++-${CLANG_VERSION} 90 \
|
||||
&& update-alternatives --remove-all cpp \
|
||||
&& update-alternatives --install /usr/bin/cpp cpp /usr/bin/clang++-${CLANG_VERSION} 90 \
|
||||
&& update-alternatives --install /usr/bin/clang clang /usr/bin/clang-${CLANG_VERSION} 90 \
|
||||
&& update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-${CLANG_VERSION} 90 \
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This image use Tinycc as C compiler and GCC as C++ compiler
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get -y install \
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
RUN dpkg --add-architecture i386 && \
|
||||
apt-get update && apt-get -y install \
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit x86 Linux machine
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Crosstool-ng version 2022-05-19
|
||||
ENV CT_VERSION crosstool-ng-1.25.0
|
||||
@ -15,7 +15,7 @@ ENV CROSS_TRIPLE xtensa-fsf-linux-uclibc
|
||||
WORKDIR /usr/src
|
||||
|
||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
||||
curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
curl -L https://download.qemu.org/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
|
||||
cd qemu-${QEMU_VERSION} && \
|
||||
./configure --target-list=xtensa-linux-user --prefix=/usr && \
|
||||
make -j$(nproc) && \
|
||||
|
@ -5,7 +5,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/manylinux2014-x64:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# This is for 64-bit ARM Manylinux machine
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Recent versions address yum functionality
|
||||
FROM quay.io/pypa/manylinux2014_x86_64:2023-08-27-bd7ad21
|
||||
FROM quay.io/pypa/manylinux2014_x86_64:2024-07-20-e0def9a
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux2014-x64
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Recent versions address yum functionality
|
||||
FROM quay.io/pypa/manylinux2014_i686:2023-08-27-bd7ad21
|
||||
FROM quay.io/pypa/manylinux2014_i686:2024-07-20-e0def9a
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux2014-x86
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Recent versions address yum functionality
|
||||
FROM quay.io/pypa/manylinux_2_28_x86_64:2022-11-28-5d13db4
|
||||
FROM quay.io/pypa/manylinux_2_28_x86_64:2024-07-20-e0def9a
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux_2_28-x64
|
||||
|
||||
|
@ -44,7 +44,7 @@ def test_cmake_build_system(build_dir, language, source, emulator, linker_flags,
|
||||
print('Building ' + source + ' with CMake...')
|
||||
|
||||
with open('CMakeLists.txt', 'w') as fp:
|
||||
fp.write('cmake_minimum_required(VERSION 3.0)\n')
|
||||
fp.write('cmake_minimum_required(VERSION 3.16)\n')
|
||||
fp.write('project(test-compiler)\n')
|
||||
fp.write('add_executable(a.out ' + os.path.basename(source) + ')\n')
|
||||
if emulator:
|
||||
|
@ -1,12 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -x
|
||||
|
||||
if (( $# >= 1 )); then
|
||||
image_complet=$1
|
||||
image=${image_complet%:*}
|
||||
tag=${image_complet#*:}
|
||||
image_complete=$1
|
||||
image=${image_complete%:*}
|
||||
tag=${image_complete#*:}
|
||||
build_file=build-$image
|
||||
host_arch=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||
if test $tag = $image; then
|
||||
tag="latest"
|
||||
# use multiarch image if available
|
||||
if docker images | grep dockcross/${image} | grep latest-${host_arch} >/dev/null; then
|
||||
tag="latest-${host_arch}"
|
||||
else
|
||||
tag="latest"
|
||||
fi
|
||||
fi
|
||||
shift 1
|
||||
|
||||
@ -17,7 +25,7 @@ if (( $# >= 1 )); then
|
||||
# docker pull "dockcross/$image:$tag"
|
||||
|
||||
echo "Make script dockcross-$image"
|
||||
docker run --rm dockcross/"$image" > ./dockcross-"$image"
|
||||
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
|
||||
chmod +x ./dockcross-"$image"
|
||||
|
||||
echo "Build $build_file"
|
||||
|
@ -4,8 +4,14 @@ if (( $# >= 2 )); then
|
||||
image_complet=$1
|
||||
image=${image_complet%:*}
|
||||
tag=${image_complet#*:}
|
||||
host_arch=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||
if test $tag = $image; then
|
||||
tag="latest"
|
||||
# use multiarch image if available
|
||||
if docker images | grep dockcross/${image} | grep latest-${host_arch} >/dev/null; then
|
||||
tag="latest-${host_arch}"
|
||||
else
|
||||
tag="latest"
|
||||
fi
|
||||
fi
|
||||
shift 1
|
||||
|
||||
@ -16,7 +22,7 @@ if (( $# >= 2 )); then
|
||||
# docker pull "dockcross/$image:$tag"
|
||||
|
||||
echo "Make script dockcross-$image"
|
||||
docker run --rm dockcross/"$image" > ./dockcross-"$image"
|
||||
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
|
||||
chmod +x ./dockcross-"$image"
|
||||
|
||||
echo "Run command in dockcross-$image"
|
||||
|
@ -1,10 +1,19 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if (( $# >= 1 )); then
|
||||
image_complet=$1
|
||||
image=${image_complet%:*}
|
||||
tag=${image_complet#*:}
|
||||
image_complete=$1
|
||||
image=${image_complete%:*}
|
||||
tag=${image_complete#*:}
|
||||
build_file=build-$image
|
||||
host_arch=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')
|
||||
if test $tag = $image; then
|
||||
# use multiarch image if available
|
||||
if docker images | grep dockcross/${image} | grep latest-${host_arch} >/dev/null; then
|
||||
tag="latest-${host_arch}"
|
||||
else
|
||||
tag="latest"
|
||||
fi
|
||||
fi
|
||||
shift 1
|
||||
|
||||
make_arg=$*
|
||||
@ -14,11 +23,11 @@ if (( $# >= 1 )); then
|
||||
# docker pull "dockcross/$image:$tag"
|
||||
|
||||
echo "Make script dockcross-$image"
|
||||
docker run --rm dockcross/"$image" > ./dockcross-"$image"
|
||||
docker run --rm dockcross/"$image:$tag" > ./dockcross-"$image"
|
||||
chmod +x ./dockcross-"$image"
|
||||
|
||||
echo "Build $build_file"
|
||||
./dockcross-"$image" -i dockcross/"$image":latest bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC} '"$make_arg"
|
||||
./dockcross-"$image" -i dockcross/"$image:$tag" bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC} '"$make_arg"
|
||||
else
|
||||
echo "Usage: ${0##*/} <docker image (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <make arg.>"
|
||||
exit 1
|
||||
|
37
web-wasi-emulated-threads/CheckTypeSize.c.in
Normal file
37
web-wasi-emulated-threads/CheckTypeSize.c.in
Normal file
@ -0,0 +1,37 @@
|
||||
@headers@
|
||||
|
||||
#undef KEY
|
||||
#if defined(__i386)
|
||||
# define KEY '_','_','i','3','8','6'
|
||||
#elif defined(__x86_64)
|
||||
# define KEY '_','_','x','8','6','_','6','4'
|
||||
#elif defined(__ppc__)
|
||||
# define KEY '_','_','p','p','c','_','_'
|
||||
#elif defined(__ppc64__)
|
||||
# define KEY '_','_','p','p','c','6','4','_','_'
|
||||
#endif
|
||||
|
||||
#define SIZE (sizeof(@type@))
|
||||
char info_size[] = {'I', 'N', 'F', 'O', ':', 's','i','z','e','[',
|
||||
('0' + ((SIZE / 10000)%10)),
|
||||
('0' + ((SIZE / 1000)%10)),
|
||||
('0' + ((SIZE / 100)%10)),
|
||||
('0' + ((SIZE / 10)%10)),
|
||||
('0' + (SIZE % 10)),
|
||||
']',
|
||||
#ifdef KEY
|
||||
' ','k','e','y','[', KEY, ']',
|
||||
#endif
|
||||
'\0'};
|
||||
|
||||
#ifdef __CLASSIC_C__
|
||||
int main(argc, argv) int argc; char *argv[];
|
||||
#else
|
||||
int main(int argc, char *argv[])
|
||||
#endif
|
||||
{
|
||||
int require = 0;
|
||||
require += info_size[argc];
|
||||
(void)argv;
|
||||
return SIZE;
|
||||
}
|
231
web-wasi-emulated-threads/CheckTypeSize.cmake
Normal file
231
web-wasi-emulated-threads/CheckTypeSize.cmake
Normal file
@ -0,0 +1,231 @@
|
||||
#.rst:
|
||||
# CheckTypeSize
|
||||
# -------------
|
||||
#
|
||||
# Check sizeof a type
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# CHECK_TYPE_SIZE(TYPE VARIABLE [BUILTIN_TYPES_ONLY]
|
||||
# [LANGUAGE <language>])
|
||||
#
|
||||
# Check if the type exists and determine its size. On return,
|
||||
# "HAVE_${VARIABLE}" holds the existence of the type, and "${VARIABLE}"
|
||||
# holds one of the following:
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# <size> = type has non-zero size <size>
|
||||
# "0" = type has arch-dependent size (see below)
|
||||
# "" = type does not exist
|
||||
#
|
||||
# Both ``HAVE_${VARIABLE}`` and ``${VARIABLE}`` will be created as internal
|
||||
# cache variables.
|
||||
#
|
||||
# Furthermore, the variable "${VARIABLE}_CODE" holds C preprocessor code
|
||||
# to define the macro "${VARIABLE}" to the size of the type, or leave
|
||||
# the macro undefined if the type does not exist.
|
||||
#
|
||||
# The variable "${VARIABLE}" may be "0" when CMAKE_OSX_ARCHITECTURES has
|
||||
# multiple architectures for building OS X universal binaries. This
|
||||
# indicates that the type size varies across architectures. In this
|
||||
# case "${VARIABLE}_CODE" contains C preprocessor tests mapping from
|
||||
# each architecture macro to the corresponding type size. The list of
|
||||
# architecture macros is stored in "${VARIABLE}_KEYS", and the value for
|
||||
# each key is stored in "${VARIABLE}-${KEY}".
|
||||
#
|
||||
# If the BUILTIN_TYPES_ONLY option is not given, the macro checks for
|
||||
# headers <sys/types.h>, <stdint.h>, and <stddef.h>, and saves results
|
||||
# in HAVE_SYS_TYPES_H, HAVE_STDINT_H, and HAVE_STDDEF_H. The type size
|
||||
# check automatically includes the available headers, thus supporting
|
||||
# checks of types defined in the headers.
|
||||
#
|
||||
# If LANGUAGE is set, the specified compiler will be used to perform the
|
||||
# check. Acceptable values are C and CXX
|
||||
#
|
||||
# Despite the name of the macro you may use it to check the size of more
|
||||
# complex expressions, too. To check e.g. for the size of a struct
|
||||
# member you can do something like this:
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# check_type_size("((struct something*)0)->member" SIZEOF_MEMBER)
|
||||
#
|
||||
#
|
||||
#
|
||||
# The following variables may be set before calling this macro to modify
|
||||
# the way the check is run:
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# CMAKE_REQUIRED_FLAGS = string of compile command line flags
|
||||
# CMAKE_REQUIRED_DEFINITIONS = list of macros to define (-DFOO=bar)
|
||||
# CMAKE_REQUIRED_INCLUDES = list of include directories
|
||||
# CMAKE_REQUIRED_LIBRARIES = list of libraries to link
|
||||
# CMAKE_REQUIRED_QUIET = execute quietly without messages
|
||||
# CMAKE_EXTRA_INCLUDE_FILES = list of extra headers to include
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2002-2009 Kitware, Inc.
|
||||
#
|
||||
# Distributed under the OSI-approved BSD License (the "License");
|
||||
# see accompanying file Copyright.txt for details.
|
||||
#
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the License for more information.
|
||||
#=============================================================================
|
||||
# (To distribute this file outside of CMake, substitute the full
|
||||
# License text for the above reference.)
|
||||
|
||||
include(CheckIncludeFile)
|
||||
include(CheckIncludeFileCXX)
|
||||
|
||||
cmake_policy(PUSH)
|
||||
cmake_policy(VERSION 3.0)
|
||||
|
||||
get_filename_component(__check_type_size_dir "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
# Helper function. DO NOT CALL DIRECTLY.
|
||||
function(__check_type_size_impl type var map builtin language)
|
||||
if(NOT CMAKE_REQUIRED_QUIET)
|
||||
message(STATUS "Check size of ${type}")
|
||||
endif()
|
||||
|
||||
# Include header files.
|
||||
set(headers)
|
||||
if(builtin)
|
||||
if(HAVE_SYS_TYPES_H)
|
||||
set(headers "${headers}#include <sys/types.h>\n")
|
||||
endif()
|
||||
if(HAVE_STDINT_H)
|
||||
set(headers "${headers}#include <stdint.h>\n")
|
||||
endif()
|
||||
if(HAVE_STDDEF_H)
|
||||
set(headers "${headers}#include <stddef.h>\n")
|
||||
endif()
|
||||
endif()
|
||||
foreach(h ${CMAKE_EXTRA_INCLUDE_FILES})
|
||||
set(headers "${headers}#include \"${h}\"\n")
|
||||
endforeach()
|
||||
|
||||
# Perform the check.
|
||||
|
||||
if("${language}" STREQUAL "C")
|
||||
set(src ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CheckTypeSize/${var}.c)
|
||||
elseif("${language}" STREQUAL "CXX")
|
||||
set(src ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CheckTypeSize/${var}.cpp)
|
||||
else()
|
||||
message(FATAL_ERROR "Unknown language:\n ${language}\nSupported languages: C, CXX.\n")
|
||||
endif()
|
||||
set(bin ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CheckTypeSize/${var}.bin)
|
||||
configure_file(${__check_type_size_dir}/CheckTypeSize.c.in ${src} @ONLY)
|
||||
try_run(${var}_run_result HAVE_${var} ${CMAKE_BINARY_DIR} ${src}
|
||||
COMPILE_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
|
||||
LINK_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}
|
||||
CMAKE_FLAGS
|
||||
"-DCOMPILE_DEFINITIONS:STRING=${CMAKE_REQUIRED_FLAGS}"
|
||||
"-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
|
||||
RUN_OUTPUT_VARIABLE ${var}_run_output
|
||||
COMPILE_OUTPUT_VARIABLE output
|
||||
)
|
||||
|
||||
if(${HAVE_${var}} AND NOT "${${var}_run_result}" STREQUAL "FAILED_TO_RUN")
|
||||
set(${var} ${${var}_run_result})
|
||||
if(NOT CMAKE_REQUIRED_QUIET)
|
||||
message(STATUS "Check size of ${type} - done")
|
||||
endif()
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log
|
||||
"Determining size of ${type} passed with the following output:\n${output}\n\n")
|
||||
set(${var} "${${var}}" CACHE INTERNAL "CHECK_TYPE_SIZE: sizeof(${type})")
|
||||
else()
|
||||
# The check failed to compile.
|
||||
if(NOT CMAKE_REQUIRED_QUIET)
|
||||
message(STATUS "Check size of ${type} - failed")
|
||||
endif()
|
||||
file(READ ${src} content)
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Determining size of ${type} failed with the following output:\n${output}\n${src}:\n${content}\n\n")
|
||||
set(${var} "" CACHE INTERNAL "CHECK_TYPE_SIZE: ${type} unknown")
|
||||
file(REMOVE ${map})
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
macro(CHECK_TYPE_SIZE TYPE VARIABLE)
|
||||
# parse arguments
|
||||
unset(doing)
|
||||
foreach(arg ${ARGN})
|
||||
if("x${arg}" STREQUAL "xBUILTIN_TYPES_ONLY")
|
||||
set(_CHECK_TYPE_SIZE_${arg} 1)
|
||||
unset(doing)
|
||||
elseif("x${arg}" STREQUAL "xLANGUAGE") # change to MATCHES for more keys
|
||||
set(doing "${arg}")
|
||||
set(_CHECK_TYPE_SIZE_${doing} "")
|
||||
elseif("x${doing}" STREQUAL "xLANGUAGE")
|
||||
set(_CHECK_TYPE_SIZE_${doing} "${arg}")
|
||||
unset(doing)
|
||||
else()
|
||||
message(FATAL_ERROR "Unknown argument:\n ${arg}\n")
|
||||
endif()
|
||||
endforeach()
|
||||
if("x${doing}" MATCHES "^x(LANGUAGE)$")
|
||||
message(FATAL_ERROR "Missing argument:\n ${doing} arguments requires a value\n")
|
||||
endif()
|
||||
if(DEFINED _CHECK_TYPE_SIZE_LANGUAGE)
|
||||
if(NOT "x${_CHECK_TYPE_SIZE_LANGUAGE}" MATCHES "^x(C|CXX)$")
|
||||
message(FATAL_ERROR "Unknown language:\n ${_CHECK_TYPE_SIZE_LANGUAGE}.\nSupported languages: C, CXX.\n")
|
||||
endif()
|
||||
set(_language ${_CHECK_TYPE_SIZE_LANGUAGE})
|
||||
else()
|
||||
set(_language C)
|
||||
endif()
|
||||
|
||||
# Optionally check for standard headers.
|
||||
if(_CHECK_TYPE_SIZE_BUILTIN_TYPES_ONLY)
|
||||
set(_builtin 0)
|
||||
else()
|
||||
set(_builtin 1)
|
||||
if("${_language}" STREQUAL "C")
|
||||
check_include_file(sys/types.h HAVE_SYS_TYPES_H)
|
||||
check_include_file(stdint.h HAVE_STDINT_H)
|
||||
check_include_file(stddef.h HAVE_STDDEF_H)
|
||||
elseif("${_language}" STREQUAL "CXX")
|
||||
check_include_file_cxx(sys/types.h HAVE_SYS_TYPES_H)
|
||||
check_include_file_cxx(stdint.h HAVE_STDINT_H)
|
||||
check_include_file_cxx(stddef.h HAVE_STDDEF_H)
|
||||
endif()
|
||||
endif()
|
||||
unset(_CHECK_TYPE_SIZE_BUILTIN_TYPES_ONLY)
|
||||
unset(_CHECK_TYPE_SIZE_LANGUAGE)
|
||||
|
||||
# Compute or load the size or size map.
|
||||
set(${VARIABLE}_KEYS)
|
||||
set(_map_file ${CMAKE_BINARY_DIR}/${CMAKE_FILES_DIRECTORY}/CheckTypeSize/${VARIABLE}.cmake)
|
||||
if(NOT DEFINED HAVE_${VARIABLE})
|
||||
__check_type_size_impl(${TYPE} ${VARIABLE} ${_map_file} ${_builtin} ${_language})
|
||||
endif()
|
||||
include(${_map_file} OPTIONAL)
|
||||
set(_map_file)
|
||||
set(_builtin)
|
||||
|
||||
# Create preprocessor code.
|
||||
if(${VARIABLE}_KEYS)
|
||||
set(${VARIABLE}_CODE)
|
||||
set(_if if)
|
||||
foreach(key ${${VARIABLE}_KEYS})
|
||||
set(${VARIABLE}_CODE "${${VARIABLE}_CODE}#${_if} defined(${key})\n# define ${VARIABLE} ${${VARIABLE}-${key}}\n")
|
||||
set(_if elif)
|
||||
endforeach()
|
||||
set(${VARIABLE}_CODE "${${VARIABLE}_CODE}#else\n# error ${VARIABLE} unknown\n#endif")
|
||||
set(_if)
|
||||
elseif(${VARIABLE})
|
||||
set(${VARIABLE}_CODE "#define ${VARIABLE} ${${VARIABLE}}")
|
||||
else()
|
||||
set(${VARIABLE}_CODE "/* #undef ${VARIABLE} */")
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
#-----------------------------------------------------------------------------
|
||||
cmake_policy(POP)
|
42
web-wasi-emulated-threads/Dockerfile.in
Normal file
42
web-wasi-emulated-threads/Dockerfile.in
Normal file
@ -0,0 +1,42 @@
|
||||
ARG ORG=dockcross
|
||||
ARG HOST_ARCH=amd64
|
||||
FROM ${ORG}/base:latest-${HOST_ARCH}
|
||||
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV LLVM_VERSION=19
|
||||
ENV WASI_VERSION=25
|
||||
ENV WASI_VERSION_FULL=${WASI_VERSION}.0
|
||||
|
||||
ENV WASMTIME_HOME=/wasi-runtimes/wasmtime
|
||||
RUN mkdir -p ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash
|
||||
ENV PATH="$WASMTIME_HOME/bin:$PATH"
|
||||
|
||||
COPY download-build-install-wasi-sdk.sh /usr/local/bin/
|
||||
RUN /usr/local/bin/download-build-install-wasi-sdk.sh
|
||||
|
||||
ENV WASI_SYSROOT=/opt/wasi-sdk/share/wasi-sysroot
|
||||
ENV WASI_SDK_PATH=/opt/wasi-sdk
|
||||
|
||||
COPY clang-wasi-sysroot.sh clang++-wasi-sysroot.sh /usr/local/bin/
|
||||
|
||||
ENV CROSS_TRIPLE=wasm32-wasi
|
||||
ENV CROSS_ROOT=${WASI_SDK_PATH}
|
||||
ENV AR=${WASI_SDK_PATH}/bin/llvm-ar \
|
||||
CC=clang-wasi-sysroot.sh \
|
||||
CXX=clang++-wasi-sysroot.sh \
|
||||
LD=${WASI_SDK_PATH}/bin/wasm-ld \
|
||||
RANLIB=${WASI_SDK_PATH}/bin/llvm-ranlib
|
||||
|
||||
#include "common.webassembly"
|
||||
|
||||
COPY WASI.cmake /usr/src/
|
||||
RUN mv /usr/src/WASI.cmake /usr/share/cmake-*/Modules/Platform/
|
||||
COPY *.cmake /usr/src/
|
||||
RUN mv /usr/src/*.cmake /usr/share/cmake-*/Modules/
|
||||
COPY CheckTypeSize.c.in /usr/src/
|
||||
RUN mv /usr/src/CheckTypeSize.c.in /usr/share/cmake-*/Modules/
|
||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
#include "common.label-and-env"
|
25
web-wasi-emulated-threads/FindOpenAL.cmake
Normal file
25
web-wasi-emulated-threads/FindOpenAL.cmake
Normal file
@ -0,0 +1,25 @@
|
||||
# Locate OpenAL
|
||||
# This module defines
|
||||
# OPENAL_LIBRARY
|
||||
# OPENAL_FOUND, if false, do not try to link to OpenAL
|
||||
# OPENAL_INCLUDE_DIR, where to find the headers
|
||||
|
||||
# The implementation is based on the standard FindOpenAL.cmake provided with CMake,
|
||||
# but customized for targeting Emscripten only.
|
||||
|
||||
if (NOT OPENAL_FOUND)
|
||||
SET(OPENAL_FOUND TRUE)
|
||||
|
||||
# For Emscripten-compiled apps in the test suite (test_alut), this is expected...
|
||||
SET(OPENAL_INCLUDE_DIR "${EMSCRIPTEN_ROOT_PATH}/system/include")
|
||||
# ... but the stock FindOpenAL.cmake would have returned this.
|
||||
#SET(OPENAL_INCLUDE_DIR "${EMSCRIPTEN_ROOT_PATH}/system/include/AL")
|
||||
|
||||
# Returning "-lopenal" is now considered mandatory
|
||||
SET(OPENAL_LIBRARY "-lopenal")
|
||||
SET(OPENAL_LIB "-lopenal")
|
||||
|
||||
set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} "${EMSCRIPTEN_ROOT_PATH}/system/include" "${EMSCRIPTEN_ROOT_PATH}/system/include/AL")
|
||||
|
||||
MARK_AS_ADVANCED(OPENAL_LIBRARY OPENAL_INCLUDE_DIR)
|
||||
endif()
|
34
web-wasi-emulated-threads/FindOpenGL.cmake
Normal file
34
web-wasi-emulated-threads/FindOpenGL.cmake
Normal file
@ -0,0 +1,34 @@
|
||||
# Locate OpenGL
|
||||
# This module defines:
|
||||
# OPENGL_FOUND - system has OpenGL
|
||||
# OPENGL_XMESA_FOUND - system has XMESA
|
||||
# OPENGL_GLU_FOUND - system has GLU
|
||||
# OPENGL_INCLUDE_DIR - the GL include directory
|
||||
# OPENGL_LIBRARIES - Link these to use OpenGL and GLU
|
||||
# OPENGL_gl_LIBRARY - Path to OpenGL Library
|
||||
# OPENGL_glu_LIBRARY - Path to GLU Library
|
||||
|
||||
# The implementation is based on the standard FindOpenGL.cmake provided with CMake,
|
||||
# but customized for targeting Emscripten only.
|
||||
|
||||
# These libraries are provided with Emscripten
|
||||
SET(OPENGL_FOUND TRUE)
|
||||
SET(OPENGL_GLU_FOUND TRUE)
|
||||
|
||||
# Doesn't look like this one is part of Emscripten
|
||||
SET(OPENGL_XMESA_FOUND FALSE)
|
||||
|
||||
# This is the path where <GL/gl.h> is found
|
||||
SET(OPENGL_INCLUDE_DIR "${EMSCRIPTEN_ROOT_PATH}/system/include")
|
||||
|
||||
# No library to link against for OpenGL, since Emscripten picks it up automatically from library_webgl.js,
|
||||
# but need to report something, or CMake thinks we failed in the search.
|
||||
SET(OPENGL_LIBRARIES "nul")
|
||||
SET(OPENGL_gl_LIBRARY "nul")
|
||||
SET(OPENGL_glu_LIBRARY "nul")
|
||||
|
||||
mark_as_advanced(
|
||||
OPENGL_INCLUDE_DIR
|
||||
OPENGL_glu_LIBRARY
|
||||
OPENGL_gl_LIBRARY
|
||||
)
|
30
web-wasi-emulated-threads/TestBigEndian.cmake
Normal file
30
web-wasi-emulated-threads/TestBigEndian.cmake
Normal file
@ -0,0 +1,30 @@
|
||||
#.rst:
|
||||
# TestBigEndian
|
||||
# -------------
|
||||
#
|
||||
# The TestBigEndian.cmake module that ships with CMake, which
|
||||
# checks if the system is big endian or little endian, assumes
|
||||
# that a binary is produced that will have bytes that correspond to the
|
||||
# endianness on the target system. Since emscripten produces Javascript, we
|
||||
# override the default behavior and always return little endian.
|
||||
#
|
||||
# ::
|
||||
#
|
||||
# TEST_BIG_ENDIAN(VARIABLE)
|
||||
# VARIABLE - variable to store the result to
|
||||
#=============================================================================
|
||||
# Copyright 2002-2009 Kitware, Inc.
|
||||
#
|
||||
# Distributed under the OSI-approved BSD License (the "License");
|
||||
# see accompanying file Copyright.txt for details.
|
||||
#
|
||||
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
# See the License for more information.
|
||||
#=============================================================================
|
||||
# (To distribute this file outside of CMake, substitute the full
|
||||
# License text for the above reference.)
|
||||
|
||||
function(TEST_BIG_ENDIAN VARIABLE)
|
||||
set(${VARIABLE} 0 CACHE INTERNAL "Result of TEST_BIG_ENDIAN" FORCE)
|
||||
endfunction()
|
14
web-wasi-emulated-threads/Toolchain.cmake
Normal file
14
web-wasi-emulated-threads/Toolchain.cmake
Normal file
@ -0,0 +1,14 @@
|
||||
set(WASI_SDK_PREFIX $ENV{WASI_SDK_PATH})
|
||||
include($ENV{WASI_SDK_PATH}/share/cmake/wasi-sdk.cmake)
|
||||
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_WASI_EMULATED_PTHREAD")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WASI_EMULATED_PTHREAD")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lwasi-emulated-pthread")
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||
set(CMAKE_SYSROOT $ENV{WASI_SYSROOT})
|
||||
|
||||
set(CMAKE_C_COMPILER /usr/local/bin/clang-wasi-sysroot.sh)
|
||||
set(CMAKE_CXX_COMPILER /usr/local/bin/clang++-wasi-sysroot.sh)
|
||||
|
||||
set(CMAKE_CROSSCOMPILING_EMULATOR /wasi-runtimes/wasmtime/bin/wasmtime-pwd.sh)
|
2
web-wasi-emulated-threads/WASI.cmake
Normal file
2
web-wasi-emulated-threads/WASI.cmake
Normal file
@ -0,0 +1,2 @@
|
||||
set(WASI 1)
|
||||
set(UNIX 1)
|
3
web-wasi-emulated-threads/clang++-wasi-sysroot.sh
Executable file
3
web-wasi-emulated-threads/clang++-wasi-sysroot.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec ${WASI_SDK_PATH}/bin/clang++ -D_WASI_EMULATED_PTHREAD --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
3
web-wasi-emulated-threads/clang-wasi-sysroot.sh
Executable file
3
web-wasi-emulated-threads/clang-wasi-sysroot.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec ${WASI_SDK_PATH}/bin/clang -D_WASI_EMULATED_PTHREAD --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
36
web-wasi-emulated-threads/download-build-install-wasi-sdk.sh
Executable file
36
web-wasi-emulated-threads/download-build-install-wasi-sdk.sh
Executable file
@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -eox pipefail
|
||||
|
||||
mkdir /tmp/dl
|
||||
cd /tmp/dl
|
||||
|
||||
wasi_sdk_dir=/opt/wasi-sdk
|
||||
mkdir -p $wasi_sdk_dir
|
||||
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||
export PATH=$HOME/.cargo/bin:$PATH
|
||||
|
||||
git clone --recurse-submodules -b enable-libcxx-threads https://github.com/thewtex/wasi-sdk
|
||||
cd wasi-sdk
|
||||
git fetch origin --tags
|
||||
git remote add upstream https://github.com/WebAssembly/wasi-sdk
|
||||
git fetch upstream wasi-sdk-${WASI_VERSION}
|
||||
|
||||
./ci/build.sh
|
||||
cd build/dist
|
||||
tar xzf wasi-toolchain-*.tar.gz --strip-components=1 -C /opt/wasi-sdk
|
||||
mkdir -p /opt/wasi-sdk/share/wasi-sysroot
|
||||
tar xzf wasi-sysroot-*.tar.gz --strip-components=1 -C /opt/wasi-sdk/share/wasi-sysroot
|
||||
for wasi_toolchain in wasi wasip1 wasip2; do
|
||||
libclang_rt_out_dir=/opt/wasi-sdk/lib/clang/${LLVM_VERSION}/${wasi_toolchain}
|
||||
mkdir -p $libclang_rt_out_dir
|
||||
tar xzf ./libclang_rt.builtins-*.tar.gz --strip-components=1 -C $libclang_rt_out_dir
|
||||
done
|
||||
mkdir -p /opt/wasi-sdk/lib/clang/${LLVM_VERSION}/lib/wasm32-unknown-wasi
|
||||
cp ${libclang_rt_out_dir}/libclang_rt.builtins-wasm32.a /opt/wasi-sdk/lib/clang/${LLVM_VERSION}/lib/wasm32-unknown-wasi/libclang_rt.builtins.a
|
||||
|
||||
cd /tmp/
|
||||
rm -rf /tmp/dl
|
||||
rm -rf $HOME/.cargo
|
||||
|
16
web-wasi-threads/Dockerfile.in
Normal file
16
web-wasi-threads/Dockerfile.in
Normal file
@ -0,0 +1,16 @@
|
||||
ARG ORG=dockcross
|
||||
ARG HOST_ARCH=amd64
|
||||
FROM ${ORG}/web-wasi:latest-${HOST_ARCH}
|
||||
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
COPY clang-wasi-threads-sysroot.sh clang++-wasi-threads-sysroot.sh /usr/local/bin/
|
||||
|
||||
ENV CROSS_TRIPLE=wasm32-wasi-threads
|
||||
ENV CC=clang-wasi-threads-sysroot.sh \
|
||||
CXX=clang++-wasi-threads-sysroot.sh
|
||||
|
||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
#include "common.label-and-env"
|
10
web-wasi-threads/Toolchain.cmake
Normal file
10
web-wasi-threads/Toolchain.cmake
Normal file
@ -0,0 +1,10 @@
|
||||
set(WASI_SDK_PREFIX $ENV{WASI_SDK_PATH})
|
||||
include($ENV{WASI_SDK_PATH}/share/cmake/wasi-sdk-pthread.cmake)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||
set(CMAKE_SYSROOT $ENV{WASI_SYSROOT})
|
||||
|
||||
set(CMAKE_C_COMPILER /usr/local/bin/clang-wasi-threads-sysroot.sh)
|
||||
set(CMAKE_CXX_COMPILER /usr/local/bin/clang++-wasi-threads-sysroot.sh)
|
||||
|
||||
set(CMAKE_CROSSCOMPILING_EMULATOR /wasi-runtimes/wasmtime/bin/wasmtime-pwd-threads.sh)
|
3
web-wasi-threads/clang++-wasi-threads-sysroot.sh
Executable file
3
web-wasi-threads/clang++-wasi-threads-sysroot.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec ${WASI_SDK_PATH}/bin/clang++ -pthread --target=wasm32-wasi-threads --sysroot=${WASI_SYSROOT} "$@"
|
3
web-wasi-threads/clang-wasi-threads-sysroot.sh
Executable file
3
web-wasi-threads/clang-wasi-threads-sysroot.sh
Executable file
@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec ${WASI_SDK_PATH}/bin/clang -pthread --target=wasm32-wasi-threads --sysroot=${WASI_SYSROOT} "$@"
|
@ -1,46 +1,28 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
ARG HOST_ARCH=amd64
|
||||
FROM ${ORG}/base:latest-${HOST_ARCH}
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV LLVM_VERSION 16
|
||||
ENV LLVM_VERSION=19
|
||||
ENV WASI_VERSION=25
|
||||
ENV WASI_VERSION_FULL=${WASI_VERSION}.0
|
||||
|
||||
# Build LLVM / Clang that supports our glibc
|
||||
RUN apt-get update && \
|
||||
# Temporarily install to setup apt repositories
|
||||
apt-get install -y && \
|
||||
\
|
||||
curl -sS https://apt.llvm.org/llvm-snapshot.gpg.key | gpg --dearmor > /etc/apt/trusted.gpg.d/llvm.gpg && \
|
||||
echo "deb [signed-by=/etc/apt/trusted.gpg.d/llvm.gpg] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${LLVM_VERSION} main" >> /etc/apt/sources.list.d/llvm.list && \
|
||||
echo "deb-src [signed-by=/etc/apt/trusted.gpg.d/llvm.gpg] http://apt.llvm.org/bullseye/ llvm-toolchain-bullseye-${LLVM_VERSION} main" >> /etc/apt/sources.list.d/llvm.list && \
|
||||
\
|
||||
apt-get update && \
|
||||
apt-get install -y clang-${LLVM_VERSION} lld-${LLVM_VERSION} && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
COPY download-install-wasi-sdk.sh /usr/local/bin/
|
||||
RUN /usr/local/bin/download-install-wasi-sdk.sh
|
||||
|
||||
ENV WASI_VERSION 20
|
||||
ENV WASI_VERSION_FULL ${WASI_VERSION}.0
|
||||
RUN cd /usr/ && \
|
||||
curl -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_VERSION}/wasi-sdk-${WASI_VERSION_FULL}-linux.tar.gz && \
|
||||
tar xvzf wasi-sdk-${WASI_VERSION_FULL}-linux.tar.gz && \
|
||||
rm wasi-sdk-${WASI_VERSION_FULL}-linux.tar.gz
|
||||
RUN cd /usr/ && \
|
||||
curl -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_VERSION}/libclang_rt.builtins-wasm32-wasi-${WASI_VERSION_FULL}.tar.gz && \
|
||||
tar xvzf libclang_rt.builtins-wasm32-wasi-${WASI_VERSION_FULL}.tar.gz && \
|
||||
rm libclang_rt.builtins-wasm32-wasi-${WASI_VERSION_FULL}.tar.gz && \
|
||||
cp -r lib/wasi /usr/lib/llvm-${LLVM_VERSION}/lib/clang/${LLVM_VERSION}/lib/
|
||||
ENV WASI_SYSROOT /usr/wasi-sdk-${WASI_VERSION_FULL}/share/wasi-sysroot
|
||||
ENV WASI_SDK_PATH /usr/wasi-sdk-${WASI_VERSION_FULL}
|
||||
ENV WASI_SYSROOT=/opt/wasi-sdk/share/wasi-sysroot
|
||||
ENV WASI_SDK_PATH=/opt/wasi-sdk
|
||||
|
||||
COPY clang-wasi-sysroot.sh clang++-wasi-sysroot.sh /usr/local/bin/
|
||||
|
||||
ENV CROSS_TRIPLE=wasm32-wasi
|
||||
ENV CROSS_ROOT=${WASI_SDK_PATH}
|
||||
ENV AR=llvm-ar-${LLVM_VERSION} \
|
||||
ENV AR=${WASI_SDK_PATH}/bin/llvm-ar \
|
||||
CC=clang-wasi-sysroot.sh \
|
||||
CXX=clang++-wasi-sysroot.sh \
|
||||
LD=wasm-ld-${LLVM_VERSION} \
|
||||
RANLIB=llvm-ranlib-${LLVM_VERSION}
|
||||
LD=${WASI_SDK_PATH}/bin/wasm-ld \
|
||||
RANLIB=${WASI_SDK_PATH}/bin/llvm-ranlib
|
||||
|
||||
#include "common.webassembly"
|
||||
|
||||
@ -51,6 +33,6 @@ RUN mv /usr/src/*.cmake /usr/share/cmake-*/Modules/
|
||||
COPY CheckTypeSize.c.in /usr/src/
|
||||
RUN mv /usr/src/CheckTypeSize.c.in /usr/share/cmake-*/Modules/
|
||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
||||
|
||||
#include "common.label-and-env"
|
||||
|
@ -6,12 +6,5 @@ set(CMAKE_SYSROOT $ENV{WASI_SYSROOT})
|
||||
|
||||
set(CMAKE_C_COMPILER /usr/local/bin/clang-wasi-sysroot.sh)
|
||||
set(CMAKE_CXX_COMPILER /usr/local/bin/clang++-wasi-sysroot.sh)
|
||||
set(CMAKE_AR llvm-ar-$ENV{LLVM_VERSION})
|
||||
set(CMAKE_RANLIB llvm-ranlib-$ENV{LLVM_VERSION})
|
||||
set(CMAKE_ASM_COMPILER clang-$ENV{LLVM_VERSION})
|
||||
|
||||
set(CMAKE_C_COMPILER_TARGET $ENV{CROSS_TRIPLE})
|
||||
set(CMAKE_CXX_COMPILER_TARGET $ENV{CROSS_TRIPLE})
|
||||
set(CMAKE_ASM_COMPILER_TARGET $ENV{CROSS_TRIPLE})
|
||||
|
||||
set(CMAKE_CROSSCOMPILING_EMULATOR /wasi-runtimes/wasmtime/bin/wasmtime-pwd.sh)
|
||||
|
@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec clang++-${LLVM_VERSION} --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
||||
exec ${WASI_SDK_PATH}/bin/clang++ --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
||||
|
@ -1,3 +1,3 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
exec clang-${LLVM_VERSION} --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
||||
exec ${WASI_SDK_PATH}/bin/clang --target=wasm32-wasi --sysroot=${WASI_SYSROOT} "$@"
|
||||
|
18
web-wasi/download-install-wasi-sdk.sh
Executable file
18
web-wasi/download-install-wasi-sdk.sh
Executable file
@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -eox pipefail
|
||||
|
||||
mkdir /tmp/dl
|
||||
cd /tmp/dl
|
||||
|
||||
curl -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_VERSION}/wasi-sdk-${WASI_VERSION_FULL}-arm64-linux.deb && \
|
||||
curl -L -O https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-${WASI_VERSION}/wasi-sdk-${WASI_VERSION_FULL}-x86_64-linux.deb && \
|
||||
|
||||
case `dpkg --print-architecture` in
|
||||
amd64) dpkg -i wasi-sdk-*-x86_64-linux.deb ;;
|
||||
arm64) dpkg -i wasi-sdk-*-arm64-linux.deb ;;
|
||||
*) exit 1 ;;
|
||||
esac
|
||||
|
||||
cd /tmp/
|
||||
rm -rf /tmp/dl
|
@ -1,7 +1,8 @@
|
||||
ARG DOCKER_IMAGE_VERSION=3.1.45
|
||||
FROM emscripten/emsdk:$DOCKER_IMAGE_VERSION
|
||||
ARG DOCKER_IMAGE_VERSION=3.1.74
|
||||
ARG HOST_ARCH_TAG
|
||||
FROM emscripten/emsdk:$DOCKER_IMAGE_VERSION$HOST_ARCH_TAG
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
# Revert back to "/bin/sh" as default shell
|
||||
# See https://github.com/asRIA/emscripten-docker/blob/master/Dockerfile.in#L4
|
||||
@ -57,15 +58,15 @@ RUN ln -s /usr/bin/python3 /usr/bin/python
|
||||
|
||||
#include "common.webassembly"
|
||||
|
||||
ENV EMSCRIPTEN_VERSION $DOCKER_IMAGE_VERSION
|
||||
ENV EMSCRIPTEN_VERSION=$DOCKER_IMAGE_VERSION
|
||||
|
||||
ENV PATH /emsdk:/emsdk/upstream/bin/:/emsdk/upstream/emscripten:${PATH}
|
||||
ENV PATH=/emsdk:/emsdk/upstream/bin/:/emsdk/upstream/emscripten:${PATH}
|
||||
ENV CC=/emsdk/upstream/emscripten/emcc \
|
||||
CXX=/emsdk/upstream/emscripten/em++ \
|
||||
AR=/emsdk/upstream/emscripten/emar
|
||||
|
||||
RUN chmod -R 777 /emsdk/upstream/emscripten/cache
|
||||
|
||||
ENV CMAKE_TOOLCHAIN_FILE /emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake
|
||||
ENV CMAKE_TOOLCHAIN_FILE=/emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake
|
||||
|
||||
#include "common.label-and-env"
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV XCC_PREFIX /usr/xcc
|
||||
ENV CROSS_TRIPLE aarch64-w64-mingw32
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV XCC_PREFIX /usr/xcc
|
||||
ENV CROSS_TRIPLE armv7-w64-mingw32
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win64
|
||||
ARG MXE_TARGET_ARCH=x86_64
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win64
|
||||
ARG MXE_TARGET_ARCH=x86_64
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win32
|
||||
ARG MXE_TARGET_ARCH=i686
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win64
|
||||
ARG MXE_TARGET_ARCH=x86_64
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win64
|
||||
ARG MXE_TARGET_ARCH=x86_64
|
||||
|
@ -1,7 +1,7 @@
|
||||
ARG ORG=dockcross
|
||||
FROM ${ORG}/base:latest
|
||||
|
||||
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
||||
|
||||
ENV WINEARCH win32
|
||||
ARG MXE_TARGET_ARCH=i686
|
||||
|
Reference in New Issue
Block a user