aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile33
1 files changed, 33 insertions, 0 deletions
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..58dec28
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,33 @@
+RUSTC ?= rustc
+RUSTC_FLAGS ?=
+NAME ?= irsc
+
+SRC = $(shell find src -name '*.rs')
+
+all: $(NAME)
+
+$(NAME): $(SRC)
+ mkdir -p target
+ $(RUSTC) --out-dir target $(RUSTC_FLAGS) src/$(NAME).rs
+
+opt: RUSTC_FLAGS += --opt-level=3 -Z lto
+opt: $(NAME)
+
+small: opt
+ upx -9 ./target/$(NAME)
+
+debug: RUSTC_FLAGS += -g
+debug: $(NAME)
+
+run: $(NAME)
+ ./target/$(NAME)
+
+test: $(SRC)
+ mkdir -p target
+ $(RUSTC) --test --out-dir target src/$(NAME).rs
+ ./target/$(NAME)
+
+clean:
+ @rm -rf target
+
+.PHONY: clean