53 lines
1.6 KiB
Makefile
53 lines
1.6 KiB
Makefile
OBJ_DEBUG_MAIN = build/debug/objs/Main.o
|
|
OBJ_DEBUG_COMM = build/debug/objs/Commands.o
|
|
OBJ_DEBUG_KBFF = build/debug/objs/Keybuffer.o
|
|
|
|
OBJ_RELEASE_MAIN = build/release/objs/Main.o
|
|
OBJ_RELEASE_COMM = build/release/objs/Commands.o
|
|
OBJ_RELEASE_KBFF = build/release/objs/Keybuffer.o
|
|
|
|
OBJS_DEBUG = $(OBJ_DEBUG_MAIN) $(OBJ_DEBUG_COMM) $(OBJ_DEBUG_KBFF)
|
|
OBJS_RELEASE = $(OBJ_RELEASE_MAIN) $(OBJ_RELEASE_COMM) $(OBJ_RELEASE_KBFF)
|
|
|
|
CC = gcc
|
|
|
|
FLAGS_BASE = -Wall
|
|
FLAGS_DEBUG = -Og
|
|
FLAGS_RELEASE = -O3
|
|
|
|
OBJ_OUTPUT_DEBUG = w3panik-debug
|
|
OBJ_OUTPUT_RELEASE = w3panik-release
|
|
|
|
debug : $(OBJS_DEBUG)
|
|
$(CC) $(FLAGS_DEBUG) -o $(OBJ_OUTPUT_DEBUG) $(OBJS_DEBUG)
|
|
|
|
release : $(OBJS_RELEASE)
|
|
$(CC) $(FLAGS_RELEASE) -o $(OBJ_OUTPUT_RELEASE) $(OBJS_RELEASE)
|
|
|
|
build/debug/objs/Main.o: src/Main.c
|
|
$(CC) $(FLAGS_DEBUG) -o $(OBJ_DEBUG_MAIN) -c src/Main.c
|
|
|
|
build/debug/objs/Commands.o: src/Commands.c src/Commands.h
|
|
$(CC) $(FLAGS_DEBUG) -o $(OBJ_DEBUG_COMM) -c src/Commands.c
|
|
|
|
build/debug/objs/Keybuffer.o: src/Keybuffer.c src/Keybuffer.h
|
|
$(CC) $(FLAGS_DEBUG) -o $(OBJ_DEBUG_KBFF) -c src/Keybuffer.c
|
|
|
|
build/release/objs/Main.o: src/Main.c
|
|
$(CC) $(FLAGS_RELEASE) -o $(OBJ_RELEASE_MAIN) -c src/Main.c
|
|
|
|
build/release/objs/Commands.o: src/Commands.c src/Commands.h
|
|
$(CC) $(FLAGS_RELEASE) -o $(OBJ_RELEASE_COMM) -c src/Commands.c
|
|
|
|
build/release/objs/Keybuffer.o: src/Keybuffer.c src/Keybuffer.h
|
|
$(CC) $(FLAGS_RELEASE) -o $(OBJ_RELEASE_KBFF) -c src/Keybuffer.c
|
|
|
|
clean-all:
|
|
rm $(OBJS_DEBUG) $(OBJS_RELEASE) $(OBJ_OUTPUT_DEBUG) $(OBJ_OUTPUT_RELEASE)
|
|
|
|
clean-release:
|
|
rm $(OBJS_RELEASE) $(OBJ_OUTPUT_RELEASE)
|
|
|
|
clean-debug:
|
|
rm $(OBJS_DEBUG) $(OBJ_OUTPUT_DEBUG)
|