41 lines
875 B
Makefile
41 lines
875 B
Makefile
RUSTC := rustc
|
|
BUILDDIR := build
|
|
RUSTFLAGS := -O -g --cfg ndebug
|
|
INSTALL_DIR := %PREFIX%
|
|
|
|
OPENSSL_LIB := lib.rs
|
|
OPENSSL := $(foreach file,$(shell $(RUSTC) --crate-file-name $(OPENSSL_LIB)),$(BUILDDIR)/$(file))
|
|
OPENSSL_TEST := $(BUILDDIR)/$(shell $(RUSTC) --test --crate-file-name $(OPENSSL_LIB))
|
|
|
|
all: $(OPENSSL)
|
|
|
|
-include $(BUILDDIR)/openssl.d
|
|
-include $(BUILDDIR)/openssl_test.d
|
|
|
|
$(BUILDDIR):
|
|
mkdir -p $@
|
|
|
|
$(OPENSSL): $(OPENSSL_LIB) | $(BUILDDIR)
|
|
$(RUSTC) $(RUSTFLAGS) --dep-info $(@D)/openssl.d --out-dir $(@D) $<
|
|
|
|
check: $(OPENSSL_TEST)
|
|
$<
|
|
|
|
$(OPENSSL_TEST): $(OPENSSL_LIB) | $(BUILDDIR)
|
|
$(RUSTC) $(RUSTFLAGS) --test --dep-info $(@D)/openssl_test.d \
|
|
--out-dir $(@D) $<
|
|
|
|
clean:
|
|
rm -rf $(BUILDDIR)
|
|
|
|
doc: $(OPENSSL)
|
|
rustdoc $(OPENSSL_LIB)
|
|
|
|
install: $(OPENSSL)
|
|
install $(OPENSSL) $(INSTALL_DIR)
|
|
|
|
print-target:
|
|
@echo $(OPENSSL)
|
|
|
|
.PHONY: all check clean print-target
|