mirror of
				https://github.com/bensuperpc/dockcross.git
				synced 2025-11-04 09:56:23 +01:00 
			
		
		
		
	Compare commits
	
		
			15 Commits
		
	
	
		
			update_arm
			...
			remove_mip
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 3f338f3221 | |||
| 
						 | 
					4463ac02fc | ||
| ecf9f32334 | |||
| 5a65786571 | |||
| 8802a50289 | |||
| e90c6ee9ce | |||
| 4ac8689b5f | |||
| 8fe8fb1ef1 | |||
| b15b799d7a | |||
| c7d5ff28e0 | |||
| 7b63720438 | |||
| ae3ed7e025 | |||
| 7717b5660a | |||
| a30e76d5cb | |||
| 6a1843884d | 
							
								
								
									
										2
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							@@ -41,7 +41,7 @@ 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-musl, linux-armv7, linux-armv7a, linux-armv7l-musl, linux-s390x, linux-x64, linux-x86, 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]
 | 
			
		||||
        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-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]
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - uses: actions/download-artifact@v2
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										7
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								Makefile
									
									
									
									
									
								
							@@ -13,10 +13,11 @@ ORG = dockcross
 | 
			
		||||
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-arm64-musl linux-armv5 linux-armv5-musl linux-armv6 linux-armv6-musl linux-armv7 linux-armv7a linux-armv7l-musl linux-mips linux-mipsel linux-ppc64le windows-static-x86 windows-static-x64 windows-static-x64-posix windows-shared-x86 windows-shared-x64 windows-shared-x64-posix
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
# Generated Dockerfiles.
 | 
			
		||||
GEN_IMAGES = linux-s390x android-arm android-arm64 linux-x86 linux-x64 linux-mips linux-mipsel 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
 | 
			
		||||
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
 | 
			
		||||
 | 
			
		||||
GEN_IMAGE_DOCKERFILES = $(addsuffix /Dockerfile,$(GEN_IMAGES))
 | 
			
		||||
 | 
			
		||||
# These images are expected to have explicit rules for *both* build and testing
 | 
			
		||||
@@ -288,4 +289,4 @@ test.prerequisites:
 | 
			
		||||
 | 
			
		||||
$(addsuffix .test,base $(IMAGES)): test.prerequisites
 | 
			
		||||
 | 
			
		||||
.PHONY: base images $(IMAGES) test %.test clean
 | 
			
		||||
.PHONY: base images $(IMAGES) test %.test clean purge
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										13
									
								
								README.rst
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								README.rst
									
									
									
									
									
								
							@@ -187,13 +187,6 @@ dockcross/linux-armv7l-musl
 | 
			
		||||
  |linux-armv7l-musl-images| Toolchain configured for ARMv7-L, using `musl <https://www.musl-libc.org/>`_ as base "libc".
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.. |linux-mipsel-images| image:: https://images.microbadger.com/badges/image/dockcross/linux-mipsel.svg
 | 
			
		||||
  :target: https://microbadger.com/images/dockcross/linux-mipsel
 | 
			
		||||
 | 
			
		||||
dockcross/linux-mipsel
 | 
			
		||||
  |linux-mipsel-images| Linux mipsel cross compiler toolchain for little endian MIPS GNU systems.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
.. |linux-mips-images| image:: https://images.microbadger.com/badges/image/dockcross/linux-mips.svg
 | 
			
		||||
  :target: https://microbadger.com/images/dockcross/linux-mips
 | 
			
		||||
 | 
			
		||||
@@ -223,6 +216,12 @@ dockcross/linux-x64
 | 
			
		||||
  |linux-x64-images| Linux x86_64 / amd64 compiler. Since the Docker image is
 | 
			
		||||
  natively x86_64, this is not actually a cross compiler.
 | 
			
		||||
 | 
			
		||||
