mirror of
https://github.com/bensuperpc/dockcross.git
synced 2025-06-17 16:39:25 +02:00
Compare commits
17 Commits
add_lts_ar
...
update_rea
Author | SHA1 | Date | |
---|---|---|---|
aa4bcf4a34 | |||
7ec0eaa3c9 | |||
09e8f01e94 | |||
d0e3fe912c | |||
3802117f88 | |||
41fb6ce09d | |||
97c3a4a4f6 | |||
ae6855835d | |||
6c758bf71c | |||
501b1b84dc | |||
77da067e8e | |||
54f73cbb65 | |||
d30a795408 | |||
afd21c490e | |||
a38a7920ac | |||
55138d52e0 | |||
4fd8fb9e09 |
11
.github/workflows/main.yml
vendored
11
.github/workflows/main.yml
vendored
@ -46,7 +46,16 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
arch_name: [android-arm, android-arm64, android-x86, android-x86_64, web-wasm, linux-arm64, linux-arm64-musl, linux-armv5, linux-armv5-musl, linux-armv6, linux-armv6-lts, linux-armv6-musl, linux-armv7, linux-armv7a, linux-armv7l-musl, linux-x64-clang, linux-s390x, linux-x64, linux-x86, linux-mips, linux-ppc64le, manylinux1-x64, manylinux1-x86, manylinux2010-x64, manylinux2010-x86, manylinux2014-x64, manylinux2014-x86, manylinux2014-aarch64, windows-static-x64, windows-static-x64-posix, windows-static-x86, windows-shared-x64, windows-shared-x64-posix, windows-shared-x86, linux-riscv64, linux-riscv32, linux-m68k-uclibc]
|
||||
arch_name: [android-arm, android-arm64, android-x86, android-x86_64,
|
||||
linux-arm64, linux-arm64-musl, linux-armv5, linux-armv5-musl,
|
||||
linux-armv6, linux-armv6-lts, linux-armv6-musl,
|
||||
linux-armv7, linux-armv7a, linux-armv7l-musl,
|
||||
linux-x64-clang, linux-s390x, linux-x64, linux-x86,
|
||||
linux-mips, linux-ppc64le, web-wasm,
|
||||
manylinux2014-x64, manylinux2014-x86, manylinux2014-aarch64,
|
||||
windows-static-x64, windows-static-x64-posix, windows-static-x86,
|
||||
windows-shared-x64, windows-shared-x64-posix, windows-shared-x86,
|
||||
linux-riscv64, linux-riscv32, linux-m68k-uclibc]
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/download-artifact@v2
|
||||
|
129
Makefile
129
Makefile
@ -9,22 +9,40 @@ DOCKER = docker
|
||||
# Docker organization to pull the images from
|
||||
ORG = dockcross
|
||||
|
||||
# Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux1-x64)
|
||||
# Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64)
|
||||
BIN = ./bin
|
||||
|
||||
# These images are built using the "build implicit rule"
|
||||
STANDARD_IMAGES = linux-s390x android-arm android-arm64 android-x86 android-x86_64 linux-x86 linux-x64 linux-arm64 linux-x64-clang linux-arm64-musl linux-armv5 linux-armv5-musl linux-armv6 linux-armv6-musl linux-armv7 linux-armv7a linux-armv7l-musl linux-mips linux-ppc64le windows-static-x86 windows-static-x64 windows-static-x64-posix windows-shared-x86 windows-shared-x64 windows-shared-x64-posix linux-riscv64 linux-riscv32 linux-m68k-uclibc linux-armv6-lts
|
||||
STANDARD_IMAGES = android-arm android-arm64 android-x86 android-x86_64 \
|
||||
linux-x86 linux-x64 linux-x64-clang linux-arm64 linux-arm64-musl \
|
||||
linux-armv5 linux-armv5-musl linux-m68k-uclibc linux-s390x \
|
||||
linux-armv6 linux-armv6-lts linux-armv6-musl \
|
||||
linux-armv7l-musl linux-armv7 linux-armv7a \
|
||||
linux-mips linux-ppc64le linux-riscv64 linux-riscv32 \
|
||||
windows-static-x86 windows-static-x64 windows-static-x64-posix \
|
||||
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix
|
||||
|
||||
# Generated Dockerfiles.
|
||||
GEN_IMAGES = linux-s390x android-arm android-arm64 linux-x86 linux-x64 linux-mips linux-x64-clang manylinux1-x64 manylinux1-x86 manylinux2010-x64 manylinux2010-x86 manylinux2014-x64 manylinux2014-x86 manylinux2014-aarch64 web-wasm linux-arm64 linux-arm64-musl windows-static-x86 windows-static-x64 windows-static-x64-posix windows-shared-x86 windows-shared-x64 windows-shared-x64-posix linux-armv7 linux-armv7a linux-armv7l-musl linux-armv6 linux-armv6-musl linux-armv5 linux-armv5-musl linux-ppc64le linux-riscv64 linux-riscv32 linux-m68k-uclibc linux-armv6-lts
|
||||
GEN_IMAGES = android-arm android-arm64 \
|
||||
linux-x86 linux-x64 linux-x64-clang linux-arm64 linux-arm64-musl \
|
||||
manylinux2014-x64 manylinux2014-x86 \
|
||||
manylinux2014-aarch64 web-wasm linux-mips \
|
||||
windows-static-x86 windows-static-x64 windows-static-x64-posix \
|
||||
windows-shared-x86 windows-shared-x64 windows-shared-x64-posix \
|
||||
linux-armv7 linux-armv7a linux-armv7l-musl \
|
||||
linux-armv6 linux-armv6-lts linux-armv6-musl \
|
||||
linux-armv5 linux-armv5-musl linux-ppc64le linux-s390x \
|
||||
linux-riscv64 linux-riscv32 linux-m68k-uclibc
|
||||
|
||||
GEN_IMAGE_DOCKERFILES = $(addsuffix /Dockerfile,$(GEN_IMAGES))
|
||||
|
||||
# These images are expected to have explicit rules for *both* build and testing
|
||||
NON_STANDARD_IMAGES = web-wasm manylinux1-x64 manylinux1-x86 manylinux2010-x64 manylinux2010-x86 manylinux2014-x64 manylinux2014-x86 manylinux2014-aarch64
|
||||
NON_STANDARD_IMAGES = manylinux2014-x64 manylinux2014-x86 \
|
||||
manylinux2014-aarch64 web-wasm
|
||||
|
||||
# Docker composite files
|
||||
DOCKER_COMPOSITE_SOURCES = common.docker common.debian common.manylinux common.crosstool common.windows common-manylinux.crosstool common.dockcross common.label-and-env
|
||||
DOCKER_COMPOSITE_SOURCES = common.docker common.debian common.manylinux \
|
||||
common.crosstool common.windows common-manylinux.crosstool common.dockcross common.label-and-env
|
||||
DOCKER_COMPOSITE_FOLDER_PATH = common/
|
||||
DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
|
||||
|
||||
@ -32,7 +50,7 @@ DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COM
|
||||
IMAGES = $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)
|
||||
|
||||
# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
|
||||
linux-ppc64le.test_ARGS = --languages C
|
||||
linux-x64-tinycc.test_ARGS = --languages C
|
||||
windows-static-x86.test_ARGS = --exe-suffix ".exe"
|
||||
windows-static-x64.test_ARGS = --exe-suffix ".exe"
|
||||
windows-static-x64-posix.test_ARGS = --exe-suffix ".exe"
|
||||
@ -119,7 +137,8 @@ manylinux2014-aarch64: manylinux2014-aarch64/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2014-aarch64.test: manylinux2014-aarch64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64 > $(BIN)/dockcross-manylinux2014-aarch64 && chmod +x $(BIN)/dockcross-manylinux2014-aarch64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-aarch64 > $(BIN)/dockcross-manylinux2014-aarch64 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-aarch64
|
||||
$(BIN)/dockcross-manylinux2014-aarch64 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
@ -137,7 +156,8 @@ manylinux2014-x64: manylinux2014-x64/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2014-x64.test: manylinux2014-x64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x64 > $(BIN)/dockcross-manylinux2014-x64 && chmod +x $(BIN)/dockcross-manylinux2014-x64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x64 > $(BIN)/dockcross-manylinux2014-x64 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x64
|
||||
$(BIN)/dockcross-manylinux2014-x64 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
@ -155,89 +175,10 @@ manylinux2014-x86: manylinux2014-x86/Dockerfile
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2014-x86.test: manylinux2014-x86
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x86 > $(BIN)/dockcross-manylinux2014-x86 && chmod +x $(BIN)/dockcross-manylinux2014-x86
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2014-x86 > $(BIN)/dockcross-manylinux2014-x86 \
|
||||
&& chmod +x $(BIN)/dockcross-manylinux2014-x86
|
||||
$(BIN)/dockcross-manylinux2014-x86 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# manylinux2010-x64
|
||||
#
|
||||
|
||||
manylinux2010-x64: manylinux2010-x64/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux2010-x64:latest \
|
||||
-t $(ORG)/manylinux2010-x64:$(TAG) \
|
||||
--build-arg IMAGE=$(ORG)/manylinux2010-x64 \
|
||||
--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 manylinux2010-x64/Dockerfile .
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2010-x64.test: manylinux2010-x64
|
||||
$(DOCKER) run $(RM) dockcross/manylinux2010-x64 > $(BIN)/dockcross-manylinux2010-x64 && chmod +x $(BIN)/dockcross-manylinux2010-x64
|
||||
$(BIN)/dockcross-manylinux2010-x64 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# manylinux2010-x86
|
||||
#
|
||||
|
||||
manylinux2010-x86: manylinux2010-x86/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux2010-x86:latest \
|
||||
-t $(ORG)/manylinux2010-x86:$(TAG) \
|
||||
--build-arg IMAGE=$(ORG)/manylinux2010-x86 \
|
||||
--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 manylinux2010-x86/Dockerfile .
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux2010-x86.test: manylinux2010-x86
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux2010-x86 > $(BIN)/dockcross-manylinux2010-x86 && chmod +x $(BIN)/dockcross-manylinux2010-x86
|
||||
$(BIN)/dockcross-manylinux2010-x86 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# manylinux1-x64
|
||||
#
|
||||
|
||||
manylinux1-x64: manylinux1-x64/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux1-x64:latest \
|
||||
-t $(ORG)/manylinux1-x64:$(TAG) \
|
||||
--build-arg IMAGE=$(ORG)/manylinux1-x64 \
|
||||
--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 manylinux1-x64/Dockerfile .
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux1-x64.test: manylinux1-x64
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux1-x64 > $(BIN)/dockcross-manylinux1-x64 && chmod +x $(BIN)/dockcross-manylinux1-x64
|
||||
$(BIN)/dockcross-manylinux1-x64 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# manylinux1-x86
|
||||
#
|
||||
|
||||
manylinux1-x86: manylinux1-x86/Dockerfile
|
||||
mkdir -p $@/imagefiles && cp -r imagefiles $@/
|
||||
$(DOCKER) build -t $(ORG)/manylinux1-x86:latest \
|
||||
-t $(ORG)/manylinux1-x86:$(TAG) \
|
||||
--build-arg IMAGE=$(ORG)/manylinux1-x86 \
|
||||
--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 manylinux1-x86/Dockerfile .
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
manylinux1-x86.test: manylinux1-x86
|
||||
$(DOCKER) run $(RM) $(ORG)/manylinux1-x86 > $(BIN)/dockcross-manylinux1-x86 && chmod +x $(BIN)/dockcross-manylinux1-x86
|
||||
$(BIN)/dockcross-manylinux1-x86 /opt/python/cp38-cp38/bin/python test/run.py
|
||||
|
||||
#
|
||||
# base
|
||||
#
|
||||
|
||||
base: Dockerfile imagefiles/
|
||||
$(DOCKER) build -t $(ORG)/base:latest \
|
||||
-t $(ORG)/base:$(TAG) \
|
||||
@ -271,13 +212,14 @@ $(STANDARD_IMAGES): %: %/Dockerfile base
|
||||
rm -rf $@/imagefiles
|
||||
|
||||
clean:
|
||||
for d in $(STANDARD_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 $(GEN_IMAGE_DOCKERFILES) ; do rm -f $$d ; done
|
||||
rm -f Dockerfile
|
||||
|
||||
purge: clean
|
||||
# Remove all untagged images
|
||||
$(DOCKER) container ls -aq | xargs --no-run-if-empty $(DOCKER) container rm -f
|
||||
$(DOCKER) container ls -aq | xargs -r $(DOCKER) container rm -f
|
||||
# Remove all images with organization (ex dockcross/*)
|
||||
$(DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
|
||||
|
||||
@ -291,7 +233,8 @@ bash-check:
|
||||
#
|
||||
.SECONDEXPANSION:
|
||||
$(addsuffix .test,$(STANDARD_IMAGES)): $$(basename $$@)
|
||||
$(DOCKER) run $(RM) $(ORG)/$(basename $@) > $(BIN)/dockcross-$(basename $@) && chmod +x $(BIN)/dockcross-$(basename $@)
|
||||
$(DOCKER) run $(RM) $(ORG)/$(basename $@) > $(BIN)/dockcross-$(basename $@) \
|
||||
&& chmod +x $(BIN)/dockcross-$(basename $@)
|
||||
$(BIN)/dockcross-$(basename $@) python3 test/run.py $($@_ARGS)
|
||||
|
||||
#
|
||||
@ -302,4 +245,4 @@ test.prerequisites:
|
||||
|
||||
$(addsuffix .test,base $(IMAGES)): test.prerequisites
|
||||
|
||||
.PHONY: base images $(IMAGES) test %.test clean purge
|
||||
.PHONY: base images $(IMAGES) test %.test clean purge bash-check display_images
|
||||
|
56
README.md
56
README.md
@ -149,7 +149,13 @@ Linux armv5 cross compiler toolchain using
|
||||
|
||||
  
|
||||
|
||||
Linux ARMv6 cross compiler toolchain for the Raspberry Pi, etc.
|
||||
Linux ARMv6 cross compiler toolchain for the Raspberry Pi
|
||||
|
||||
### dockcross/linux-armv6-lts
|
||||
|
||||
  
|
||||
|
||||
Linux ARMv6 cross compiler toolchain for the Raspberry Pi (Debian buster...)
|
||||
|
||||
### dockcross/linux-armv6-musl
|
||||
|
||||
@ -280,54 +286,6 @@ has installations of CMake, Ninja, and
|
||||
[scikit-build](http://scikit-build.org). For CMake, it sets
|
||||
[MANYLINUX2014]{.title-ref} to \"TRUE\" in the toolchain.
|
||||
|
||||
### dockcross/manylinux2010-x64
|
||||
|
||||
  
|
||||
|
||||
Docker [manylinux2010](https://github.com/pypa/manylinux)
|
||||
image for building Linux x86_64 / amd64 [Python wheel
|
||||
packages](http://pythonwheels.com/). It includes Python 2.7, 3.4,
|
||||
3.5, 3.6, 3.7 and 3.8. 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
|
||||
[MANYLINUX2010]{.title-ref} to \"TRUE\" in the toolchain.
|
||||
|
||||
### dockcross/manylinux2010-x86
|
||||
|
||||
  
|
||||
|
||||
Docker [manylinux2010](https://github.com/pypa/manylinux) image for
|
||||
building Linux i686 [Python wheel
|
||||
packages](http://pythonwheels.com/). It includes Python 2.7, 3.4,
|
||||
3.5, 3.6, 3.7 and 3.8. 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
|
||||
[MANYLINUX2010]{.title-ref} to \"TRUE\" in the toolchain.
|
||||
|
||||
### dockcross/manylinux1-x64
|
||||
|
||||
  
|
||||
|
||||
Docker [manylinux1](https://github.com/pypa/manylinux/tree/manylinux1)
|
||||
image for building Linux x86_64 / amd64 [Python wheel
|
||||
packages](http://pythonwheels.com/). It includes Python 2.7, 3.4,
|
||||
3.5, 3.6, 3.7 and 3.8. 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
|
||||
[MANYLINUX1]{.title-ref} to \"TRUE\" in the toolchain.
|
||||
|
||||
### dockcross/manylinux1-x86
|
||||
|
||||
  
|
||||
|
||||
Docker [manylinux1](https://github.com/pypa/manylinux/tree/manylinux1)
|
||||
image for building Linux i686 [Python wheel
|
||||
packages](http://pythonwheels.com/). It includes Python 2.7, 3.4,
|
||||
3.5, 3.6, 3.7 and 3.8. 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
|
||||
[MANYLINUX1]{.title-ref} to \"TRUE\" in the toolchain.
|
||||
|
||||
### dockcross/web-wasm
|
||||
|
||||
  
|
||||
|
@ -18,7 +18,7 @@ COPY \
|
||||
/buildscripts/
|
||||
|
||||
RUN \
|
||||
X86_FLAG=$([ "$DEFAULT_DOCKCROSS_IMAGE" = "dockcross/manylinux1-x86" -o "$DEFAULT_DOCKCROSS_IMAGE" = "dockcross/manylinux2010-x86" -o "$DEFAULT_DOCKCROSS_IMAGE" = "dockcross/manylinux2014-x86" ] && echo "-32" || echo "") && \
|
||||
X86_FLAG=$([ "$DEFAULT_DOCKCROSS_IMAGE" = "dockcross/manylinux2014-x86" ] && echo "-32" || echo "") && \
|
||||
/buildscripts/build-and-install-openssl.sh $X86_FLAG && \
|
||||
/buildscripts/build-and-install-openssh.sh && \
|
||||
/buildscripts/build-and-install-curl.sh && \
|
||||
|
@ -29,7 +29,13 @@ function build_curl {
|
||||
local curl_sha256=$2
|
||||
check_var ${curl_sha256}
|
||||
check_var ${CURL_DOWNLOAD_URL}
|
||||
curl -fsSLO ${CURL_DOWNLOAD_URL}/${curl_fname}.tar.gz
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-fsSLO ${CURL_DOWNLOAD_URL}/${curl_fname}.tar.gz
|
||||
|
||||
check_sha256sum ${curl_fname}.tar.gz ${curl_sha256}
|
||||
tar -zxf ${curl_fname}.tar.gz
|
||||
(cd curl-*/ && do_curl_build)
|
||||
|
@ -25,7 +25,12 @@ cd /usr/src
|
||||
|
||||
url="https://mirrors.edge.kernel.org/pub/software/scm/git/git-${GIT_VERSION}.tar.gz"
|
||||
echo "Downloading $url"
|
||||
curl -# -LO $url
|
||||
curl --connect-timeout 20 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 40 \
|
||||
-# -LO $url
|
||||
|
||||
tar xvzf git-${GIT_VERSION}.tar.gz --no-same-owner
|
||||
rm -f git-${GIT_VERSION}.tar.gz
|
||||
|
@ -27,7 +27,13 @@ done
|
||||
|
||||
# Download
|
||||
REV=v1.10.2
|
||||
curl -# -o ninja.tar.gz -LO https://github.com/ninja-build/ninja/archive/$REV.tar.gz
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-# -o ninja.tar.gz -LO https://github.com/ninja-build/ninja/archive/$REV.tar.gz
|
||||
|
||||
mkdir ninja
|
||||
tar -xzvf ./ninja.tar.gz --strip-components=1 -C ./ninja
|
||||
|
||||
|
@ -5,7 +5,13 @@ set -ex
|
||||
OPENSSH_ROOT=V_8_5_P1
|
||||
|
||||
cd /usr/src
|
||||
curl -LO https://github.com/openssh/openssh-portable/archive/${OPENSSH_ROOT}.tar.gz
|
||||
curl --connect-timeout 20 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 40 \
|
||||
-LO https://github.com/openssh/openssh-portable/archive/${OPENSSH_ROOT}.tar.gz
|
||||
|
||||
tar -xvf ${OPENSSH_ROOT}.tar.gz
|
||||
rm -f ${OPENSSH_ROOT}.tar.gz
|
||||
|
||||
|
@ -69,7 +69,13 @@ function build_perl {
|
||||
local perl_sha256=$2
|
||||
check_var ${perl_sha256}
|
||||
check_var ${PERL_DOWNLOAD_URL}
|
||||
curl -fsSLO ${PERL_DOWNLOAD_URL}/${perl_fname}.tar.gz
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-fsSLO ${PERL_DOWNLOAD_URL}/${perl_fname}.tar.gz
|
||||
|
||||
check_sha256sum ${perl_fname}.tar.gz ${perl_sha256}
|
||||
tar -xzf ${perl_fname}.tar.gz
|
||||
(cd ${perl_fname} && do_perl_build)
|
||||
@ -88,7 +94,13 @@ function build_openssl {
|
||||
local openssl_sha256=$2
|
||||
check_var ${openssl_sha256}
|
||||
check_var ${OPENSSL_DOWNLOAD_URL}
|
||||
curl -fsSLO ${OPENSSL_DOWNLOAD_URL}/${openssl_fname}.tar.gz
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-fsSLO ${OPENSSL_DOWNLOAD_URL}/${openssl_fname}.tar.gz
|
||||
|
||||
check_sha256sum ${openssl_fname}.tar.gz ${openssl_sha256}
|
||||
tar -xzf ${openssl_fname}.tar.gz
|
||||
(cd ${openssl_fname} && PATH=/opt/perl/bin:${PATH} do_openssl_build)
|
||||
|
@ -38,7 +38,12 @@ cd /usr/src
|
||||
CMAKE_ROOT=cmake-${CMAKE_VERSION}-Centos5-${ARCH}
|
||||
url=https://github.com/dockbuild/CMake/releases/download/v${CMAKE_VERSION}/${CMAKE_ROOT}.tar.gz
|
||||
echo "Downloading $url"
|
||||
curl -# -LO $url
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-# -LO $url
|
||||
|
||||
tar -xzvf ${CMAKE_ROOT}.tar.gz
|
||||
rm -f ${CMAKE_ROOT}.tar.gz
|
||||
|
@ -26,10 +26,20 @@ gpg --keyserver hkp://pgp.key-server.io:80 --recv-keys B42F6819007F00F88E364FD40
|
||||
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B42F6819007F00F88E364FD4036A9C25BF357DD4
|
||||
|
||||
echo "Downloading $url"
|
||||
curl -o /usr/local/bin/gosu -# -SL $url
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-o /usr/local/bin/gosu -# -SL $url
|
||||
|
||||
echo "Downloading $url_key"
|
||||
curl -o /usr/local/bin/gosu.asc -# -SL $url_key
|
||||
curl --connect-timeout 30 \
|
||||
--max-time 10 \
|
||||
--retry 5 \
|
||||
--retry-delay 10 \
|
||||
--retry-max-time 30 \
|
||||
-o /usr/local/bin/gosu.asc -# -SL $url_key
|
||||
|
||||
gpg --verify /usr/local/bin/gosu.asc
|
||||
|
||||
|
@ -1,28 +0,0 @@
|
||||
FROM quay.io/pypa/manylinux1_x86_64:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux1-x64
|
||||
ENV CMAKE_BIN true
|
||||
|
||||
#include "common.manylinux"
|
||||
|
||||
#include "common.dockcross"
|
||||
|
||||
#include "common.docker"
|
||||
|
||||
ENV CROSS_TRIPLE x86_64-linux-gnu
|
||||
ENV CROSS_ROOT /opt/rh/devtoolset-2/root/usr/bin
|
||||
ENV AS=${CROSS_ROOT}/as \
|
||||
AR=${CROSS_ROOT}/ar \
|
||||
CC=${CROSS_ROOT}/gcc \
|
||||
CPP=${CROSS_ROOT}/cpp \
|
||||
CXX=${CROSS_ROOT}/g++ \
|
||||
LD=${CROSS_ROOT}/ld \
|
||||
FC=${CROSS_ROOT}/gfortran
|
||||
|
||||
COPY linux-x64/${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop
|
||||
|
||||
COPY manylinux1-x64/Toolchain.cmake ${CROSS_ROOT}/../lib/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/../lib/Toolchain.cmake
|
||||
|
||||
#include "common.label-and-env"
|
@ -1,11 +0,0 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_CROSSCOMPILING FALSE)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(CMAKE_SYSTEM_PROCESSOR x86_64)
|
||||
|
||||
set(MANYLINUX1 TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER /opt/rh/devtoolset-2/root/usr/bin/gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/rh/devtoolset-2/root/usr/bin/g++)
|
||||
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})
|
||||
set(CMAKE_Fortran_COMPILER /opt/rh/devtoolset-2/root/usr/bin/gfortran)
|
@ -1,31 +0,0 @@
|
||||
FROM quay.io/pypa/manylinux1_i686:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux1-x86
|
||||
ENV CMAKE_BIN true
|
||||
|
||||
#include "common.manylinux"
|
||||
|
||||
#include "common.dockcross"
|
||||
|
||||
#include "common.docker"
|
||||
|
||||
ENV CROSS_TRIPLE i686-linux-gnu
|
||||
ENV CROSS_ROOT /opt/rh/devtoolset-2/root/usr/bin
|
||||
ENV AS=${CROSS_ROOT}/as \
|
||||
AR=${CROSS_ROOT}/ar \
|
||||
CC=${CROSS_ROOT}/gcc \
|
||||
CPP=${CROSS_ROOT}/cpp \
|
||||
CXX=${CROSS_ROOT}/g++ \
|
||||
LD=${CROSS_ROOT}/ld \
|
||||
FC=${CROSS_ROOT}/gfortran
|
||||
|
||||
COPY linux-x86/${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop
|
||||
|
||||
COPY manylinux1-x86/Toolchain.cmake ${CROSS_ROOT}/../lib/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/../lib/Toolchain.cmake
|
||||
|
||||
COPY linux-x86/linux32-entrypoint.sh /dockcross/
|
||||
ENTRYPOINT ["/dockcross/linux32-entrypoint.sh"]
|
||||
|
||||
#include "common.label-and-env"
|
@ -1,15 +0,0 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_CROSSCOMPILING FALSE)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(CMAKE_SYSTEM_PROCESSOR i686)
|
||||
|
||||
set(MANYLINUX1 TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER /opt/rh/devtoolset-2/root/usr/bin/gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/rh/devtoolset-2/root/usr/bin/g++)
|
||||
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})
|
||||
set(CMAKE_Fortran_COMPILER /opt/rh/devtoolset-2/root/usr/bin/gfortran)
|
||||
|
||||
# Discard path returned by pkg-config and associated with HINTS in module
|
||||
# like FindOpenSSL.
|
||||
set(CMAKE_IGNORE_PATH /usr/lib/x86_64-linux-gnu/ /usr/lib/x86_64-linux-gnu/lib/)
|
@ -1,32 +0,0 @@
|
||||
FROM quay.io/pypa/manylinux2010_x86_64:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux2010-x64
|
||||
|
||||
#include "common.manylinux"
|
||||
|
||||
#include "common.dockcross"
|
||||
|
||||
#include "common.docker"
|
||||
|
||||
# Override yum to work around the problem with newly built libcurl.so.4
|
||||
# https://access.redhat.com/solutions/641093
|
||||
RUN echo $'#!/bin/bash\n\
|
||||
LD_PRELOAD=/usr/lib/libcurl.so.4 /usr/bin/yum "$@"' > /usr/local/bin/yum && chmod a+x /usr/local/bin/yum
|
||||
|
||||
ENV CROSS_TRIPLE x86_64-linux-gnu
|
||||
ENV CROSS_ROOT /opt/rh/devtoolset-8/root/usr/bin
|
||||
ENV AS=${CROSS_ROOT}/as \
|
||||
AR=${CROSS_ROOT}/ar \
|
||||
CC=${CROSS_ROOT}/gcc \
|
||||
CPP=${CROSS_ROOT}/cpp \
|
||||
CXX=${CROSS_ROOT}/g++ \
|
||||
LD=${CROSS_ROOT}/ld \
|
||||
FC=${CROSS_ROOT}/gfortran
|
||||
|
||||
COPY linux-x64/${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop
|
||||
|
||||
COPY manylinux2010-x64/Toolchain.cmake ${CROSS_ROOT}/../lib/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/../lib/Toolchain.cmake
|
||||
|
||||
#include "common.label-and-env"
|
@ -1,11 +0,0 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_CROSSCOMPILING FALSE)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(CMAKE_SYSTEM_PROCESSOR x86_64)
|
||||
|
||||
set(MANYLINUX2010 TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER /opt/rh/devtoolset-8/root/usr/bin/gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/rh/devtoolset-8/root/usr/bin/g++)
|
||||
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})
|
||||
set(CMAKE_Fortran_COMPILER /opt/rh/devtoolset-8/root/usr/bin/gfortran)
|
@ -1,35 +0,0 @@
|
||||
FROM quay.io/pypa/manylinux2010_i686:latest
|
||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
|
||||
|
||||
ENV DEFAULT_DOCKCROSS_IMAGE dockcross/manylinux2010-x86
|
||||
|
||||
#include "common.manylinux"
|
||||
|
||||
#include "common.dockcross"
|
||||
|
||||
#include "common.docker"
|
||||
|
||||
# Override yum to work around the problem with newly built libcurl.so.4
|
||||
# https://access.redhat.com/solutions/641093
|
||||
RUN echo $'#!/bin/bash\n\
|
||||
LD_PRELOAD=/usr/lib/libcurl.so.4 /usr/bin/yum "$@"' > /usr/local/bin/yum && chmod a+x /usr/local/bin/yum
|
||||
|
||||
ENV CROSS_TRIPLE i686-linux-gnu
|
||||
ENV CROSS_ROOT /opt/rh/devtoolset-8/root/usr/bin
|
||||
ENV AS=${CROSS_ROOT}/as \
|
||||
AR=${CROSS_ROOT}/ar \
|
||||
CC=${CROSS_ROOT}/gcc \
|
||||
CPP=${CROSS_ROOT}/cpp \
|
||||
CXX=${CROSS_ROOT}/g++ \
|
||||
LD=${CROSS_ROOT}/ld \
|
||||
FC=${CROSS_ROOT}/gfortran
|
||||
|
||||
COPY linux-x86/${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop
|
||||
|
||||
COPY manylinux2010-x86/Toolchain.cmake ${CROSS_ROOT}/../lib/
|
||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/../lib/Toolchain.cmake
|
||||
|
||||
COPY linux-x86/linux32-entrypoint.sh /dockcross/
|
||||
ENTRYPOINT ["/dockcross/linux32-entrypoint.sh"]
|
||||
|
||||
#include "common.label-and-env"
|
@ -1,11 +0,0 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(CMAKE_CROSSCOMPILING FALSE)
|
||||
set(CMAKE_SYSTEM_VERSION 1)
|
||||
set(CMAKE_SYSTEM_PROCESSOR i686)
|
||||
|
||||
set(MANYLINUX2010 TRUE)
|
||||
|
||||
set(CMAKE_C_COMPILER /opt/rh/devtoolset-8/root/usr/bin/gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/rh/devtoolset-8/root/usr/bin/g++)
|
||||
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})
|
||||
set(CMAKE_Fortran_COMPILER /opt/rh/devtoolset-8/root/usr/bin/gfortran)
|
Reference in New Issue
Block a user