12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- NAME=good-mitm
- BINDIR=bin
- VERSION=$(shell git describe --tags || echo "unknown version")
- UPX=upx --best
- STRIP=llvm-strip -s
- CROSS_BUILD=cross build --release --target
- all: fmt clippy build
- build:
- cargo build
- clean:
- cargo clean
- deps:
- cargo install cargo-strip xargo cross
- a: fmt clippy
- fmt:
- cargo fmt --all
- fix:
- cargo fix
- check:
- cargo check
- clippy:
- cargo clippy
- prepare: fmt check clippy fix
- CROSS_TARGET_LIST = \
- x86_64-unknown-linux-musl \
- i686-unknown-linux-musl \
- aarch64-unknown-linux-musl \
- armv7-unknown-linux-musleabihf \
- x86_64-apple-darwin \
- aarch64-apple-darwin \
- $(CROSS_TARGET_LIST):
- $(CROSS_BUILD) $@
- cp "target/$@/release/$(NAME)" "$(BINDIR)/$(NAME)-$@"
- $(STRIP) "$(BINDIR)/$(NAME)-$@"
- $(UPX) "$(BINDIR)/$(NAME)-$@"
- windows:
- cargo build --target x86_64-pc-windows-gnu --release
- cp "target/x86_64-pc-windows-gnu/release/$(NAME).exe" "$(BINDIR)/$(NAME)-x86_64-pc-windows-gnu-$(VERSION).exe"
- $(STRIP) "$(BINDIR)/$(NAME)-x86_64-pc-windows-gnu-$(VERSION).exe"
- zip -q -m $(BINDIR)/$(NAME)-x86_64-pc-windows-gnu-$(VERSION).zip "$(BINDIR)/$(NAME)-x86_64-pc-windows-gnu-$(VERSION).exe"
- bindir:
- rm -rf $(BINDIR)
- mkdir $(BINDIR)
- bin_gz=$(addsuffix .gz, $(CROSS_TARGET_LIST))
- $(bin_gz): %.gz : %
- chmod +x $(BINDIR)/$(NAME)-$(basename $@)
- gzip -f -S -$(VERSION).gz $(BINDIR)/$(NAME)-$(basename $@)
- gz_release: $(bin_gz)
- release: bindir gz_release windows
|