diff options
| -rw-r--r-- | .gitignore | 3 | ||||
| -rw-r--r-- | Makefile | 35 |
2 files changed, 26 insertions, 12 deletions
@@ -1,4 +1,3 @@ /.rust/ /doc/ -/rust-openssl -/rust-openssl.dSYM/ +/build/ @@ -1,15 +1,30 @@ -RUSTPKG ?= rustpkg -RUSTC ?= rustc -RUST_FLAGS ?= -Z debug-info -O +RUSTC = rustc +BUILDDIR = build +RUSTFLAGS = -O -Z debug-info -all: - $(RUSTPKG) $(RUST_FLAGS) install +OPENSSL_LIB = lib.rs +OPENSSL = $(BUILDDIR)/$(shell $(RUSTC) --crate-file-name $(OPENSSL_LIB)) +OPENSSL_TEST = $(BUILDDIR)/$(shell $(RUSTC) --test --crate-file-name $(OPENSSL_LIB)) -test: - $(RUSTC) $(RUST_FLAGS) --test lib.rs - ./rust-openssl +all: $(OPENSSL) -.PHONY: test +-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 .rust rust-openssl rust-openssl.dSYM + rm -rf $(BUILDDIR) + +.PHONY: all check clean |