mirror of
				https://github.com/bensuperpc/dockcross.git
				synced 2025-11-04 01:46:24 +01:00 
			
		
		
		
	Compare commits
	
		
			33 Commits
		
	
	
		
			add-mips-l
			...
			Add_new_te
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 836d0ec037 | |||
| 4a32cf91d2 | |||
| 0dc1765afc | |||
| fad083bccb | |||
| 8f68b46ccb | |||
| b084b03655 | |||
| 5eee846afc | |||
| b3a6969256 | |||
| e6c4a14d75 | |||
| 3149f96644 | |||
| 0ef75dbc17 | |||
| 1586943008 | |||
| b437ebca4c | |||
| d39ef12e3b | |||
| f2fa6d69ca | |||
| 6391acac38 | |||
| 4a0b0bbc7b | |||
| 41980977c1 | |||
| 6dfe36da6d | |||
| f08b4034f1 | |||
| 2c7b043396 | |||
| b3616c037c | |||
| 1b8a64afee | |||
| dabd1b02be | |||
| 3c3c7f41ff | |||
| 813b6fa18d | |||
| e6defb5426 | |||
| d6a6d67d85 | |||
| c3ad0b7585 | |||
| ab872f9669 | |||
| 772592f143 | |||
| 71de3d67f2 | |||
| 74fab3b56e | 
							
								
								
									
										471
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										471
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							@@ -3,14 +3,14 @@ name: Dockcross CI
 | 
				
			|||||||
on:
 | 
					on:
 | 
				
			||||||
  push:
 | 
					  push:
 | 
				
			||||||
    branches:
 | 
					    branches:
 | 
				
			||||||
    - '*'
 | 
					      - "*"
 | 
				
			||||||
    paths-ignore:
 | 
					    paths-ignore:
 | 
				
			||||||
      - '**.md'
 | 
					      - "**.md"
 | 
				
			||||||
  pull_request:
 | 
					  pull_request:
 | 
				
			||||||
    branches:
 | 
					    branches:
 | 
				
			||||||
    - '*'
 | 
					      - "*"
 | 
				
			||||||
    paths-ignore:
 | 
					    paths-ignore:
 | 
				
			||||||
      - '**.md'
 | 
					      - "**.md"
 | 
				
			||||||
  workflow_dispatch:
 | 
					  workflow_dispatch:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
@@ -25,8 +25,8 @@ jobs:
 | 
				
			|||||||
        run: make base.test
 | 
					        run: make base.test
 | 
				
			||||||
      - name: archive base
 | 
					      - name: archive base
 | 
				
			||||||
        run: |
 | 
					        run: |
 | 
				
			||||||
            mkdir -p cache
 | 
					          mkdir -p cache
 | 
				
			||||||
            docker save dockcross/base:latest | xz -e9 -T0 > ./cache/base.tar.xz
 | 
					          docker save dockcross/base:latest | xz -e9 -T0 > ./cache/base.tar.xz
 | 
				
			||||||
      - name: save base
 | 
					      - name: save base
 | 
				
			||||||
        uses: actions/upload-artifact@v2
 | 
					        uses: actions/upload-artifact@v2
 | 
				
			||||||
        with:
 | 
					        with:
 | 
				
			||||||
@@ -36,8 +36,8 @@ jobs:
 | 
				
			|||||||
      - 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 login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASS }}
 | 
				
			||||||
            docker image push dockcross/base --all-tags
 | 
					          docker image push dockcross/base --all-tags
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  image:
 | 
					  image:
 | 
				
			||||||
    name: ${{ matrix.arch_name.image }}
 | 
					    name: ${{ matrix.arch_name.image }}
 | 
				
			||||||
