2018-08-03 00:04:24 +02:00
|
|
|
.PHONY: help build deploy test dropbox-deploy
|
|
|
|
|
|
2018-08-21 22:45:36 +02:00
|
|
|
GITCOMMIT := $(shell git rev-parse --short HEAD)
|
2018-09-17 20:50:27 +02:00
|
|
|
KLAYOUT_VERSION := $(shell source version.sh && echo $$KLAYOUT_VERSION)
|
2018-10-03 23:35:35 +02:00
|
|
|
ifndef PYTHON_VERSION
|
|
|
|
|
PYTHON_VERSION := B37
|
|
|
|
|
endif
|
|
|
|
|
ifndef MACOS_VERSION
|
|
|
|
|
MACOS_VERSION := HighSierra
|
|
|
|
|
endif
|
2018-08-21 22:45:36 +02:00
|
|
|
|
2018-08-13 20:05:49 +02:00
|
|
|
.ONESHELL:
|
|
|
|
|
|
2018-08-03 00:04:24 +02:00
|
|
|
default: help
|
|
|
|
|
|
|
|
|
|
help:
|
|
|
|
|
@echo "For Mac OS only"
|
|
|
|
|
@echo "make build PYTHON_VERSION=B37"
|
|
|
|
|
@echo "make deploy PYTHON_VERSION=B37"
|
|
|
|
|
@echo "make test MACOS_VERSION=HighSierra"
|
|
|
|
|
@echo "Valid Mac OS Versions: [Yosemite, ElCapitan, Sierra, HighSierra]"
|
|
|
|
|
@echo "Valid Python Version: [nil, Sys, B37]"
|
|
|
|
|
|
2018-08-21 22:45:36 +02:00
|
|
|
build:
|
|
|
|
|
@echo "Building for Mac $(GITCOMMIT)"
|
2018-08-13 20:05:49 +02:00
|
|
|
./build4mac.py -p $(PYTHON_VERSION) -q Qt5Brew -c; \
|
2018-08-13 21:26:05 +02:00
|
|
|
./build4mac.py -p $(PYTHON_VERSION) -q Qt5Brew
|
2018-08-03 00:04:24 +02:00
|
|
|
|
2018-09-18 18:15:09 +02:00
|
|
|
deploy:
|
2018-08-21 22:45:36 +02:00
|
|
|
@echo "Deploying 4 Mac $(GITCOMMIT)"
|
2018-08-03 00:04:24 +02:00
|
|
|
./build4mac.py -p $(PYTHON_VERSION) -q Qt5Brew -y
|
|
|
|
|
|
2018-09-18 18:15:09 +02:00
|
|
|
test:
|
2018-08-21 22:45:36 +02:00
|
|
|
@echo "Testing 4 Mac $(GITCOMMIT)"
|
2018-09-19 01:49:11 +02:00
|
|
|
qt5.pkg.macos-$(MACOS_VERSION)-release/klayout.app/Contents/MacOS/klayout -b -r test-pylib-script.py; \
|
|
|
|
|
cd qt5.build.macos-$(MACOS_VERSION)-release; \
|
|
|
|
|
ln -s klayout.app/Contents/MacOS/klayout klayout; \
|
|
|
|
|
export TESTTMP=testtmp; \
|
|
|
|
|
export TESTSRC=..; \
|
2018-10-05 16:23:24 +02:00
|
|
|
export DYLD_LIBRARY_PATH=.:db_plugins/:lay_plugins/; \
|
2018-09-19 01:49:11 +02:00
|
|
|
./ut_runner -h || true; \
|
2018-09-18 22:27:51 +02:00
|
|
|
cd ..
|
2018-08-03 00:04:24 +02:00
|
|
|
|
2018-09-18 03:38:34 +02:00
|
|
|
dropbox-deploy:
|
2018-08-21 22:45:36 +02:00
|
|
|
@echo "Preparing for dropbox deployment $(MACOS_VERSION) $(GITCOMMIT)"
|
2018-09-22 21:42:55 +02:00
|
|
|
mkdir -p deploy/$(MACOS_VERSION)/$(PYTHON_VERSION)/$(KLAYOUT_VERSION); \
|
2018-09-19 01:49:11 +02:00
|
|
|
pwd; \
|
|
|
|
|
ls -lah; \
|
|
|
|
|
touch build.txt; \
|
2018-09-22 21:42:55 +02:00
|
|
|
cp build.txt deploy/$(MACOS_VERSION)/$(PYTHON_VERSION)/$(KLAYOUT_VERSION)/qt5.pkg.macos-$(MACOS_VERSION)-$(PYTHON_VERSION)-release-$(KLAYOUT_VERSION)-$(GITCOMMIT).log.txt; \
|
2018-09-19 01:49:11 +02:00
|
|
|
hdiutil convert macbuild/Resources/klayoutDMGTemplate.dmg -format UDRW -o work-KLayout.dmg; \
|
|
|
|
|
hdiutil resize -size 500m work-KLayout.dmg; \
|
|
|
|
|
hdiutil attach work-KLayout.dmg -readwrite -noverify -quiet -mountpoint tempKLayout -noautoopen; \
|
|
|
|
|
cp -a qt5.pkg.macos-$(MACOS_VERSION)-release/ tempKLayout/; \
|
|
|
|
|
hdiutil detach tempKLayout; \
|
2018-09-22 21:42:55 +02:00
|
|
|
hdiutil convert work-KLayout.dmg -format UDZO -imagekey zlib-level=9 -o deploy/$(MACOS_VERSION)/$(PYTHON_VERSION)/$(KLAYOUT_VERSION)/qt5.pkg.macos-$(MACOS_VERSION)-$(PYTHON_VERSION)-release-$(KLAYOUT_VERSION)-$(GITCOMMIT).dmg; \
|
|
|
|
|
md5 -q deploy/$(MACOS_VERSION)/$(PYTHON_VERSION)/$(KLAYOUT_VERSION)/qt5.pkg.macos-$(MACOS_VERSION)-$(PYTHON_VERSION)-release-$(KLAYOUT_VERSION)-$(GITCOMMIT).dmg > deploy/$(MACOS_VERSION)/$(PYTHON_VERSION)/$(KLAYOUT_VERSION)/qt5.pkg.macos-$(MACOS_VERSION)-$(PYTHON_VERSION)-release-$(KLAYOUT_VERSION)-$(GITCOMMIT).dmg.md5; \
|
2018-09-18 22:27:51 +02:00
|
|
|
rm work-KLayout.dmg
|