.. |linux-x64-clang-images| image:: https://images.microbadger.com/badges/image/dockcross/linux-x64-clang.svg
 | 
			
		||||
  :target: https://microbadger.com/images/dockcross/linux-x64-clang
 | 
			
		||||
 | 
			
		||||
dockcross/linux-x64-clang
 | 
			
		||||
  |linux-x64-clang-images| Linux clang x86_64 / amd64 compiler. Since the Docker image is
 | 
			
		||||
  natively x86_64, this is not actually a cross compiler.
 | 
			
		||||
 | 
			
		||||
.. |linux-x86-images| image:: https://images.microbadger.com/badges/image/dockcross/linux-x86.svg
 | 
			
		||||
  :target: https://microbadger.com/images/dockcross/linux-x86
 | 
			
		||||
 
 | 
			
		||||
@@ -21,6 +21,10 @@ RUN apt-get update --yes && apt-get install --no-install-recommends --yes \
 | 
			
		||||
    help2man \
 | 
			
		||||
    python3-dev \
 | 
			
		||||
    texinfo \
 | 
			
		||||
# Packages needed for crosstool-ng 1.24 or higher 
 | 
			
		||||
    unzip \
 | 
			
		||||
    libtool \
 | 
			
		||||
    libtool-bin \
 | 
			
		||||
    && apt-get clean autoclean --yes \
 | 
			
		||||
    && apt-get autoremove --yes \
 | 
			
		||||
    && rm -rf /var/lib/{apt,dpkg,cache,log}/
 | 
			
		||||
 
 | 
			
		||||
@@ -111,6 +111,9 @@ cp "${CONFIG_PATH}" "${BUILD}/.config"
 | 
			
		||||
 | 
			
		||||
# As mentioned in ct-ng config, need to unset LD_LIBRARY_PATH.
 | 
			
		||||
unset LD_LIBRARY_PATH
 | 
			
		||||
# Fix build error on manylinux2014-aarch64
 | 
			
		||||
unset CC
 | 
			
		||||
unset CXX
 | 
			
		||||
 | 
			
		||||
# Build and install the toolchain!
 | 
			
		||||
# Print last 250 lines if build fail
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,8 @@ FROM dockcross/base:latest
 | 
			
		||||
# This is for 64-bit ARM Linux machine
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -5,6 +5,9 @@ MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
# VFP instructions (armhf).
 | 
			
		||||
# musleabi as default glibc
 | 
			
		||||
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
# The cross-compiling emulator
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -5,7 +5,8 @@ MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
# VFP instructions (armhf).
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -2,7 +2,8 @@ FROM dockcross/base:latest
 | 
			
		||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
# This is for 32-bit ARMv7 Linux
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -3,8 +3,8 @@ MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
 | 
			
		||||
# This is for 32-bit ARMv7 Linux
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -3,7 +3,8 @@ FROM dockcross/base:latest
 | 
			
		||||
# This is for 32-bit Big-Endian MIPS devices with hard floating point enabled
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,40 +0,0 @@
 | 
			
		||||
FROM dockcross/base:latest
 | 
			
		||||
MAINTAINER Sergi Alvarez "pancake@nopcode.org"
 | 
			
		||||
 | 
			
		||||
# This is for ARMv5 "legacy" (mipsel) devices which do NOT support hard float
 | 
			
		||||
# VFP instructions (mipshf).
 | 
			
		||||
 | 
			
		||||
# From https://wiki.debian.org/CrossToolchains, installing for jessie
 | 
			
		||||
RUN echo "deb http://emdebian.org/tools/debian/ jessie main" > /etc/apt/sources.list.d/emdebian.list \
 | 
			
		||||
&& curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | apt-key add - \
 | 
			
		||||
&& sed -i 's/httpredir.debian.org/http.debian.net/' /etc/apt/sources.list \
 | 
			
		||||
&& dpkg --add-architecture mipsel \
 | 
			
		||||
&& apt-get update && apt-get install -y crossbuild-essential-mipsel
 | 
			
		||||
 | 
			
		||||
