Rev 182 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 182 | Rev 183 | ||
|---|---|---|---|
| Line 76... | Line 76... | ||
| 76 | # at the end of the line for flag values. |
76 | # at the end of the line for flag values. |
| 77 | 77 | ||
| 78 | ### 2.1. General and architecture defaults |
78 | ### 2.1. General and architecture defaults |
| 79 | optimize = yes |
79 | optimize = yes |
| 80 | debug = no |
80 | debug = no |
| 81 |
|
81 | #sanitize = no |
| - | 82 | sanitize = address |
|
| 82 | bits = 32 |
83 | bits = 32 |
| 83 | prefetch = no |
84 | prefetch = no |
| 84 | popcnt = no |
85 | popcnt = no |
| 85 | sse = no |
86 | sse = no |
| 86 | pext = no |
87 | pext = no |
| Line 151... | Line 152... | ||
| 151 | 152 | ||
| 152 | ### 3.1 Selecting compiler (default = gcc) |
153 | ### 3.1 Selecting compiler (default = gcc) |
| 153 | 154 | ||
| 154 | ifeq ($(OS),Windows_NT) |
155 | ifeq ($(OS),Windows_NT) |
| 155 | # Pierre-Marie Baty -- we need two extra flags AND the C++14 standard when building with Clang against the Visual Studio 2015 SDK |
156 | # Pierre-Marie Baty -- we need two extra flags AND the C++14 standard when building with Clang against the Visual Studio 2015 SDK |
| 156 | CXXFLAGS += -Xclang -flto-visibility-public-std -Wall -Wcast-qual |
157 | CXXFLAGS += -Xclang -flto-visibility-public-std -Wall -Wcast-qual -std=c++14 $(EXTRACXXFLAGS) |
| - | 158 | # -fno-exceptions |
|
| 157 | DEPENDFLAGS += -std=c++14 |
159 | DEPENDFLAGS += -std=c++14 |
| 158 | else |
160 | else |
| 159 | CXXFLAGS += -Wall -Wcast-qual -fno-exceptions -std=c++11 $(EXTRACXXFLAGS) |
161 | CXXFLAGS += -Wall -Wcast-qual -fno-exceptions -std=c++11 $(EXTRACXXFLAGS) |
| 160 | DEPENDFLAGS += -std=c++11 |
162 | DEPENDFLAGS += -std=c++11 |
| 161 | endif |
163 | endif |
| Line 267... | Line 269... | ||
| 267 | ### Allow overwriting CXX from command line |
269 | ### Allow overwriting CXX from command line |
| 268 | ifdef COMPCXX |
270 | ifdef COMPCXX |
| 269 | CXX=$(COMPCXX) |
271 | CXX=$(COMPCXX) |
| 270 | endif |
272 | endif |
| 271 | 273 | ||
| 272 |
|
274 | ### On mingw use Windows threads, otherwise POSIX |
| 273 | ifneq ($( |
275 | ifneq ($(comp),mingw) |
| 274 |
|
276 | # Pierre-Marie Baty -- also add the test case for Windows |
| 275 | ifneq ($( |
277 | ifneq ($(OS),Windows_NT) |
| 276 | # On Android Bionic's C library comes with its own pthread implementation bundled in |
278 | # On Android Bionic's C library comes with its own pthread implementation bundled in |
| 277 | ifneq ($(OS),Android) |
279 | ifneq ($(OS),Android) |
| 278 | # Haiku has pthreads in its libroot, so only link it in on other platforms |
280 | # Haiku has pthreads in its libroot, so only link it in on other platforms |
| 279 | ifneq ($(KERNEL),Haiku) |
281 | ifneq ($(KERNEL),Haiku) |
| 280 | LDFLAGS += -lpthread |
282 | LDFLAGS += -lpthread |
| Line 290... | Line 292... | ||
| 290 | CXXFLAGS += -g |
292 | CXXFLAGS += -g |
| 291 | endif |
293 | endif |
| 292 | 294 | ||
| 293 | ### 3.2.2 Debugging with undefined behavior sanitizers |
295 | ### 3.2.2 Debugging with undefined behavior sanitizers |
| 294 | ifneq ($(sanitize),no) |
296 | ifneq ($(sanitize),no) |
| 295 | CXXFLAGS += -g3 -fsanitize=$(sanitize) |
297 | CXXFLAGS += -g3 -fsanitize=$(sanitize) |
| 296 | LDFLAGS += -fsanitize=$(sanitize) |
298 | LDFLAGS += -fsanitize=$(sanitize) |
| - | 299 | # Pierre-Marie Baty -- don't use any other linker than the system one on Windows |
|
| - | 300 | ifneq ($(OS),Windows_NT) |
|
| - | 301 | CXXFLAGS += -fuse-ld=gold |
|
| - | 302 | LDFLAGS += -fuse-ld=gold |
|
| - | 303 | endif |
|
| 297 | endif |
304 | endif |
| 298 | 305 | ||
| 299 | ### 3.3 Optimization |
306 | ### 3.3 Optimization |
| 300 | ifeq ($(optimize),yes) |
307 | ifeq ($(optimize),yes) |
| 301 | 308 | ||