-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
222 lines (177 loc) · 8.13 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
#-------------------------------------------------
# VARIABLES
#-------------------------------------------------
CC = gcc
CFLAGS = -g -Wall -pedantic -std=c99 -Iinclude/
LFLAGS = -L$(DIR_LIB)
EXEC = dictionarize64 dictionarize32 dictionarize16 dictionarize8 test_function64 test_function32 test_function16 test_function8
DEBUG = 0
DIR_INCLUDE = include/
DIR_SRC = src/
DIR_LIB = lib/
DIR_TGT = target/
LFLAGS = -L$(DIR_LIB)
LIBS = -ltokenize
OBJS_64 = $(DIR_TGT)main64.o $(DIR_TGT)dictionnaire64.o $(DIR_TGT)utils64.o $(DIR_TGT)maillon64.o $(DIR_TGT)mot64.o
OBJS_32 = $(DIR_TGT)main32.o $(DIR_TGT)dictionnaire32.o $(DIR_TGT)utils32.o $(DIR_TGT)maillon32.o $(DIR_TGT)mot32.o
OBJS_16 = $(DIR_TGT)main16.o $(DIR_TGT)dictionnaire16.o $(DIR_TGT)utils16.o $(DIR_TGT)maillon16.o $(DIR_TGT)mot16.o
OBJS_8 = $(DIR_TGT)main8.o $(DIR_TGT)dictionnaire8.o $(DIR_TGT)utils8.o $(DIR_TGT)maillon8.o $(DIR_TGT)mot8.o
#-------------------------------------------------
# LINKINGS
#-------------------------------------------------
all: $(EXEC)
test_function64: $(DIR_TGT)test64.o $(DIR_TGT)utils64.o $(DIR_TGT)maillon64.o $(DIR_TGT)mot64.o
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $< $(DIR_TGT)utils64.o $(DIR_TGT)maillon64.o $(DIR_TGT)mot64.o
@echo -e
test_function32: $(DIR_TGT)test32.o $(DIR_TGT)utils32.o $(DIR_TGT)maillon32.o $(DIR_TGT)mot32.o
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $< $(DIR_TGT)utils32.o $(DIR_TGT)maillon32.o $(DIR_TGT)mot32.o
@echo -e
test_function16: $(DIR_TGT)test16.o $(DIR_TGT)utils16.o $(DIR_TGT)maillon16.o $(DIR_TGT)mot16.o
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $< $(DIR_TGT)utils16.o $(DIR_TGT)maillon16.o $(DIR_TGT)mot16.o
@echo -e
test_function8: $(DIR_TGT)test8.o $(DIR_TGT)utils8.o $(DIR_TGT)maillon8.o $(DIR_TGT)mot8.o
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $< $(DIR_TGT)utils8.o $(DIR_TGT)maillon8.o $(DIR_TGT)mot8.o
@echo -e
dictionarize64: $(OBJS_64) $(DIR_LIB)libtokenize.dylib
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $(OBJS_64) $(LFLAGS) $(LIBS)
@echo -e
dictionarize32: $(OBJS_32) $(DIR_LIB)libtokenize.dylib
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $(OBJS_32) $(LFLAGS) $(LIBS)
@echo -e
dictionarize16: $(OBJS_16) $(DIR_LIB)libtokenize.dylib
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $(OBJS_16) $(LFLAGS) $(LIBS)
@echo -e
dictionarize8: $(OBJS_8) $(DIR_LIB)libtokenize.dylib
@echo ------------- Generating $@ -------------
$(CC) -o $(DIR_TGT)$@ $(OBJS_8) $(LFLAGS) $(LIBS)
@echo -e
#-------------------------------------------------
# DEPENDENCIES
#-------------------------------------------------
#--------------
# 64bits
#--------------
$(DIR_TGT)test64.o: $(DIR_SRC)test.c $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
$(DIR_TGT)main64.o: $(DIR_SRC)main.c $(DIR_INCLUDE)read_word.h $(DIR_INCLUDE)dictionnaire.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
$(DIR_TGT)dictionnaire64.o: $(DIR_SRC)dictionnaire.c $(DIR_INCLUDE)dictionnaire.h $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
$(DIR_TGT)mot64.o: $(DIR_SRC)mot.c $(DIR_INCLUDE)mot.h $(DIR_INCLUDE)maillon.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=12 -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
$(DIR_TGT)maillon64.o: $(DIR_SRC)maillon.c $(DIR_INCLUDE)maillon.h $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=12 -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
$(DIR_TGT)utils64.o: $(DIR_SRC)utils.c $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DDEBUG=$(DEBUG) -DNBL=12 -DStorage=uint64_t -DSIZE=64 $< $(CFLAGS)
@echo -e
#--------------
# 32bits
#--------------
$(DIR_TGT)test32.o: $(DIR_SRC)test.c $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
$(DIR_TGT)main32.o: $(DIR_SRC)main.c $(DIR_INCLUDE)read_word.h $(DIR_INCLUDE)dictionnaire.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
$(DIR_TGT)dictionnaire32.o: $(DIR_SRC)dictionnaire.c $(DIR_INCLUDE)dictionnaire.h $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
$(DIR_TGT)mot32.o: $(DIR_SRC)mot.c $(DIR_INCLUDE)mot.h $(DIR_INCLUDE)maillon.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=6 -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
$(DIR_TGT)maillon32.o: $(DIR_SRC)maillon.c $(DIR_INCLUDE)maillon.h $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=6 -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
$(DIR_TGT)utils32.o: $(DIR_SRC)utils.c $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DDEBUG=$(DEBUG) -DNBL=6 -DStorage=uint32_t -DSIZE=32 $< $(CFLAGS)
@echo -e
#--------------
# 16bits
#--------------
$(DIR_TGT)test16.o: $(DIR_SRC)test.c $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
$(DIR_TGT)main16.o: $(DIR_SRC)main.c $(DIR_INCLUDE)read_word.h $(DIR_INCLUDE)dictionnaire.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
$(DIR_TGT)dictionnaire16.o: $(DIR_SRC)dictionnaire.c $(DIR_INCLUDE)dictionnaire.h $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
$(DIR_TGT)mot16.o: $(DIR_SRC)mot.c $(DIR_INCLUDE)mot.h $(DIR_INCLUDE)maillon.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=3 -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
$(DIR_TGT)maillon16.o: $(DIR_SRC)maillon.c $(DIR_INCLUDE)maillon.h $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=3 -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
$(DIR_TGT)utils16.o: $(DIR_SRC)utils.c $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DDEBUG=$(DEBUG) -DNBL=3 -DStorage=uint16_t -DSIZE=16 $< $(CFLAGS)
@echo -e
#--------------
# 8bits
#--------------
$(DIR_TGT)test8.o: $(DIR_SRC)test.c $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
$(DIR_TGT)main8.o: $(DIR_SRC)main.c $(DIR_INCLUDE)read_word.h $(DIR_INCLUDE)dictionnaire.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
$(DIR_TGT)dictionnaire8.o: $(DIR_SRC)dictionnaire.c $(DIR_INCLUDE)dictionnaire.h $(DIR_INCLUDE)mot.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
$(DIR_TGT)mot8.o: $(DIR_SRC)mot.c $(DIR_INCLUDE)mot.h $(DIR_INCLUDE)maillon.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=1 -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
$(DIR_TGT)maillon8.o: $(DIR_SRC)maillon.c $(DIR_INCLUDE)maillon.h $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DNBL=1 -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
$(DIR_TGT)utils8.o: $(DIR_SRC)utils.c $(DIR_INCLUDE)utils.h
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c -DDEBUG=$(DEBUG) -DNBL=1 -DStorage=uint8_t -DSIZE=8 $< $(CFLAGS)
@echo -e
#--------------
# Global
#--------------
$(DIR_TGT)%.o: $(DIR_SRC)%.c
@echo ------------- Generating $@ -------------
$(CC) -o $@ -c $< $(CFLAGS)
@echo -e
#-------------------------------------------------
# CLEANING
#-------------------------------------------------
clean:
rm -f $(DIR_TGT)*