#!/usr/bin/make -f

# output every command that modifies files on the build system.
export DH_VERBOSE = 1

include /usr/share/dpkg/architecture.mk

COMPILED_BIN_DIR=debian/joplin/usr/lib/joplin/resources/app.asar.unpacked/node_modules/7zip-bin-linux
COMPILED_AWSCRT_DIR=debian/joplin-cli/usr/lib/joplin-cli/node_modules/@joplin/lib/node_modules/aws-crt/dist/bin
export HOME=$(CURDIR)/debian/fakehomenpm

# it can be x64 arm64
ifeq ($(DEB_HOST_ARCH),amd64)
	ARCH=x64
else ifeq ($(DEB_HOST_ARCH),arm64)
	ARCH=arm64
endif


%:
	dh $@

override_dh_auto_install:
	mkdir -p $(HOME)
	yarnpkg config set --home enableTelemetry 0 && \
	yarnpkg install || true

ifeq ($(DEB_HOST_ARCH),arm64)
	sed -i s/npx\ electron-builder/npx\ electron-builder\ --arm64/ $(CURDIR)/packages/app-desktop/package.json
endif
	cat $(CURDIR)/packages/app-desktop/package.json
	cd packages/app-desktop && npm run dist
	cd packages/app-cli && npm run build --global-style --production

override_dh_install:
	dh_install -Xnpmignore -Xeslintrc.json -XDS_Store -Xgitattributes -Xgitmodules
	for dir in lib renderer tools fork-htmlparser2 fork-uslug fork-sax htmlpack turndown turndown-plugin-gfm utils; do \
		rm -f $(CURDIR)/debian/joplin-cli/usr/lib/joplin-cli/node_modules/@joplin/$${dir}; \
		cp -r $(CURDIR)/packages/$${dir} $(CURDIR)/debian/joplin-cli/usr/lib/joplin-cli/node_modules/@joplin; \
	done
	# remove useless dir: dpkg-gencontrol will fail because it
	# non-directories inside this dir
	rm -rf $(CURDIR)/debian/joplin-cli/usr/lib/joplin-cli/node_modules/es5-ext/test/
	debian/install-icons.sh
	# remove directory because deb build fails with "Cannot open: Too
	# many levels of symbolic links"
	rm -rf debian/joplin-cli/usr/lib/joplin-cli/node_modules/jest-snapshot/node_modules/.bin

override_dh_strip:
ifeq ($(DEB_HOST_ARCH),amd64)
	rm -rf $(COMPILED_BIN_DIR)/arm* $(COMPILED_BIN_DIR)/ia32
	rm -rf $(COMPILED_AWSCRT_DIR)/linux-arm* $(COMPILED_AWSCRT_DIR)/win* $(COMPILED_AWSCRT_DIR)/darwin-*
else ifeq ($(DEB_HOST_ARCH),arm64)
	rm -rf $(COMPILED_BIN_DIR)/arm $(COMPILED_BIN_DIR)/ia32 $(COMPILED_BIN_DIR)/x64
	rm -rf $(COMPILED_AWSCRT_DIR)/linux-x64 $(COMPILED_AWSCRT_DIR)/win* $(COMPILED_AWSCRT_DIR)/darwin-*
endif
	dh_strip

override_dh_auto_clean:
	dh_auto_clean
	rm -rf $(CURDIR)/debian/fakehomenpm

override_dh_dwz:
