summaryrefslogtreecommitdiffhomepage
path: root/x-plane-plugin/CMakeLists.txt
blob: de42b5a5649c9441479ec807a7e5185f10728806 (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
opentrack_boilerplate(opentrack-xplane-plugin NO-LIBRARY)

if(LINUX OR APPLE)
    set(SDK_XPLANE "" CACHE PATH "Path to X-Plane SDK")
    if(SDK_XPLANE)
        # probably librt already included
        add_library(opentrack-xplane-plugin SHARED ${opentrack-xplane-plugin-c})
        target_include_directories(opentrack-xplane-plugin SYSTEM PUBLIC ${SDK_XPLANE}/CHeaders ${SDK_XPLANE}/CHeaders/XPLM)
        if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_GNUCC AND NOT APPLE)
            SET_TARGET_PROPERTIES(opentrack-xplane-plugin
                PROPERTIES LINK_FLAGS
                "-Wl,--version-script=${CMAKE_SOURCE_DIR}/x-plane-plugin/version-script.txt -shared -rdynamic -nodefaultlibs -undefined_warning -fPIC"
                COMPILE_FLAGS "-Wall -O2 -pipe -fPIC -DLIN -DXPLM200 -DXPLM210"
                LIBRARY_OUTPUT_NAME "opentrack.xpl"
                PREFIX "" SUFFIX "")
        endif()
        if(APPLE)
            SET_TARGET_PROPERTIES(opentrack-xplane-plugin PROPERTIES
                                  COMPILE_FLAGS "-iframework ${SDK_XPLANE}/Libraries/Mac/ -DAPL -DXPLM200 -DXPLM210 -framework XPLM -framework XPWidgets"
                                  LINK_FLAGS "-F${SDK_XPLANE}/Libraries/Mac/ -framework XPLM -framework XPWidgets"
                                  LIBRARY_OUTPUT_NAME "opentrack.xpl"
                                  PREFIX "" SUFFIX "")
        endif()
        if(UNIX AND NOT APPLE)
            target_link_libraries(opentrack-xplane-plugin rt)
        endif()
        install(TARGETS opentrack-xplane-plugin RUNTIME DESTINATION . LIBRARY DESTINATION .  )
    endif()
endif()