summaryrefslogtreecommitdiffhomepage
path: root/gui/CMakeLists.txt
blob: 778cbf0863828ded0443c106b8ddcbda0f97ed1c (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
opentrack_boilerplate(opentrack NO-LIBRARY)

if(WIN32)
    SET(SDK_CONSOLE_DEBUG FALSE CACHE BOOL "Console window visible at runtime")
endif()

if(WIN32 AND NOT SDK_CONSOLE_DEBUG)
    set(opentrack-win32-executable WIN32)
else()
    set(opentrack-win32-executable "")
endif()

opentrack_qt(opentrack)
add_executable(opentrack ${opentrack-win32-executable} ${opentrack-all})
opentrack_compat(opentrack)

if(NOT WIN32)
    set_target_properties(opentrack PROPERTIES SUFFIX ".bin")
endif()

target_link_libraries(opentrack
    opentrack-spline-widget
    opentrack-pose-widget
    opentrack-api
    opentrack-compat
    opentrack-version
    # trackhat
    opentrack-tracker-pt opentrack-filter-accela
)

link_with_dinput8(opentrack)

if(APPLE)
    # for process detector
    target_link_libraries(opentrack proc)
endif()

if(LINUX)
    target_link_libraries(opentrack dl)
    # for process detector
    target_link_libraries(opentrack procps)
endif()

set(c-props)
set(l-props)
if(CMAKE_COMPILER_IS_GNUCXX)
    set(c-props "-fvisibility=hidden -fvisibility-inlines-hidden")
    if(NOT APPLE)
        set(l-props "-Wl,--as-needed")
    endif()
endif()

set_target_properties(opentrack PROPERTIES
    LINK_FLAGS "${l-props}"
    COMPILE_FLAGS "${c-props}"
)

install(TARGETS opentrack DESTINATION .)