-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
48 lines (31 loc) · 956 Bytes
/
Makefile
File metadata and controls
48 lines (31 loc) · 956 Bytes
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
46
47
48
FILE = main.c $(normal) $(SSE2) $(ROC)
normal = morpho.c mouvement.c nrutil.c test_mouvement.c vnrutil.c
SSE2 = test_mouvement_SSE2.c mouvement_SSE2.c morpho_simd.c
ROC = matric_roc.c
# -- Paths ----------
SRC_PATH = src
OBJ_PATH = obj
INC_PATH = include
# -- Flags ----------
C_DEBUG_FLAGS = -g -O3
C_ARCH_FLAGS = -msse4.2
C_INC_FLAGS = -I$(INC_PATH)
CFLAGS = $(C_DEBUG_FLAGS) $(C_ARCH_FLAGS) $(C_INC_FLAGS)
LDFLAGS = $(C_ARCH_FLAGS) $(C_INC_FLAGS)
#SOURCES=$(addprefix $(SRC_PATH)/, $(wildcard *.c))
#OBJECTS=$(addprefix ${OBJ_PATH}/, $(addsuffix .o, $(basename $(wildcard *.c))))
SRC = $(addprefix ${SRC_PATH}/, $(FILE))
OBJ = $(addprefix ${OBJ_PATH}/, $(addsuffix .o, $(basename $(FILE))))
#Macro
CC=gcc
EXEC=hpc_NO.exe
# -- Base rules ----------
$(OBJ_PATH)/%.o : $(SRC_PATH)/%.c
$(CC) $(CFLAGS) -c $< -o $@
#-----Main rule ----------
$(EXEC): $(OBJ)
$(CC) -o $@ $^ $(LDFLAGS) -lm
clean:
rm -f $(OBJ) $(EXEC)
test:
./hpc_NO.exe