-
Notifications
You must be signed in to change notification settings - Fork 0
/
SearchAndDestroyChess.pro
64 lines (47 loc) · 1.55 KB
/
SearchAndDestroyChess.pro
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
include(SearchAndDestroyChess.pri)
SOURCES += main.cpp
CONFIG += c++17
QMAKE_CXXFLAGS += -std=c++17
# High warning levels
# Qt does not go well with -Weffc++
QMAKE_CXXFLAGS += -Wall -Wextra -Wshadow -Wnon-virtual-dtor -pedantic -Werror
# Debug and release mode
CONFIG += debug_and_release
# In release mode, define NDEBUG
CONFIG(release, debug|release) {
DEFINES += NDEBUG
# gprof
QMAKE_CXXFLAGS += -pg
QMAKE_LFLAGS += -pg
# GSL
DEFINES += GSL_UNENFORCED_ON_CONTRACT_VIOLATION
}
# In debug mode, turn on gcov and UBSAN
CONFIG(debug, debug|release) {
# gcov
QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage
LIBS += -lgcov
# UBSAN
QMAKE_CXXFLAGS += -fsanitize=undefined
QMAKE_LFLAGS += -fsanitize=undefined
LIBS += -lubsan
# gprof
QMAKE_CXXFLAGS += -pg
QMAKE_LFLAGS += -pg
# GSL
#DEFINES += GSL_THROW_ON_CONTRACT_VIOLATION
DEFINES += GSL_UNENFORCED_ON_CONTRACT_VIOLATION
}
# Qt
QT += core gui
# Prevent Qt for failing with this error:
# qrc_[*].cpp:400:44: error: ‘qInitResources_[*]__init_variable__’ defined but not used
# [*]: the resource filename
QMAKE_CXXFLAGS += -Wno-unused-variable
# Fixes
#/usr/include/boost/math/constants/constants.hpp:277: error: unable to find numeric literal operator 'operator""Q'
# BOOST_DEFINE_MATH_CONSTANT(half, 5.000000000000000000000000000000000000e-01, "5.00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e-01")
# ^
QMAKE_CXXFLAGS += -fext-numeric-literals
# SFML
LIBS += -lsfml-graphics -lsfml-window -lsfml-system -lsfml-audio