Makefile 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #TOOLCHAIN="+nightly-2023-08-15-x86_64-unknown-linux-gnu"
  2. RUSTFLAGS+=""
  3. ifdef DADK_CURRENT_BUILD_DIR
  4. # 如果是在dadk中编译,那么安装到dadk的安装目录中
  5. INSTALL_DIR = $(DADK_CURRENT_BUILD_DIR)
  6. else
  7. # 如果是在本地编译,那么安装到当前目录下的install目录中
  8. INSTALL_DIR = ./install
  9. endif
  10. ifeq ($(ARCH), x86_64)
  11. export RUST_TARGET=x86_64-unknown-linux-musl
  12. else ifeq ($(ARCH), riscv64)
  13. export RUST_TARGET=riscv64gc-unknown-linux-gnu
  14. else
  15. # 默认为x86_86,用于本地编译
  16. export RUST_TARGET=x86_64-unknown-linux-musl
  17. endif
  18. FEATURES=--no-default-features --features with_idna --features with_tls --features with_https --features with_rustls
  19. run:
  20. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) run $(FEATURES) --target $(RUST_TARGET)
  21. build:
  22. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) build $(FEATURES) --target $(RUST_TARGET)
  23. clean:
  24. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) clean --target $(RUST_TARGET)
  25. test:
  26. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) test $(FEATURES) --target $(RUST_TARGET)
  27. doc:
  28. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) doc $(FEATURES) --target $(RUST_TARGET)
  29. fmt:
  30. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) fmt $(FEATURES)
  31. fmt-check:
  32. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) fmt --check $(FEATURES)
  33. run-release:
  34. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) run --target $(RUST_TARGET) $(FEATURES) --release
  35. build-release:
  36. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) build --target $(RUST_TARGET) $(FEATURES) --release
  37. clean-release:
  38. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) clean --target $(RUST_TARGET) $(FEATURES) --release
  39. test-release:
  40. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) test --target $(RUST_TARGET) $(FEATURES) --release
  41. .PHONY: install
  42. install:
  43. RUSTFLAGS=$(RUSTFLAGS) cargo $(TOOLCHAIN) install --target $(RUST_TARGET) $(FEATURES) --path . --no-track --root $(INSTALL_DIR) --force