@@ -47,64 +47,375 @@ jobs:
 | 
				
			|||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        arch_name:
 | 
					        arch_name:
 | 
				
			||||||
        # Android images
 | 
					          # Android images
 | 
				
			||||||
          - { image: "android-arm", arch: "arm" }
 | 
					          - {
 | 
				
			||||||
          - { image: "android-arm64", arch: "arm64" }
 | 
					              image: "android-arm",
 | 
				
			||||||
          - { image: "android-x86", arch: "x86" }
 | 
					              stockfish: "yes",
 | 
				
			||||||
          - { image: "android-x86_64", arch: "x86_64" }
 | 
					              stockfish_arg: "ARCH=armv7 COMP=ndk",
 | 
				
			||||||
        # Linux arm64/armv8 images
 | 
					              ninja: "no",
 | 
				
			||||||
          - { image: "linux-arm64", arch: "arm64" }
 | 
					              ninja_arg: "",
 | 
				
			||||||
          - { image: "linux-arm64-musl", arch: "arm64" }
 | 
					              openssl: "no",
 | 
				
			||||||
          - { image: "linux-arm64-full", arch: "arm64" }
 | 
					              openssl_arg: "android-arm",
 | 
				
			||||||
        # Linux armv5 images
 | 
					            }
 | 
				
			||||||
          - { image: "linux-armv5", arch: "armv5" }
 | 
					          - {
 | 
				
			||||||
          - { image: "linux-armv5-musl", arch: "armv5" }
 | 
					              image: "android-arm64",
 | 
				
			||||||
        # Linux armv6 images
 | 
					              stockfish: "yes",
 | 
				
			||||||
          - { image: "linux-armv6", arch: "armv6" }
 | 
					              stockfish_arg: "ARCH=armv8 COMP=ndk",
 | 
				
			||||||
          - { image: "linux-armv6-lts", arch: "armv6" }
 | 
					              ninja: "no",
 | 
				
			||||||
          - { image: "linux-armv6-musl", arch: "armv6" }
 | 
					              ninja_arg: "",
 | 
				
			||||||
        # Linux armv7 images
 | 
					              openssl: "no",
 | 
				
			||||||
          - { image: "linux-armv7", arch: "armv7" }
 | 
					              openssl_arg: "android-arm64",
 | 
				
			||||||
          - { image: "linux-armv7a", arch: "armv7" }
 | 
					            }
 | 
				
			||||||
          - { image: "linux-armv7l-musl", arch: "armv7" }
 | 
					          - {
 | 
				
			||||||
        # Linux x86 images
 | 
					              image: "android-x86",
 | 
				
			||||||
          - { image: "linux-x86", arch: "x86" }
 | 
					              stockfish: "yes",
 | 
				
			||||||
        # Linux x86_64 images
 | 
					              stockfish_arg: "ARCH=x86-32 COMP=ndk",
 | 
				
			||||||
          - { image: "linux-x64", arch: "x86_64" }
 | 
					              ninja: "no",
 | 
				
			||||||
          - { image: "linux-x64-tinycc", arch: "x86_64" }
 | 
					              ninja_arg: "",
 | 
				
			||||||
          - { image: "linux-x64-clang", arch: "x86_64" }
 | 
					              openssl: "no",
 | 
				
			||||||
          - { image: "linux-x86_64-full", arch: "x86_64" }
 | 
					              openssl_arg: "android-x86",
 | 
				
			||||||
        # Linux riscv images
 | 
					            }
 | 
				
			||||||
          - { image: "linux-riscv32", arch: "riscv32" }
 | 
					          - {
 | 
				
			||||||
          - { image: "linux-riscv64", arch: "riscv64" }
 | 
					              image: "android-x86_64",
 | 
				
			||||||
        # Linux s390x images
 | 
					              stockfish: "yes",
 | 
				
			||||||
          - { image: "linux-s390x", arch: "s390x" }
 | 
					              stockfish_arg: "ARCH=x86-64 COMP=ndk",
 | 
				
			||||||
        # Linux mips images
 | 
					              ninja: "no",
 | 
				
			||||||
          - { image: "linux-mips", arch: "mips" }
 | 
					              ninja_arg: "",
 | 
				
			||||||
        # Linux ppc64le images
 | 
					              openssl: "no",
 | 
				
			||||||
          - { image: "linux-ppc64le", arch: "ppc64le" }
 | 
					              openssl_arg: "android-x86_64",
 | 
				
			||||||
        # Linux m68k images
 | 
					            }
 | 
				
			||||||
          - { image: "linux-m68k-uclibc", arch: "m68k" }
 | 
					          # Linux arm64/armv8 images
 | 
				
			||||||
        # Linux xtensa images
 | 
					          - {
 | 
				
			||||||
          - { image: "linux-xtensa-uclibc", arch: "xtensa" }
 | 
					              image: "linux-arm64",
 | 
				
			||||||
        # Windows x86_x64 images
 | 
					              stockfish: "yes",
 | 
				
			||||||
          - { image: "windows-static-x64", arch: "x86_x64" }
 | 
					              stockfish_arg: "ARCH=armv8",
 | 
				
			||||||
          - { image: "windows-static-x64-posix", arch: "x86_x64" }
 | 
					              ninja: "yes",
 | 
				
			||||||
          - { image: "windows-static-x64", arch: "x86_x64" }
 | 
					              ninja_arg: "",
 | 
				
			||||||
          - { image: "windows-shared-x64", arch: "x86_x64" }
 | 
					              openssl: "yes",
 | 
				
			||||||
          - { image: "windows-shared-x64-posix", arch: "x64" }
 | 
					              openssl_arg: "linux-aarch64",
 | 
				
			||||||
        # Windows x86 images
 | 
					            }
 | 
				
			||||||
          - { image: "windows-static-x86", arch: "x86" }
 | 
					          - {
 | 
				
			||||||
          - { image: "windows-shared-x86", arch: "x86" }
 | 
					              image: "linux-arm64-musl",
 | 
				
			||||||
        # Windows arm images
 | 
					              stockfish: "yes",
 | 
				
			||||||
          - { image: "windows-armv7", arch: "armv7" }
 | 
					              stockfish_arg: "ARCH=armv8",
 | 
				
			||||||
          - { image: "windows-arm64", arch: "arm64" }
 | 
					              ninja: "yes",
 | 
				
			||||||
        # manylinux2014 images
 | 
					              ninja_arg: "",
 | 
				
			||||||
          - { image: "manylinux2014-x86", arch: "x86" }
 | 
					              openssl: "yes",
 | 
				
			||||||
          - { image: "manylinux2014-x64", arch: "x86_64" }
 | 
					              openssl_arg: "linux-aarch64",
 | 
				
			||||||
          - { image: "manylinux2014-aarch64", arch: "arm64" }
 | 
					            }
 | 
				
			||||||
        # web-wasm images
 | 
					          - {
 | 
				
			||||||
          - { image: "web-wasm", arch: "JS" }
 | 
					              image: "linux-arm64-full",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv8",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-aarch64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux armv5 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv5",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv5-musl",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux armv6 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv6",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv6-lts",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv6-musl",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux armv7 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv7",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv7",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv7a",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv7-neon",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-armv7l-musl",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv7",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-armv4",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux x86 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-x86",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-32-sse41-popcnt",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux x86_64 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-x64",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86_64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-x64-tinycc",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic64 no-asm no-threads no-engine no-hw no-weak-ssl-ciphers no-dtls no-shared no-dso",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-x64-clang",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern COMP=clang",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86_64-clang",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-x86_64-full",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86_64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux riscv images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-riscv32",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic32",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-riscv64",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux s390x images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-s390x",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux64-s390x",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux mips images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-mips",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic32",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux ppc64le images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-ppc64le",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=ppc-64",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-ppc64le",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux m68k images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-m68k-uclibc",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic32 no-asm no-threads no-engine no-hw no-weak-ssl-ciphers no-dtls no-shared no-dso",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Linux xtensa images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "linux-xtensa-uclibc",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic64 no-asm no-threads no-engine no-hw no-weak-ssl-ciphers no-dtls no-shared no-dso",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Windows x86_x64 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-static-x64",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw64 no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-static-x64-posix",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern COMP=mingw",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw64 no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-shared-x64",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw64 no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-shared-x64-posix",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw64 no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Windows x86 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-static-x86",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-32-sse41-popcnt COMP=mingw",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-shared-x86",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # Windows arm images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-armv7",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv7-neon COMP=clang",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "windows-arm64",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=armv8 COMP=clang",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "mingw64 no-asm",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # manylinux2014 images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "manylinux2014-x86",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-32-sse41-popcnt",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "manylinux2014-x64",
 | 
				
			||||||
 | 
					              stockfish: "yes",
 | 
				
			||||||
 | 
					              stockfish_arg: "ARCH=x86-64-modern",
 | 
				
			||||||
 | 
					              ninja: "yes",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-x86_64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "manylinux2014-aarch64",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "yes",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-aarch64",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          # web-wasm images
 | 
				
			||||||
 | 
					          - {
 | 
				
			||||||
 | 
					              image: "web-wasm",
 | 
				
			||||||
 | 
					              stockfish: "no",
 | 
				
			||||||
 | 
					              stockfish_arg: "",
 | 
				
			||||||
 | 
					              ninja: "no",
 | 
				
			||||||
 | 
					              ninja_arg: "",
 | 
				
			||||||
 | 
					              openssl: "no",
 | 
				
			||||||
 | 
					              openssl_arg: "linux-generic64 no-asm no-threads no-engine no-hw no-weak-ssl-ciphers no-dtls no-shared no-dso",
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					      - uses: actions/checkout@v2
 | 
				
			||||||
      - uses: actions/download-artifact@v2
 | 
					      - uses: actions/download-artifact@v2
 | 
				
			||||||
@@ -117,8 +428,32 @@ jobs:
 | 
				
			|||||||
        run: make ${{ matrix.arch_name.image }}
 | 
					        run: make ${{ matrix.arch_name.image }}
 | 
				
			||||||
      - name: basic test
 | 
					      - name: basic test
 | 
				
			||||||
        run: make ${{ matrix.arch_name.image }}.test
 | 
					        run: make ${{ matrix.arch_name.image }}.test
 | 
				
			||||||
 | 
					      - name: stockfish build test
 | 
				
			||||||
 | 
					        if: ${{ matrix.arch_name.stockfish == 'yes' }}
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          git clone --depth 1 --branch sf_14 https://github.com/official-stockfish/Stockfish.git
 | 
				
			||||||
 | 
					          cd Stockfish/src
 | 
				
			||||||
 | 
					          ./../../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 }} -j2
 | 
				
			||||||
 | 
					          cd ../..
 | 
				
			||||||
 | 
					          rm -rf Stockfish
 | 
				
			||||||
 | 
					      - name: ninja build test
 | 
				
			||||||
 | 
					        if: ${{ matrix.arch_name.ninja == 'yes' }}
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          git clone --depth 1 --branch v1.10.2 https://github.com/ninja-build/ninja.git
 | 
				
			||||||
 | 
					          cd ninja
 | 
				
			||||||
 | 
					          ./../tools/dockcross-cmake-builder.sh ${{ matrix.arch_name.image }} ${{ matrix.arch_name.ninja_arg }}
 | 
				
			||||||
 | 
					      - name: openssl build test
 | 
				
			||||||
 | 
					        if: ${{ matrix.arch_name.openssl == 'yes' }}
 | 
				
			||||||
 | 
					        run: |
 | 
				
			||||||
 | 
					          git clone --depth 1 --branch OpenSSL_1_1_1k https://github.com/openssl/openssl.git
 | 
				
			||||||
 | 
					          cd openssl
 | 
				
			||||||
 | 
					          ./../tools/dockcross-command.sh ${{ matrix.arch_name.image }} ./Configure ${{ matrix.arch_name.openssl_arg }}
 | 
				
			||||||
 | 
					          ./../tools/dockcross-make-builder.sh ${{ matrix.arch_name.image }} -j2
 | 
				
			||||||
 | 
					          cd ..
 | 
				
			||||||
 | 
					          rm -rf openssl
 | 
				
			||||||
      - 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 login -u ${{ secrets.DOCKER_USER }} -p ${{ secrets.DOCKER_PASS }}
 | 
				
			||||||
            docker image push dockcross/${{ matrix.arch_name.image }} --all-tags
 | 
					          docker image push dockcross/${{ matrix.arch_name.image }} --all-tags
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,7 +5,7 @@ if (( $# >= 1 )); then
 | 
				
			|||||||
    build_file=build-${image%:*}
 | 
					    build_file=build-${image%:*}
 | 
				
			||||||
    shift 1
 | 
					    shift 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    cmake_arg=$*
 | 
					    cmake_arg=$@
 | 
				
			||||||
    echo "cmake arg: $cmake_arg"
 | 
					    echo "cmake arg: $cmake_arg"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    #echo "Pulling dockcross/$image"
 | 
					    #echo "Pulling dockcross/$image"
 | 
				
			||||||
@@ -16,7 +16,7 @@ if (( $# >= 1 )); then
 | 
				
			|||||||
    chmod +x ./dockcross-"$image"
 | 
					    chmod +x ./dockcross-"$image"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    echo "Build $build_file"
 | 
					    echo "Build $build_file"
 | 
				
			||||||
    ./dockcross-"$image" cmake -B "$build_file" -S . -G Ninja "$cmake_arg"
 | 
					    ./dockcross-"$image" cmake -B "$build_file" -S . -G Ninja $cmake_arg
 | 
				
			||||||
    ./dockcross-"$image" ninja -C "$build_file"
 | 
					    ./dockcross-"$image" ninja -C "$build_file"
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
    echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <cmake arg.>"
 | 
					    echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <cmake arg.>"
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										22
									
								
								tools/dockcross-command.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										22
									
								
								tools/dockcross-command.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if (( $# >= 2 )); then
 | 
				
			||||||
 | 
					    image=$1
 | 
				
			||||||
 | 
					    shift 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    command=$@
 | 
				
			||||||
 | 
					    echo "command: $command"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    #echo "Pulling dockcross/$image"
 | 
				
			||||||
 | 
					    #docker pull dockcross/"$image"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    echo "Make script dockcross-$image"
 | 
				
			||||||
 | 
					    docker run --rm dockcross/"$image" > ./dockcross-"$image"
 | 
				
			||||||
 | 
					    chmod +x ./dockcross-"$image"
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    echo "Run command in dockcross-$image"
 | 
				
			||||||
 | 
					    ./dockcross-"$image" $command
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					    echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <command>"
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
@@ -5,7 +5,7 @@ if (( $# >= 1 )); then
 | 
				
			|||||||
    build_file=build-${image%:*}
 | 
					    build_file=build-${image%:*}
 | 
				
			||||||
    shift 1
 | 
					    shift 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    make_arg=$*
 | 
					    make_arg=$@
 | 
				
			||||||
    echo "make arg: $make_arg"
 | 
					    echo "make arg: $make_arg"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    #echo "Pulling dockcross/$image"
 | 
					    #echo "Pulling dockcross/$image"
 | 
				
			||||||
@@ -16,7 +16,7 @@ if (( $# >= 1 )); then
 | 
				
			|||||||
    chmod +x ./dockcross-"$image"
 | 
					    chmod +x ./dockcross-"$image"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    echo "Build $build_file"
 | 
					    echo "Build $build_file"
 | 
				
			||||||
    ./dockcross-"$image" bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC} '"$make_arg"
 | 
					    ./dockcross-"$image" bash -c 'make CXX=${CXX} CC=${CC} AR=${AR} AS=${AS} LD=${LD} CPP=${CPP} FC=${FC}' $make_arg
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
    echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <make arg.>"
 | 
					    echo "Usage: ${0##*/} <docker imag (ex: linux-x64/linux-x64-clang/linux-arm64/windows-shared-x64/windows-static-x64...)> <make arg.>"
 | 
				
			||||||
    exit 1
 | 
					    exit 1
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user