From 30ee539ec0383eca2575cff86f6f7daa5908b761 Mon Sep 17 00:00:00 2001 From: Michael Gehring Date: Fri, 20 Jun 2014 14:47:39 +0200 Subject: [PATCH 1/3] move rust-crypto to deps/ --- .gitmodules | 2 +- Makefile | 19 ++++++++++++++----- {md5sum => deps}/rust-crypto | 0 3 files changed, 15 insertions(+), 6 deletions(-) rename {md5sum => deps}/rust-crypto (100%) diff --git a/.gitmodules b/.gitmodules index 5474734dc..6726de58e 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "md5sum/rust-crypto"] - path = md5sum/rust-crypto + path = deps/rust-crypto url = git://github.com/DaGenix/rust-crypto.git diff --git a/Makefile b/Makefile index 7228c97b6..8a5ead934 100644 --- a/Makefile +++ b/Makefile @@ -95,12 +95,13 @@ TESTS := \ EXES_PATHS := $(addprefix build/,$(EXES)) command = sh -c '$(1)' + # Main exe build rule define EXE_BUILD -include build/$(1).d ifeq ($(wildcard $(1)/Makefile),) build/$(1): $(1)/$(1).rs | build - $(call command,$(RUSTC) $(RUSTCFLAGS) --dep-info build/$(1).d -o build/$(1) $(1)/$(1).rs) + $(call command,$(RUSTC) $(RUSTCFLAGS) -L build/ --dep-info build/$(1).d -o build/$(1) $(1)/$(1).rs) clean_$(1): else build/$(1): $(1)/$(1).rs | build @@ -113,7 +114,7 @@ endef define CRATE_BUILD -include build/$(1).d build/$(2): $(1)/$(1).rs | build - $(call command,$(RUSTC) $(RUSTCFLAGS) --crate-type rlib --dep-info build/$(1).d $(1)/$(1).rs --out-dir build) + $(call command,$(RUSTC) $(RUSTCFLAGS) -L build/ --crate-type rlib --dep-info build/$(1).d $(1)/$(1).rs --out-dir build) endef # Test exe built rules @@ -127,9 +128,9 @@ endef # Main rules ifneq ($(MULTICALL), 1) -all: $(EXES_PATHS) +all: deps $(EXES_PATHS) else -all: build/uutils +all: deps build/uutils -include build/uutils.d @@ -137,6 +138,14 @@ build/uutils: uutils/uutils.rs $(addprefix build/, $(foreach crate,$(CRATES),$(s $(RUSTC) $(RUSTCFLAGS) -L build/ --dep-info $@.d uutils/uutils.rs -o $@ endif +# Dependencies +LIBCRYPTO := $(shell $(RUSTC) --crate-file-name --crate-type rlib deps/rust-crypto/src/rust-crypto/lib.rs) +-include build/rust-crypto.d +build/$(LIBCRYPTO): + $(RUSTC) $(RUSTCFLAGS) --crate-type rlib --dep-info build/rust-crypto.d deps/rust-crypto/src/rust-crypto/lib.rs --out-dir build/ + +deps: build build/$(LIBCRYPTO) + test: tmp $(addprefix test_,$(TESTS)) $(RM) -rf tmp @@ -200,4 +209,4 @@ busytest: build/busybox build/.config endif endif -.PHONY: all test clean busytest install uninstall +.PHONY: all deps test clean busytest install uninstall diff --git a/md5sum/rust-crypto b/deps/rust-crypto similarity index 100% rename from md5sum/rust-crypto rename to deps/rust-crypto From 62e639cfa6eb6a05bd8c77317171ae1f92fd4ec6 Mon Sep 17 00:00:00 2001 From: Michael Gehring Date: Fri, 20 Jun 2014 14:48:01 +0200 Subject: [PATCH 2/3] md5sum: remove Makefile --- md5sum/Makefile | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 md5sum/Makefile diff --git a/md5sum/Makefile b/md5sum/Makefile deleted file mode 100644 index 66f847998..000000000 --- a/md5sum/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -include ../common.mk - -all: ../build/md5sum - -CRYPTO_DIR := rust-crypto -CRYPTO_LIB := $(CRYPTO_DIR)/$(shell $(RUSTC) --crate-file-name --crate-type rlib $(CRYPTO_DIR)/src/rust-crypto/lib.rs) - -../build/md5sum: md5sum.rs $(CRYPTO_LIB) - $(RUSTC) $(RUSTFLAGS) -L $(CRYPTO_DIR) -o $@ $< - -$(CRYPTO_LIB): $(CRYPTO_DIR)/src/rust-crypto/*.rs - cd $(CRYPTO_DIR) && make - -clean: - cd $(CRYPTO_DIR) && make clean From 63825f96d52f7779bc57ff511f4901a3b56a5874 Mon Sep 17 00:00:00 2001 From: Michael Gehring Date: Fri, 20 Jun 2014 14:48:14 +0200 Subject: [PATCH 3/3] uutils: add md5sum --- Makefile | 2 +- uutils/uutils.rs | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 8a5ead934..520fb705b 100644 --- a/Makefile +++ b/Makefile @@ -70,7 +70,7 @@ EXES := \ $(sort $(filter $(BUILD),$(filter-out $(DONT_BUILD),$(PROGS)))) CRATES := \ - $(sort $(filter $(EXES), $(filter-out md5sum true false, $(EXES)))) + $(sort $(filter $(EXES), $(filter-out true false, $(EXES)))) INSTALL ?= $(EXES) diff --git a/uutils/uutils.rs b/uutils/uutils.rs index 12ef44100..a3221054b 100644 --- a/uutils/uutils.rs +++ b/uutils/uutils.rs @@ -32,6 +32,7 @@ extern crate hostname; extern crate id; extern crate kill; extern crate logname; +extern crate md5sum; extern crate mkdir; extern crate nl; extern crate paste; @@ -91,6 +92,7 @@ fn util_map() -> HashMap<&str, fn(Vec) -> int> { map.insert("id", id::uumain); map.insert("kill", kill::uumain); map.insert("logname", logname::uumain); + map.insert("md5sum", md5sum::uumain); map.insert("mkdir", mkdir::uumain); map.insert("nl", nl::uumain); map.insert("paste", paste::uumain);