about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorbptato <nincsnevem662@gmail.com>2023-01-01 03:15:57 +0100
committerbptato <nincsnevem662@gmail.com>2023-01-01 03:15:57 +0100
commit24e6e40f24558d8fb97fd518d70a572a87146307 (patch)
treec1735880cda72fc44addd68fa86954f893f282a5
parent294415354f025af2c88e9fb375cf3470796d5392 (diff)
downloadchawan-24e6e40f24558d8fb97fd518d70a572a87146307.tar.gz
makefile: separate objdir for targets, uninstall
-rw-r--r--makefile17
1 files changed, 11 insertions, 6 deletions
diff --git a/makefile b/makefile
index 9b77f581..d9c34432 100644
--- a/makefile
+++ b/makefile
@@ -1,23 +1,25 @@
 NIMC = nim c
 OBJDIR = .obj
-FLAGS = --nimcache:$(OBJDIR) -o:cha
+FLAGS = -o:cha
 FILES = src/main.nim
 prefix = /usr/local
 
 $(OBJDIR):
-	mkdir -p $(OBJDIR)
+	mkdir -p $(OBJDIR)/debug
+	mkdir -p $(OBJDIR)/release
+	mkdir -p $(OBJDIR)/profile
 
 debug: $(OBJDIR)
-	$(NIMC) $(FLAGS) -d:debug $(FILES)
+	$(NIMC) $(FLAGS) --nimcache:$(OBJDIR)/debug -d:debug $(FILES)
 
 release: $(OBJDIR)
-	$(NIMC) $(FLAGS) -d:release -d:strip -d:lto $(FILES)
+	$(NIMC) $(FLAGS) --nimcache:$(OBJDIR)/release -d:release -d:strip -d:lto $(FILES)
 
 release0: $(OBJDIR)
-	$(NIMC) $(FLAGS) -d:release $(FILES)
+	$(NIMC) $(FLAGS) --nimcache:$(OBJDIR)/release -d:release $(FILES)
 
 profile: $(OBJDIR)
-	$(NIMC) $(FLAGS) --profiler:on --stacktrace:on -d:profile $(FILES)
+	$(NIMC) $(FLAGS) --nimcache:$(OBJDIR)/profile --profiler:on --stacktrace:on -d:profile $(FILES)
 
 clean:
 	rm -f cha
@@ -26,3 +28,6 @@ clean:
 install:
 	mkdir -p "$(DESTDIR)$(prefix)/bin"
 	install -m755 cha "$(DESTDIR)$(prefix)/bin"
+
+uninstall:
+	rm -f "$(DESTDIR)$(prefix)/bin/cha"