add icns and mas target to makefile

This commit is contained in:
Finn Behrens 2021-08-12 19:51:32 +02:00
parent 4aa0bbec25
commit 17ae7bf98b

View File

@ -1,5 +1,6 @@
.PHONY: all setup regenerate-i18n reskindex web desktop-common linux debian pacman local-pkgbuild local-pkgbuild-install windows windows-portable
.PHONY: web-release debian-release pacman-release windows-setup-release windows-unpacked-release windows-portable-release windows-release
.PHONY: macos-common macos macos-mas macos-release macos-mas-release icns
.PHONY: clean
CFGDIR ?= configs/sc
@ -28,16 +29,33 @@ OUT_WIN64_BETTER_NAME := $(PRODUCT_NAME)_Setup_v$(VERSION).exe
OUT_WIN64_UNPACKED_BETTER_NAME := $(PRODUCT_NAME)_win-unpacked_v$(VERSION).zip
OUT_WIN64_PORTABLE_BETTER_NAME := $(PRODUCT_NAME)_win-portable_v$(VERSION)
OUT_MACOS := $(DESKTOP_OUT)/$(PRODUCT_NAME)-$(VERSION).dmg
OUT_MACOS_MAS := $(DESKTOP_OUT)/mas-universal/$(PRODUCT_NAME).app
RELEASE_DIR := release
CURRENT_RELEASE_DIR := $(RELEASE_DIR)/$(VERSION)
# macOS Codesigning
CSC_IDENTITY_AUTO_DISCOVERY ?= false
NOTARIZE_APPLE_ID ?=
CSC_NAME ?=
-include release.mk
setup:
if [ ! -L "element-desktop/webapp" ]; then ./setup.sh; fi
element-desktop/build/SchildiChat.xcassets/SchildiChat.iconset: $(wildcard element-desktop/build/SchildiChat.xcassets/SchildiChat.iconset/*)
element-desktop/build/icon.icns: element-desktop/build/SchildiChat.xcassets/SchildiChat.iconset
iconutil -c icns -o $@ $<
element-desktop/build/SchildiChat.xcassets/SchildiChatDMG.iconset: $(wildcard element-desktop/build/SchildiChat.xcassets/SchildiChatDMG.iconset/*)
element-desktop/build/dmg.icns: element-desktop/build/SchildiChat.xcassets/SchildiChatDMG.iconset
iconutil -c icns -o $@ $<
icns: element-desktop/build/icon.icns element-desktop/build/dmg.icns
regenerate-i18n: setup
./regenerate_i18n.sh
@ -55,6 +73,10 @@ desktop-common: web
$(YARN) --cwd element-desktop run fetch --cfgdir ''
$(YARN) --cwd element-desktop run build:native
macos-common: web icns
$(YARN) --cwd element-desktop run fetch --cfgdir ''
$(YARN) --cwd element-desktop run build:native:universal
linux: desktop-common
$(YARN) --cwd element-desktop run build:64 --linux deb pacman tar.xz
@ -73,8 +95,16 @@ windows: desktop-common
windows-portable: desktop-common
$(YARN) --cwd element-desktop run build:64 --windows portable
macos: desktop-common
$(YARN) --cwd element-desktop run build --mac dmg -c.mac.identity=null
macos: macos-common
export CSC_IDENTITY_AUTO_DISCOVERY
export NOTARIZE_APPLE_ID
export CSC_NAME
$(YARN) --cwd element-desktop run build:universal --mac dmg
macos-mas: macos-common
export NOTARIZE_APPLE_ID
export CSC_NAME
$(YARN) --cwd element-desktop run build:universal --mac mas
local-pkgbuild: debian
./create_local_pkgbuild.sh $(VERSION) $(DESKTOP_APP_NAME) $(PRODUCT_NAME) $(OUT_DEB64)
@ -115,6 +145,10 @@ macos-release: macos
mkdir -p $(CURRENT_RELEASE_DIR)
cp $(OUT_MACOS) $(CURRENT_RELEASE_DIR)
macos-mas-release: macos-mas
mkdir -p $(CURRENT_RELEASE_DIR)
cp $(OUT_MACOS_MAS) $(CURRENT_RELEASE_DIR)
clean:
$(YARN) --cwd matrix-js-sdk clean
$(YARN) --cwd matrix-react-sdk clean