/
Makefile
32 lines (25 loc) · 1.07 KB
/
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
CC := gcc
INCLUDECFLAGS := `pkg-config --cflags sdl` `pkg-config --cflags gl` `pkg-config --cflags glew`
INCLUDELIBFLAGS := -lm `pkg-config --libs sdl` `pkg-config --libs gl` `pkg-config --libs glew`-I"."
INCLUDEFLAGS := $(INCLUDECFLAGS) $(INCLUDELIBFLAGS)
CPU_ARCHITECTURE := core2
# Flags in common by all
CFLAGS := -std=c99 -Wall -Wextra -pedantic -pedantic-errors -Wfloat-equal -Wundef -Wshadow -Winit-self
# Flags for debugging builds
CDFLAGS := $(CFLAGS) -g -O0 -fstack-protector-all -Wstack-protector -Wstrict-overflow=4
# Flags for normal builds
CNFLAGS := $(CFLAGS) -mtune=$(CPU_ARCHITECTURE) -O3 -fno-stack-protector -Wstrict-overflow -Wswitch-default \
-Wunreachable-code -Winline -Winit-self
BINNAME := test_gl
default: clean analyze
@$(CC) $(CNFLAGS) $(INCLUDEFLAGS) *.c -o $(BINNAME)
clean:
@$(RM) $(BINNAME)
@$(RM) *.plist
# Clang Compiler
CLANG := clang
CLANGFLAGS := -std=c99 -march=$(CPU_ARCHITECTURE) -O2
clang: clean analyze
@$(CLANG) $(CLANGFLAGS) $(INCLUDEFLAGS) *.c $(INTFILE) -o engine
analyze:
@$(CLANG) $(CLANGFLAGS) $(INCLUDECFLAGS) --analyze *.c $(INTFILE)