summaryrefslogtreecommitdiffstats
path: root/depends/settings/CMakeLists.txt
blob: 154697f63d23a1fbd19598b15bb01b0c8e08a259 (plain)
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
project(libSettings)

# Find Qt
find_package(Qt5Core REQUIRED)

# Include Qt headers.
include_directories(${Qt5Base_INCLUDE_DIRS})
include_directories(${Qt5Network_INCLUDE_DIRS})

SET(LIBSETTINGS_HEADERS
include/libsettings_config.h

include/inifile.h

include/settingsobject.h
include/setting.h
include/overridesetting.h

include/basicsettingsobject.h
include/inisettingsobject.h

include/keyring.h
)

SET(LIBSETTINGS_HEADERS_PRIVATE
src/stubkeyring.h
)

SET(LIBSETTINGS_SOURCES
src/inifile.cpp

src/settingsobject.cpp
src/setting.cpp
src/overridesetting.cpp

src/basicsettingsobject.cpp
src/inisettingsobject.cpp

src/keyring.cpp
src/stubkeyring.cpp
)

# Set the include dir path.
SET(LIBSETTINGS_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include" PARENT_SCOPE)
include_directories(${LIBSETTINGS_INCLUDE_DIR})

# Static link!
ADD_DEFINITIONS(-DLIBSETTINGS_STATIC)

add_definitions(-DLIBSETTINGS_LIBRARY)

set(CMAKE_POSITION_INDEPENDENT_CODE ON)

IF(MultiMC_CODE_COVERAGE)
	SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage")
	SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 --coverage")
	SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -O0 --coverage")
	SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -g -O0 --coverage")
	SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -O0 --coverage")
ENDIF(MultiMC_CODE_COVERAGE)

add_library(libSettings STATIC ${LIBSETTINGS_SOURCES} ${LIBSETTINGS_HEADERS} ${LIBSETTINGS_HEADERS_PRIVATE})
qt5_use_modules(libSettings Core)
target_link_libraries(libSettings)