include /usr/share/dpkg/pkg-info.mk SRCPACKAGE=rust-pathpatterns PACKAGE=lib$(SRCPACKAGE)-dev ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) DEB=$(PACKAGE)_$(DEB_VERSION)_$(ARCH).deb DSC=$(SRCPACKAGE)_$(DEB_VERSION)_$(ARCH).deb .PHONY: all all: check .PHONY: check check: cargo test .PHONY: dinstall dinstall: deb sudo -k dpkg -i build/librust-*.deb build: rm -rf build rm debian/control mkdir build debcargo package \ --config "$(PWD)/debian/debcargo.toml" \ --changelog-ready \ --no-overlay-write-back \ --directory "$(PWD)/build/pathpatterns" \ "pathpatterns" \ "$$(dpkg-parsechangelog -l "debian/changelog" -SVersion | sed -e 's/-.*//')" echo system >build/rust-toolchain rm -f build/pathpatterns/Cargo.lock find build/pathpatterns/debian -name '*.hint' -delete cp build/pathpatterns/debian/control debian/control .PHONY: deb deb: rm -rf build $(MAKE) build/$(DEB) build/$(DEB): build (cd build/pathpatterns && CARGO=/usr/bin/cargo RUSTC=/usr/bin/rustc dpkg-buildpackage -b -uc -us) lintian build/*.deb .PHONY: dsc dsc: rm -rf build $(MAKE) build/$(DSC) build/$(DSC): build (cd build/pathpatterns && CARGO=/usr/bin/cargo RUSTC=/usr/bin/rustc dpkg-buildpackage -S -uc -us) lintian build/*.dsc .PHONY: clean clean: rm -rf build *.deb *.dsc *.buildinfo *.changes *.orig.tar.gz cargo clean .PHONY: upload upload: UPLOAD_DIST ?= $(DEB_DISTRIBUTION) upload: build/$(DEB) # check if working directory is clean git diff --exit-code --stat && git diff --exit-code --stat --staged tar -C build -cf - $(DEB) | ssh -X repoman@repo.proxmox.com upload --product devel --dist $(DEB_DISTRIBUTION)