#!/usr/bin/make -f include /usr/share/rustc/architecture.mk RUSTUP_CA=Amazon_Root_CA_1.pem ifeq ($(DEB_HOST_ARCH),amd64) RUST_WIN_TARGET=x86_64-pc-windows-gnu lib_name=nvdaControllerClient64.dll endif ifeq ($(DEB_HOST_ARCH),i386) RUST_WIN_TARGET=i686-pc-windows-gnu lib_name=nvdaControllerClient32.dll endif # known to work RUST_VERSION=1.77 export CARGO_HOME=$(CURDIR)/tmp %: dh $@ override_dh_auto_clean: -rm -fr $(CARGO_HOME) src/server/target src/client/target override_dh_auto_build: @echo 'blhc: ignore-line-regexp: \ \ \ Compiling .*' ifneq (,$(lib_name)) # Don't do this at home, kids! curl --cacert /etc/ssl/certs/$(RUSTUP_CA) --proto '=https' --tlsv1.2 -f https://sh.rustup.rs > rustup.sh HOME=$(CARGO_HOME) sh rustup.sh -y --default-host $(DEB_HOST_RUST_TYPE) --profile minimal HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/rustup install --profile minimal $(RUST_VERSION) HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/rustup default $(RUST_VERSION) HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/rustup uninstall stable HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/rustup install --force-non-host --profile minimal $(RUST_VERSION)-$(RUST_WIN_TARGET) HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/rustup target add $(RUST_WIN_TARGET) cd src/client && \ HOME=$(CARGO_HOME) $(CARGO_HOME)/bin/cargo build -v --release --target $(RUST_WIN_TARGET) mv src/client/target/$(RUST_WIN_TARGET)/release/nvda2speechd.dll \ src/client/target/$(RUST_WIN_TARGET)/release/$(lib_name) chmod -x src/client/target/$(RUST_WIN_TARGET)/release/$(lib_name) endif cd src/server && \ HOME=$(CARGO_HOME) cargo build -v --release --target ${DEB_HOST_RUST_TYPE} override_dh_fixperms: dh_fixperms -X.dll