mirror of
				https://github.com/bensuperpc/dockcross.git
				synced 2025-11-03 17:36:24 +01:00 
			
		
		
		
	
							
								
								
									
										2
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							@@ -41,7 +41,7 @@ jobs:
 | 
				
			|||||||
    strategy:
 | 
					    strategy:
 | 
				
			||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      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-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]
 | 
					        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:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					      - uses: actions/checkout@v2
 | 
				
			||||||
      - uses: actions/download-artifact@v2
 | 
					      - uses: actions/download-artifact@v2
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										5
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								Makefile
									
									
									
									
									
								
							@@ -13,10 +13,11 @@ ORG = dockcross
 | 
				
			|||||||
BIN = ./bin
 | 
					BIN = ./bin
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# These images are built using the "build implicit rule"
 | 
					# 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-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.
 | 
					# Generated Dockerfiles.
 | 
				
			||||||
GEN_IMAGES = linux-s390x android-arm android-arm64 linux-x86 linux-x64 linux-mips 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))
 | 
					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
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -216,6 +216,12 @@ dockcross/linux-x64
 | 
				
			|||||||
  |linux-x64-images| Linux x86_64 / amd64 compiler. Since the Docker image is
 | 
					  |linux-x64-images| Linux x86_64 / amd64 compiler. Since the Docker image is
 | 
				
			||||||
  natively x86_64, this is not actually a cross compiler.
 | 
					  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
 | 
					.. |linux-x86-images| image:: https://images.microbadger.com/badges/image/dockcross/linux-x86.svg
 | 
				
			||||||
  :target: https://microbadger.com/images/dockcross/linux-x86
 | 
					  :target: https://microbadger.com/images/dockcross/linux-x86
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -111,6 +111,9 @@ cp "${CONFIG_PATH}" "${BUILD}/.config"
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
# As mentioned in ct-ng config, need to unset LD_LIBRARY_PATH.
 | 
					# As mentioned in ct-ng config, need to unset LD_LIBRARY_PATH.
 | 
				
			||||||
unset LD_LIBRARY_PATH
 | 
					unset LD_LIBRARY_PATH
 | 
				
			||||||
 | 
					# Fix build error on manylinux2014-aarch64
 | 
				
			||||||
 | 
					unset CC
 | 
				
			||||||
 | 
					unset CXX
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Build and install the toolchain!
 | 
					# Build and install the toolchain!
 | 
				
			||||||
# Print last 250 lines if build fail
 | 
					# Print last 250 lines if build fail
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										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
 | 
					# 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"
 | 
					#include "common-manylinux.crosstool"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# The cross-compiling emulator
 | 
					# The cross-compiling emulator
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user