mirror of
				https://github.com/bensuperpc/dockcross.git
				synced 2025-11-04 01:46:24 +01:00 
			
		
		
		
	Merge pull request #538 from bensuperpc/update_makefile
Update makefile
This commit is contained in:
		
							
								
								
									
										11
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
								
							@@ -46,7 +46,16 @@ 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-lts, linux-armv6-musl, linux-armv7, linux-armv7a, linux-armv7l-musl, linux-x64-clang, linux-s390x, linux-x64, linux-x86, linux-mips, linux-ppc64le, 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:
 | 
					    steps:
 | 
				
			||||||
      - uses: actions/checkout@v2
 | 
					      - uses: actions/checkout@v2
 | 
				
			||||||
      - uses: actions/download-artifact@v2
 | 
					      - uses: actions/download-artifact@v2
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										48
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										48
									
								
								Makefile
									
									
									
									
									
								
							@@ -13,18 +13,36 @@ 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-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.
 | 
					# Generated Dockerfiles.
 | 
				
			||||||
GEN_IMAGES = linux-s390x android-arm android-arm64 linux-x86 linux-x64 linux-mips linux-x64-clang 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))
 | 
					GEN_IMAGE_DOCKERFILES = $(addsuffix /Dockerfile,$(GEN_IMAGES))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# These images are expected to have explicit rules for *both* build and testing
 | 
					# These images are expected to have explicit rules for *both* build and testing
 | 
				
			||||||
NON_STANDARD_IMAGES = web-wasm manylinux2014-x64 manylinux2014-x86 manylinux2014-aarch64
 | 
					NON_STANDARD_IMAGES = manylinux2014-x64 manylinux2014-x86 \
 | 
				
			||||||
 | 
						manylinux2014-aarch64 web-wasm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Docker composite files
 | 
					# 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_FOLDER_PATH = common/
 | 
				
			||||||
DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
 | 
					DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COMPOSITE_SOURCES))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -32,7 +50,7 @@ DOCKER_COMPOSITE_PATH = $(addprefix $(DOCKER_COMPOSITE_FOLDER_PATH),$(DOCKER_COM
 | 
				
			|||||||
IMAGES = $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)
 | 
					IMAGES = $(STANDARD_IMAGES) $(NON_STANDARD_IMAGES)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
 | 
					# Optional arguments for test runner (test/run.py) associated with "testing implicit rule"
 | 
				
			||||||
linux-ppc64le.test_ARGS = --languages C
 | 
					linux-x64-tinycc.test_ARGS = --languages C
 | 
				
			||||||
windows-static-x86.test_ARGS = --exe-suffix ".exe"
 | 
					windows-static-x86.test_ARGS = --exe-suffix ".exe"
 | 
				
			||||||
windows-static-x64.test_ARGS = --exe-suffix ".exe"
 | 
					windows-static-x64.test_ARGS = --exe-suffix ".exe"
 | 
				
			||||||
windows-static-x64-posix.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
 | 
						rm -rf $@/imagefiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
manylinux2014-aarch64.test: manylinux2014-aarch64
 | 
					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
 | 
						$(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
 | 
						rm -rf $@/imagefiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
manylinux2014-x64.test: manylinux2014-x64
 | 
					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
 | 
						$(BIN)/dockcross-manylinux2014-x64 /opt/python/cp38-cp38/bin/python test/run.py
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
@@ -155,10 +175,10 @@ manylinux2014-x86: manylinux2014-x86/Dockerfile
 | 
				
			|||||||
	rm -rf $@/imagefiles
 | 
						rm -rf $@/imagefiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
manylinux2014-x86.test: manylinux2014-x86
 | 
					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
 | 
						$(BIN)/dockcross-manylinux2014-x86 /opt/python/cp38-cp38/bin/python test/run.py
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
base: Dockerfile imagefiles/
 | 
					base: Dockerfile imagefiles/
 | 
				
			||||||
	$(DOCKER) build -t $(ORG)/base:latest \
 | 
						$(DOCKER) build -t $(ORG)/base:latest \
 | 
				
			||||||
		-t $(ORG)/base:$(TAG) \
 | 
							-t $(ORG)/base:$(TAG) \
 | 
				
			||||||
@@ -192,13 +212,14 @@ $(STANDARD_IMAGES): %: %/Dockerfile base
 | 
				
			|||||||
	rm -rf $@/imagefiles
 | 
						rm -rf $@/imagefiles
 | 
				
			||||||
 | 
					
 | 
				
			||||||
clean:
 | 
					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
 | 
						for d in $(GEN_IMAGE_DOCKERFILES) ; do rm -f $$d ; done
 | 
				
			||||||
	rm -f Dockerfile
 | 
						rm -f Dockerfile
 | 
				
			||||||
 | 
					
 | 
				
			||||||
purge: clean
 | 
					purge: clean
 | 
				
			||||||
# Remove all untagged images
 | 
					# 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/*)
 | 
					# Remove all images with organization (ex dockcross/*)
 | 
				
			||||||
	$(DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
 | 
						$(DOCKER) images --filter=reference='$(ORG)/*' --format='{{.Repository}}:{{.Tag}}' | xargs -r $(DOCKER) rmi -f
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -212,7 +233,8 @@ bash-check:
 | 
				
			|||||||
#
 | 
					#
 | 
				
			||||||
.SECONDEXPANSION:
 | 
					.SECONDEXPANSION:
 | 
				
			||||||
$(addsuffix .test,$(STANDARD_IMAGES)): $$(basename $$@)
 | 
					$(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)
 | 
						$(BIN)/dockcross-$(basename $@) python3 test/run.py $($@_ARGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
@@ -223,4 +245,4 @@ test.prerequisites:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
$(addsuffix .test,base $(IMAGES)): 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
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user