forked from a20r/evolve
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.mk
executable file
·45 lines (38 loc) · 1.2 KB
/
config.mk
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
44
45
# DIRS
OBJ_DIR = $(PWD)/obj
BIN_DIR = $(PWD)/bin
LIB_DIR = $(PWD)/lib
# INCLUDE AND LIBRARY PATHS
INCLUDES = -I/usr/include -I/usr/local/include -I$(PWD)/include
# LIBS = -L/usr/lib -L/usr/local/lib -L$(LIB_DIR) -lm -levolve -lpthread -lrt -lOpenCL
LIBS = -L/usr/lib -L/usr/local/lib -L$(LIB_DIR) -levolve -lm -lpthread -lrt
# C COMPILER
CC = gcc
STANDARD = -std=gnu99
DEBUG_FLAGS = -g
WARN_FLAGS = -Wall
# WARN_FLAGS = -Weverything \
# -Wno-padded \
# -Wno-gnu-zero-variadic-macro-arguments \
# -Wno-empty-translation-unit
# MISC_FLAGS = -DOPENCL
# CFLAGS = $(INCLUDES) $(STANDARD) $(DEBUG_FLAGS) $(WARN_FLAGS) $(MISC_FLAGS)
CFLAGS = $(INCLUDES) $(STANDARD) $(DEBUG_FLAGS) $(WARN_FLAGS)
# ARCHIVER
AR = ar
ARFLAGS = rvs
# COMMANDS
MAKE_OBJ = \
echo "CC [$<]"; \
$(CC) $(CFLAGS) -c $< -o $(addprefix $(OBJ_DIR)/, $@);
MAKE_TEST = \
echo "CC [[email protected]]"; \
$(CC) -c [email protected] -o $(OBJ_DIR)/[email protected] $(CFLAGS); \
$(CC) $(OBJ_DIR)/[email protected] $(OBJ_DIR)/test_common.o -o $(BIN_DIR)/$@ $(LIBS);
MAKE_EXE = \
echo "CC [[email protected]]"; \
$(CC) -c [email protected] -o $(OBJ_DIR)/[email protected] $(CFLAGS); \
$(CC) $(OBJ_DIR)/[email protected] -o $(BIN_DIR)/$@ $(LIBS);
MAKE_STATIC_LIB = \
echo "AR [$@]"; \
$(AR) $(ARFLAGS) $(LIB_DIR)/[email protected] $(wildcard $(OBJ_DIR)/*.o);