#!/usr/bin/make -f
# -*- makefile -*-

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

%:
	dh $@

WASM_API_DIR = wasm-mappings/source-map-mappings-wasm-api

override_dh_auto_build:
	# Setup vendored crates for offline build
	cp -r debian/cargo-vendor $(WASM_API_DIR)/vendor
	mkdir -p $(WASM_API_DIR)/.cargo
	cp debian/cargo-vendor.config.toml $(WASM_API_DIR)/.cargo/config.toml
	# Build WASM (wasm32 target cannot use Debian hardening flags)
	@echo "blhc: ignore-line-regexp: .*(Compiling|Downloading).*(source.map.mappings|vlq).*"
	cd $(WASM_API_DIR) && CARGO_NET_OFFLINE=true cargo build --verbose --release --target wasm32-unknown-unknown
	wasm-strip $(WASM_API_DIR)/target/wasm32-unknown-unknown/release/source_map_mappings_wasm_api.wasm -o lib/mappings.wasm
	wasm-opt -Os --enable-bulk-memory lib/mappings.wasm -o lib/mappings.wasm
	# Build browser bundle with embedded WASM for libjs-source-map
	node debian/generate-inline-wasm.js
	mkdir -p dist
	rollup -c debian/rollup.config.browser.js