# The cross-compiling emulator
 | 
			
		||||
RUN apt-get update && apt-get install -y \
 | 
			
		||||
  qemu-user \
 | 
			
		||||
  qemu-user-static
 | 
			
		||||
 | 
			
		||||
ENV CROSS_TRIPLE mipsel-linux-gnu
 | 
			
		||||
ENV CROSS_ROOT /usr/bin
 | 
			
		||||
ENV AS=${CROSS_ROOT}/${CROSS_TRIPLE}-as \
 | 
			
		||||
    AR=${CROSS_ROOT}/${CROSS_TRIPLE}-ar \
 | 
			
		||||
    CC=${CROSS_ROOT}/${CROSS_TRIPLE}-gcc \
 | 
			
		||||
    CPP=${CROSS_ROOT}/${CROSS_TRIPLE}-cpp-4.9 \
 | 
			
		||||
    CXX=${CROSS_ROOT}/${CROSS_TRIPLE}-g++ \
 | 
			
		||||
    LD=${CROSS_ROOT}/${CROSS_TRIPLE}-ld \
 | 
			
		||||
    FC=${CROSS_ROOT}/${CROSS_TRIPLE}-gfortran
 | 
			
		||||
 | 
			
		||||
ENV QEMU_LD_PREFIX ${CROSS_ROOT}/libc
 | 
			
		||||
ENV QEMU_SET_ENV "LD_LIBRARY_PATH=${CROSS_ROOT}/lib:${CROSS_ROOT}/libc/lib/${CROSS_TRIPLE}/"
 | 
			
		||||
 | 
			
		||||
COPY Toolchain.cmake ${CROSS_ROOT}/
 | 
			
		||||
ENV CMAKE_TOOLCHAIN_FILE ${CROSS_ROOT}/Toolchain.cmake
 | 
			
		||||
 | 
			
		||||
# Linux kernel cross compilation variables
 | 
			
		||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
 | 
			
		||||
ENV CROSS_COMPILE ${CROSS_TRIPLE}-
 | 
			
		||||
ENV ARCH mips
 | 
			
		||||
 | 
			
		||||
#include "common.label-and-env"
 | 
			
		||||
@@ -1,16 +0,0 @@
 | 
			
		||||
set(CMAKE_SYSTEM_NAME Linux)
 | 
			
		||||
set(CMAKE_SYSTEM_VERSION 1)
 | 
			
		||||
set(CMAKE_SYSTEM_PROCESSOR mipsel)
 | 
			
		||||
 | 
			
		||||
set(cross_triple "mipsel-linux-gnu")
 | 
			
		||||
 | 
			
		||||
set(CMAKE_C_COMPILER $ENV{CC})
 | 
			
		||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
 | 
			
		||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
 | 
			
		||||
 | 
			
		||||
set(CMAKE_FIND_ROOT_PATH $ENV{CROSS_ROOT} $ENV{CROSS_ROOT}/libc/usr)
 | 
			
		||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
 | 
			
		||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
 | 
			
		||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)
 | 
			
		||||
 | 
			
		||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/qemu-mipsel)
 | 
			
		||||
@@ -2,21 +2,24 @@ FROM dockcross/base:latest
 | 
			
		||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
# We use a git commit while waiting for 1.25 to release (1.24 is several years old)
 | 
			
		||||
ENV CT_VERSION 9e10cb6fbaab6d83e1305b2d53ab585d14989667
 | 
			
		||||
 | 
			
		||||
ENV QEMU_VERSION 6.0.0
 | 
			
		||||
 | 
			
		||||
#include "common.crosstool"
 | 
			
		||||
 | 
			
		||||
ENV CROSS_TRIPLE powerpc64le-linux-gnu
 | 
			
		||||
ENV CROSS_TRIPLE powerpc64le-unknown-linux-gnu
 | 
			
		||||
 | 
			
		||||
WORKDIR /usr/src
 | 
			
		||||
 | 
			
		||||
RUN apt-get install -y libglib2.0-dev zlib1g-dev libpixman-1-dev && \
 | 
			
		||||
  curl -L http://wiki.qemu-project.org/download/qemu-3.1.0.tar.bz2 | tar xj && \
 | 
			
		||||
  cd qemu-3.1.0 && \
 | 
			
		||||
  curl -L http://wiki.qemu-project.org/download/qemu-${QEMU_VERSION}.tar.bz2 | tar xj && \
 | 
			
		||||
  cd qemu-${QEMU_VERSION} && \
 | 
			
		||||
  ./configure --target-list=ppc64le-linux-user --prefix=/usr && \
 | 
			
		||||
  make -j$(nproc) && \
 | 
			
		||||
  make install && \
 | 
			
		||||
  cd .. && rm -rf qemu-3.1.0
 | 
			
		||||
  cd .. && rm -rf qemu-${QEMU_VERSION}
 | 
			
		||||
 | 
			
		||||
ENV CROSS_ROOT ${XCC_PREFIX}/${CROSS_TRIPLE}
 | 
			
		||||
ENV AS=${CROSS_ROOT}/bin/${CROSS_TRIPLE}-as \
 | 
			
		||||
@@ -35,7 +38,7 @@ 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/powerpc64le-linux-gnu/pkgconfig
 | 
			
		||||
ENV PKG_CONFIG_PATH /usr/lib/powerpc64le-unknown-linux-gnu/pkgconfig
 | 
			
		||||
 | 
			
		||||
# Linux kernel cross compilation variables
 | 
			
		||||
ENV PATH ${PATH}:${CROSS_ROOT}/bin
 | 
			
		||||
 
 | 
			
		||||
@@ -2,7 +2,7 @@ set(CMAKE_SYSTEM_NAME Linux)
 | 
			
		||||
set(CMAKE_SYSTEM_VERSION 1)
 | 
			
		||||
set(CMAKE_SYSTEM_PROCESSOR ppc64le)
 | 
			
		||||
 | 
			
		||||
set(cross_triple "powerpc64le-linux-gnu")
 | 
			
		||||
set(cross_triple "powerpc64le-unknown-linux-gnu")
 | 
			
		||||
set(cross_root /usr/xcc/${cross_triple})
 | 
			
		||||
 | 
			
		||||
set(CMAKE_C_COMPILER $ENV{CC})
 | 
			
		||||
 
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,10 +0,0 @@
 | 
			
		||||
#------------------------------------------------------------------------------#
 | 
			
		||||
#                   OFFICIAL DEBIAN REPOS
 | 
			
		||||
#------------------------------------------------------------------------------#
 | 
			
		||||
 | 
			
		||||
###### Debian Main Repos
 | 
			
		||||
deb http://deb.debian.org/debian/ oldstable main contrib non-free
 | 
			
		||||
 | 
			
		||||
deb http://deb.debian.org/debian/ oldstable-updates main contrib non-free
 | 
			
		||||
 | 
			
		||||
deb http://deb.debian.org/debian-security oldstable/updates main
 | 
			
		||||
							
								
								
									
										35
									
								
								linux-x64-clang/Dockerfile.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								linux-x64-clang/Dockerfile.in
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
FROM dockcross/base:latest
 | 
			
		||||
MAINTAINER Matt McCormick "matt.mccormick@kitware.com"
 | 
			
		||||
 # flang
 | 
			
		||||
