mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-06-23 03:13:35 +02:00
Compare commits
10 Commits
update-lin
...
crosstool-
Author | SHA1 | Date | |
---|---|---|---|
8ccc22fb24 | |||
fc52124cd0 | |||
33e0e3258c | |||
0e07884fa5 | |||
9e891aeef3 | |||
57dfad90f8 | |||
63b11aa33d | |||
5c4706c741 | |||
9c78102a1b | |||
1b8f16f057 |
14
.github/workflows/expired.yml
vendored
14
.github/workflows/expired.yml
vendored
@ -1,7 +1,7 @@
|
|||||||
name: 'Close stale issues and PRs'
|
name: 'Close stale issues and PRs'
|
||||||
on:
|
on:
|
||||||
schedule:
|
schedule:
|
||||||
- cron: '0 0 */2 * *'
|
- cron: '0 */8 * * *'
|
||||||
jobs:
|
jobs:
|
||||||
stale:
|
stale:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@ -12,11 +12,11 @@ jobs:
|
|||||||
exempt-issue-milestones: 'future,alpha,beta,release,bugfix,improvement,enhancement,help wanted'
|
exempt-issue-milestones: 'future,alpha,beta,release,bugfix,improvement,enhancement,help wanted'
|
||||||
exempt-pr-milestones: 'bugfix,improvement,enhancement,help wanted'
|
exempt-pr-milestones: 'bugfix,improvement,enhancement,help wanted'
|
||||||
exempt-all-pr-assignees: true
|
exempt-all-pr-assignees: true
|
||||||
stale-issue-message: 'This issue is stale because it has been open 240 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
|
stale-issue-message: 'This issue is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
|
||||||
stale-pr-message: 'This PR is stale because it has been open 240 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
|
stale-pr-message: 'This PR is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 30 days.'
|
||||||
close-issue-message: 'This issue was closed because it has been stalled for 30 days with no activity.'
|
close-issue-message: 'This issue was closed because it has been stalled for 30 days with no activity.'
|
||||||
close-pr-message: 'This PR was closed because it has been stalled for 30 days with no activity.'
|
close-pr-message: 'This PR was closed because it has been stalled for 30 days with no activity.'
|
||||||
days-before-issue-stale: 240
|
days-before-issue-stale: 120
|
||||||
days-before-pr-stale: 240
|
days-before-pr-stale: 120
|
||||||
days-before-issue-close: 60
|
days-before-issue-close: 30
|
||||||
days-before-pr-close: 60
|
days-before-pr-close: 30
|
||||||
|
305
.github/workflows/main.yml
vendored
305
.github/workflows/main.yml
vendored
@ -9,13 +9,10 @@ on:
|
|||||||
- "*"
|
- "*"
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
env:
|
|
||||||
OCI_EXE: docker
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
base:
|
base:
|
||||||
name: base
|
name: base
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: checkout code
|
- name: checkout code
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
@ -23,7 +20,15 @@ jobs:
|
|||||||
submodules: "recursive"
|
submodules: "recursive"
|
||||||
fetch-depth: 1
|
fetch-depth: 1
|
||||||
|
|
||||||
|
- name: Set up QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: build
|
- name: build
|
||||||
|
env:
|
||||||
|
BUILD_CMD: buildx build --platform linux/amd64,linux/arm64
|
||||||
run: make base
|
run: make base
|
||||||
|
|
||||||
- name: test
|
- name: test
|
||||||
@ -41,83 +46,25 @@ jobs:
|
|||||||
path: ./cache
|
path: ./cache
|
||||||
retention-days: 3
|
retention-days: 3
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
|
||||||
if: github.ref == 'refs/heads/master'
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USER }}
|
|
||||||
password: ${{ secrets.DOCKER_PASS }}
|
|
||||||
|
|
||||||
- name: deploy
|
- name: deploy
|
||||||
if: github.ref == 'refs/heads/master'
|
if: github.ref == 'refs/heads/master'
|
||||||
run: |
|
run: |
|
||||||
|
docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASS }}
|
||||||
docker image push dockcross/base --all-tags
|
docker image push dockcross/base --all-tags
|
||||||
|
|
||||||
base-multiarch:
|
image:
|
||||||
name: base-multiarch
|
name: ${{ matrix.arch_name.image }}
|
||||||
runs-on: ${{ matrix.os }}
|
needs: base
|
||||||
strategy:
|
runs-on: ubuntu-latest
|
||||||
max-parallel: 5
|
|
||||||
matrix:
|
|
||||||
os: [ubuntu-22.04, ubuntu-22.04-arm]
|
|
||||||
steps:
|
|
||||||
- name: checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
submodules: "recursive"
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
- name: set host_arch
|
|
||||||
run: |
|
|
||||||
echo "HOST_ARCH=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- name: build multiarch
|
|
||||||
run: |
|
|
||||||
make base-${{ env.HOST_ARCH }}
|
|
||||||
|
|
||||||
- name: test multiarch
|
|
||||||
run: |
|
|
||||||
mkdir -p bin
|
|
||||||
make base-${{ env.HOST_ARCH }}.test
|
|
||||||
|
|
||||||
- name: archive base
|
|
||||||
run: |
|
|
||||||
mkdir -p cache
|
|
||||||
docker export dockcross/base:latest-${{ env.HOST_ARCH }} | xz -e9 -T0 > ./cache/base-multiarch.tar.xz
|
|
||||||
|
|
||||||
- name: save base
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
with:
|
|
||||||
name: cache-${{ matrix.os }}
|
|
||||||
path: ./cache
|
|
||||||
retention-days: 3
|
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
|
||||||
if: github.ref == 'refs/heads/master'
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USER }}
|
|
||||||
password: ${{ secrets.DOCKER_PASS }}
|
|
||||||
|
|
||||||
- name: deploy
|
|
||||||
if: github.ref == 'refs/heads/master'
|
|
||||||
run: |
|
|
||||||
docker image push dockcross/base --all-tags
|
|
||||||
|
|
||||||
images:
|
|
||||||
needs: [base, base-multiarch]
|
|
||||||
runs-on: ${{ matrix.os }}
|
|
||||||
env:
|
env:
|
||||||
OCI_EXE: docker
|
OCI_EXE: docker
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
os: [ubuntu-22.04, ubuntu-22.04-arm]
|
|
||||||
arch_name:
|
arch_name:
|
||||||
# Android images
|
# Android images
|
||||||
- {
|
- {
|
||||||
image: "android-arm",
|
image: "android-arm",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7 COMP=ndk",
|
stockfish_arg: "ARCH=armv7 COMP=ndk",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -139,7 +86,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "android-arm64",
|
image: "android-arm64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv8 COMP=ndk",
|
stockfish_arg: "ARCH=armv8 COMP=ndk",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -161,7 +107,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "android-x86",
|
image: "android-x86",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-32 COMP=ndk",
|
stockfish_arg: "ARCH=x86-32 COMP=ndk",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -183,7 +128,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "android-x86_64",
|
image: "android-x86_64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64 COMP=ndk",
|
stockfish_arg: "ARCH=x86-64 COMP=ndk",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -203,15 +147,14 @@ jobs:
|
|||||||
cpython: "no",
|
cpython: "no",
|
||||||
cpython_arg: "--host=x86_64-linux-android --target=x86_64-linux-android",
|
cpython_arg: "--host=x86_64-linux-android --target=x86_64-linux-android",
|
||||||
}
|
}
|
||||||
# inux arm64/armv8 images
|
# Linux arm64/armv8 images
|
||||||
- {
|
- {
|
||||||
image: "linux-arm64",
|
image: "linux-arm64",
|
||||||
multiarch: "yes",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv8",
|
stockfish_arg: "ARCH=armv8",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
ninja_arg: "",
|
ninja_arg: "",
|
||||||
openssl: "no",
|
openssl: "yes",
|
||||||
openssl_arg: "linux-aarch64",
|
openssl_arg: "linux-aarch64",
|
||||||
C: "yes",
|
C: "yes",
|
||||||
C_arg: "",
|
C_arg: "",
|
||||||
@ -228,7 +171,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-arm64-lts",
|
image: "linux-arm64-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv8",
|
stockfish_arg: "ARCH=armv8",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -250,7 +192,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-arm64-musl",
|
image: "linux-arm64-musl",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv8",
|
stockfish_arg: "ARCH=armv8",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -272,7 +213,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-arm64-full",
|
image: "linux-arm64-full",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv8",
|
stockfish_arg: "ARCH=armv8",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -295,7 +235,6 @@ jobs:
|
|||||||
# Linux mipel images
|
# Linux mipel images
|
||||||
- {
|
- {
|
||||||
image: "linux-mipsel-lts",
|
image: "linux-mipsel-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -318,7 +257,6 @@ jobs:
|
|||||||
# Linux armv5 images
|
# Linux armv5 images
|
||||||
- {
|
- {
|
||||||
image: "linux-armv5",
|
image: "linux-armv5",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -340,7 +278,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv5-musl",
|
image: "linux-armv5-musl",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -362,7 +299,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv5-uclibc",
|
image: "linux-armv5-uclibc",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -385,7 +321,6 @@ jobs:
|
|||||||
# Linux armv6 images
|
# Linux armv6 images
|
||||||
- {
|
- {
|
||||||
image: "linux-armv6",
|
image: "linux-armv6",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -407,7 +342,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv6-lts",
|
image: "linux-armv6-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -429,7 +363,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv6-musl",
|
image: "linux-armv6-musl",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -452,7 +385,6 @@ jobs:
|
|||||||
# Linux armv7 images
|
# Linux armv7 images
|
||||||
- {
|
- {
|
||||||
image: "linux-armv7",
|
image: "linux-armv7",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7",
|
stockfish_arg: "ARCH=armv7",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -474,7 +406,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv7a",
|
image: "linux-armv7a",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7-neon",
|
stockfish_arg: "ARCH=armv7-neon",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -496,7 +427,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv7a-lts",
|
image: "linux-armv7a-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7-neon",
|
stockfish_arg: "ARCH=armv7-neon",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -518,7 +448,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv7-lts",
|
image: "linux-armv7-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7",
|
stockfish_arg: "ARCH=armv7",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -540,7 +469,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-armv7l-musl",
|
image: "linux-armv7l-musl",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=armv7",
|
stockfish_arg: "ARCH=armv7",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -563,7 +491,6 @@ jobs:
|
|||||||
# Linux x86 images
|
# Linux x86 images
|
||||||
- {
|
- {
|
||||||
image: "linux-x86",
|
image: "linux-x86",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-32-sse41-popcnt",
|
stockfish_arg: "ARCH=x86-32-sse41-popcnt",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -586,7 +513,6 @@ jobs:
|
|||||||
# Linux i686 images
|
# Linux i686 images
|
||||||
- {
|
- {
|
||||||
image: "linux-i686",
|
image: "linux-i686",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -609,7 +535,6 @@ jobs:
|
|||||||
# Linux x86_64 images
|
# Linux x86_64 images
|
||||||
- {
|
- {
|
||||||
image: "linux-x64",
|
image: "linux-x64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern",
|
stockfish_arg: "ARCH=x86-64-modern",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -631,7 +556,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-x64-tinycc",
|
image: "linux-x64-tinycc",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern",
|
stockfish_arg: "ARCH=x86-64-modern",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -653,7 +577,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-x64-clang",
|
image: "linux-x64-clang",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern COMP=clang",
|
stockfish_arg: "ARCH=x86-64-modern COMP=clang",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -675,7 +598,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-x86_64-full",
|
image: "linux-x86_64-full",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern",
|
stockfish_arg: "ARCH=x86-64-modern",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -698,7 +620,6 @@ jobs:
|
|||||||
# Linux riscv images
|
# Linux riscv images
|
||||||
- {
|
- {
|
||||||
image: "linux-riscv32",
|
image: "linux-riscv32",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -720,7 +641,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-riscv64",
|
image: "linux-riscv64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -743,7 +663,6 @@ jobs:
|
|||||||
# Linux s390x images
|
# Linux s390x images
|
||||||
- {
|
- {
|
||||||
image: "linux-s390x",
|
image: "linux-s390x",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -766,7 +685,6 @@ jobs:
|
|||||||
# Linux mips images
|
# Linux mips images
|
||||||
- {
|
- {
|
||||||
image: "linux-mips",
|
image: "linux-mips",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -788,7 +706,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "linux-mips-uclibc",
|
image: "linux-mips-uclibc",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -811,7 +728,6 @@ jobs:
|
|||||||
# Linux mips images
|
# Linux mips images
|
||||||
- {
|
- {
|
||||||
image: "linux-mips-lts",
|
image: "linux-mips-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -831,32 +747,9 @@ jobs:
|
|||||||
cpython: "yes",
|
cpython: "yes",
|
||||||
cpython_arg: "--host=mips-unknown-linux-gnu --target=mips-unknown-linux-gnu",
|
cpython_arg: "--host=mips-unknown-linux-gnu --target=mips-unknown-linux-gnu",
|
||||||
}
|
}
|
||||||
# Linux ppc images
|
|
||||||
- {
|
|
||||||
image: "linux-ppc",
|
|
||||||
stockfish: "no",
|
|
||||||
stockfish_arg: "",
|
|
||||||
ninja: "yes",
|
|
||||||
ninja_arg: "",
|
|
||||||
openssl: "yes",
|
|
||||||
openssl_arg: "linux-ppc",
|
|
||||||
C: "yes",
|
|
||||||
C_arg: "",
|
|
||||||
C-Plus-Plus: "no",
|
|
||||||
C-Plus-Plus_arg: "",
|
|
||||||
llama_cpp: "yes",
|
|
||||||
llama_cpp_arg: "",
|
|
||||||
fmt: "yes",
|
|
||||||
fmt_arg: "",
|
|
||||||
raylib: "no",
|
|
||||||
raylib_arg: "",
|
|
||||||
cpython: "yes",
|
|
||||||
cpython_arg: "--host=powerpc-unknown-linux-gnu --target=powerpc-unknown-linux-gnu",
|
|
||||||
}
|
|
||||||
# Linux ppc64le images
|
# Linux ppc64le images
|
||||||
- {
|
- {
|
||||||
image: "linux-ppc64le",
|
image: "linux-ppc64le",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=ppc-64",
|
stockfish_arg: "ARCH=ppc-64",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -865,9 +758,9 @@ jobs:
|
|||||||
openssl_arg: "linux-ppc64le",
|
openssl_arg: "linux-ppc64le",
|
||||||
C: "yes",
|
C: "yes",
|
||||||
C_arg: "",
|
C_arg: "",
|
||||||
C-Plus-Plus: "no",
|
C-Plus-Plus: "yes",
|
||||||
C-Plus-Plus_arg: "",
|
C-Plus-Plus_arg: "",
|
||||||
llama_cpp: "yes",
|
llama_cpp: "no",
|
||||||
llama_cpp_arg: "",
|
llama_cpp_arg: "",
|
||||||
fmt: "yes",
|
fmt: "yes",
|
||||||
fmt_arg: "",
|
fmt_arg: "",
|
||||||
@ -879,7 +772,6 @@ jobs:
|
|||||||
# Linux ppc64le-lts images
|
# Linux ppc64le-lts images
|
||||||
- {
|
- {
|
||||||
image: "linux-ppc64le-lts",
|
image: "linux-ppc64le-lts",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=ppc-64",
|
stockfish_arg: "ARCH=ppc-64",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -902,7 +794,6 @@ jobs:
|
|||||||
# Linux m68k images
|
# Linux m68k images
|
||||||
- {
|
- {
|
||||||
image: "linux-m68k-uclibc",
|
image: "linux-m68k-uclibc",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -925,7 +816,6 @@ jobs:
|
|||||||
# Linux xtensa images
|
# Linux xtensa images
|
||||||
- {
|
- {
|
||||||
image: "linux-xtensa-uclibc",
|
image: "linux-xtensa-uclibc",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -948,7 +838,6 @@ jobs:
|
|||||||
# Windows x86_x64 images
|
# Windows x86_x64 images
|
||||||
- {
|
- {
|
||||||
image: "windows-static-x64",
|
image: "windows-static-x64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
|
stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -970,7 +859,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "windows-static-x64-posix",
|
image: "windows-static-x64-posix",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
|
stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -992,7 +880,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "windows-shared-x64",
|
image: "windows-shared-x64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1014,7 +901,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "windows-shared-x64-posix",
|
image: "windows-shared-x64-posix",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1037,7 +923,6 @@ jobs:
|
|||||||
# Windows x86 images
|
# Windows x86 images
|
||||||
- {
|
- {
|
||||||
image: "windows-static-x86",
|
image: "windows-static-x86",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-32-sse41-popcnt COMP=mingw",
|
stockfish_arg: "ARCH=x86-32-sse41-popcnt COMP=mingw",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1059,7 +944,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "windows-shared-x86",
|
image: "windows-shared-x86",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1082,7 +966,6 @@ jobs:
|
|||||||
# Windows arm images
|
# Windows arm images
|
||||||
- {
|
- {
|
||||||
image: "windows-armv7",
|
image: "windows-armv7",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "ARCH=armv7-neon COMP=clang",
|
stockfish_arg: "ARCH=armv7-neon COMP=clang",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -1104,7 +987,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "windows-arm64",
|
image: "windows-arm64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "ARCH=armv8 COMP=clang",
|
stockfish_arg: "ARCH=armv8 COMP=clang",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -1127,7 +1009,6 @@ jobs:
|
|||||||
# manylinux_2_28 images
|
# manylinux_2_28 images
|
||||||
- {
|
- {
|
||||||
image: "manylinux_2_28-x64",
|
image: "manylinux_2_28-x64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern",
|
stockfish_arg: "ARCH=x86-64-modern",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -1150,7 +1031,6 @@ jobs:
|
|||||||
# manylinux2014 images
|
# manylinux2014 images
|
||||||
- {
|
- {
|
||||||
image: "manylinux2014-x86",
|
image: "manylinux2014-x86",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-32-sse41-popcnt",
|
stockfish_arg: "ARCH=x86-32-sse41-popcnt",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -1172,7 +1052,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "manylinux2014-x64",
|
image: "manylinux2014-x64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "yes",
|
stockfish: "yes",
|
||||||
stockfish_arg: "ARCH=x86-64-modern",
|
stockfish_arg: "ARCH=x86-64-modern",
|
||||||
ninja: "yes",
|
ninja: "yes",
|
||||||
@ -1194,7 +1073,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "manylinux2014-aarch64",
|
image: "manylinux2014-aarch64",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1217,7 +1095,6 @@ jobs:
|
|||||||
# web-wasm images
|
# web-wasm images
|
||||||
- {
|
- {
|
||||||
image: "web-wasm",
|
image: "web-wasm",
|
||||||
multiarch: "yes",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1239,7 +1116,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "web-wasi",
|
image: "web-wasi",
|
||||||
multiarch: "yes",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1261,7 +1137,6 @@ jobs:
|
|||||||
}
|
}
|
||||||
- {
|
- {
|
||||||
image: "web-wasi-threads",
|
image: "web-wasi-threads",
|
||||||
multiarch: "yes",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1284,7 +1159,6 @@ jobs:
|
|||||||
# Bare metal images
|
# Bare metal images
|
||||||
- {
|
- {
|
||||||
image: "bare-armv7emhf-nano_newlib",
|
image: "bare-armv7emhf-nano_newlib",
|
||||||
multiarch: "",
|
|
||||||
stockfish: "no",
|
stockfish: "no",
|
||||||
stockfish_arg: "",
|
stockfish_arg: "",
|
||||||
ninja: "no",
|
ninja: "no",
|
||||||
@ -1315,13 +1189,6 @@ jobs:
|
|||||||
submodules: "recursive"
|
submodules: "recursive"
|
||||||
fetch-depth: 1
|
fetch-depth: 1
|
||||||
|
|
||||||
- name: Set up QEMU
|
|
||||||
uses: docker/setup-qemu-action@v3
|
|
||||||
|
|
||||||
- name: set host_arch
|
|
||||||
run: |
|
|
||||||
echo "HOST_ARCH=$(uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/')" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- uses: actions/download-artifact@v4
|
- uses: actions/download-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: cache
|
name: cache
|
||||||
@ -1330,65 +1197,49 @@ jobs:
|
|||||||
- name: load base
|
- name: load base
|
||||||
run: xz -d -k < ./cache/base.tar.xz | docker import - dockcross/base:latest
|
run: xz -d -k < ./cache/base.tar.xz | docker import - dockcross/base:latest
|
||||||
|
|
||||||
- uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: cache-${{ matrix.os }}
|
|
||||||
path: ./cache
|
|
||||||
|
|
||||||
- name: load multiarch base
|
|
||||||
run: xz -d -k < ./cache/base-multiarch.tar.xz | docker import - dockcross/base:latest-${{ env.HOST_ARCH }}
|
|
||||||
|
|
||||||
- name: build
|
- name: build
|
||||||
env:
|
env:
|
||||||
BUILD_CMD: build --cache-from type=gha --cache-to type=gha,mode=max
|
BUILD_CMD: build --cache-from type=gha --cache-to type=gha,mode=max
|
||||||
run: |
|
run: make ${{ matrix.arch_name.image }}
|
||||||
if test "${{ matrix.arch_name.multiarch }}" = "yes"; then
|
|
||||||
make ${{ matrix.arch_name.image }}
|
|
||||||
elif test "${{ env.HOST_ARCH }}" = "amd64"; then
|
|
||||||
make ${{ matrix.arch_name.image }}
|
|
||||||
fi
|
|
||||||
|
|
||||||
- name: basic test
|
- name: basic test
|
||||||
run: |
|
run: make ${{ matrix.arch_name.image }}.test
|
||||||
if test "${{ matrix.arch_name.multiarch }}" = "yes" || test "${{ env.HOST_ARCH }}" = "amd64"; then
|
|
||||||
make ${{ matrix.arch_name.image }}.test
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Updated on 19/05/2022
|
# Updated on 19/05/2022
|
||||||
- name: stockfish build test
|
- name: stockfish build test
|
||||||
if: ${{ matrix.arch_name.stockfish == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.stockfish == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch sf_15 https://github.com/official-stockfish/Stockfish.git
|
git clone --depth 1 --branch sf_15 https://github.com/official-stockfish/Stockfish.git
|
||||||
cd Stockfish/src
|
cd Stockfish/src
|
||||||
./../../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} net
|
./../../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} net
|
||||||
./../../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} build ${{ matrix.arch_name.stockfish_arg }} -j${nproc}
|
./../../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} build ${{ matrix.arch_name.stockfish_arg }} -j2
|
||||||
cd ../..
|
cd ../..
|
||||||
rm -rf Stockfish
|
rm -rf Stockfish
|
||||||
|
|
||||||
# Updated on 12/09/2022
|
# Updated on 12/09/2022
|
||||||
- name: ninja build test
|
- name: ninja build test
|
||||||
if: ${{ matrix.arch_name.ninja == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.ninja == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch v1.11.1 https://github.com/ninja-build/ninja.git
|
git clone --depth 1 --branch v1.11.1 https://github.com/ninja-build/ninja.git
|
||||||
cd ninja
|
cd ninja
|
||||||
./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.ninja_arg }}
|
./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.ninja_arg }}
|
||||||
|
|
||||||
# Updated on 04/04/2025 (Use openSSL_1_1_1w to fix error: implicit declaration of function 'memcmp')
|
# Updated on 12/09/2022
|
||||||
- name: openssl build test
|
- name: openssl build test
|
||||||
if: ${{ matrix.arch_name.openssl == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.openssl == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch OpenSSL_1_1_1w https://github.com/openssl/openssl.git
|
git clone --depth 1 --branch OpenSSL_1_1_1q https://github.com/openssl/openssl.git
|
||||||
cd openssl
|
cd openssl
|
||||||
wget https://raw.githubusercontent.com/mavlink/MAVSDK/main/third_party/openssl/dockcross-android.patch
|
wget https://raw.githubusercontent.com/mavlink/MAVSDK/main/third_party/openssl/dockcross-android.patch
|
||||||
patch -p 0 < dockcross-android.patch
|
patch -p 0 < dockcross-android.patch
|
||||||
./../tools/dockcross-command.sh ${{ matrix.arch_name.image }} ./Configure ${{ matrix.arch_name.openssl_arg }}
|
./../tools/dockcross-command.sh ${{ matrix.arch_name.image }} ./Configure ${{ matrix.arch_name.openssl_arg }}
|
||||||
./../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} -j${nproc}
|
./../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} -j2
|
||||||
cd ..
|
cd ..
|
||||||
rm -rf openssl
|
rm -rf openssl
|
||||||
|
|
||||||
# Updated on 12/09/2022
|
# Updated on 12/09/2022
|
||||||
- name: C build test
|
- name: C build test
|
||||||
if: ${{ matrix.arch_name.C == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.C == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/TheAlgorithms/C.git
|
git clone https://github.com/TheAlgorithms/C.git
|
||||||
cd C
|
cd C
|
||||||
@ -1397,20 +1248,20 @@ jobs:
|
|||||||
cd ..
|
cd ..
|
||||||
rm -rf C
|
rm -rf C
|
||||||
|
|
||||||
# Updated on 22/06/2025
|
# Updated on 12/09/2022 No longer maintained
|
||||||
- name: C-Plus-Plus build test
|
- name: C-Plus-Plus build test
|
||||||
if: ${{ matrix.arch_name.C-Plus-Plus == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.C-Plus-Plus == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/TheAlgorithms/C-Plus-Plus.git
|
git clone https://github.com/TheAlgorithms/C-Plus-Plus.git
|
||||||
cd C-Plus-Plus
|
cd C-Plus-Plus
|
||||||
git checkout 93a700c7e947c8704df387564ea4780e6c031967
|
git checkout 0594923efa8e6b006a5d754c5e7976850290577c
|
||||||
./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.C-Plus-Plus_arg }}
|
./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.C-Plus-Plus_arg }}
|
||||||
cd ..
|
cd ..
|
||||||
rm -rf C-Plus-Plus
|
rm -rf C-Plus-Plus
|
||||||
|
|
||||||
# Updated on 03/08/2024
|
# Updated on 03/08/2024
|
||||||
- name: llama.cpp build test
|
- name: llama.cpp build test
|
||||||
if: ${{ matrix.arch_name.llama_cpp == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.llama_cpp == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/ggerganov/llama.cpp.git
|
git clone https://github.com/ggerganov/llama.cpp.git
|
||||||
cd llama.cpp
|
cd llama.cpp
|
||||||
@ -1421,7 +1272,7 @@ jobs:
|
|||||||
|
|
||||||
# Updated on 12/09/2022
|
# Updated on 12/09/2022
|
||||||
- name: fmt build test
|
- name: fmt build test
|
||||||
if: ${{ matrix.arch_name.fmt == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.fmt == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch 9.1.0 https://github.com/fmtlib/fmt.git
|
git clone --depth 1 --branch 9.1.0 https://github.com/fmtlib/fmt.git
|
||||||
cd fmt
|
cd fmt
|
||||||
@ -1431,18 +1282,18 @@ jobs:
|
|||||||
|
|
||||||
# Updated on 19/05/2022
|
# Updated on 19/05/2022
|
||||||
- name: cpython build test
|
- name: cpython build test
|
||||||
if: ${{ matrix.arch_name.cpython == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.cpython == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch v3.11.2 https://github.com/python/cpython.git
|
git clone --depth 1 --branch v3.11.2 https://github.com/python/cpython.git
|
||||||
cd cpython
|
cd cpython
|
||||||
./../tools/dockcross-command.sh ${{ matrix.arch_name.image }} ./configure ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no --disable-ipv6 ${{ matrix.arch_name.cpython_arg }} --build=x86_64-linux-gnu --with-build-python --enable-shared
|
./../tools/dockcross-command.sh ${{ matrix.arch_name.image }} ./configure ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no --disable-ipv6 ${{ matrix.arch_name.cpython_arg }} --build=x86_64-linux-gnu --with-build-python --enable-shared
|
||||||
./../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} -j${nproc}
|
./../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} -j2
|
||||||
cd ..
|
cd ..
|
||||||
rm -rf cpython
|
rm -rf cpython
|
||||||
|
|
||||||
# Updated on 12/09/2022 (4.2.0 branch not working)
|
# Updated on 12/09/2022 (4.2.0 branch not working)
|
||||||
- name: raylib build test
|
- name: raylib build test
|
||||||
if: ${{ matrix.arch_name.raylib == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.raylib == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/raysan5/raylib.git
|
git clone https://github.com/raysan5/raylib.git
|
||||||
cd raylib
|
cd raylib
|
||||||
@ -1453,7 +1304,7 @@ jobs:
|
|||||||
|
|
||||||
# Updated on 31/3/2022
|
# Updated on 31/3/2022
|
||||||
- name: mbedtls build test
|
- name: mbedtls build test
|
||||||
if: ${{ matrix.arch_name.mbedtls == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.mbedtls == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone --depth 1 --branch archive/baremetal https://github.com/Mbed-TLS/mbedtls.git
|
git clone --depth 1 --branch archive/baremetal https://github.com/Mbed-TLS/mbedtls.git
|
||||||
cd mbedtls
|
cd mbedtls
|
||||||
@ -1464,7 +1315,7 @@ jobs:
|
|||||||
|
|
||||||
# Updated on 20/6/2022
|
# Updated on 20/6/2022
|
||||||
- name: libopencm3 build test
|
- name: libopencm3 build test
|
||||||
if: ${{ matrix.arch_name.libopencm3 == 'yes' && (matrix.arch_name.multiarch == 'yes' || env.HOST_ARCH == 'amd64') }}
|
if: ${{ matrix.arch_name.libopencm3 == 'yes' }}
|
||||||
run: |
|
run: |
|
||||||
git clone https://github.com/libopencm3/libopencm3.git
|
git clone https://github.com/libopencm3/libopencm3.git
|
||||||
cd libopencm3
|
cd libopencm3
|
||||||
@ -1479,82 +1330,8 @@ jobs:
|
|||||||
cd ..
|
cd ..
|
||||||
rm -rf libopencm3
|
rm -rf libopencm3
|
||||||
|
|
||||||
- name: archive ${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}
|
- name: deploy
|
||||||
if: matrix.arch_name.multiarch == 'yes'
|
|
||||||
run: |
|
|
||||||
mkdir -p cache-${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}
|
|
||||||
docker export dockcross/${{ matrix.arch_name.image }}:latest-${{ env.HOST_ARCH }} | xz -e9 -T0 > ./cache-${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}/${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}.tar.xz
|
|
||||||
|
|
||||||
- name: save ${{ matrix.arch_name.image }}-${{ matrix.os }}
|
|
||||||
uses: actions/upload-artifact@v4
|
|
||||||
if: matrix.arch_name.multiarch == 'yes'
|
|
||||||
with:
|
|
||||||
name: cache-${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}
|
|
||||||
path: ./cache-${{ matrix.arch_name.image }}-${{ env.HOST_ARCH }}
|
|
||||||
retention-days: 3
|
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
|
||||||
if: github.ref == 'refs/heads/master' && matrix.arch_name.multiarch != 'yes' && env.HOST_ARCH == 'amd64'
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USER }}
|
|
||||||
password: ${{ secrets.DOCKER_PASS }}
|
|
||||||
|
|
||||||
- name: deploy-not-multi-arch
|
|
||||||
if: github.ref == 'refs/heads/master' && matrix.arch_name.multiarch != 'yes' && env.HOST_ARCH == 'amd64'
|
|
||||||
run: |
|
|
||||||
make ${{ matrix.arch_name.image }}.push
|
|
||||||
|
|
||||||
deploy-multi-arch-images:
|
|
||||||
needs:
|
|
||||||
- images
|
|
||||||
runs-on: ubuntu-22.04
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
image_name: ["linux-arm64", "web-wasm", "web-wasi", "web-wasi-threads"]
|
|
||||||
steps:
|
|
||||||
- name: checkout code
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
submodules: "recursive"
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
- name: download ${{ matrix.image_name }}-amd64
|
|
||||||
uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: cache-${{ matrix.image_name }}-amd64
|
|
||||||
path: ./cache-${{ matrix.image_name }}-amd64
|
|
||||||
|
|
||||||
- name: download ${{ matrix.image_name }}-arm64
|
|
||||||
uses: actions/download-artifact@v4
|
|
||||||
with:
|
|
||||||
name: cache-${{ matrix.image_name }}-arm64
|
|
||||||
path: ./cache-${{ matrix.image_name }}-arm64
|
|
||||||
|
|
||||||
- name: load images
|
|
||||||
run: |
|
|
||||||
xz -d -k < ./cache-${{ matrix.image_name }}-amd64/${{ matrix.image_name }}-amd64.tar.xz | docker import - dockcross/${{ matrix.image_name }}:latest-amd64
|
|
||||||
xz -d -k < ./cache-${{ matrix.image_name }}-arm64/${{ matrix.image_name }}-arm64.tar.xz | docker import - dockcross/${{ matrix.image_name }}:latest-arm64
|
|
||||||
|
|
||||||
- name: Login to Docker Hub
|
|
||||||
if: github.ref == 'refs/heads/master'
|
|
||||||
uses: docker/login-action@v3
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USER }}
|
|
||||||
password: ${{ secrets.DOCKER_PASS }}
|
|
||||||
|
|
||||||
- name: deploy-multi-arch
|
|
||||||
if: github.ref == 'refs/heads/master'
|
if: github.ref == 'refs/heads/master'
|
||||||
run: |
|
run: |
|
||||||
docker images
|
docker login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASS }}
|
||||||
|
docker image push dockcross/${{ matrix.arch_name.image }} --all-tags
|
||||||
make ${{ matrix.image_name }}.tag-amd64
|
|
||||||
make ${{ matrix.image_name }}.push-amd64
|
|
||||||
|
|
||||||
export HOST_ARCH=arm64
|
|
||||||
make ${{ matrix.image_name }}.tag-arm64
|
|
||||||
make ${{ matrix.image_name }}.push-arm64
|
|
||||||
unset HOST_ARCH
|
|
||||||
|
|
||||||
make ${{ matrix.image_name }}.push
|
|
||||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,4 +9,3 @@ web-wasm/Dockerfile
|
|||||||
*/imagefiles/*
|
*/imagefiles/*
|
||||||
!imagefiles/*
|
!imagefiles/*
|
||||||
crosstool-ng/*
|
crosstool-ng/*
|
||||||
llama.cpp/*
|
|
@ -23,7 +23,7 @@ cd crosstool-ng
|
|||||||
Change git branch:
|
Change git branch:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git checkout crosstool-ng-1.27.0
|
git checkout crosstool-ng-1.25.0
|
||||||
```
|
```
|
||||||
|
|
||||||
Once in the **crosstool-ng** folder, you must first run the `bootstrap` script:
|
Once in the **crosstool-ng** folder, you must first run the `bootstrap` script:
|
||||||
@ -106,10 +106,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm64)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm64)
|
||||||
@ -130,12 +130,12 @@ Copy text to `Dockerfile.in` file:
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 64-bit ARM Linux machine
|
# This is for 64-bit ARM Linux machine
|
||||||
|
|
||||||
# Crosstool-ng crosstool-ng-1.25.0 2022-05-13
|
# Crosstool-ng crosstool-ng-1.25.0 2022-05-13
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -147,9 +147,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnu" target.
|
# 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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -158,18 +158,18 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
```
|
```
|
||||||
@ -179,15 +179,15 @@ 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):
|
Here you have to change the value according to the name of the toolchain (./ct-ng show-tuple):
|
||||||
|
|
||||||
```docker
|
```docker
|
||||||
ENV CROSS_TRIPLE=aarch64-unknown-linux-gnu
|
ENV CROSS_TRIPLE aarch64-unknown-linux-gnu
|
||||||
```
|
```
|
||||||
|
|
||||||
These lines also need to be changed:
|
These lines also need to be changed:
|
||||||
|
|
||||||
```docker
|
```docker
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
ENV PKG_CONFIG_PATH=/usr/lib/aarch64-linux-gnu/pkgconfig
|
ENV PKG_CONFIG_PATH /usr/lib/aarch64-linux-gnu/pkgconfig
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
```
|
```
|
||||||
|
|
||||||
Once this part is finished, there must be 3 files in the `linux-arm64` folder:
|
Once this part is finished, there must be 3 files in the `linux-arm64` folder:
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
ARG DOCKER_IMAGE=debian:bookworm-slim
|
ARG DOCKER_IMAGE=debian:bookworm-slim
|
||||||
FROM $DOCKER_IMAGE
|
FROM $DOCKER_IMAGE
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
#include "common.debian"
|
#include "common.debian"
|
||||||
|
|
||||||
|
213
Makefile
213
Makefile
@ -3,20 +3,8 @@
|
|||||||
# Parameters
|
# Parameters
|
||||||
#
|
#
|
||||||
|
|
||||||
# Name of the docker-equivalent executable for building images.
|
# Name of the docker executable
|
||||||
# OCI: open container interface.
|
|
||||||
# Common values: docker, podman, buildah
|
|
||||||
DOCKER := $(or $(OCI_EXE), docker)
|
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:
|
# The build sub-command. Use:
|
||||||
#
|
#
|
||||||
@ -24,26 +12,21 @@ TEST_DOCKER := $(or $(TEST_DOCKER), $(DOCKER))
|
|||||||
#
|
#
|
||||||
# to generate multi-platform images.
|
# to generate multi-platform images.
|
||||||
BUILD_CMD := $(or $(BUILD_CMD), build)
|
BUILD_CMD := $(or $(BUILD_CMD), build)
|
||||||
TAG_FLAG := $(or $(TAG_FLAG), --tag)
|
|
||||||
|
|
||||||
# Docker organization to pull the images from
|
# Docker organization to pull the images from
|
||||||
ORG = dockcross
|
ORG = dockcross
|
||||||
|
|
||||||
# Host architecture
|
|
||||||
HOST_ARCH := $(or $(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)
|
# Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64)
|
||||||
BIN = ./bin
|
BIN = ./bin
|
||||||
|
|
||||||
RM = --rm
|
|
||||||
|
|
||||||
# These images are built using the "build implicit rule"
|
# These images are built using the "build implicit rule"
|
||||||
STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \
|
STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \
|
||||||
linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64-musl linux-arm64-full \
|
linux-i686 linux-x86 linux-x64 linux-x64-clang linux-arm64 linux-arm64-musl linux-arm64-full \
|
||||||
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-m68k-uclibc linux-s390x linux-x64-tinycc \
|
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-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-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-ppc linux-ppc64le linux-ppc64le-lts linux-riscv64 linux-riscv32 linux-xtensa-uclibc \
|
linux-mips linux-mips-uclibc linux-mips-lts linux-ppc64le linux-ppc64le-lts linux-riscv64 linux-riscv32 linux-xtensa-uclibc \
|
||||||
|
web-wasi \
|
||||||
windows-static-x86 windows-static-x64 windows-static-x64-posix windows-armv7 \
|
windows-static-x86 windows-static-x64 windows-static-x64-posix windows-armv7 \
|
||||||
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix windows-arm64 \
|
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix windows-arm64 \
|
||||||
bare-armv7emhf-nano_newlib
|
bare-armv7emhf-nano_newlib
|
||||||
@ -51,37 +34,33 @@ STANDARD_IMAGES := android-arm android-arm64 android-x86 android-x86_64 \
|
|||||||
# Generated Dockerfiles.
|
# Generated Dockerfiles.
|
||||||
GEN_IMAGES := android-arm android-arm64 \
|
GEN_IMAGES := android-arm android-arm64 \
|
||||||
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 linux-arm64-musl linux-arm64-full \
|
||||||
manylinux_2_28-x64 manylinux_2_34-x64 \
|
manylinux_2_28-x64 \
|
||||||
manylinux2014-x64 manylinux2014-x86 \
|
manylinux2014-x64 manylinux2014-x86 \
|
||||||
manylinux2014-aarch64 linux-arm64-lts \
|
manylinux2014-aarch64 linux-arm64-lts \
|
||||||
web-wasm web-wasi web-wasi-emulated-threads web-wasi-threads linux-mips linux-mips-uclibc linux-mips-lts windows-arm64 windows-armv7 \
|
web-wasm web-wasi 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-static-x86 windows-static-x64 windows-static-x64-posix \
|
||||||
windows-shared-x86 windows-shared-x64 windows-shared-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-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-armv6 linux-armv6-lts linux-armv6-musl linux-mipsel-lts \
|
||||||
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-ppc linux-ppc64le linux-ppc64le-lts linux-s390x \
|
linux-armv5 linux-armv5-musl linux-armv5-uclibc linux-ppc64le linux-ppc64le-lts linux-s390x \
|
||||||
linux-riscv64 linux-riscv32 linux-m68k-uclibc linux-x64-tinycc linux-xtensa-uclibc \
|
linux-riscv64 linux-riscv32 linux-m68k-uclibc linux-x64-tinycc linux-xtensa-uclibc \
|
||||||
bare-armv7emhf-nano_newlib
|
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))
|
GEN_IMAGE_DOCKERFILES = $(addsuffix /Dockerfile,$(GEN_IMAGES))
|
||||||
|
|
||||||
# These images are expected to have explicit rules for *both* build and testing
|
# These images are expected to have explicit rules for *both* build and testing
|
||||||
NON_STANDARD_IMAGES := manylinux_2_28-x64 manylinux_2_34-x64 manylinux2014-x64 manylinux2014-x86 \
|
NON_STANDARD_IMAGES := manylinux_2_28-x64 manylinux2014-x64 manylinux2014-x86 \
|
||||||
manylinux2014-aarch64 web-wasm web-wasi-emulated-threads web-wasi-threads
|
manylinux2014-aarch64 web-wasm web-wasi-threads
|
||||||
|
|
||||||
# Docker composite files
|
# Docker composite files
|
||||||
DOCKER_COMPOSITE_SOURCES = common.docker common.debian common.manylinux2014 common.manylinux_2_28 common.manylinux_2_34 common.buildroot \
|
DOCKER_COMPOSITE_SOURCES = common.docker common.debian common.manylinux2014 common.manylinux_2_28 common.buildroot \
|
||||||
common.crosstool common.webassembly common.windows common-manylinux.crosstool common.dockcross \
|
common.crosstool common.webassembly common.windows common-manylinux.crosstool common.dockcross \
|
||||||
common.label-and-env
|
common.label-and-env
|
||||||
DOCKER_COMPOSITE_FOLDER_PATH = common/
|
DOCKER_COMPOSITE_FOLDER_PATH = common/
|
||||||
DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
|
DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
|
||||||
|
|
||||||
# This list all available images
|
# This list all available images
|
||||||
IMAGES := $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES) $(MULTIARCH_IMAGES)
|
IMAGES := $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)
|
||||||
|
|
||||||
# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
|
# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
|
||||||
linux-x64-tinycc.test_ARGS = --languages C
|
linux-x64-tinycc.test_ARGS = --languages C
|
||||||
@ -95,6 +74,13 @@ windows-armv7.test_ARGS = --exe-suffix ".exe"
|
|||||||
windows-arm64.test_ARGS = --exe-suffix ".exe"
|
windows-arm64.test_ARGS = --exe-suffix ".exe"
|
||||||
bare-armv7emhf-nano_newlib.test_ARGS = --linker-flags="--specs=nosys.specs"
|
bare-armv7emhf-nano_newlib.test_ARGS = --linker-flags="--specs=nosys.specs"
|
||||||
|
|
||||||
|
# On CircleCI, do not attempt to delete container
|
||||||
|
# See https://circleci.com/docs/docker-btrfs-error/
|
||||||
|
RM = --rm
|
||||||
|
ifeq ("$(CIRCLECI)", "true")
|
||||||
|
RM =
|
||||||
|
endif
|
||||||
|
|
||||||
# Tag images with date and Git short hash in addition to revision
|
# Tag images with date and Git short hash in addition to revision
|
||||||
TAG := $(shell date '+%Y%m%d')-$(shell git rev-parse --short HEAD)
|
TAG := $(shell date '+%Y%m%d')-$(shell git rev-parse --short HEAD)
|
||||||
|
|
||||||
@ -119,25 +105,30 @@ test: base.test $(addsuffix .test,$(IMAGES))
|
|||||||
#
|
#
|
||||||
|
|
||||||
$(GEN_IMAGE_DOCKERFILES) Dockerfile: %Dockerfile: %Dockerfile.in $(DOCKER_COMPOSITE_PATH)
|
$(GEN_IMAGE_DOCKERFILES) Dockerfile: %Dockerfile: %Dockerfile.in $(DOCKER_COMPOSITE_PATH)
|
||||||
sed $(foreach f,$(DOCKER_COMPOSITE_SOURCES),-e '/$(f)/ r $(DOCKER_COMPOSITE_FOLDER_PATH)$(f)') $< > $@
|
sed \
|
||||||
|
-e '/common.docker/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.docker' \
|
||||||
|
-e '/common.debian/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.debian' \
|
||||||
|
-e '/common.manylinux_2_28/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.manylinux_2_28' \
|
||||||
|
-e '/common.manylinux2014/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.manylinux2014' \
|
||||||
|
-e '/common.crosstool/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.crosstool' \
|
||||||
|
-e '/common.buildroot/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.buildroot' \
|
||||||
|
-e '/common-manylinux.crosstool/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common-manylinux.crosstool' \
|
||||||
|
-e '/common.webassembly/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.webassembly' \
|
||||||
|
-e '/common.windows/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.windows' \
|
||||||
|
-e '/common.dockcross/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.dockcross' \
|
||||||
|
-e '/common.label-and-env/ r $(DOCKER_COMPOSITE_FOLDER_PATH)common.label-and-env' \
|
||||||
|
$< > $@
|
||||||
|
|
||||||
#
|
#
|
||||||
# web-wasm
|
# 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
|
web-wasm: web-wasm/Dockerfile
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
cp -r test web-wasm/
|
cp -r test web-wasm/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/web-wasm:$(TAG)-$(HOST_ARCH) \
|
$(DOCKER) $(BUILD_CMD) -t $(ORG)/web-wasm:$(TAG) \
|
||||||
$(TAG_FLAG) $(ORG)/web-wasm:latest-$(HOST_ARCH) \
|
-t $(ORG)/web-wasm:latest \
|
||||||
--build-arg IMAGE=$(ORG)/web-wasm \
|
--build-arg IMAGE=$(ORG)/web-wasm \
|
||||||
--build-arg VERSION=$(TAG) \
|
--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_REF=`git rev-parse --short HEAD` \
|
||||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||||
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||||
@ -147,8 +138,8 @@ web-wasm: web-wasm/Dockerfile
|
|||||||
|
|
||||||
web-wasm.test: web-wasm
|
web-wasm.test: web-wasm
|
||||||
cp -r test web-wasm/
|
cp -r test web-wasm/
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/web-wasm:latest-$(HOST_ARCH) > $(BIN)/dockcross-web-wasm && chmod +x $(BIN)/dockcross-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-$(HOST_ARCH) python test/run.py --exe-suffix ".js"
|
$(BIN)/dockcross-web-wasm -i $(ORG)/web-wasm:latest python test/run.py --exe-suffix ".js"
|
||||||
rm -rf web-wasm/test
|
rm -rf web-wasm/test
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -157,16 +148,20 @@ web-wasm.test: web-wasm
|
|||||||
web-wasi-threads: web-wasi web-wasi-threads/Dockerfile
|
web-wasi-threads: web-wasi web-wasi-threads/Dockerfile
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
cp -r test web-wasi-threads/
|
cp -r test web-wasi-threads/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/web-wasi-threads:$(TAG)-$(HOST_ARCH) \
|
$(DOCKER) $(BUILD_CMD) -t $(ORG)/web-wasi-threads:$(TAG) \
|
||||||
-t $(ORG)/web-wasi-threads:latest-$(HOST_ARCH) \
|
-t $(ORG)/web-wasi-threads:latest \
|
||||||
--build-arg IMAGE=$(ORG)/web-wasi-threads \
|
--build-arg IMAGE=$(ORG)/web-wasi-threads \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
--build-arg HOST_ARCH=$(HOST_ARCH) \
|
|
||||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||||
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
--build-arg BUILD_DATE=`date -u +"%Y-%m-%dT%H:%M:%SZ"` \
|
||||||
web-wasi-threads
|
web-wasi-threads
|
||||||
|
|
||||||
|
web-wasi-threads.test: web-wasi-threads
|
||||||
|
$(DOCKER) run $(RM) $(ORG)/web-wasi-threads:latest > $(BIN)/dockcross-web-wasi-threads \
|
||||||
|
&& chmod +x $(BIN)/dockcross-web-wasi-threads
|
||||||
|
$(BIN)/dockcross-web-wasi-threads -i $(ORG)/web-wasi-threads:latest python3 test/run.py
|
||||||
|
rm -rf web-wasi-threads/test
|
||||||
#
|
#
|
||||||
# manylinux2014-aarch64
|
# manylinux2014-aarch64
|
||||||
#
|
#
|
||||||
@ -176,8 +171,8 @@ manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile manylinux2014-x64
|
|||||||
@# Get libstdc++ from quay.io/pypa/manylinux2014_aarch64 container
|
@# 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"
|
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 $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-aarch64:$(TAG) \
|
$(DOCKER) build -t $(ORG)/manylinux2014-aarch64:$(TAG) \
|
||||||
$(TAG_FLAG) $(ORG)/manylinux2014-aarch64:latest \
|
-t $(ORG)/manylinux2014-aarch64:latest \
|
||||||
--build-arg IMAGE=$(ORG)/manylinux2014-aarch64 \
|
--build-arg IMAGE=$(ORG)/manylinux2014-aarch64 \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
@ -189,17 +184,17 @@ manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile manylinux2014-x64
|
|||||||
docker run -v `pwd`:/host --rm quay.io/pypa/manylinux2014_aarch64 bash -c "rm -rf /host/$@/xc_script/usr"
|
docker run -v `pwd`:/host --rm quay.io/pypa/manylinux2014_aarch64 bash -c "rm -rf /host/$@/xc_script/usr"
|
||||||
|
|
||||||
manylinux2014-aarch64.test: manylinux2014-aarch64
|
manylinux2014-aarch64.test: manylinux2014-aarch64
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64:latest > $(BIN)/dockcross-manylinux2014-aarch64 \
|
$(DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64:latest > $(BIN)/dockcross-manylinux2014-aarch64 \
|
||||||
&& chmod +x $(BIN)/dockcross-manylinux2014-aarch64
|
&& chmod +x $(BIN)/dockcross-manylinux2014-aarch64
|
||||||
$(BIN)/dockcross-manylinux2014-aarch64 -i $(ORG)/manylinux2014-aarch64:latest /opt/python/cp311-cp311/bin/python test/run.py
|
$(BIN)/dockcross-manylinux2014-aarch64 -i $(ORG)/manylinux2014-aarch64:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||||
|
|
||||||
#
|
#
|
||||||
# manylinux_2_28-x64
|
# manylinux_2_28-x64
|
||||||
#
|
#
|
||||||
manylinux_2_28-x64: manylinux_2_28-x64/Dockerfile
|
manylinux_2_28-x64: manylinux_2_28-x64/Dockerfile
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux_2_28-x64:$(TAG) \
|
$(DOCKER) build -t $(ORG)/manylinux_2_28-x64:$(TAG) \
|
||||||
$(TAG_FLAG) $(ORG)/manylinux_2_28-x64:latest \
|
-t $(ORG)/manylinux_2_28-x64:latest \
|
||||||
--build-arg IMAGE=$(ORG)/manylinux_2_28-x64 \
|
--build-arg IMAGE=$(ORG)/manylinux_2_28-x64 \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
@ -209,37 +204,17 @@ manylinux_2_28-x64: manylinux_2_28-x64/Dockerfile
|
|||||||
rm -rf $@/imagefiles
|
rm -rf $@/imagefiles
|
||||||
|
|
||||||
manylinux_2_28-x64.test: manylinux_2_28-x64
|
manylinux_2_28-x64.test: manylinux_2_28-x64
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux_2_28-x64:latest > $(BIN)/dockcross-manylinux_2_28-x64 \
|
$(DOCKER) run $(RM) $(ORG)/manylinux_2_28-x64:latest > $(BIN)/dockcross-manylinux_2_28-x64 \
|
||||||
&& chmod +x $(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
|
$(BIN)/dockcross-manylinux_2_28-x64 -i $(ORG)/manylinux_2_28-x64:latest /opt/python/cp310-cp310/bin/python test/run.py
|
||||||
|
|
||||||
#
|
|
||||||
# manylinux_2_34-x64
|
|
||||||
#
|
|
||||||
manylinux_2_34-x64: manylinux_2_34-x64/Dockerfile
|
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
|
||||||
$(DOCKER) build -t $(ORG)/manylinux_2_34-x64:$(TAG) \
|
|
||||||
-t $(ORG)/manylinux_2_34-x64:latest \
|
|
||||||
--build-arg IMAGE=$(ORG)/manylinux_2_34-x64 \
|
|
||||||
--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"` \
|
|
||||||
-f manylinux_2_34-x64/Dockerfile .
|
|
||||||
rm -rf $@/imagefiles
|
|
||||||
|
|
||||||
manylinux_2_34-x64.test: manylinux_2_34-x64
|
|
||||||
$(DOCKER) run $(RM) $(ORG)/manylinux_2_34-x64:latest > $(BIN)/dockcross-manylinux_2_34-x64 \
|
|
||||||
&& chmod +x $(BIN)/dockcross-manylinux_2_34-x64
|
|
||||||
$(BIN)/dockcross-manylinux_2_34-x64 -i $(ORG)/manylinux_2_34-x64:latest /opt/python/cp310-cp310/bin/python test/run.py
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# manylinux2014-x64
|
# manylinux2014-x64
|
||||||
#
|
#
|
||||||
manylinux2014-x64: manylinux2014-x64/Dockerfile
|
manylinux2014-x64: manylinux2014-x64/Dockerfile
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-x64:$(TAG) \
|
$(DOCKER) build -t $(ORG)/manylinux2014-x64:$(TAG) \
|
||||||
$(TAG_FLAG) $(ORG)/manylinux2014-x64:latest \
|
-t $(ORG)/manylinux2014-x64:latest \
|
||||||
--build-arg IMAGE=$(ORG)/manylinux2014-x64 \
|
--build-arg IMAGE=$(ORG)/manylinux2014-x64 \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
--build-arg VCS_REF=`git rev-parse --short HEAD` \
|
||||||
@ -249,16 +224,16 @@ manylinux2014-x64: manylinux2014-x64/Dockerfile
|
|||||||
rm -rf $@/imagefiles
|
rm -rf $@/imagefiles
|
||||||
|
|
||||||
manylinux2014-x64.test: manylinux2014-x64
|
manylinux2014-x64.test: manylinux2014-x64
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-x64:latest > $(BIN)/dockcross-manylinux2014-x64 \
|
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x64:latest > $(BIN)/dockcross-manylinux2014-x64 \
|
||||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x64
|
&& chmod +x $(BIN)/dockcross-manylinux2014-x64
|
||||||
$(BIN)/dockcross-manylinux2014-x64 -i $(ORG)/manylinux2014-x64:latest /opt/python/cp311-cp311/bin/python test/run.py
|
$(BIN)/dockcross-manylinux2014-x64 -i $(ORG)/manylinux2014-x64:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||||
|
|
||||||
#
|
#
|
||||||
# manylinux2014-x86
|
# manylinux2014-x86
|
||||||
#
|
#
|
||||||
manylinux2014-x86: manylinux2014-x86/Dockerfile
|
manylinux2014-x86: manylinux2014-x86/Dockerfile
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/manylinux2014-x86:$(TAG) \
|
$(DOCKER) build -t $(ORG)/manylinux2014-x86:$(TAG) \
|
||||||
-t $(ORG)/manylinux2014-x86:latest \
|
-t $(ORG)/manylinux2014-x86:latest \
|
||||||
--build-arg IMAGE=$(ORG)/manylinux2014-x86 \
|
--build-arg IMAGE=$(ORG)/manylinux2014-x86 \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
@ -269,32 +244,22 @@ manylinux2014-x86: manylinux2014-x86/Dockerfile
|
|||||||
rm -rf $@/imagefiles
|
rm -rf $@/imagefiles
|
||||||
|
|
||||||
manylinux2014-x86.test: manylinux2014-x86
|
manylinux2014-x86.test: manylinux2014-x86
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/manylinux2014-x86:latest > $(BIN)/dockcross-manylinux2014-x86 \
|
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x86:latest > $(BIN)/dockcross-manylinux2014-x86 \
|
||||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x86
|
&& chmod +x $(BIN)/dockcross-manylinux2014-x86
|
||||||
$(BIN)/dockcross-manylinux2014-x86 -i $(ORG)/manylinux2014-x86:latest /opt/python/cp311-cp311/bin/python test/run.py
|
$(BIN)/dockcross-manylinux2014-x86 -i $(ORG)/manylinux2014-x86:latest /opt/python/cp38-cp38/bin/python test/run.py
|
||||||
|
|
||||||
#
|
#
|
||||||
# base-$(HOST_ARCH)
|
# base
|
||||||
#
|
#
|
||||||
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/
|
base: Dockerfile imagefiles/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/base:latest \
|
$(DOCKER) $(BUILD_CMD) -t $(ORG)/base:latest \
|
||||||
$(TAG_FLAG) $(ORG)/base:$(TAG) \
|
-t $(ORG)/base:$(TAG) \
|
||||||
--build-arg IMAGE=$(ORG)/base \
|
--build-arg IMAGE=$(ORG)/base \
|
||||||
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
--build-arg VCS_URL=`git config --get remote.origin.url` \
|
||||||
.
|
.
|
||||||
|
|
||||||
base.test: base
|
base.test: base
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/base:latest > $(BIN)/dockcross-base && chmod +x $(BIN)/dockcross-base
|
$(DOCKER) run $(RM) $(ORG)/base:latest > $(BIN)/dockcross-base && chmod +x $(BIN)/dockcross-base
|
||||||
|
|
||||||
# display
|
# display
|
||||||
#
|
#
|
||||||
@ -309,8 +274,8 @@ $(VERBOSE).SILENT: display_images
|
|||||||
|
|
||||||
$(STANDARD_IMAGES): %: %/Dockerfile base
|
$(STANDARD_IMAGES): %: %/Dockerfile base
|
||||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||||
$(BUILD_DOCKER) $(BUILD_CMD) $(TAG_FLAG) $(ORG)/$@:latest \
|
$(DOCKER) $(BUILD_CMD) -t $(ORG)/$@:latest \
|
||||||
$(TAG_FLAG) $(ORG)/$@:$(TAG) \
|
-t $(ORG)/$@:$(TAG) \
|
||||||
--build-arg ORG=$(ORG) \
|
--build-arg ORG=$(ORG) \
|
||||||
--build-arg IMAGE=$(ORG)/$@ \
|
--build-arg IMAGE=$(ORG)/$@ \
|
||||||
--build-arg VERSION=$(TAG) \
|
--build-arg VERSION=$(TAG) \
|
||||||
@ -320,20 +285,6 @@ $(STANDARD_IMAGES): %: %/Dockerfile base
|
|||||||
$@
|
$@
|
||||||
rm -rf $@/imagefiles
|
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:
|
clean:
|
||||||
for d in $(IMAGES) ; do rm -rf $$d/imagefiles ; done
|
for d in $(IMAGES) ; do rm -rf $$d/imagefiles ; done
|
||||||
for d in $(IMAGES) ; do rm -rf $(BIN)/dockcross-$$d ; done
|
for d in $(IMAGES) ; do rm -rf $(BIN)/dockcross-$$d ; done
|
||||||
@ -342,9 +293,9 @@ clean:
|
|||||||
|
|
||||||
purge: clean
|
purge: clean
|
||||||
# Remove all untagged images
|
# Remove all untagged images
|
||||||
$(TEST_DOCKER) container ls -aq | xargs -r $(DOCKER) container rm -f
|
$(DOCKER) container ls -aq | xargs -r $(DOCKER) container rm -f
|
||||||
# Remove all images with organization (ex dockcross/*)
|
# Remove all images with organization (ex dockcross/*)
|
||||||
$(BUILD_DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
|
$(DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
|
||||||
|
|
||||||
# Check bash syntax
|
# Check bash syntax
|
||||||
bash-check:
|
bash-check:
|
||||||
@ -356,44 +307,10 @@ bash-check:
|
|||||||
#
|
#
|
||||||
.SECONDEXPANSION:
|
.SECONDEXPANSION:
|
||||||
$(addsuffix .test,$(STANDARD_IMAGES)): $$(basename $$@)
|
$(addsuffix .test,$(STANDARD_IMAGES)): $$(basename $$@)
|
||||||
$(TEST_DOCKER) run $(RM) $(ORG)/$(basename $@):latest > $(BIN)/dockcross-$(basename $@) \
|
$(DOCKER) run $(RM) $(ORG)/$(basename $@):latest > $(BIN)/dockcross-$(basename $@) \
|
||||||
&& chmod +x $(BIN)/dockcross-$(basename $@)
|
&& chmod +x $(BIN)/dockcross-$(basename $@)
|
||||||
$(BIN)/dockcross-$(basename $@) -i $(ORG)/$(basename $@):latest python3 test/run.py $($@_ARGS)
|
$(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
|
# testing prerequisites implicit rule
|
||||||
#
|
#
|
||||||
|
19
README.md
19
README.md
@ -18,8 +18,6 @@ Cross compiling toolchains in Docker images.
|
|||||||
- [Meson](https://mesonbuild.com) is pre-installed.
|
- [Meson](https://mesonbuild.com) is pre-installed.
|
||||||
- [Conan.io](https://www.conan.io) can be used as a package manager.
|
- [Conan.io](https://www.conan.io) can be used as a package manager.
|
||||||
- Toolchain files configured for CMake.
|
- Toolchain files configured for CMake.
|
||||||
- [Rustup](https://rustup.rs/) is pre-installed.
|
|
||||||
- Some images (e.g. android) are configured for Rust.
|
|
||||||
- Current directory is mounted as the container\'s workdir, `/work`.
|
- Current directory is mounted as the container\'s workdir, `/work`.
|
||||||
- Works with the [Docker for Mac](https://docs.docker.com/docker-for-mac/) and [Docker for Windows](https://docs.docker.com/docker-for-windows/).
|
- Works with the [Docker for Mac](https://docs.docker.com/docker-for-mac/) and [Docker for Windows](https://docs.docker.com/docker-for-windows/).
|
||||||
- Support using alternative container executor by setting **OCI_EXE** environment variable. By default, it searches for [docker](https://www.docker.com) and [podman](https://podman.io) executable.
|
- Support using alternative container executor by setting **OCI_EXE** environment variable. By default, it searches for [docker](https://www.docker.com) and [podman](https://podman.io) executable.
|
||||||
@ -32,7 +30,6 @@ Cross compiling toolchains in Docker images.
|
|||||||
3. `dockcross ninja -Cbuild`: Run ninja in the `./build` directory.
|
3. `dockcross ninja -Cbuild`: Run ninja in the `./build` directory.
|
||||||
4. `dockcross bash -c '$CC test/C/hello.c -o hello'`: Build the *hello.c* file with the compiler identified with the `CC` environmental variable in the build environment.
|
4. `dockcross bash -c '$CC test/C/hello.c -o hello'`: Build the *hello.c* file with the compiler identified with the `CC` environmental variable in the build environment.
|
||||||
5. `dockcross bash`: Run an interactive shell in the build environment.
|
5. `dockcross bash`: Run an interactive shell in the build environment.
|
||||||
6. `dockcross cargo build`: Build the current Rust project.
|
|
||||||
|
|
||||||
Note that commands are executed verbatim. If any shell processing for environment variable expansion or redirection is required, please use
|
Note that commands are executed verbatim. If any shell processing for environment variable expansion or redirection is required, please use
|
||||||
|
|
||||||
@ -108,7 +105,6 @@ 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-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-mipsel-lts | mipsel | GCC 8.5.0 + Glibc 2.28 | Linux |
|
||||||
| dockcross/linux-s390x | s390x | GCC | Linux |
|
| dockcross/linux-s390x | s390x | GCC | Linux |
|
||||||
| dockcross/linux-ppc | ppc | GCC | Linux |
|
|
||||||
| dockcross/linux-ppc64le | ppc64le | GCC | Linux |
|
| dockcross/linux-ppc64le | ppc64le | GCC | Linux |
|
||||||
| dockcross/linux-ppc64le-lts | ppc64le | GCC 8.5.0 + Glibc 2.28 | Linux |
|
| dockcross/linux-ppc64le-lts | ppc64le | GCC 8.5.0 + Glibc 2.28 | Linux |
|
||||||
| dockcross/linux-riscv32 | riscv32 | GCC | Linux |
|
| dockcross/linux-riscv32 | riscv32 | GCC | Linux |
|
||||||
@ -116,7 +112,6 @@ The dockcross script will execute the given command-line inside the container, a
|
|||||||
| dockcross/linux-m68k-uclibc | m68k | GCC + uclibc | Linux |
|
| dockcross/linux-m68k-uclibc | m68k | GCC + uclibc | Linux |
|
||||||
| dockcross/linux-xtensa-uclibc | xtensa | GCC + uclibc | Linux |
|
| dockcross/linux-xtensa-uclibc | xtensa | GCC + uclibc | Linux |
|
||||||
| dockcross/manylinux_2_28-x64 | x86_64 | GCC | Linux |
|
| dockcross/manylinux_2_28-x64 | x86_64 | GCC | Linux |
|
||||||
| dockcross/manylinux_2_34-x64 | x86_64 | GCC | Linux |
|
|
||||||
| dockcross/manylinux2014-x86 | x86 | GCC | Linux |
|
| dockcross/manylinux2014-x86 | x86 | GCC | Linux |
|
||||||
| dockcross/manylinux2014-x64 | x86_64 | GCC | Linux |
|
| dockcross/manylinux2014-x64 | x86_64 | GCC | Linux |
|
||||||
| dockcross/linux-i686 | x86 | GCC | Linux |
|
| dockcross/linux-i686 | x86 | GCC | Linux |
|
||||||
@ -325,12 +320,6 @@ 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/).
|
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
|
### dockcross/linux-ppc64le
|
||||||
|
|
||||||
 
|
 
|
||||||
@ -385,12 +374,6 @@ Standalone Linux i686 cross compiler.
|
|||||||
|
|
||||||
Docker [manylinux_2_28](https://github.com/pypa/manylinux) image for building Linux x86_64 / amd64 [Python wheel packages](http://pythonwheels.com/). It includes Python 3.6, 3.7, 3.8, 3.9, 3.10 and 3.11. Also has support for the dockcross script, and it has installations of CMake, Ninja, and [scikit-build](http://scikit-build.org). For CMake, it sets **MANYLINUX_2_28** to \"TRUE\" in the toolchain.
|
Docker [manylinux_2_28](https://github.com/pypa/manylinux) image for building Linux x86_64 / amd64 [Python wheel packages](http://pythonwheels.com/). It includes Python 3.6, 3.7, 3.8, 3.9, 3.10 and 3.11. Also has support for the dockcross script, and it has installations of CMake, Ninja, and [scikit-build](http://scikit-build.org). For CMake, it sets **MANYLINUX_2_28** to \"TRUE\" in the toolchain.
|
||||||
|
|
||||||
### dockcross/manylinux_2_34-x64
|
|
||||||
|
|
||||||
 
|
|
||||||
|
|
||||||
Docker [manylinux_2_34](https://github.com/pypa/manylinux) image for building Linux x86_64 / amd64 [Python wheel packages](http://pythonwheels.com/). It includes Python 3.8.10+, 3.9.5+, 3.10.0+. Also has support for the dockcross script, and it has installations of CMake, Ninja, and [scikit-build](http://scikit-build.org). For CMake, it sets **MANYLINUX_2_34** to \"TRUE\" in the toolchain.
|
|
||||||
|
|
||||||
### dockcross/manylinux2014-x64
|
### dockcross/manylinux2014-x64
|
||||||
|
|
||||||
 
|
 
|
||||||
@ -576,7 +559,7 @@ An example Dockerfile would be:
|
|||||||
```
|
```
|
||||||
FROM dockcross/linux-armv7
|
FROM dockcross/linux-armv7
|
||||||
|
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=my_cool_image
|
ENV DEFAULT_DOCKCROSS_IMAGE my_cool_image
|
||||||
RUN apt-get install -y nano
|
RUN apt-get install -y nano
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
MAINTAINER Matt McCormick "matt@mmmccormick.com"
|
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# The cross-compiling emulator
|
# The cross-compiling emulator
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
@ -17,8 +17,8 @@ ENV AS=${CROSS_ROOT}/bin/llvm-as \
|
|||||||
CXX=${CROSS_ROOT}/bin/clang++ \
|
CXX=${CROSS_ROOT}/bin/clang++ \
|
||||||
LD=${CROSS_ROOT}/bin/ld
|
LD=${CROSS_ROOT}/bin/ld
|
||||||
|
|
||||||
ENV ANDROID_NDK_REVISION=25b
|
ENV ANDROID_NDK_REVISION 25b
|
||||||
ENV ANDROID_API=23
|
ENV ANDROID_API 23
|
||||||
|
|
||||||
RUN mkdir -p /build && \
|
RUN mkdir -p /build && \
|
||||||
cd /build && \
|
cd /build && \
|
||||||
@ -35,13 +35,7 @@ RUN mkdir -p /build && \
|
|||||||
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
||||||
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
||||||
|
|
||||||
# Prepare Rust
|
|
||||||
ENV PATH="/root/.cargo/bin/:$PATH"
|
|
||||||
RUN rustup target add armv7-linux-androideabi
|
|
||||||
COPY config.toml /root/.cargo/
|
|
||||||
|
|
||||||
# Prepare CMake
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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"
|
#include "common.label-and-env"
|
||||||
|
@ -15,10 +15,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} $ENV{CROSS_ROOT})
|
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
[build]
|
|
||||||
target = "armv7-linux-androideabi"
|
|
||||||
|
|
||||||
[target.armv7-linux-androideabi]
|
|
||||||
linker = "/usr/arm-linux-androideabi/bin/armv7a-linux-androideabi23-clang"
|
|
@ -1,6 +1,6 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
MAINTAINER Matt McCormick "matt@mmmccormick.com"
|
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||||
RUN \
|
RUN \
|
||||||
echo Enabled: no >> /etc/apt/sources.list.d/debian.sources && \
|
echo Enabled: no >> /etc/apt/sources.list.d/debian.sources && \
|
||||||
dpkg --add-architecture arm64 && \
|
dpkg --add-architecture arm64 && \
|
||||||
@ -21,8 +21,8 @@ ENV AS=${CROSS_ROOT}/bin/llvm-as \
|
|||||||
CXX=${CROSS_ROOT}/bin/clang++ \
|
CXX=${CROSS_ROOT}/bin/clang++ \
|
||||||
LD=${CROSS_ROOT}/bin/ld
|
LD=${CROSS_ROOT}/bin/ld
|
||||||
|
|
||||||
ENV ANDROID_NDK_REVISION=25b
|
ENV ANDROID_NDK_REVISION 25b
|
||||||
ENV ANDROID_API=23
|
ENV ANDROID_API 23
|
||||||
|
|
||||||
RUN mkdir -p /build && \
|
RUN mkdir -p /build && \
|
||||||
cd /build && \
|
cd /build && \
|
||||||
@ -39,13 +39,8 @@ RUN mkdir -p /build && \
|
|||||||
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
||||||
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
||||||
|
|
||||||
# Prepare Rust
|
|
||||||
ENV PATH="/root/.cargo/bin/:$PATH"
|
|
||||||
RUN rustup target add aarch64-linux-android
|
|
||||||
COPY config.toml /root/.cargo/
|
|
||||||
|
|
||||||
# Prepare CMake
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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"
|
#include "common.label-and-env"
|
||||||
|
@ -14,10 +14,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} $ENV{CROSS_ROOT})
|
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
[build]
|
|
||||||
target = "aarch64-linux-android"
|
|
||||||
|
|
||||||
[target.aarch64-linux-android]
|
|
||||||
linker = "/usr/aarch64-linux-android/bin/aarch64-linux-android-clang"
|
|
@ -11,8 +11,8 @@ ENV AS=${CROSS_ROOT}/bin/llvm-as \
|
|||||||
CXX=${CROSS_ROOT}/bin/clang++ \
|
CXX=${CROSS_ROOT}/bin/clang++ \
|
||||||
LD=${CROSS_ROOT}/bin/ld
|
LD=${CROSS_ROOT}/bin/ld
|
||||||
|
|
||||||
ENV ANDROID_NDK_REVISION=25b
|
ENV ANDROID_NDK_REVISION 25b
|
||||||
ENV ANDROID_API=23
|
ENV ANDROID_API 23
|
||||||
|
|
||||||
RUN mkdir -p /build && \
|
RUN mkdir -p /build && \
|
||||||
cd /build && \
|
cd /build && \
|
||||||
@ -29,14 +29,8 @@ RUN mkdir -p /build && \
|
|||||||
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
||||||
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
||||||
|
|
||||||
# Prepare Rust
|
|
||||||
ENV PATH="/root/.cargo/bin/:$PATH"
|
|
||||||
RUN rustup target add i686-linux-android
|
|
||||||
COPY config.toml /root/.cargo/
|
|
||||||
|
|
||||||
# Prepare CMake
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Build-time metadata as defined at http://label-schema.org
|
# Build-time metadata as defined at http://label-schema.org
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -50,4 +44,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-ref=$VCS_REF \
|
org.label-schema.vcs-ref=$VCS_REF \
|
||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -14,8 +14,8 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} $ENV{CROSS_ROOT})
|
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
[build]
|
|
||||||
target = "i686-linux-android"
|
|
||||||
|
|
||||||
[target.i686-linux-android]
|
|
||||||
linker = "/usr/i686-linux-android/bin/i686-linux-android23-clang"
|
|
@ -11,8 +11,8 @@ ENV AS=${CROSS_ROOT}/bin/llvm-as \
|
|||||||
CXX=${CROSS_ROOT}/bin/clang++ \
|
CXX=${CROSS_ROOT}/bin/clang++ \
|
||||||
LD=${CROSS_ROOT}/bin/ld
|
LD=${CROSS_ROOT}/bin/ld
|
||||||
|
|
||||||
ENV ANDROID_NDK_REVISION=25b
|
ENV ANDROID_NDK_REVISION 25b
|
||||||
ENV ANDROID_API=23
|
ENV ANDROID_API 23
|
||||||
|
|
||||||
RUN mkdir -p /build && \
|
RUN mkdir -p /build && \
|
||||||
cd /build && \
|
cd /build && \
|
||||||
@ -29,14 +29,8 @@ RUN mkdir -p /build && \
|
|||||||
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
find ${CROSS_ROOT} -exec chmod a+r '{}' \; && \
|
||||||
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
find ${CROSS_ROOT} -executable -exec chmod a+x '{}' \;
|
||||||
|
|
||||||
# Prepare Rust
|
|
||||||
ENV PATH="/root/.cargo/bin/:$PATH"
|
|
||||||
RUN rustup target add x86_64-linux-android
|
|
||||||
COPY config.toml /root/.cargo/
|
|
||||||
|
|
||||||
# Prepare CMake
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Build-time metadata as defined at http://label-schema.org
|
# Build-time metadata as defined at http://label-schema.org
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -50,4 +44,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-ref=$VCS_REF \
|
org.label-schema.vcs-ref=$VCS_REF \
|
||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -14,8 +14,8 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
set(CMAKE_EXE_LINKER_FLAGS "-llog")
|
||||||
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
set(CMAKE_SHARED_LINKER_FLAGS "-llog")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} $ENV{CROSS_ROOT})
|
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT})
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
set(CMAKE_SYSROOT $ENV{CROSS_ROOT}/sysroot)
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
[build]
|
|
||||||
target = "x86_64-linux-android"
|
|
||||||
|
|
||||||
[target.x86_64-linux-android]
|
|
||||||
linker = "/usr/x86_64-linux-android/bin/x86_64-linux-android-clang"
|
|
@ -6,13 +6,13 @@ LABEL maintainer="Chen Tao t.clydechen@gmail.com"
|
|||||||
# This is for armv7e-m+fp bare metal
|
# This is for armv7e-m+fp bare metal
|
||||||
|
|
||||||
# Crosstool-ng version 1.25.0
|
# Crosstool-ng version 1.25.0
|
||||||
ENV CT_VERSION=8fa98eeeff9bc53478d97ef722f366fea151ae64
|
ENV CT_VERSION 8fa98eeeff9bc53478d97ef722f366fea151ae64
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
ENV CROSS_TRIPLE=arm-none-eabi
|
ENV CROSS_TRIPLE arm-none-eabi
|
||||||
|
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -23,13 +23,13 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
OBJCOPY=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-objcopy
|
OBJCOPY=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-objcopy
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-none-eabi/pkgconfig
|
ENV PKG_CONFIG_PATH /usr/lib/arm-none-eabi/pkgconfig
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
@ -10,7 +10,7 @@ set(CMAKE_CXX_COMPILER $ENV{CXX})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||||
|
@ -119,7 +119,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -19,8 +19,12 @@ COPY \
|
|||||||
/dockcross/
|
/dockcross/
|
||||||
|
|
||||||
# Build and install the toolchain, cleaning up artifacts afterwards.
|
# Build and install the toolchain, cleaning up artifacts afterwards.
|
||||||
RUN mkdir /dockcross/buildroot && cd /dockcross/buildroot && \
|
RUN mkdir /dockcross/buildroot \
|
||||||
/dockcross/install-buildroot-toolchain.sh -c "/dockcross/buildroot.config" -v "${BR_VERSION}"
|
&& cd /dockcross/buildroot \
|
||||||
|
&& /dockcross/install-buildroot-toolchain.sh \
|
||||||
|
-c "/dockcross/buildroot.config" \
|
||||||
|
-v "${BR_VERSION}" \
|
||||||
|
&& rm -rf /dockcross/buildroot /dockcross/install-buildroot-toolchain.sh
|
||||||
|
|
||||||
# Restore our default workdir (from "dockcross/base").
|
# Restore our default workdir (from "dockcross/base").
|
||||||
WORKDIR /work
|
WORKDIR /work
|
||||||
|
@ -11,7 +11,6 @@ RUN \
|
|||||||
build-essential \
|
build-essential \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
ccache \
|
|
||||||
curl \
|
curl \
|
||||||
dirmngr \
|
dirmngr \
|
||||||
file \
|
file \
|
||||||
@ -42,8 +41,5 @@ RUN \
|
|||||||
python-is-python3 \
|
python-is-python3 \
|
||||||
&& apt-get clean autoclean --yes \
|
&& apt-get clean autoclean --yes \
|
||||||
&& apt-get autoremove --yes \
|
&& apt-get autoremove --yes \
|
||||||
&& rm -rf /var/lib/apt/ \
|
&& rm -rf /var/lib/{apt,dpkg,cache,log}/ \
|
||||||
&& rm -rf /var/lib/dpkg/ \
|
|
||||||
&& rm -rf /var/cache/ \
|
|
||||||
&& rm -rf /var/log/ \
|
|
||||||
&& rm /etc/ssh/*key*
|
&& rm /etc/ssh/*key*
|
||||||
|
@ -1,22 +1,20 @@
|
|||||||
WORKDIR /usr/src
|
WORKDIR /usr/src
|
||||||
|
|
||||||
ARG GIT_VERSION=2.48.1
|
ARG GIT_VERSION=2.42.0
|
||||||
|
|
||||||
ARG CMAKE_VERSION=3.31.5
|
ARG CMAKE_VERSION=3.27.5
|
||||||
|
|
||||||
ARG NINJA_VERSION=1.12.1
|
ARG NINJA_VERSION=1.11.1
|
||||||
ARG FLATCC_VERSION=0.6.1
|
ARG FLATCC_VERSION=0.6.1
|
||||||
|
|
||||||
ARG LIQUIDPROMT_VERSION=v1.12.0
|
ARG OPENSSL_VERSION=openssl-1.1.1o
|
||||||
|
ARG OPENSSL_HASH=9384a2b0570dd80358841464677115df785edb941c71211f75076d72fe6b438f
|
||||||
ARG OPENSSL_VERSION=openssl-1.1.1w
|
|
||||||
ARG OPENSSL_HASH=cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8
|
|
||||||
|
|
||||||
ARG CURL_VERSION=curl-7.76.0
|
ARG CURL_VERSION=curl-7.76.0
|
||||||
ARG CURL_HASH=3b4378156ba09e224008e81dcce854b7ce4d182b1f9cfb97fe5ed9e9c18c6bd3
|
ARG CURL_HASH=3b4378156ba09e224008e81dcce854b7ce4d182b1f9cfb97fe5ed9e9c18c6bd3
|
||||||
|
|
||||||
ARG PERL_VERSION=perl-5.40.1
|
ARG PERL_VERSION=perl-5.32.1
|
||||||
ARG PERL_HASH=02f8c45bb379ed0c3de7514fad48c714fd46be8f0b536bfd5320050165a1ee26
|
ARG PERL_HASH=03b693901cd8ae807231b1787798cf1f2e0b8a56218d07b7da44f784a7caeb2c
|
||||||
|
|
||||||
# Image build scripts
|
# Image build scripts
|
||||||
COPY \
|
COPY \
|
||||||
@ -27,7 +25,6 @@ COPY \
|
|||||||
imagefiles/build-and-install-ninja.sh \
|
imagefiles/build-and-install-ninja.sh \
|
||||||
imagefiles/build-and-install-openssl.sh \
|
imagefiles/build-and-install-openssl.sh \
|
||||||
imagefiles/build-and-install-openssh.sh \
|
imagefiles/build-and-install-openssh.sh \
|
||||||
imagefiles/build-and-install-rustup.sh \
|
|
||||||
imagefiles/install-cmake-binary.sh \
|
imagefiles/install-cmake-binary.sh \
|
||||||
imagefiles/install-liquidprompt-binary.sh \
|
imagefiles/install-liquidprompt-binary.sh \
|
||||||
imagefiles/install-python-packages.sh \
|
imagefiles/install-python-packages.sh \
|
||||||
@ -41,9 +38,8 @@ RUN \
|
|||||||
/buildscripts/build-and-install-curl.sh && \
|
/buildscripts/build-and-install-curl.sh && \
|
||||||
/buildscripts/build-and-install-git.sh && \
|
/buildscripts/build-and-install-git.sh && \
|
||||||
/buildscripts/build-and-install-cmake.sh $X86_FLAG && \
|
/buildscripts/build-and-install-cmake.sh $X86_FLAG && \
|
||||||
/buildscripts/build-and-install-rustup.sh && \
|
|
||||||
/buildscripts/install-liquidprompt-binary.sh && \
|
/buildscripts/install-liquidprompt-binary.sh && \
|
||||||
PYTHON=$([ -e /opt/python/cp311-cp311/bin/python ] && echo "/opt/python/cp311-cp311/bin/python" || echo "python3") && \
|
PYTHON=$([ -e /opt/python/cp38-cp38/bin/python ] && echo "/opt/python/cp38-cp38/bin/python" || echo "python3") && \
|
||||||
/buildscripts/install-python-packages.sh -python ${PYTHON} && \
|
/buildscripts/install-python-packages.sh -python ${PYTHON} && \
|
||||||
/buildscripts/build-and-install-ninja.sh -python ${PYTHON} && \
|
/buildscripts/build-and-install-ninja.sh -python ${PYTHON} && \
|
||||||
/buildscripts/build-and-install-flatcc.sh && \
|
/buildscripts/build-and-install-flatcc.sh && \
|
||||||
|
@ -11,4 +11,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -16,7 +16,6 @@ RUN \
|
|||||||
wget \
|
wget \
|
||||||
nasm \
|
nasm \
|
||||||
zip \
|
zip \
|
||||||
libatomic \
|
|
||||||
&& \
|
&& \
|
||||||
yum clean all && \
|
yum clean all && \
|
||||||
# Remove sudo provided by devtoolset since it doesn't work with
|
# Remove sudo provided by devtoolset since it doesn't work with
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
RUN \
|
|
||||||
set -x && \
|
|
||||||
yum upgrade -y almalinux-release && \
|
|
||||||
yum -y install \
|
|
||||||
gpg \
|
|
||||||
python3-devel \
|
|
||||||
zlib-devel \
|
|
||||||
gettext \
|
|
||||||
openssh-clients \
|
|
||||||
wget \
|
|
||||||
nasm \
|
|
||||||
zip \
|
|
||||||
&& \
|
|
||||||
yum clean all
|
|
||||||
|
|
||||||
# Image build scripts
|
|
||||||
COPY \
|
|
||||||
manylinux-common/install-python-packages.sh \
|
|
||||||
/buildscripts/
|
|
||||||
|
|
||||||
RUN \
|
|
||||||
set -x && \
|
|
||||||
# Remove sudo provided by devtoolset since it doesn't work with
|
|
||||||
# our sudo wrapper calling gosu.
|
|
||||||
rm -f /opt/rh/gcc-toolset-14/root/usr/bin/sudo && \
|
|
||||||
/buildscripts/install-python-packages.sh && \
|
|
||||||
rm -rf /buildscripts
|
|
||||||
|
|
||||||
# Runtime scripts
|
|
||||||
COPY manylinux-common/pre_exec.sh /dockcross/
|
|
@ -2,8 +2,8 @@
|
|||||||
#
|
#
|
||||||
# Common WebAssembly tools.
|
# Common WebAssembly tools.
|
||||||
|
|
||||||
# 2024-12, version 121
|
# main 2024-04-02
|
||||||
ENV BINARYEN_GIT_TAG=353b759b230dff8fb82aeb157aeb6db360d74a49
|
ENV BINARYEN_GIT_TAG 4e2ebbd6de6f99e5972654b3f50ddbc1c6839a73
|
||||||
RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
||||||
cd binaryen && \
|
cd binaryen && \
|
||||||
git checkout ${BINARYEN_GIT_TAG} && \
|
git checkout ${BINARYEN_GIT_TAG} && \
|
||||||
@ -14,7 +14,6 @@ RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
|||||||
-DCMAKE_C_COMPILER=/usr/bin/cc \
|
-DCMAKE_C_COMPILER=/usr/bin/cc \
|
||||||
-DCMAKE_CXX_COMPILER=/usr/bin/c++ \
|
-DCMAKE_CXX_COMPILER=/usr/bin/c++ \
|
||||||
-G Ninja \
|
-G Ninja \
|
||||||
-DENABLE_WERROR:BOOL=OFF \
|
|
||||||
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
||||||
-DCMAKE_TOOLCHAIN_FILE="" \
|
-DCMAKE_TOOLCHAIN_FILE="" \
|
||||||
../binaryen && \
|
../binaryen && \
|
||||||
@ -23,8 +22,8 @@ RUN git clone --recursive https://github.com/WebAssembly/binaryen.git && \
|
|||||||
cd ../ && \
|
cd ../ && \
|
||||||
rm -rf binaryen*
|
rm -rf binaryen*
|
||||||
|
|
||||||
# main 2024-12-23
|
# main 2024-04-02
|
||||||
ENV WABT_GIT_TAG=ea193b40d6d4a1a697d68ae855b2b3b3e263b377
|
ENV WABT_GIT_TAG 356931a867c7d642bc282fff46a1c95ab0e843f3
|
||||||
RUN git clone --recurse-submodules https://github.com/WebAssembly/wabt.git && \
|
RUN git clone --recurse-submodules https://github.com/WebAssembly/wabt.git && \
|
||||||
cd wabt && \
|
cd wabt && \
|
||||||
git checkout ${WABT_GIT_TAG} && \
|
git checkout ${WABT_GIT_TAG} && \
|
||||||
@ -43,13 +42,13 @@ RUN git clone --recurse-submodules https://github.com/WebAssembly/wabt.git && \
|
|||||||
cd ../ && \
|
cd ../ && \
|
||||||
rm -rf wabt*
|
rm -rf wabt*
|
||||||
|
|
||||||
RUN mkdir -p /wasi-runtimes
|
RUN mkdir /wasi-runtimes
|
||||||
|
|
||||||
ENV WASMTIME_HOME=/wasi-runtimes/wasmtime
|
ENV WASMTIME_HOME /wasi-runtimes/wasmtime
|
||||||
RUN mkdir -p ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash
|
RUN mkdir ${WASMTIME_HOME} && curl https://wasmtime.dev/install.sh -sSf | bash
|
||||||
COPY imagefiles/wasmtime-pwd.sh ${WASMTIME_HOME}/bin/
|
COPY imagefiles/wasmtime-pwd.sh ${WASMTIME_HOME}/bin/
|
||||||
COPY imagefiles/wasmtime-pwd-threads.sh ${WASMTIME_HOME}/bin/
|
COPY imagefiles/wasmtime-pwd-threads.sh ${WASMTIME_HOME}/bin/
|
||||||
ENV PATH="$WASMTIME_HOME/bin:$PATH"
|
ENV PATH "$WASMTIME_HOME/bin:$PATH"
|
||||||
|
|
||||||
# For wasmer
|
# For wasmer
|
||||||
RUN \
|
RUN \
|
||||||
@ -57,20 +56,20 @@ RUN \
|
|||||||
apt-get install --no-install-recommends --yes \
|
apt-get install --no-install-recommends --yes \
|
||||||
libxkbcommon0
|
libxkbcommon0
|
||||||
|
|
||||||
ENV WASMER_DIR=/wasi-runtimes/wasmer
|
ENV WASMER_DIR /wasi-runtimes/wasmer
|
||||||
RUN curl https://get.wasmer.io -sSfL | sh
|
RUN curl https://get.wasmer.io -sSfL | sh
|
||||||
COPY imagefiles/wasmer-pwd.sh ${WASMER_DIR}/bin/
|
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 && \
|
RUN mkdir -p /wasi-runtimes/wasm3/bin && \
|
||||||
curl -LO https://github.com/wasm3/wasm3/releases/download/v${WASM3_VERSION}/wasm3-linux-x64.elf && \
|
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 && \
|
mv wasm3-linux-x64.elf /wasi-runtimes/wasm3/bin/wasm3 && \
|
||||||
chmod +x /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/ && \
|
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 && \
|
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
|
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"
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
#
|
#
|
||||||
# For example:
|
# For example:
|
||||||
#
|
#
|
||||||
# ENV WINEARCH=win64
|
# ENV WINEARCH win64
|
||||||
# ARG MXE_TARGET_ARCH=x86_64
|
# ARG MXE_TARGET_ARCH=x86_64
|
||||||
# ARG MXE_TARGET_THREAD=
|
# ARG MXE_TARGET_THREAD=
|
||||||
# ARG MXE_TARGET_LINK=shared
|
# ARG MXE_TARGET_LINK=shared
|
||||||
@ -18,7 +18,7 @@
|
|||||||
# mxe master 2024-07-27
|
# mxe master 2024-07-27
|
||||||
ARG MXE_GIT_TAG=9f349e0de62a4a68bfc0f13d835a6c685dae9daa
|
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
|
ENV CMAKE_TOOLCHAIN_FILE /usr/src/mxe/usr/${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}/share/cmake/mxe-conf.cmake
|
||||||
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
@ -125,15 +125,14 @@ RUN \
|
|||||||
#
|
#
|
||||||
rm -rf /tmp/wine-*
|
rm -rf /tmp/wine-*
|
||||||
|
|
||||||
ENV CROSS_ROOT=/usr/src/mxe/usr
|
ENV PATH ${PATH}:/usr/src/mxe/usr/bin
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV CROSS_TRIPLE ${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}
|
||||||
ENV CROSS_TRIPLE=${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}
|
ENV AS=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-as \
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
AR=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-ar \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
CC=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-gcc \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CPP=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-cpp \
|
||||||
CPP=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-cpp \
|
CXX=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-g++ \
|
||||||
CXX=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-g++ \
|
LD=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-ld \
|
||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
FC=/usr/src/mxe/usr/bin/${CROSS_TRIPLE}-gfortran
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
|
||||||
|
|
||||||
WORKDIR /work
|
WORKDIR /work
|
||||||
|
@ -22,9 +22,7 @@ autoreconf
|
|||||||
|
|
||||||
./configure --with-ssl-dir=/usr/local/ssl --prefix=/usr/local --with-libs=-lpthread
|
./configure --with-ssl-dir=/usr/local/ssl --prefix=/usr/local --with-libs=-lpthread
|
||||||
|
|
||||||
|
make -j1 install
|
||||||
make -j"$(nproc)"
|
|
||||||
make install
|
|
||||||
|
|
||||||
cd /usr/src
|
cd /usr/src
|
||||||
rm -rf ${OPENSSH_SRC_DIR}
|
rm -rf ${OPENSSH_SRC_DIR}
|
||||||
|
@ -67,7 +67,7 @@ if [[ -z "${PERL_HASH}" ]]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Hash from https://www.openssl.org/source/openssl-1.1.1w.tar.gz.sha256
|
# Hash from https://www.openssl.org/source/openssl-1.1.1l.tar.gz.sha256
|
||||||
OPENSSL_DOWNLOAD_URL=http://www.openssl.org/source/
|
OPENSSL_DOWNLOAD_URL=http://www.openssl.org/source/
|
||||||
|
|
||||||
PERL_DOWNLOAD_URL=https://www.cpan.org/src/5.0
|
PERL_DOWNLOAD_URL=https://www.cpan.org/src/5.0
|
||||||
@ -92,7 +92,7 @@ function build_perl {
|
|||||||
-fsSLO ${PERL_DOWNLOAD_URL}/${perl_fname}.tar.gz
|
-fsSLO ${PERL_DOWNLOAD_URL}/${perl_fname}.tar.gz
|
||||||
|
|
||||||
check_sha256sum ${perl_fname}.tar.gz ${perl_sha256}
|
check_sha256sum ${perl_fname}.tar.gz ${perl_sha256}
|
||||||
tar -xzf ${perl_fname}.tar.gz --no-same-owner
|
tar -xzf ${perl_fname}.tar.gz
|
||||||
(cd ${perl_fname} && do_perl_build)
|
(cd ${perl_fname} && do_perl_build)
|
||||||
rm -rf ${perl_fname} ${perl_fname}.tar.gz
|
rm -rf ${perl_fname} ${perl_fname}.tar.gz
|
||||||
}
|
}
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
if ! command -v curl &> /dev/null; then
|
|
||||||
echo >&2 'error: "curl" not found!'
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
@ -26,15 +26,8 @@ if [[ -n $BUILDER_UID ]] && [[ -n $BUILDER_GID ]]; then
|
|||||||
|
|
||||||
groupadd -o -g "$BUILDER_GID" "$BUILDER_GROUP" 2> /dev/null
|
groupadd -o -g "$BUILDER_GID" "$BUILDER_GROUP" 2> /dev/null
|
||||||
useradd -o -m -g "$BUILDER_GID" -u "$BUILDER_UID" "$BUILDER_USER" 2> /dev/null
|
useradd -o -m -g "$BUILDER_GID" -u "$BUILDER_UID" "$BUILDER_USER" 2> /dev/null
|
||||||
|
|
||||||
# Change ownership of /dev/pts/0 to new user
|
|
||||||
chown "$BUILDER_UID" /dev/pts/0
|
|
||||||
|
|
||||||
export HOME=/home/${BUILDER_USER}
|
export HOME=/home/${BUILDER_USER}
|
||||||
shopt -s dotglob
|
shopt -s dotglob
|
||||||
# Move rustup/cargo directories as they are large, and not needed as root
|
|
||||||
mv -t $HOME/ /root/.rustup /root/.cargo
|
|
||||||
# Copy the rest
|
|
||||||
cp -r /root/* $HOME/
|
cp -r /root/* $HOME/
|
||||||
chown -R $BUILDER_UID:$BUILDER_GID $HOME
|
chown -R $BUILDER_UID:$BUILDER_GID $HOME
|
||||||
|
|
||||||
@ -45,7 +38,7 @@ if [[ -n $BUILDER_UID ]] && [[ -n $BUILDER_GID ]]; then
|
|||||||
|
|
||||||
# Enable passwordless sudo capabilities for the user
|
# Enable passwordless sudo capabilities for the user
|
||||||
chown root:$BUILDER_GID "$(which gosu)"
|
chown root:$BUILDER_GID "$(which gosu)"
|
||||||
chmod +s "$(which gosu)"
|
chmod +s "$(which gosu)"; sync
|
||||||
|
|
||||||
# Execute project specific pre execution hook
|
# Execute project specific pre execution hook
|
||||||
if [[ -e /work/.dockcross ]]; then
|
if [[ -e /work/.dockcross ]]; then
|
||||||
|
@ -10,7 +10,7 @@ usage() { echo "Usage: $0 -c <config-path> -v <version>" 1>&2; exit 1; }
|
|||||||
REPO_URL="https://github.com/buildroot/buildroot.git"
|
REPO_URL="https://github.com/buildroot/buildroot.git"
|
||||||
|
|
||||||
CONFIG_PATH=""
|
CONFIG_PATH=""
|
||||||
REV="2025.05"
|
REV="2021.08-rc1"
|
||||||
while getopts "c:v:" o; do
|
while getopts "c:v:" o; do
|
||||||
case "${o}" in
|
case "${o}" in
|
||||||
c)
|
c)
|
||||||
@ -35,9 +35,9 @@ if [ -z ${REV} ]; then
|
|||||||
echo "WARNING: No version selected, use default version: $REV (-v)."
|
echo "WARNING: No version selected, use default version: $REV (-v)."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
git clone "$REPO_URL" --recurse-submodules --shallow-submodules --depth 1 --branch "$REV" buildroot
|
|
||||||
# Only to generate the project files, config will be overwritten later
|
git clone "$REPO_URL" --recurse-submodules --remote-submodules #--branch="$REV"
|
||||||
make -C buildroot O=/aarch64_efi aarch64_efi_defconfig
|
cd buildroot
|
||||||
cp "$CONFIG_PATH" /aarch64_efi/.config
|
git checkout "$REV"
|
||||||
FORCE_UNSAFE_CONFIGURE=1 make -C /aarch64_efi sdk
|
cp "$CONFIG_PATH" .config
|
||||||
rm -rf buildroot /aarch64_efi/build /aarch64_efi/images /aarch64_efi/staging /aarch64_efi/target/
|
make
|
||||||
|
@ -7,17 +7,12 @@ if ! command -v git &> /dev/null; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "${LIQUIDPROMT_VERSION}" ]]; then
|
|
||||||
echo >&2 'error: LIQUIDPROMT_VERSION env. variable must be set to a non-empty value'
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd /usr/share
|
cd /usr/share
|
||||||
|
|
||||||
# Remove liquidprompt if exists
|
# Remove liquidprompt if exists
|
||||||
rm -rf liquidprompt
|
rm -rf liquidprompt
|
||||||
|
|
||||||
git clone "https://github.com/nojhan/liquidprompt.git" --depth 1 -b "${LIQUIDPROMT_VERSION}" liquidprompt
|
git clone "https://github.com/nojhan/liquidprompt.git" -b v_1.11
|
||||||
|
|
||||||
cat << EOF >> /root/.bashrc
|
cat << EOF >> /root/.bashrc
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Mount the PWD and the /work mount dir to enable access in try_run commands
|
# 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/ "$@"
|
exec ${WASMTIME_HOME}/bin/wasmtime -S threads=y run --dir=. --dir=$PWD --dir=/work/ "$@"
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 64-bit ARM Linux machine
|
# This is for 64-bit ARM Linux machine
|
||||||
|
|
||||||
# Buildroot version
|
# Buildroot version
|
||||||
# buildroot master 2025-06-22
|
# buildroot master 2021-09-20
|
||||||
ENV BR_VERSION=2025.05
|
ENV BR_VERSION d4877e6f88d5eea54dc74b855556ffc0dd3f399f
|
||||||
|
|
||||||
#include "common.buildroot"
|
#include "common.buildroot"
|
||||||
|
|
||||||
@ -19,8 +19,8 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-buildroot-linux-gnu" target.
|
# The CROSS_TRIPLE is a configured alias of the "aarch64-buildroot-linux-gnu" target.
|
||||||
ENV CROSS_TRIPLE=aarch64-buildroot-linux-gnu
|
ENV CROSS_TRIPLE aarch64-buildroot-linux-gnu
|
||||||
ENV CROSS_ROOT=/aarch64_efi/host
|
ENV CROSS_ROOT /buildroot
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,17 +29,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
|
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -4,7 +4,7 @@ FROM ${ORG}/base:latest
|
|||||||
# This is for 64-bit ARM Linux machine (Ubuntu 18.04 or Debian 9 mini)
|
# This is for 64-bit ARM Linux machine (Ubuntu 18.04 or Debian 9 mini)
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -16,9 +16,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnu" target.
|
# 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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -27,17 +27,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-aarch64)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-aarch64)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,16 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX=/usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE=aarch64-linux-musl
|
ENV CROSS_TRIPLE aarch64-linux-musl
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
||||||
|
|
||||||
RUN mkdir -p ${XCC_PREFIX}
|
RUN mkdir -p ${XCC_PREFIX}
|
||||||
# RUN curl --max-time 15 --retry 5 -LO https://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
RUN curl --max-time 15 --retry 5 -LO http://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
||||||
# RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
||||||
# Mirrored for reliability.
|
|
||||||
RUN curl --max-time 15 --retry 5 -LO https://github.com/dockcross/dockcross/releases/download/toolchain-sources/${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
|
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
@ -20,19 +17,13 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
# Prepare Rust
|
|
||||||
ENV PATH="/root/.cargo/bin/:$PATH"
|
|
||||||
RUN rustup target add aarch64-unknown-linux-musl && cargo install --version 0.28.0 cbindgen
|
|
||||||
COPY config.toml /root/.cargo/
|
|
||||||
|
|
||||||
# Prepare CMake
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
|
|
||||||
# Build-time metadata as defined at http://label-schema.org
|
# Build-time metadata as defined at http://label-schema.org
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -46,4 +37,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-ref=$VCS_REF \
|
org.label-schema.vcs-ref=$VCS_REF \
|
||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -11,7 +11,7 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
[build]
|
|
||||||
target = "aarch64-unknown-linux-musl"
|
|
||||||
|
|
||||||
[target.aarch64-unknown-linux-musl]
|
|
||||||
ar = "/usr/xcc/aarch64-linux-musl-cross/bin/aarch64-linux-musl-ar"
|
|
||||||
linker = "/usr/xcc/aarch64-linux-musl-cross/bin/aarch64-linux-musl-ld"
|
|
||||||
|
|
@ -1,13 +1,12 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
ARG HOST_ARCH=amd64
|
FROM ${ORG}/base:latest
|
||||||
FROM ${ORG}/base:latest-${HOST_ARCH}
|
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 64-bit ARM Linux machine
|
# This is for 64-bit ARM Linux machine
|
||||||
|
|
||||||
# Crosstool-ng version 2024-05-04
|
# Crosstool-ng version 2024-05-04
|
||||||
ENV CT_VERSION crosstool-ng-1.27.0
|
ENV CT_VERSION crosstool-ng-1.26.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -19,9 +18,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnu" target.
|
# 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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -30,17 +29,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm64
|
ENV ARCH arm64
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-aarch64)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-aarch64)
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
#
|
#
|
||||||
# Automatically generated file; DO NOT EDIT.
|
# Automatically generated file; DO NOT EDIT.
|
||||||
# crosstool-NG 1.27.0 Configuration
|
# crosstool-NG 1.26.0 Configuration
|
||||||
#
|
#
|
||||||
CT_CONFIGURE_has_static_link=y
|
CT_CONFIGURE_has_static_link=y
|
||||||
CT_CONFIGURE_has_cxx11=y
|
CT_CONFIGURE_has_cxx11=y
|
||||||
CT_CONFIGURE_has_wget=y
|
CT_CONFIGURE_has_wget=y
|
||||||
CT_CONFIGURE_has_curl=y
|
CT_CONFIGURE_has_curl=y
|
||||||
CT_CONFIGURE_has_ninja=y
|
CT_CONFIGURE_has_ninja=y
|
||||||
|
CT_CONFIGURE_has_rsync=y
|
||||||
CT_CONFIGURE_has_make_3_81_or_newer=y
|
CT_CONFIGURE_has_make_3_81_or_newer=y
|
||||||
CT_CONFIGURE_has_make_4_0_or_newer=y
|
CT_CONFIGURE_has_make_4_0_or_newer=y
|
||||||
CT_CONFIGURE_has_make_4_4_or_newer=y
|
CT_CONFIGURE_has_make_4_4_or_newer=y
|
||||||
@ -27,7 +28,7 @@ CT_CONFIGURE_has_sha1sum=y
|
|||||||
CT_CONFIGURE_has_sha256sum=y
|
CT_CONFIGURE_has_sha256sum=y
|
||||||
CT_CONFIGURE_has_sha512sum=y
|
CT_CONFIGURE_has_sha512sum=y
|
||||||
CT_CONFIGURE_has_install_with_strip_program=y
|
CT_CONFIGURE_has_install_with_strip_program=y
|
||||||
CT_VERSION="1.27.0"
|
CT_VERSION="1.26.0"
|
||||||
CT_VCHECK=""
|
CT_VCHECK=""
|
||||||
CT_CONFIG_VERSION_ENV="4"
|
CT_CONFIG_VERSION_ENV="4"
|
||||||
CT_CONFIG_VERSION_CURRENT="4"
|
CT_CONFIG_VERSION_CURRENT="4"
|
||||||
@ -71,7 +72,7 @@ CT_DOWNLOAD_AGENT_WGET=y
|
|||||||
# CT_FORBID_DOWNLOAD is not set
|
# CT_FORBID_DOWNLOAD is not set
|
||||||
# CT_FORCE_DOWNLOAD is not set
|
# CT_FORCE_DOWNLOAD is not set
|
||||||
CT_CONNECT_TIMEOUT=10
|
CT_CONNECT_TIMEOUT=10
|
||||||
CT_DOWNLOAD_WGET_OPTIONS="--tries=5 -nc --progress=dot:binary"
|
CT_DOWNLOAD_WGET_OPTIONS="--passive-ftp --tries=5 -nc --progress=dot:binary"
|
||||||
# CT_ONLY_DOWNLOAD is not set
|
# CT_ONLY_DOWNLOAD is not set
|
||||||
# CT_USE_MIRROR is not set
|
# CT_USE_MIRROR is not set
|
||||||
CT_VERIFY_DOWNLOAD_DIGEST=y
|
CT_VERIFY_DOWNLOAD_DIGEST=y
|
||||||
@ -120,7 +121,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
@ -138,7 +139,6 @@ CT_ARCH_ARM=y
|
|||||||
# CT_ARCH_NIOS2 is not set
|
# CT_ARCH_NIOS2 is not set
|
||||||
# CT_ARCH_POWERPC is not set
|
# CT_ARCH_POWERPC is not set
|
||||||
# CT_ARCH_PRU is not set
|
# CT_ARCH_PRU is not set
|
||||||
# CT_ARCH_RISCV is not set
|
|
||||||
# CT_ARCH_S390 is not set
|
# CT_ARCH_S390 is not set
|
||||||
# CT_ARCH_SH is not set
|
# CT_ARCH_SH is not set
|
||||||
# CT_ARCH_SPARC is not set
|
# CT_ARCH_SPARC is not set
|
||||||
@ -154,7 +154,7 @@ CT_ARCH_ARM_SHOW=y
|
|||||||
# Options for arm
|
# Options for arm
|
||||||
#
|
#
|
||||||
CT_ARCH_ARM_PKG_KSYM=""
|
CT_ARCH_ARM_PKG_KSYM=""
|
||||||
CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LM32 LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 OPENRISC PARISC POWERPC PRU RISCV S390 SH SPARC TRICORE 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_ARCH_SUFFIX=""
|
||||||
# CT_OMIT_TARGET_VENDOR is not set
|
# CT_OMIT_TARGET_VENDOR is not set
|
||||||
|
|
||||||
@ -252,19 +252,13 @@ CT_KERNEL_LINUX_SHOW=y
|
|||||||
#
|
#
|
||||||
CT_KERNEL_LINUX_PKG_KSYM="LINUX"
|
CT_KERNEL_LINUX_PKG_KSYM="LINUX"
|
||||||
CT_LINUX_DIR_NAME="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_PKG_NAME="linux"
|
||||||
CT_LINUX_SRC_RELEASE=y
|
CT_LINUX_SRC_RELEASE=y
|
||||||
# CT_LINUX_SRC_DEVEL is not set
|
# CT_LINUX_SRC_DEVEL is not set
|
||||||
CT_LINUX_PATCH_ORDER="global"
|
CT_LINUX_PATCH_ORDER="global"
|
||||||
# CT_LINUX_V_6_13 is not set
|
|
||||||
# CT_LINUX_V_6_12 is not set
|
|
||||||
# CT_LINUX_V_6_11 is not set
|
|
||||||
# CT_LINUX_V_6_10 is not set
|
|
||||||
# CT_LINUX_V_6_9 is not set
|
|
||||||
# CT_LINUX_V_6_8 is not set
|
|
||||||
# CT_LINUX_V_6_7 is not set
|
|
||||||
# CT_LINUX_V_6_6 is not set
|
|
||||||
# CT_LINUX_V_6_5 is not set
|
|
||||||
# CT_LINUX_V_6_4 is not set
|
# CT_LINUX_V_6_4 is not set
|
||||||
# CT_LINUX_V_6_3 is not set
|
# CT_LINUX_V_6_3 is not set
|
||||||
# CT_LINUX_V_6_2 is not set
|
# CT_LINUX_V_6_2 is not set
|
||||||
@ -306,7 +300,7 @@ CT_LINUX_V_6_1=y
|
|||||||
# CT_LINUX_V_3_13 is not set
|
# CT_LINUX_V_3_13 is not set
|
||||||
# CT_LINUX_V_3_12 is not set
|
# CT_LINUX_V_3_12 is not set
|
||||||
# CT_LINUX_V_3_10 is not set
|
# CT_LINUX_V_3_10 is not set
|
||||||
CT_LINUX_VERSION="6.1.127"
|
CT_LINUX_VERSION="6.1.35"
|
||||||
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})"
|
||||||
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
@ -328,7 +322,6 @@ CT_LINUX_REQUIRE_3_7_or_later=y
|
|||||||
CT_LINUX_later_than_3_2=y
|
CT_LINUX_later_than_3_2=y
|
||||||
CT_LINUX_3_2_or_later=y
|
CT_LINUX_3_2_or_later=y
|
||||||
CT_LINUX_REQUIRE_3_2_or_later=y
|
CT_LINUX_REQUIRE_3_2_or_later=y
|
||||||
CT_KERNEL_has_rsync=y
|
|
||||||
CT_KERNEL_DEP_RSYNC=y
|
CT_KERNEL_DEP_RSYNC=y
|
||||||
CT_KERNEL_LINUX_VERBOSITY_0=y
|
CT_KERNEL_LINUX_VERBOSITY_0=y
|
||||||
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
|
# CT_KERNEL_LINUX_VERBOSITY_1 is not set
|
||||||
@ -363,9 +356,6 @@ CT_BINUTILS_PKG_NAME="binutils"
|
|||||||
CT_BINUTILS_SRC_RELEASE=y
|
CT_BINUTILS_SRC_RELEASE=y
|
||||||
# CT_BINUTILS_SRC_DEVEL is not set
|
# CT_BINUTILS_SRC_DEVEL is not set
|
||||||
CT_BINUTILS_PATCH_ORDER="global"
|
CT_BINUTILS_PATCH_ORDER="global"
|
||||||
# CT_BINUTILS_V_2_43 is not set
|
|
||||||
# CT_BINUTILS_V_2_42 is not set
|
|
||||||
# CT_BINUTILS_V_2_41 is not set
|
|
||||||
# CT_BINUTILS_V_2_40 is not set
|
# CT_BINUTILS_V_2_40 is not set
|
||||||
# CT_BINUTILS_V_2_39 is not set
|
# CT_BINUTILS_V_2_39 is not set
|
||||||
# CT_BINUTILS_V_2_38 is not set
|
# CT_BINUTILS_V_2_38 is not set
|
||||||
@ -387,8 +377,6 @@ CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
|||||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||||
CT_BINUTILS_2_41_or_older=y
|
|
||||||
CT_BINUTILS_older_than_2_41=y
|
|
||||||
CT_BINUTILS_2_39_or_older=y
|
CT_BINUTILS_2_39_or_older=y
|
||||||
CT_BINUTILS_older_than_2_39=y
|
CT_BINUTILS_older_than_2_39=y
|
||||||
CT_BINUTILS_later_than_2_30=y
|
CT_BINUTILS_later_than_2_30=y
|
||||||
@ -424,7 +412,6 @@ CT_ALL_BINUTILS_CHOICES="BINUTILS"
|
|||||||
# C-library
|
# C-library
|
||||||
#
|
#
|
||||||
CT_LIBC_GLIBC=y
|
CT_LIBC_GLIBC=y
|
||||||
# CT_LIBC_MUSL is not set
|
|
||||||
# CT_LIBC_UCLIBC_NG is not set
|
# CT_LIBC_UCLIBC_NG is not set
|
||||||
CT_LIBC="glibc"
|
CT_LIBC="glibc"
|
||||||
CT_LIBC_CHOICE_KSYM="GLIBC"
|
CT_LIBC_CHOICE_KSYM="GLIBC"
|
||||||
@ -442,9 +429,6 @@ CT_GLIBC_PKG_NAME="glibc"
|
|||||||
CT_GLIBC_SRC_RELEASE=y
|
CT_GLIBC_SRC_RELEASE=y
|
||||||
# CT_GLIBC_SRC_DEVEL is not set
|
# CT_GLIBC_SRC_DEVEL is not set
|
||||||
CT_GLIBC_PATCH_ORDER="global"
|
CT_GLIBC_PATCH_ORDER="global"
|
||||||
# CT_GLIBC_V_2_41 is not set
|
|
||||||
# CT_GLIBC_V_2_40 is not set
|
|
||||||
# CT_GLIBC_V_2_39 is not set
|
|
||||||
# CT_GLIBC_V_2_38 is not set
|
# CT_GLIBC_V_2_38 is not set
|
||||||
# CT_GLIBC_V_2_37 is not set
|
# CT_GLIBC_V_2_37 is not set
|
||||||
CT_GLIBC_V_2_36=y
|
CT_GLIBC_V_2_36=y
|
||||||
@ -469,8 +453,6 @@ CT_GLIBC_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
|||||||
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_GLIBC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
CT_GLIBC_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||||
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
CT_GLIBC_SIGNATURE_FORMAT="packed/.sig"
|
||||||
CT_GLIBC_2_41_or_older=y
|
|
||||||
CT_GLIBC_older_than_2_41=y
|
|
||||||
CT_GLIBC_2_38_or_older=y
|
CT_GLIBC_2_38_or_older=y
|
||||||
CT_GLIBC_older_than_2_38=y
|
CT_GLIBC_older_than_2_38=y
|
||||||
CT_GLIBC_2_37_or_older=y
|
CT_GLIBC_2_37_or_older=y
|
||||||
@ -525,7 +507,7 @@ CT_GLIBC_FORCE_UNWIND=y
|
|||||||
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
# CT_GLIBC_KERNEL_VERSION_NONE is not set
|
||||||
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
CT_GLIBC_KERNEL_VERSION_AS_HEADERS=y
|
||||||
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
# CT_GLIBC_KERNEL_VERSION_CHOSEN is not set
|
||||||
CT_GLIBC_MIN_KERNEL="6.1.127"
|
CT_GLIBC_MIN_KERNEL="6.1.35"
|
||||||
CT_GLIBC_SSP_DEFAULT=y
|
CT_GLIBC_SSP_DEFAULT=y
|
||||||
# CT_GLIBC_SSP_NO is not set
|
# CT_GLIBC_SSP_NO is not set
|
||||||
# CT_GLIBC_SSP_YES is not set
|
# CT_GLIBC_SSP_YES is not set
|
||||||
@ -574,7 +556,6 @@ CT_GCC_PKG_NAME="gcc"
|
|||||||
CT_GCC_SRC_RELEASE=y
|
CT_GCC_SRC_RELEASE=y
|
||||||
# CT_GCC_SRC_DEVEL is not set
|
# CT_GCC_SRC_DEVEL is not set
|
||||||
CT_GCC_PATCH_ORDER="global"
|
CT_GCC_PATCH_ORDER="global"
|
||||||
# CT_GCC_V_14 is not set
|
|
||||||
# CT_GCC_V_13 is not set
|
# CT_GCC_V_13 is not set
|
||||||
CT_GCC_V_12=y
|
CT_GCC_V_12=y
|
||||||
# CT_GCC_V_11 is not set
|
# CT_GCC_V_11 is not set
|
||||||
@ -583,14 +564,12 @@ CT_GCC_V_12=y
|
|||||||
# CT_GCC_V_8 is not set
|
# CT_GCC_V_8 is not set
|
||||||
# CT_GCC_V_7 is not set
|
# CT_GCC_V_7 is not set
|
||||||
# CT_GCC_V_6 is not set
|
# CT_GCC_V_6 is not set
|
||||||
CT_GCC_VERSION="12.4.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_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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||||
CT_GCC_SIGNATURE_FORMAT=""
|
CT_GCC_SIGNATURE_FORMAT=""
|
||||||
CT_GCC_14_or_older=y
|
|
||||||
CT_GCC_older_than_14=y
|
|
||||||
CT_GCC_13_or_older=y
|
CT_GCC_13_or_older=y
|
||||||
CT_GCC_older_than_13=y
|
CT_GCC_older_than_13=y
|
||||||
CT_GCC_later_than_12=y
|
CT_GCC_later_than_12=y
|
||||||
@ -629,20 +608,18 @@ CT_CC_GCC_CONFIG_TLS=m
|
|||||||
#
|
#
|
||||||
CT_CC_GCC_USE_GRAPHITE=y
|
CT_CC_GCC_USE_GRAPHITE=y
|
||||||
CT_CC_GCC_USE_LTO=y
|
CT_CC_GCC_USE_LTO=y
|
||||||
CT_CC_GCC_LTO_ZSTD=y
|
CT_CC_GCC_LTO_ZSTD=m
|
||||||
|
|
||||||
#
|
#
|
||||||
# Settings for libraries running on target
|
# Settings for libraries running on target
|
||||||
#
|
#
|
||||||
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
# CT_CC_GCC_ENABLE_DEFAULT_PIE is not set
|
||||||
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y
|
||||||
CT_CC_GCC_LIBSTDCXX=y
|
|
||||||
CT_CC_GCC_LIBSTDCXX_HOSTED_DISABLE=y
|
|
||||||
CT_CC_GCC_LIBMUDFLAP=y
|
CT_CC_GCC_LIBMUDFLAP=y
|
||||||
CT_CC_GCC_LIBGOMP=y
|
CT_CC_GCC_LIBGOMP=y
|
||||||
CT_CC_GCC_LIBSSP=m
|
CT_CC_GCC_LIBSSP=m
|
||||||
# CT_CC_GCC_LIBQUADMATH is not set
|
# CT_CC_GCC_LIBQUADMATH is not set
|
||||||
CT_CC_GCC_LIBSANITIZER=y
|
# CT_CC_GCC_LIBSANITIZER is not set
|
||||||
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
CT_CC_GCC_LIBSTDCXX_VERBOSE=m
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -673,38 +650,6 @@ CT_CC_LANG_CXX=y
|
|||||||
CT_CC_LANG_FORTRAN=y
|
CT_CC_LANG_FORTRAN=y
|
||||||
# end of C compiler
|
# end of C compiler
|
||||||
|
|
||||||
#
|
|
||||||
# Linkers
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# BFD enabled in binutils
|
|
||||||
#
|
|
||||||
|
|
||||||
#
|
|
||||||
# GOLD enabled in binutils
|
|
||||||
#
|
|
||||||
CT_LINKER_MOLD=y
|
|
||||||
CT_LINKER_MOLD_PKG_KSYM="MOLD"
|
|
||||||
CT_MOLD_DIR_NAME="mold"
|
|
||||||
CT_MOLD_PKG_NAME="mold"
|
|
||||||
CT_MOLD_SRC_RELEASE=y
|
|
||||||
# CT_MOLD_SRC_DEVEL is not set
|
|
||||||
CT_MOLD_PATCH_ORDER="global"
|
|
||||||
CT_MOLD_V_2_36_0=y
|
|
||||||
# CT_MOLD_V_2_33_0 is not set
|
|
||||||
# CT_MOLD_V_2_32_0 is not set
|
|
||||||
# CT_MOLD_V_2_31_0 is not set
|
|
||||||
CT_MOLD_VERSION="2.36.0"
|
|
||||||
CT_MOLD_MIRRORS="https://github.com/rui314/mold/archive/refs/tags"
|
|
||||||
CT_MOLD_ARCHIVE_FILENAME="v@{version}"
|
|
||||||
CT_MOLD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
|
||||||
CT_MOLD_ARCHIVE_FORMATS=".tar.gz"
|
|
||||||
CT_MOLD_SIGNATURE_FORMAT=""
|
|
||||||
CT_LINKER_MOLD_has_cmake=y
|
|
||||||
CT_ALL_LINKER_CHOICES="MOLD"
|
|
||||||
# end of Linkers
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Debug facilities
|
# Debug facilities
|
||||||
#
|
#
|
||||||
@ -716,27 +661,18 @@ CT_GDB_PKG_NAME="gdb"
|
|||||||
CT_GDB_SRC_RELEASE=y
|
CT_GDB_SRC_RELEASE=y
|
||||||
# CT_GDB_SRC_DEVEL is not set
|
# CT_GDB_SRC_DEVEL is not set
|
||||||
CT_GDB_PATCH_ORDER="global"
|
CT_GDB_PATCH_ORDER="global"
|
||||||
CT_GDB_V_16=y
|
CT_GDB_V_13=y
|
||||||
# CT_GDB_V_15 is not set
|
|
||||||
# CT_GDB_V_14 is not set
|
|
||||||
# CT_GDB_V_13 is not set
|
|
||||||
# CT_GDB_V_12 is not set
|
# CT_GDB_V_12 is not set
|
||||||
# CT_GDB_V_11 is not set
|
# CT_GDB_V_11 is not set
|
||||||
# CT_GDB_V_10 is not set
|
# CT_GDB_V_10 is not set
|
||||||
# CT_GDB_V_9 is not set
|
# CT_GDB_V_9 is not set
|
||||||
# CT_GDB_V_8_3 is not set
|
# CT_GDB_V_8_3 is not set
|
||||||
CT_GDB_VERSION="16.2"
|
CT_GDB_VERSION="13.2"
|
||||||
CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)"
|
CT_GDB_MIRRORS="$(CT_Mirrors GNU gdb) $(CT_Mirrors sourceware gdb/releases)"
|
||||||
CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
CT_GDB_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_GDB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
CT_GDB_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||||
CT_GDB_SIGNATURE_FORMAT=""
|
CT_GDB_SIGNATURE_FORMAT=""
|
||||||
CT_GDB_later_than_16=y
|
|
||||||
CT_GDB_16_or_later=y
|
|
||||||
CT_GDB_later_than_15=y
|
|
||||||
CT_GDB_15_or_later=y
|
|
||||||
CT_GDB_later_than_14=y
|
|
||||||
CT_GDB_14_or_later=y
|
|
||||||
CT_GDB_later_than_13=y
|
CT_GDB_later_than_13=y
|
||||||
CT_GDB_13_or_later=y
|
CT_GDB_13_or_later=y
|
||||||
CT_GDB_later_than_12=y
|
CT_GDB_later_than_12=y
|
||||||
@ -758,7 +694,6 @@ CT_GDB_GDBSERVER=y
|
|||||||
# CT_GDB_NATIVE_BUILD_IPA_LIB is not set
|
# CT_GDB_NATIVE_BUILD_IPA_LIB is not set
|
||||||
# CT_GDB_NATIVE_STATIC_LIBSTDCXX is not set
|
# CT_GDB_NATIVE_STATIC_LIBSTDCXX is not set
|
||||||
CT_GDB_GDBSERVER_TOPLEVEL=y
|
CT_GDB_GDBSERVER_TOPLEVEL=y
|
||||||
CT_GDB_CC_LD_LIBTOOL=y
|
|
||||||
# CT_DEBUG_LTRACE is not set
|
# CT_DEBUG_LTRACE is not set
|
||||||
CT_DEBUG_STRACE=y
|
CT_DEBUG_STRACE=y
|
||||||
CT_DEBUG_STRACE_PKG_KSYM="STRACE"
|
CT_DEBUG_STRACE_PKG_KSYM="STRACE"
|
||||||
@ -767,8 +702,8 @@ CT_STRACE_PKG_NAME="strace"
|
|||||||
CT_STRACE_SRC_RELEASE=y
|
CT_STRACE_SRC_RELEASE=y
|
||||||
# CT_STRACE_SRC_DEVEL is not set
|
# CT_STRACE_SRC_DEVEL is not set
|
||||||
CT_STRACE_PATCH_ORDER="global"
|
CT_STRACE_PATCH_ORDER="global"
|
||||||
CT_STRACE_V_6_13=y
|
CT_STRACE_V_6_4=y
|
||||||
CT_STRACE_VERSION="6.13"
|
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_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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_STRACE_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_STRACE_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
@ -803,21 +738,17 @@ CT_GETTEXT_PKG_NAME="gettext"
|
|||||||
CT_GETTEXT_SRC_RELEASE=y
|
CT_GETTEXT_SRC_RELEASE=y
|
||||||
# CT_GETTEXT_SRC_DEVEL is not set
|
# CT_GETTEXT_SRC_DEVEL is not set
|
||||||
CT_GETTEXT_PATCH_ORDER="global"
|
CT_GETTEXT_PATCH_ORDER="global"
|
||||||
CT_GETTEXT_V_0_23_1=y
|
CT_GETTEXT_V_0_21=y
|
||||||
# CT_GETTEXT_V_0_22_5 is not set
|
|
||||||
# CT_GETTEXT_V_0_21 is not set
|
|
||||||
# CT_GETTEXT_V_0_20_1 is not set
|
# CT_GETTEXT_V_0_20_1 is not set
|
||||||
# CT_GETTEXT_V_0_19_8_1 is not set
|
# CT_GETTEXT_V_0_19_8_1 is not set
|
||||||
CT_GETTEXT_VERSION="0.23.1"
|
CT_GETTEXT_VERSION="0.21"
|
||||||
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)"
|
||||||
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz"
|
||||||
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig"
|
||||||
CT_GETTEXT_later_than_0_23=y
|
|
||||||
CT_GETTEXT_0_23_or_later=y
|
|
||||||
CT_GETTEXT_later_than_0_21=y
|
|
||||||
CT_GETTEXT_0_21_or_later=y
|
CT_GETTEXT_0_21_or_later=y
|
||||||
|
CT_GETTEXT_0_21_or_older=y
|
||||||
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y
|
||||||
|
|
||||||
#
|
#
|
||||||
@ -838,10 +769,9 @@ CT_GMP_PKG_NAME="gmp"
|
|||||||
CT_GMP_SRC_RELEASE=y
|
CT_GMP_SRC_RELEASE=y
|
||||||
# CT_GMP_SRC_DEVEL is not set
|
# CT_GMP_SRC_DEVEL is not set
|
||||||
CT_GMP_PATCH_ORDER="global"
|
CT_GMP_PATCH_ORDER="global"
|
||||||
CT_GMP_V_6_3=y
|
CT_GMP_V_6_2=y
|
||||||
# CT_GMP_V_6_2 is not set
|
|
||||||
# CT_GMP_V_6_1 is not set
|
# CT_GMP_V_6_1 is not set
|
||||||
CT_GMP_VERSION="6.3.0"
|
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_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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
@ -912,8 +842,8 @@ CT_MPC_PKG_NAME="mpc"
|
|||||||
CT_MPC_SRC_RELEASE=y
|
CT_MPC_SRC_RELEASE=y
|
||||||
# CT_MPC_SRC_DEVEL is not set
|
# CT_MPC_SRC_DEVEL is not set
|
||||||
CT_MPC_PATCH_ORDER="global"
|
CT_MPC_PATCH_ORDER="global"
|
||||||
CT_MPC_V_1_3=y
|
CT_MPC_V_1_2=y
|
||||||
CT_MPC_VERSION="1.3.1"
|
CT_MPC_VERSION="1.2.1"
|
||||||
CT_MPC_MIRRORS="https://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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
@ -968,9 +898,8 @@ CT_ZLIB_PKG_NAME="zlib"
|
|||||||
CT_ZLIB_SRC_RELEASE=y
|
CT_ZLIB_SRC_RELEASE=y
|
||||||
# CT_ZLIB_SRC_DEVEL is not set
|
# CT_ZLIB_SRC_DEVEL is not set
|
||||||
CT_ZLIB_PATCH_ORDER="global"
|
CT_ZLIB_PATCH_ORDER="global"
|
||||||
CT_ZLIB_V_1_3_1=y
|
CT_ZLIB_V_1_2_13=y
|
||||||
# CT_ZLIB_V_1_2_13 is not set
|
CT_ZLIB_VERSION="1.2.13"
|
||||||
CT_ZLIB_VERSION="1.3.1"
|
|
||||||
CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/"
|
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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
@ -983,10 +912,9 @@ CT_ZSTD_PKG_NAME="zstd"
|
|||||||
CT_ZSTD_SRC_RELEASE=y
|
CT_ZSTD_SRC_RELEASE=y
|
||||||
# CT_ZSTD_SRC_DEVEL is not set
|
# CT_ZSTD_SRC_DEVEL is not set
|
||||||
CT_ZSTD_PATCH_ORDER="global"
|
CT_ZSTD_PATCH_ORDER="global"
|
||||||
CT_ZSTD_V_1_5_6=y
|
CT_ZSTD_V_1_5_5=y
|
||||||
# CT_ZSTD_V_1_5_5 is not set
|
|
||||||
# CT_ZSTD_V_1_5_2 is not set
|
# CT_ZSTD_V_1_5_2 is not set
|
||||||
CT_ZSTD_VERSION="1.5.6"
|
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_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_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
||||||
# VFP instructions (armhf).
|
# VFP instructions (armhf).
|
||||||
# musleabi as default glibc
|
# musleabi as default glibc
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -20,8 +20,8 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "armv5-unknown-linux-musleabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "armv5-unknown-linux-musleabi" target.
|
||||||
ENV CROSS_TRIPLE=armv5-unknown-linux-musleabi
|
ENV CROSS_TRIPLE armv5-unknown-linux-musleabi
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -30,17 +30,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-musleabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-musleabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -10,10 +10,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -124,7 +124,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for compiling binaries for arm routers with uclibc (e.g ddwrt, asuswrt)
|
# This is for compiling binaries for arm routers with uclibc (e.g ddwrt, asuswrt)
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
@ -16,8 +16,8 @@ RUN apt-get update \
|
|||||||
qemu-user-static \
|
qemu-user-static \
|
||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
ENV CROSS_TRIPLE=arm-unknown-linux-uclibcgnueabi
|
ENV CROSS_TRIPLE arm-unknown-linux-uclibcgnueabi
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -26,17 +26,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake /usr/lib/${CROSS_ROOT}/
|
COPY Toolchain.cmake /usr/lib/${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=/usr/lib/${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
ENV PKG_CONFIG_PATH=/usr/lib/{CROSS_ROOT}/pkgconfig/
|
ENV PKG_CONFIG_PATH /usr/lib/{CROSS_ROOT}/pkgconfig/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
# This is for ARMv5 "legacy" (armel) devices which do NOT support hard float
|
||||||
# VFP instructions (armhf).
|
# VFP instructions (armhf).
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -22,8 +22,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
||||||
ENV CROSS_TRIPLE=armv5-unknown-linux-gnueabi
|
ENV CROSS_TRIPLE armv5-unknown-linux-gnueabi
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -32,17 +32,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabi/pkgconfig
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabi/pkgconfig
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for 32-bit ARMv6 Linux
|
# This is for 32-bit ARMv6 Linux
|
||||||
# Raspberry Pi is ARMv6+VFP2
|
# Raspberry Pi is ARMv6+VFP2
|
||||||
@ -19,8 +19,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "armv6-unknown-linux-gnueabihf" target.
|
# The CROSS_TRIPLE is a configured alias of the "armv6-unknown-linux-gnueabihf" target.
|
||||||
ENV CROSS_TRIPLE=armv6-unknown-linux-gnueabihf
|
ENV CROSS_TRIPLE armv6-unknown-linux-gnueabihf
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,17 +29,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,16 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX=/usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE=armv6-linux-musleabihf
|
ENV CROSS_TRIPLE armv6-linux-musleabihf
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
||||||
|
|
||||||
RUN mkdir -p ${XCC_PREFIX}
|
RUN mkdir -p ${XCC_PREFIX}
|
||||||
# RUN curl --max-time 15 --retry 5 -LO https://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
RUN curl --max-time 15 --retry 5 -LO http://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
||||||
# RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
||||||
# Mirrored for reliability
|
|
||||||
RUN curl --max-time 15 --retry 5 -LO https://github.com/dockcross/dockcross/releases/download/toolchain-sources/${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
|
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
@ -21,12 +18,12 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
# Build-time metadata as defined at http://label-schema.org
|
# Build-time metadata as defined at http://label-schema.org
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -40,4 +37,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-ref=$VCS_REF \
|
org.label-schema.vcs-ref=$VCS_REF \
|
||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -11,7 +11,7 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for 32-bit ARMv6 Linux
|
# This is for 32-bit ARMv6 Linux
|
||||||
# Raspberry Pi is ARMv6+VFP2
|
# Raspberry Pi is ARMv6+VFP2
|
||||||
@ -19,8 +19,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "armv6-unknown-linux-gnueabihf" target.
|
# The CROSS_TRIPLE is a configured alias of the "armv6-unknown-linux-gnueabihf" target.
|
||||||
ENV CROSS_TRIPLE=armv6-unknown-linux-gnueabihf
|
ENV CROSS_TRIPLE armv6-unknown-linux-gnueabihf
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,17 +29,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -10,10 +10,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for 32-bit ARMv7 Linux
|
# This is for 32-bit ARMv7 Linux
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
@ -18,8 +18,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "armv7-unknown-linux-gnueabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "armv7-unknown-linux-gnueabi" target.
|
||||||
ENV CROSS_TRIPLE=armv7-unknown-linux-gnueabi
|
ENV CROSS_TRIPLE armv7-unknown-linux-gnueabi
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -28,17 +28,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for 32-bit ARMv7 Linux
|
# This is for 32-bit ARMv7 Linux
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
@ -18,8 +18,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
||||||
ENV CROSS_TRIPLE=armv7-unknown-linux-gnueabi
|
ENV CROSS_TRIPLE armv7-unknown-linux-gnueabi
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -28,17 +28,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 32-bit ARMv7a Linux
|
# This is for 32-bit ARMv7a Linux
|
||||||
|
|
||||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
|
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
|
||||||
# crosstool-ng 1.25.0
|
# crosstool-ng 1.25.0
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -20,9 +20,9 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
||||||
ENV CROSS_TRIPLE=arm-cortexa8_neon-linux-gnueabihf
|
ENV CROSS_TRIPLE arm-cortexa8_neon-linux-gnueabihf
|
||||||
|
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -31,19 +31,19 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=dockcross/linux-armv7a
|
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/linux-armv7a
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/pkgconfig
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/pkgconfig
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -116,7 +116,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 32-bit ARMv7 Linux
|
# This is for 32-bit ARMv7 Linux
|
||||||
|
|
||||||
# Crosstool-ng version 2024-05-21
|
# Crosstool-ng version 2024-05-21
|
||||||
ENV CT_VERSION=crosstool-ng-1.26.0
|
ENV CT_VERSION crosstool-ng-1.26.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -19,9 +19,9 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
# The CROSS_TRIPLE is a configured alias of the "aarch64-unknown-linux-gnueabi" target.
|
||||||
#ENV CROSS_TRIPLE=armv7-unknown-linux-gnueabi
|
#ENV CROSS_TRIPLE armv7-unknown-linux-gnueabi
|
||||||
ENV CROSS_TRIPLE=arm-cortexa8_neon-linux-gnueabihf
|
ENV CROSS_TRIPLE arm-cortexa8_neon-linux-gnueabihf
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -30,19 +30,19 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=dockcross/linux-armv7a
|
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/linux-armv7a
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/arm-linux-gnueabihf/
|
ENV PKG_CONFIG_PATH /usr/lib/arm-linux-gnueabihf/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-arm)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
@ -370,11 +370,11 @@ CT_BINUTILS_PKG_NAME="binutils"
|
|||||||
CT_BINUTILS_SRC_RELEASE=y
|
CT_BINUTILS_SRC_RELEASE=y
|
||||||
# CT_BINUTILS_SRC_DEVEL is not set
|
# CT_BINUTILS_SRC_DEVEL is not set
|
||||||
CT_BINUTILS_PATCH_ORDER="global"
|
CT_BINUTILS_PATCH_ORDER="global"
|
||||||
CT_BINUTILS_V_2_40=y
|
# CT_BINUTILS_V_2_40 is not set
|
||||||
# CT_BINUTILS_V_2_39 is not set
|
# CT_BINUTILS_V_2_39 is not set
|
||||||
# CT_BINUTILS_V_2_38 is not set
|
# CT_BINUTILS_V_2_38 is not set
|
||||||
# CT_BINUTILS_V_2_37 is not set
|
# CT_BINUTILS_V_2_37 is not set
|
||||||
# CT_BINUTILS_V_2_36 is not set
|
CT_BINUTILS_V_2_36=y
|
||||||
# CT_BINUTILS_V_2_35 is not set
|
# CT_BINUTILS_V_2_35 is not set
|
||||||
# CT_BINUTILS_V_2_34 is not set
|
# CT_BINUTILS_V_2_34 is not set
|
||||||
# CT_BINUTILS_V_2_33 is not set
|
# CT_BINUTILS_V_2_33 is not set
|
||||||
@ -385,14 +385,14 @@ CT_BINUTILS_V_2_40=y
|
|||||||
# CT_BINUTILS_V_2_28 is not set
|
# CT_BINUTILS_V_2_28 is not set
|
||||||
# CT_BINUTILS_V_2_27 is not set
|
# CT_BINUTILS_V_2_27 is not set
|
||||||
# CT_BINUTILS_V_2_26 is not set
|
# CT_BINUTILS_V_2_26 is not set
|
||||||
CT_BINUTILS_VERSION="2.40"
|
CT_BINUTILS_VERSION="2.36.1"
|
||||||
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)"
|
||||||
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}"
|
||||||
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}"
|
||||||
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz"
|
||||||
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig"
|
||||||
CT_BINUTILS_later_than_2_39=y
|
CT_BINUTILS_2_39_or_older=y
|
||||||
CT_BINUTILS_2_39_or_later=y
|
CT_BINUTILS_older_than_2_39=y
|
||||||
CT_BINUTILS_later_than_2_30=y
|
CT_BINUTILS_later_than_2_30=y
|
||||||
CT_BINUTILS_2_30_or_later=y
|
CT_BINUTILS_2_30_or_later=y
|
||||||
CT_BINUTILS_later_than_2_27=y
|
CT_BINUTILS_later_than_2_27=y
|
||||||
|
@ -1,16 +1,13 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
ENV XCC_PREFIX=/usr/xcc
|
ENV XCC_PREFIX /usr/xcc
|
||||||
ENV CROSS_TRIPLE=armv7l-linux-musleabihf
|
ENV CROSS_TRIPLE armv7l-linux-musleabihf
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}-cross
|
||||||
|
|
||||||
RUN mkdir -p ${XCC_PREFIX}
|
RUN mkdir -p ${XCC_PREFIX}
|
||||||
# RUN curl --max-time 15 --retry 5 -LO https://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
RUN curl --max-time 15 --retry 5 -LO http://musl.cc/${CROSS_TRIPLE}-cross.tgz
|
||||||
# RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross.tgz
|
||||||
# Mirrored for reliability
|
|
||||||
RUN curl --max-time 15 --retry 5 -LO https://github.com/dockcross/dockcross/releases/download/toolchain-sources/${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
RUN tar -C ${XCC_PREFIX} -xvf ${CROSS_TRIPLE}-cross-retrieved-2025-06-07.tgz
|
|
||||||
|
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
@ -21,12 +18,12 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=arm
|
ENV ARCH arm
|
||||||
|
|
||||||
# Build-time metadata as defined at http://label-schema.org
|
# Build-time metadata as defined at http://label-schema.org
|
||||||
ARG BUILD_DATE
|
ARG BUILD_DATE
|
||||||
@ -40,4 +37,4 @@ LABEL org.label-schema.build-date=$BUILD_DATE \
|
|||||||
org.label-schema.vcs-ref=$VCS_REF \
|
org.label-schema.vcs-ref=$VCS_REF \
|
||||||
org.label-schema.vcs-url=$VCS_URL \
|
org.label-schema.vcs-url=$VCS_URL \
|
||||||
org.label-schema.schema-version="1.0"
|
org.label-schema.schema-version="1.0"
|
||||||
ENV DEFAULT_DOCKCROSS_IMAGE=${IMAGE}:${VERSION}
|
ENV DEFAULT_DOCKCROSS_IMAGE ${IMAGE}:${VERSION}
|
||||||
|
@ -11,7 +11,7 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
|
@ -6,7 +6,7 @@ LABEL maintainer="PJ Reid PJ.Reid@Zetier.com"
|
|||||||
# This is for 32-bit (i686) intel/amd devices
|
# This is for 32-bit (i686) intel/amd devices
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -18,9 +18,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "i686-linux-gnu" target.
|
# The CROSS_TRIPLE is a configured alias of the "i686-linux-gnu" target.
|
||||||
ENV CROSS_TRIPLE=i686-linux-gnu
|
ENV CROSS_TRIPLE i686-linux-gnu
|
||||||
|
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,15 +29,15 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=i686
|
ENV ARCH i686
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -9,10 +9,10 @@ set(CMAKE_C_COMPILER $ENV{CC})
|
|||||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
||||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-x86_64 -cpu qemu32)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-x86_64 -cpu qemu32)
|
||||||
|
@ -119,7 +119,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,16 +1,16 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
ARG QEMU_VERSION=6.0.0
|
ARG QEMU_VERSION=6.0.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
ENV CROSS_TRIPLE=m68k-unknown-uclinux-uclibc
|
ENV CROSS_TRIPLE m68k-unknown-uclinux-uclibc
|
||||||
|
|
||||||
WORKDIR /usr/src
|
WORKDIR /usr/src
|
||||||
|
|
||||||
@ -22,7 +22,7 @@ RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
|
|||||||
make install && \
|
make install && \
|
||||||
cd .. && rm -rf qemu-${QEMU_VERSION}
|
cd .. && rm -rf qemu-${QEMU_VERSION}
|
||||||
|
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -31,19 +31,19 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
WORKDIR /work
|
WORKDIR /work
|
||||||
|
|
||||||
COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/
|
COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=/usr/lib/${CROSS_TRIPLE}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_TRIPLE}/Toolchain.cmake
|
||||||
|
|
||||||
ENV PKG_CONFIG_PATH=/usr/lib/mk68-unknown-linux-uclibc/pkgconfig
|
ENV PKG_CONFIG_PATH /usr/lib/mk68-unknown-linux-uclibc/pkgconfig
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=powerpc
|
ENV ARCH powerpc
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
|
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -18,9 +18,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-gnu" target.
|
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-gnu" target.
|
||||||
ENV CROSS_TRIPLE=mips-unknown-linux-gnu
|
ENV CROSS_TRIPLE mips-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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,15 +29,15 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=mips
|
ENV ARCH mips
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -9,10 +9,10 @@ set(CMAKE_C_COMPILER $ENV{CC})
|
|||||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
||||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -5,7 +5,7 @@ LABEL maintainer="Rene Helmke rene.helmke@fkie.fraunhofer.de"
|
|||||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled and uclibc.
|
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled and uclibc.
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -17,9 +17,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-uclibc" target.
|
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-uclibc" target.
|
||||||
ENV CROSS_TRIPLE=mips-unknown-linux-uclibc
|
ENV CROSS_TRIPLE mips-unknown-linux-uclibc
|
||||||
|
|
||||||
ENV CROSS_ROOT=${XCC_PREFIX}/${CROSS_TRIPLE}
|
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
|
||||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -28,17 +28,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/mips-linux-uclibc/
|
ENV PKG_CONFIG_PATH /usr/lib/mips-linux-uclibc/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=mips
|
ENV ARCH mips
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
||||||
|
@ -121,7 +121,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
|
|
||||||
@ -18,9 +18,9 @@ RUN apt-get update \
|
|||||||
&& apt-get clean --yes
|
&& apt-get clean --yes
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-gnu" target.
|
# The CROSS_TRIPLE is a configured alias of the "mips-unknown-linux-gnu" target.
|
||||||
ENV CROSS_TRIPLE=mips-unknown-linux-gnu
|
ENV CROSS_TRIPLE mips-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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -29,15 +29,15 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
COPY Toolchain.cmake ${CROSS_ROOT}/
|
||||||
ENV CMAKE_TOOLCHAIN_FILE=${CROSS_ROOT}/Toolchain.cmake
|
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=mips
|
ENV ARCH mips
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -9,10 +9,10 @@ set(CMAKE_C_COMPILER $ENV{CC})
|
|||||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
set(CMAKE_CXX_COMPILER $ENV{CXX})
|
||||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
set(CMAKE_Fortran_COMPILER $ENV{FC})
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mips)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
ARG ORG=dockcross
|
ARG ORG=dockcross
|
||||||
FROM ${ORG}/base:latest
|
FROM ${ORG}/base:latest
|
||||||
|
|
||||||
LABEL maintainer="Matt McCormick matt@mmmccormick.com"
|
LABEL maintainer="Matt McCormick matt.mccormick@kitware.com"
|
||||||
|
|
||||||
# Crosstool-ng version 2022-05-19
|
# Crosstool-ng version 2022-05-19
|
||||||
ENV CT_VERSION=crosstool-ng-1.25.0
|
ENV CT_VERSION crosstool-ng-1.25.0
|
||||||
|
|
||||||
# This is for 32-bit or 64-bit mipsel Linux (multilib)
|
# This is for 32-bit or 64-bit mipsel Linux (multilib)
|
||||||
#include "common.crosstool"
|
#include "common.crosstool"
|
||||||
@ -18,8 +18,8 @@ RUN apt-get update \
|
|||||||
|
|
||||||
|
|
||||||
# The CROSS_TRIPLE is a configured alias of the "mipsel-unknown-linux-gnu" target.
|
# The CROSS_TRIPLE is a configured alias of the "mipsel-unknown-linux-gnu" target.
|
||||||
ENV CROSS_TRIPLE=mipsel-unknown-linux-gnu
|
ENV CROSS_TRIPLE mipsel-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 \
|
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
||||||
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
AR=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ar \
|
||||||
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
CC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gcc \
|
||||||
@ -28,17 +28,17 @@ ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
|
|||||||
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
LD=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-ld \
|
||||||
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
FC=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-gfortran
|
||||||
|
|
||||||
ENV QEMU_LD_PREFIX="${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
ENV QEMU_LD_PREFIX "${CROSS_ROOT}/${CROSS_TRIPLE}/sysroot"
|
||||||
ENV QEMU_SET_ENV="LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${QEMU_LD_PREFIX}"
|
||||||
|
|
||||||
COPY Toolchain.cmake ${CROSS_ROOT}/
|
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/mipsel-unknown-linux-gnu/
|
ENV PKG_CONFIG_PATH /usr/lib/mipsel-unknown-linux-gnu/
|
||||||
|
|
||||||
# Linux kernel cross compilation variables
|
# Linux kernel cross compilation variables
|
||||||
ENV PATH=${PATH}:${CROSS_ROOT}/bin
|
ENV PATH ${PATH}:${CROSS_ROOT}/bin
|
||||||
ENV CROSS_COMPILE=${CROSS_TRIPLE}-
|
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
|
||||||
ENV ARCH=mipsel
|
ENV ARCH mipsel
|
||||||
|
|
||||||
#include "common.label-and-env"
|
#include "common.label-and-env"
|
||||||
|
@ -11,10 +11,10 @@ set(CMAKE_Fortran_COMPILER $ENV{FC})
|
|||||||
|
|
||||||
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
set(CMAKE_CXX_FLAGS "-I ${cross_root}/include/")
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
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_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mipsel)
|
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mipsel)
|
||||||
|
@ -120,7 +120,7 @@ CT_LOG_EXTRA=y
|
|||||||
# CT_LOG_DEBUG is not set
|
# CT_LOG_DEBUG is not set
|
||||||
CT_LOG_LEVEL_MAX="EXTRA"
|
CT_LOG_LEVEL_MAX="EXTRA"
|
||||||
# CT_LOG_SEE_TOOLS_WARN is not set
|
# CT_LOG_SEE_TOOLS_WARN is not set
|
||||||
CT_LOG_PROGRESS_BAR=n
|
CT_LOG_PROGRESS_BAR=y
|
||||||
CT_LOG_TO_FILE=y
|
CT_LOG_TO_FILE=y
|
||||||
CT_LOG_FILE_COMPRESS=y
|
CT_LOG_FILE_COMPRESS=y
|
||||||
# end of Paths and misc options
|
# end of Paths and misc options
|
||||||
|
@ -1,49 +0,0 @@
|
|||||||
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"
|
|
@ -1,20 +0,0 @@
|
|||||||
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/")
|
|
||||||
|
|
||||||
list(APPEND CMAKE_FIND_ROOT_PATH ${CMAKE_PREFIX_PATH} ${cross_root} ${cross_root}/${cross_triple})
|
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
|
||||||
set(CMAKE_SYSROOT ${cross_root}/${cross_triple}/sysroot)
|
|
||||||
|
|
||||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-ppc)
|
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user