Update build system

This commit is contained in:
Steven Fackler 2014-01-18 13:01:04 -08:00
parent 137935fcad
commit bf2f31ef96
2 changed files with 26 additions and 12 deletions

3
.gitignore vendored
View File

@ -1,4 +1,3 @@
/.rust/ /.rust/
/doc/ /doc/
/rust-openssl /build/
/rust-openssl.dSYM/

View File

@ -1,15 +1,30 @@
RUSTPKG ?= rustpkg RUSTC = rustc
RUSTC ?= rustc BUILDDIR = build
RUST_FLAGS ?= -Z debug-info -O RUSTFLAGS = -O -Z debug-info
all: OPENSSL_LIB = lib.rs
$(RUSTPKG) $(RUST_FLAGS) install OPENSSL = $(BUILDDIR)/$(shell $(RUSTC) --crate-file-name $(OPENSSL_LIB))
OPENSSL_TEST = $(BUILDDIR)/$(shell $(RUSTC) --test --crate-file-name $(OPENSSL_LIB))
test: all: $(OPENSSL)
$(RUSTC) $(RUST_FLAGS) --test lib.rs
./rust-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: clean:
rm -rf .rust rust-openssl rust-openssl.dSYM rm -rf $(BUILDDIR)
.PHONY: all check clean