RUN echo "deb http://apt.llvm.org/buster/ llvm-toolchain-buster main" >> /etc/apt/sources.list \
 | 
			
		||||
    && echo "deb-src http://apt.llvm.org/buster/ llvm-toolchain-buster main" >> /etc/apt/sources.list \
 | 
			
		||||
    && wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - \
 | 
			
		||||
    && apt-get update \
 | 
			
		||||
    && apt-get purge --autoremove -y gcc g++ software-properties-common \
 | 
			
		||||
    && apt-get -y install clang libc++-dev libc++abi-dev clang-format clang-tidy lldb \
 | 
			
		||||
    && apt-get clean --yes \
 | 
			
		||||
    && rm -rf /var/lib/apt/lists/* \
 | 
			
		||||
    && update-alternatives --install /usr/bin/cc cc /usr/bin/clang 90 \
 | 
			
		||||
    && update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 90 \
 | 
			
		||||
    && update-alternatives --install /usr/bin/cpp cpp /usr/bin/clang++ 90 \
 | 
			
		||||
    && cc --version \
 | 
			
		||||
    && c++ --version \
 | 
			
		||||
    && cpp --version
 | 
			
		||||
 | 
			
		||||
ENV CROSS_TRIPLE x86_64-linux-gnu
 | 
			
		||||
ENV CROSS_ROOT /usr/bin
 | 
			
		||||
ENV CC=/usr/bin/clang \
 | 
			
		||||
    CPP=/usr/bin/cpp \
 | 
			
		||||
    CXX=/usr/bin/clang++ \
 | 
			
		||||
    LD=/usr/bin/lld \
 | 
			
		||||
    FC=/usr/bin/flang
 | 
			
		||||
 | 
			
		||||
#    AS=/usr/bin/${CROSS_TRIPLE}-as
 | 
			
		||||
#    AR=/usr/bin/${CROSS_TRIPLE}-ar
 | 
			
		||||
 | 
			
		||||
COPY ${CROSS_TRIPLE}-noop.sh /usr/bin/${CROSS_TRIPLE}-noop
 | 
			
		||||
 | 
			
		||||
COPY Toolchain.cmake /usr/lib/${CROSS_TRIPLE}/
 | 
			
		||||
ENV CMAKE_TOOLCHAIN_FILE /usr/lib/${CROSS_TRIPLE}/Toolchain.cmake
 | 
			
		||||
 | 
			
		||||
#include "common.label-and-env"
 | 
			
		||||
							
								
								
									
										12
									
								
								linux-x64-clang/Toolchain.cmake
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								linux-x64-clang/Toolchain.cmake
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
set(CMAKE_SYSTEM_NAME Linux)
 | 
			
		||||
set(CMAKE_SYSTEM_VERSION 1)
 | 
			
		||||
set(CMAKE_SYSTEM_PROCESSOR x86_64)
 | 
			
		||||
 | 
			
		||||
set(cross_triple "x86_64-linux-gnu")
 | 
			
		||||
 | 
			
		||||
set(CMAKE_C_COMPILER $ENV{CC})
 | 
			
		||||
set(CMAKE_CXX_COMPILER $ENV{CXX})
 | 
			
		||||
set(CMAKE_Fortran_COMPILER $ENV{FC})
 | 
			
		||||
set(CMAKE_ASM_COMPILER ${CMAKE_C_COMPILER})
 | 
			
		||||
 | 
			
		||||
set(CMAKE_CROSSCOMPILING_EMULATOR /usr/bin/${cross_triple}-noop)
 | 
			
		||||
							
								
								
									
										2
									
								
								linux-x64-clang/x86_64-linux-gnu-noop.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										2
									
								
								linux-x64-clang/x86_64-linux-gnu-noop.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
exec "$@"
 | 
			
		||||
@@ -6,6 +6,10 @@ FROM dockcross/manylinux2014-x64
 | 
			
		||||
 | 
			
		||||
# This is for 64-bit ARM Manylinux machine
 | 
			
		||||
 | 
			
		||||
# Crosstool-ng version
 | 
			
		||||
# Issues with crosstool-ng-1.24.0 and up : https://github.com/dockcross/dockcross/issues/367
 | 
			
		||||
ENV CT_VERSION crosstool-ng-1.23.0
 | 
			
		||||
 | 
			
		||||
#include "common-manylinux.crosstool"
 | 
			
		||||
 | 
			
		||||
# The cross-compiling emulator
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user