| .PHONY: symbiyosys ghdl-formal all NOCACHE clean copy | |
| 
 | |
| # Support for make environment variable NOCACHE | |
| ifeq (NOCACHE,$(lastword $(MAKECMDGOALS))) | |
|     OPTIONS := --no-cache | |
|     $(info INFO: build without cache) | |
|     $(eval $(lastword$(MAKECMDGOALS)):dummy;@:) | |
| endif | |
| 
 | |
| NOCACHE: | |
| 	@# | |
| 
 | |
| 
 | |
| ifndef TAG | |
|     TAG := latest | |
|     $(info INFO: Using predefined tag 'latest') | |
| else | |
|     $(info INFO: Using user given tag '${TAG}') | |
| endif | |
| 
 | |
| 
 | |
| all: symbiyosys ghdl-formal | |
| 
 | |
| copy: ghdl-formal_${TAG}.tar.gz | |
| 
 | |
| 
 | |
| .SECONDEXPANSION: | |
| symbiyosys ghdl-formal: $$@.Dockerfile | |
| 	docker build ${OPTIONS} -t $@:${TAG} -f $@.Dockerfile . | |
| 
 | |
| 
 | |
| ghdl-formal_${TAG}.tar.gz: | |
| 	mkdir -p artefacts | |
| 	docker run --rm -dit --name=ghdl-dummy ghdl-formal:${TAG} > /dev/null | |
| 	docker cp ghdl-dummy:/opt/. artefacts | |
| 	docker rm -f ghdl-dummy > /dev/null | |
| 	tar -C artefacts -czf $@ . | |
| 	shasum --algorithm 256 --UNIVERSAL $@ > $@.sha256 | |
| 
 | |
| 
 | |
| clean: | |
| 	rm -rf artefacts | |
| 	rm -f ghdl-formal_*.tar.*
 |