-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
43 lines (34 loc) · 866 Bytes
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
CC= gcc
CPPFLAGS= -Iinclude
CFLAGS= -Wall -Wextra `pkg-config --cflags gtk+-3.0` -rdynamic
LDFLAGS= -lSDL2 -lSDL2_image -lm `pkg-config --libs gtk+-3.0` -rdynamic
SRC_DIR= src
OBJ_DIR= obj
BIN_DIR= bin
TEMP_DIR= ${BIN_DIR}/.temp/cells
SRC= $(wildcard ${SRC_DIR}/*.c)
_OBJT = ${SRC:.c=.o}
_OBJ = ${notdir ${_OBJT}}
OBJ= $(patsubst ${SRC_DIR}/%.c, ${OBJ_DIR}/%.o, ${SRC})
EXE= ${BIN_DIR}/sudoku
TEMP = ${BIN_DIR}/.temp/
.PHONY: all
all: ${EXE}
${EXE}: ${BIN_DIR} ${OBJ}
${CC} ${DEBUG} ${CPPFLAGS} ${OBJ} -o ${EXE} ${LDFLAGS}
${BIN_DIR}:
mkdir bin/.temp
${OBJ}: ${OBJ_DIR} ${BIN_DIR}
${CC} ${CFLAGS} ${CPPFLAGS} -c ${SRC}
mv ${_OBJ} ${OBJ_DIR}
${OBJ_DIR}:
mkdir -p ${OBJ_DIR}
mkdir bin/.temp/
mkdir bin/.temp/cells
clean:
rm -rf ${OBJ_DIR}
rm -rf ${EXE}
rm -rf ${TEMP}
rm ${BIN_DIR}/grid_00
rm ${BIN_DIR}/grid.result
rm ${BIN_DIR}/grid_solved.png