1 EXTRA_DIST = src derive \
15 NIGHTLY_ARGS = -Z build-std
19 RUST_FEATURES += lua $(LUA_INT8)
23 RUST_FEATURES += debug
27 RUST_FEATURES += debug-validate
31 RUST_TARGET = --target $(host_triplet)
37 CARGO_HOME="$(CARGO_HOME)" \
38 CARGO_TARGET_DIR="$(e_rustdir)/target" \
39 $(CARGO) build $(RELEASE) \
40 --features "$(RUST_FEATURES)" $(RUST_TARGET)
43 CARGO_HOME="$(CARGO_HOME)" \
44 CARGO_TARGET_DIR="$(abs_top_builddir)/rust/target" \
45 $(CARGO) build $(RELEASE) $(NIGHTLY_ARGS) \
46 --features "$(RUST_FEATURES)" $(RUST_TARGET)
48 if test -e $(RUST_SURICATA_LIBDIR)/suricata_rust.lib; then \
49 cp $(RUST_SURICATA_LIBDIR)/suricata_rust.lib \
50 $(RUST_SURICATA_LIBDIR)/${RUST_SURICATA_LIBNAME}; \
52 $(MAKE) gen/rust-bindings.h
55 $(MKDIR_P) "$(DESTDIR)$(libdir)"
56 $(INSTALL_DATA) $(RUST_SURICATA_LIB) "$(DESTDIR)$(libdir)"
59 rm -f "$(DESTDIR)$(libdir)/$(RUST_SURICATA_LIBNAME)"
70 maintainerclean-local:
74 CARGO_HOME="$(CARGO_HOME)" @rustup_home@ \
75 CARGO_TARGET_DIR="$(abs_top_builddir)/rust/target" \
76 $(CARGO) test --all $(RELEASE) --features "$(RUST_FEATURES)"
80 CARGO_HOME="$(CARGO_HOME)" @rustup_home@ $(CARGO) vendor > /dev/null
86 gen/rust-bindings.h: $(RUST_SURICATA_LIB)
87 rm -f gen/rust-bindings.h
88 cbindgen --config $(abs_top_srcdir)/rust/cbindgen.toml \
89 --quiet --output $(abs_top_builddir)/rust/gen/rust-bindings.h
95 CARGO_HOME=$(CARGO_HOME) $(CARGO) doc --all-features --no-deps
99 cbindgen --config $(abs_top_srcdir)/rust/cbindgen.toml \
100 --quiet --output $(abs_top_builddir)/rust/dist/rust-bindings.h
102 dist/rust-bindings.h: