aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Petrashin <kirill8201@yandex.ru>2026-07-13 20:58:51 +0300
committerKirill Petrashin <kirill8201@yandex.ru>2026-07-13 20:58:51 +0300
commit691f719a395f8916c06953e870034b36100ca51e (patch)
tree27748f4bc77d66b530076f1eb15010a3ce23674d
parent526dc7c4a3e0e391ef449ceb91cccef5fa8428ea (diff)
downloadastar-master.tar.xz
Compile .c files into .o filesHEADmaster
-rw-r--r--.gitignore5
-rw-r--r--Makefile14
2 files changed, 15 insertions, 4 deletions
diff --git a/.gitignore b/.gitignore
index 933cdbd..821ebfd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,9 @@
# The executable
astar
+# Object files
+*.o
+
# ctags tag file
tags
@@ -11,4 +14,4 @@ tags
*.bmp
# For Bear
-compile_commands.json
+compile_commands.json
diff --git a/Makefile b/Makefile
index 8dee31f..0a6b464 100644
--- a/Makefile
+++ b/Makefile
@@ -1,12 +1,20 @@
+# TODO: separate build dir to avoid the *.o clutter?
+
CC=clang
EXECUTABLE=astar
+CFLAGS=-Wall -Wpedantic -Wextra -Werror -O3
+LIBS=-lncurses
+OBJS=priority_queue.o map.o stack.o path.o bmp.o main.o
+
+$(EXECUTABLE): $(OBJS)
+ $(CC) $(CFLAGS) $(OBJS) -o $(EXECUTABLE) $(LIBS)
-astar: *.c *.h
- $(CC) -Wall -Wpedantic -Wextra -Werror -O3 -o $(EXECUTABLE) priority_queue.c map.c stack.c path.c bmp.c main.c -lncurses
+$(OBJ): %.o: %.c
+ $(CC) $(CFLAGS) -c -o $@ $^
debug: *.c *.h
$(CC) -Wall -g -o $(EXECUTABLE) -DPID_MESSAGE priority_queue.c map.c stack.c path.c bmp.c main.c -lncurses
.PHONY: clean
clean:
- rm ./$(EXECUTABLE)
+ rm $(EXECUTABLE) $(OBJS)