summaryrefslogtreecommitdiffhomepage
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/FindEigen3.cmake24
-rw-r--r--cmake/msvc.cmake2
-rw-r--r--cmake/opentrack-boilerplate.cmake51
-rw-r--r--cmake/opentrack-hier.cmake63
-rw-r--r--cmake/opentrack-i18n.cmake6
-rw-r--r--cmake/opentrack-install.cmake50
-rw-r--r--cmake/opentrack-opencv.cmake2
-rw-r--r--cmake/opentrack-platform.cmake13
-rw-r--r--cmake/opentrack-qt.cmake20
-rw-r--r--cmake/opentrack-rift.cmake38
10 files changed, 134 insertions, 135 deletions
diff --git a/cmake/FindEigen3.cmake b/cmake/FindEigen3.cmake
index b43208f9..bbad2298 100644
--- a/cmake/FindEigen3.cmake
+++ b/cmake/FindEigen3.cmake
@@ -9,6 +9,12 @@
# EIGEN3_FOUND - system has eigen lib with correct version
# EIGEN3_INCLUDE_DIR - the eigen include directory
# EIGEN3_VERSION - eigen version
+#
+# This module reads hints about search locations from
+# the following enviroment variables:
+#
+# EIGEN3_ROOT
+# EIGEN3_ROOT_DIR
# Copyright (c) 2006, 2007 Montel Laurent, <montel@kde.org>
# Copyright (c) 2008, 2009 Gael Guennebaud, <g.gael@free.fr>
@@ -61,19 +67,29 @@ if (EIGEN3_INCLUDE_DIR)
else (EIGEN3_INCLUDE_DIR)
- find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
+ # search first if an Eigen3Config.cmake is available in the system,
+ # if successful this would set EIGEN3_INCLUDE_DIR and the rest of
+ # the script will work as usual
+ find_package(Eigen3 ${Eigen3_FIND_VERSION} NO_MODULE QUIET)
+
+ if(NOT EIGEN3_INCLUDE_DIR)
+ find_path(EIGEN3_INCLUDE_DIR NAMES signature_of_eigen3_matrix_library
+ HINTS
+ ENV EIGEN3_ROOT
+ ENV EIGEN3_ROOT_DIR
PATHS
${CMAKE_INSTALL_PREFIX}/include
${KDE4_INCLUDE_DIR}
PATH_SUFFIXES eigen3 eigen
)
-
+ endif(NOT EIGEN3_INCLUDE_DIR)
+
if(EIGEN3_INCLUDE_DIR)
_eigen3_check_version()
endif(EIGEN3_INCLUDE_DIR)
- #include(FindPackageHandleStandardArgs)
- #find_package_handle_standard_args(Eigen3 DEFAULT_MSG EIGEN3_INCLUDE_DIR EIGEN3_VERSION_OK)
+ include(FindPackageHandleStandardArgs)
+ find_package_handle_standard_args(Eigen3 DEFAULT_MSG EIGEN3_INCLUDE_DIR EIGEN3_VERSION_OK)
mark_as_advanced(EIGEN3_INCLUDE_DIR)
diff --git a/cmake/msvc.cmake b/cmake/msvc.cmake
index b7a403a3..f108eb16 100644
--- a/cmake/msvc.cmake
+++ b/cmake/msvc.cmake
@@ -39,7 +39,7 @@ add_link_options(-cgthreads:1)
set(_CFLAGS "")
set(_CXXFLAGS "")
-set(_CFLAGS_RELEASE "-O2 -O2it -Oy- -Ob3 -fp:fast -GS- -GF -GL -Gw -Gy -arch:SSE2 -GR- -MT")
+set(_CFLAGS_RELEASE "-O2 -O2it -Oy- -Ob3 -fp:fast -GS- -GF -GL -Gw -Gy -arch:SSE2 -MT")
set(_CFLAGS_DEBUG "-guard:cf -MTd -Gs0 -RTCs")
set(_CXXFLAGS_RELEASE "${_CFLAGS_RELEASE}")
set(_CXXFLAGS_DEBUG "${_CFLAGS_DEBUG}")
diff --git a/cmake/opentrack-boilerplate.cmake b/cmake/opentrack-boilerplate.cmake
index ffa4ea02..a78e0ed0 100644
--- a/cmake/opentrack-boilerplate.cmake
+++ b/cmake/opentrack-boilerplate.cmake
@@ -18,10 +18,10 @@ set(new-hier-path "#pragma once
#endif
#define OPENTRACK_LIBRARY_PREFIX \"\"
-#define OPENTRACK_LIBRARY_PATH \"${opentrack-hier-path}\"
-#define OPENTRACK_DOC_PATH \"${opentrack-hier-doc}\"
-#define OPENTRACK_CONTRIB_PATH \"${opentrack-hier-doc}contrib/\"
-#define OPENTRACK_I18N_PATH \"${opentrack-i18n-path}\"
+#define OPENTRACK_LIBRARY_PATH \"${opentrack-runtime-libexec}\"
+#define OPENTRACK_DOC_PATH \"${opentrack-runtime-doc}\"
+#define OPENTRACK_CONTRIB_PATH \"${opentrack-runtime-doc}contrib/\"
+#define OPENTRACK_I18N_PATH \"${opentrack-runtime-i18n}\"
")
function(otr_write_library_paths)
@@ -61,8 +61,8 @@ function(otr_glob_sources var)
endfunction()
function(otr_fixup_subsystem n)
- otr_find_msvc_editbin(editbin-pathname)
if(MSVC)
+ otr_find_msvc_editbin(editbin-pathname)
set(subsystem WINDOWS)
get_property(type TARGET "${n}" PROPERTY TYPE)
if (NOT type STREQUAL "STATIC_LIBRARY")
@@ -109,7 +109,7 @@ endfunction()
function(otr_install_pdb_current_project target)
if(MSVC)
- install(FILES "$<TARGET_PDB_FILE:${target}>" DESTINATION "${opentrack-hier-debug}" PERMISSIONS ${opentrack-perms-file})
+ install(FILES "$<TARGET_PDB_FILE:${target}>" DESTINATION "${opentrack-debug}" PERMISSIONS ${opentrack-perms-file})
endif()
endfunction()
@@ -143,15 +143,17 @@ function(otr_module n_)
set(arg_NO-I18N TRUE)
endif()
- if(NOT WIN32)
- set(subsys "")
- elseif(arg_WIN32-CONSOLE)
- set(subsys "")
- else()
- set(subsys "WIN32")
- endif()
-
if(arg_EXECUTABLE)
+ if (APPLE)
+ set(subsys "MACOSX_BUNDLE")
+ elseif(NOT WIN32)
+ set(subsys "")
+ elseif(arg_WIN32-CONSOLE)
+ set(subsys "")
+ else()
+ set(subsys "WIN32")
+ endif()
+
add_executable(${n} ${subsys} "${${n}-all}")
set_target_properties(${n} PROPERTIES
SUFFIX "${opentrack-binary-suffix}"
@@ -216,13 +218,24 @@ function(otr_module n_)
endif()
if(NOT arg_NO-INSTALL)
+ # Librarys/executable
if(arg_BIN)
- install(TARGETS "${n}"
- RUNTIME DESTINATION ${opentrack-hier-bin}
- LIBRARY DESTINATION ${opentrack-hier-pfx}
+ if (APPLE)
+ install(TARGETS "${n}"
+ RUNTIME DESTINATION ${opentrack-bin}
+ BUNDLE DESTINATION ${opentrack-bin}
+ LIBRARY DESTINATION ${opentrack-bin}/Library
+ RESOURCE DESTINATION ${opentrack-bin}/opentrack.app/Resource
+ PERMISSIONS ${opentrack-perms-exec})
+ else()
+ install(TARGETS "${n}"
+ RUNTIME DESTINATION ${opentrack-bin}
+ LIBRARY DESTINATION ${opentrack-libexec}
PERMISSIONS ${opentrack-perms-exec})
+ endif()
else()
- install(TARGETS "${n}" ${opentrack-hier-str}
+ # Plugins
+ install(TARGETS "${n}" ${opentrack-install-src}
PERMISSIONS ${opentrack-perms-exec})
endif()
@@ -282,7 +295,7 @@ function(otr_install_lib target dest)
set(pdb-path "")
otr_pdb_for_dll(pdb-path "${path}")
if(pdb-path)
- install(FILES "${pdb-path}" DESTINATION "${opentrack-hier-debug}" PERMISSIONS ${opentrack-perms-exec})
+ install(FILES "${pdb-path}" DESTINATION "${opentrack-debug}" PERMISSIONS ${opentrack-perms-exec})
endif()
endif()
install(FILES "${path}" DESTINATION "${dest}" PERMISSIONS ${opentrack-perms-exec})
diff --git a/cmake/opentrack-hier.cmake b/cmake/opentrack-hier.cmake
index 7dcdb52d..16694d1f 100644
--- a/cmake/opentrack-hier.cmake
+++ b/cmake/opentrack-hier.cmake
@@ -9,50 +9,49 @@
include_guard(GLOBAL)
-set(opentrack-install-rpath "")
if(APPLE)
- set(opentrack-hier-pfx ".")
- set(opentrack-hier-path "/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-doc "/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-bin ".")
- set(opentrack-doc-pfx "./doc")
- set(opentrack-doc-src-pfx "./source-code")
- set(opentrack-i18n-pfx "./i18n")
- set(opentrack-i18n-path "./i18n")
+ set(opentrack-libexec "Plugins")
+ set(opentrack-runtime-libexec "/Plugins/") # MUST HAVE A TRAILING BACKSLASH, Used in APP
+ set(opentrack-runtime-doc "/") # MUST HAVE A TRAILING BACKSLASH
+ set(opentrack-bin "${CMAKE_INSTALL_PREFIX}")
+ set(opentrack-doc "./doc")
+ set(opentrack-src "./source-code")
+ set(opentrack-i18n "opentrack.app/Contents/Resources") # used during install
+ set(opentrack-runtime-i18n "../Resources/i18n") # used in application
+ set(opentrack-install-rpath "${CMAKE_INSTALL_PREFIX}/Library")
elseif(WIN32)
- set(opentrack-hier-pfx "modules")
- set(opentrack-hier-path "/${opentrack-hier-pfx}/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-doc "/doc/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-bin ".")
- set(opentrack-doc-pfx "./doc")
- set(opentrack-doc-src-pfx "./source-code")
- set(opentrack-i18n-pfx "./i18n")
- set(opentrack-i18n-path "./i18n")
- set(opentrack-hier-debug "./debug")
+ set(opentrack-libexec "modules")
+ set(opentrack-runtime-libexec "/${opentrack-libexec}/") # MUST HAVE A TRAILING BACKSLASH
+ set(opentrack-runtime-doc "/doc/") # MUST HAVE A TRAILING BACKSLASH
+ set(opentrack-bin ".")
+ set(opentrack-doc "./doc")
+ set(opentrack-src "./source-code")
+ set(opentrack-i18n "./i18n")
+ set(opentrack-runtime-i18n "./i18n")
+ set(opentrack-debug "./debug")
+ set(opentrack-install-rpath "")
else()
- set(opentrack-hier-pfx "libexec/opentrack")
- set(opentrack-hier-path "/../${opentrack-hier-pfx}/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-doc "/share/doc/opentrack/") # MUST HAVE A TRAILING BACKSLASH
- set(opentrack-hier-bin "bin")
- set(opentrack-doc-pfx "./share/doc/opentrack")
- set(opentrack-doc-src-pfx "./share/doc/opentrack/source-code")
- set(opentrack-install-rpath "${CMAKE_INSTALL_PREFIX}/${opentrack-hier-pfx}")
- set(opentrack-i18n-pfx "./share/opentrack/i18n")
- set(opentrack-i18n-path "../share/opentrack/i18n")
+ set(opentrack-libexec "libexec/opentrack")
+ set(opentrack-runtime-libexec "/../${opentrack-libexec}/") # MUST HAVE A TRAILING BACKSLASH
+ set(opentrack-runtime-doc "/share/doc/opentrack/") # MUST HAVE A TRAILING BACKSLASH
+ set(opentrack-bin "bin")
+ set(opentrack-doc "./share/doc/opentrack")
+ set(opentrack-src "./share/doc/opentrack/source-code")
+ set(opentrack-install-rpath "${CMAKE_INSTALL_PREFIX}/${opentrack-libexec}")
+ set(opentrack-i18n "./share/opentrack/i18n")
+ set(opentrack-runtime-i18n "../share/opentrack/i18n")
endif()
-set(opentrack-hier-str RUNTIME DESTINATION ${opentrack-hier-pfx} LIBRARY DESTINATION ${opentrack-hier-pfx})
+set(opentrack-install-src RUNTIME DESTINATION ${opentrack-libexec} LIBRARY DESTINATION ${opentrack-libexec})
function(otr_escape_string var str)
string(REGEX REPLACE "([^_A-Za-z0-9./:-])" "\\\\\\1" str "${str}")
set(${var} "${str}" PARENT_SCOPE)
endfunction()
-set(opentrack-contrib-pfx "${opentrack-doc-pfx}/contrib")
+set(opentrack-contrib-pfx "${opentrack-doc}/contrib")
set(opentrack-binary-suffix "")
-if(APPLE)
- set(opentrack-binary-suffix ".bin")
-elseif(WIN32)
+if(WIN32)
set(opentrack-binary-suffix ".exe")
endif()
diff --git a/cmake/opentrack-i18n.cmake b/cmake/opentrack-i18n.cmake
index e89f5c42..f3b53895 100644
--- a/cmake/opentrack-i18n.cmake
+++ b/cmake/opentrack-i18n.cmake
@@ -58,7 +58,7 @@ function(otr_i18n_for_target_directory n)
endfunction()
function(otr_merge_translations)
- otr_escape_string(i18n-pfx "${opentrack-i18n-pfx}")
+ otr_escape_string(i18n-pfx "${opentrack-i18n}")
install(CODE "file(REMOVE_RECURSE \"\${CMAKE_INSTALL_PREFIX}/${i18n-pfx}\")")
foreach(i ${opentrack_all-translations})
@@ -68,7 +68,7 @@ function(otr_merge_translations)
set(qm-output "${CMAKE_BINARY_DIR}/${i}.qm")
# whines about duplicate messages since tracker-pt-base is static
- if(WIN32)
+ if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
set(to-null "2>NUL")
else()
set(to-null "2>/dev/null")
@@ -92,7 +92,7 @@ function(otr_merge_translations)
add_dependencies(i18n-lrelease ${target-name})
install(FILES "${qm-output}"
- DESTINATION "${CMAKE_INSTALL_PREFIX}/${opentrack-i18n-pfx}"
+ DESTINATION "${CMAKE_INSTALL_PREFIX}/${opentrack-i18n}"
PERMISSIONS ${opentrack-perms-file})
endforeach()
endfunction()
diff --git a/cmake/opentrack-install.cmake b/cmake/opentrack-install.cmake
index 2b745a82..94f3e29d 100644
--- a/cmake/opentrack-install.cmake
+++ b/cmake/opentrack-install.cmake
@@ -17,8 +17,8 @@ macro(otr_install_dir path)
endmacro()
function(otr_setup_refresh_install_dir)
- if((NOT CMAKE_INSTALL_PREFIX STREQUAL "") AND (NOT opentrack-doc-src-pfx STREQUAL ""))
- otr_escape_string(dir "${CMAKE_INSTALL_PREFIX}/${opentrack-doc-src-pfx}/")
+ if((NOT CMAKE_INSTALL_PREFIX STREQUAL "") AND (NOT opentrack-src STREQUAL ""))
+ otr_escape_string(dir "${CMAKE_INSTALL_PREFIX}/${opentrack-src}/")
install(CODE "file(REMOVE_RECURSE \"${dir}\")")
endif()
endfunction()
@@ -28,18 +28,18 @@ function(otr_install_sources)
get_property(source-dirs GLOBAL PROPERTY opentrack-all-source-dirs)
foreach(k ${source-dirs})
file(RELATIVE_PATH dest "${CMAKE_SOURCE_DIR}" "${k}")
- otr_install_dir("${opentrack-doc-src-pfx}" "${dest}")
+ otr_install_dir("${opentrack-src}" "${dest}")
endforeach()
- otr_install_dir("${opentrack-doc-src-pfx}" "${CMAKE_SOURCE_DIR}/cmake")
- otr_install_dir("${opentrack-doc-src-pfx}" "${CMAKE_SOURCE_DIR}/bin")
+ otr_install_dir("${opentrack-src}" "${CMAKE_SOURCE_DIR}/cmake")
+ otr_install_dir("${opentrack-src}" "${CMAKE_SOURCE_DIR}/bin")
- otr_install_misc("${opentrack-doc-src-pfx}" FILES "${CMAKE_SOURCE_DIR}/CMakeLists.txt")
- otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/README.md")
- otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/.github/CONTRIBUTING.md")
- otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/WARRANTY.txt")
- otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/OPENTRACK-LICENSING.txt")
- otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/AUTHORS.md")
+ otr_install_misc("${opentrack-src}" FILES "${CMAKE_SOURCE_DIR}/CMakeLists.txt")
+ otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/README.md")
+ otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/.github/CONTRIBUTING.md")
+ otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/WARRANTY.txt")
+ otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/OPENTRACK-LICENSING.txt")
+ otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/AUTHORS.md")
endfunction()
function(cleanup_visual_studio_debug)
@@ -47,22 +47,22 @@ function(cleanup_visual_studio_debug)
install(CODE "file(REMOVE_RECURSE \"${pfx}/.vs\")")
endfunction()
-otr_install_dir("${opentrack-doc-pfx}" ${CMAKE_SOURCE_DIR}/3rdparty-notices)
-otr_install_dir("${opentrack-doc-pfx}" "${CMAKE_SOURCE_DIR}/settings" "${CMAKE_SOURCE_DIR}/contrib")
+otr_install_dir("${opentrack-doc}" ${CMAKE_SOURCE_DIR}/3rdparty-notices)
+otr_install_dir("${opentrack-doc}" "${CMAKE_SOURCE_DIR}/settings" "${CMAKE_SOURCE_DIR}/contrib")
if(WIN32)
otr_install_misc(. FILES "${CMAKE_SOURCE_DIR}/bin/qt.conf")
otr_install_misc(. FILES "${CMAKE_SOURCE_DIR}/bin/cleye.config")
- otr_install_misc(${opentrack-hier-pfx} FILES "${CMAKE_SOURCE_DIR}/bin/cleye.config")
+ otr_install_misc(${opentrack-libexec} FILES "${CMAKE_SOURCE_DIR}/bin/cleye.config")
endif()
-otr_install_misc("${opentrack-doc-pfx}" FILES ${CMAKE_SOURCE_DIR}/README.md)
+otr_install_misc("${opentrack-doc}" FILES ${CMAKE_SOURCE_DIR}/README.md)
-otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/README.md")
-otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/.github/CONTRIBUTING.md")
-otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/WARRANTY.txt")
-otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/OPENTRACK-LICENSING.txt")
-otr_install_misc("${opentrack-doc-pfx}" FILES "${CMAKE_SOURCE_DIR}/AUTHORS.md")
+otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/README.md")
+otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/.github/CONTRIBUTING.md")
+otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/WARRANTY.txt")
+otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/OPENTRACK-LICENSING.txt")
+otr_install_misc("${opentrack-doc}" FILES "${CMAKE_SOURCE_DIR}/AUTHORS.md")
# this must be done last because the files may be in use already
# do it last so in case of file-in-use failure, the rest is installed
@@ -71,9 +71,13 @@ if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")
cleanup_visual_studio_debug()
endif()
-otr_install_exec("${opentrack-hier-pfx}" FILES "${CMAKE_SOURCE_DIR}/bin/freetrackclient.dll")
-otr_install_exec("${opentrack-hier-pfx}" FILES "${CMAKE_SOURCE_DIR}/bin/freetrackclient64.dll")
-otr_install_exec("${opentrack-hier-pfx}" FILES
+# For now copy third party needed files into a seperate direcvtory instead of the plugins directory
+if (APPLE)
+ set(OSX_POST_INSTALL_DIR "/../thirdparty")
+endif()
+otr_install_exec("${opentrack-libexec}${OSX_POST_INSTALL_DIR}" FILES "${CMAKE_SOURCE_DIR}/bin/freetrackclient.dll")
+otr_install_exec("${opentrack-libexec}${OSX_POST_INSTALL_DIR}" FILES "${CMAKE_SOURCE_DIR}/bin/freetrackclient64.dll")
+otr_install_exec("${opentrack-libexec}${OSX_POST_INSTALL_DIR}" FILES
"${CMAKE_SOURCE_DIR}/bin/NPClient.dll"
"${CMAKE_SOURCE_DIR}/bin/NPClient64.dll"
"${CMAKE_SOURCE_DIR}/bin/TrackIR.exe")
diff --git a/cmake/opentrack-opencv.cmake b/cmake/opentrack-opencv.cmake
index b8c3701c..40356418 100644
--- a/cmake/opentrack-opencv.cmake
+++ b/cmake/opentrack-opencv.cmake
@@ -5,7 +5,7 @@ find_package(OpenCV QUIET)
function(otr_install_opencv_libs)
foreach(k core features2d calib3d flann imgcodecs imgproc videoio)
- otr_install_lib("opencv_${k}" "${opentrack-hier-pfx}")
+ otr_install_lib("opencv_${k}" "${opentrack-libexec}")
endforeach()
endfunction()
diff --git a/cmake/opentrack-platform.cmake b/cmake/opentrack-platform.cmake
index 02c1b2f8..23f684f3 100644
--- a/cmake/opentrack-platform.cmake
+++ b/cmake/opentrack-platform.cmake
@@ -54,7 +54,6 @@ set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
set(CMAKE_C_VISIBILITY_PRESET hidden)
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
-set(CMAKE_MACOSX_RPATH OFF)
if(NOT WIN32 AND NOT APPLE)
include(opentrack-pkg-config)
@@ -119,8 +118,8 @@ if(MSVC)
add_definitions(-D_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1)
add_definitions(-D_SCL_SECURE_NO_WARNINGS)
- add_compile_options(-EHs-c-)
- add_definitions(-D_HAS_EXCEPTIONS=0)
+ add_compile_options(-EHsc)
+ #add_definitions(-D_HAS_EXCEPTIONS=0)
add_definitions(-D_ENABLE_EXTENDED_ALIGNED_STORAGE)
add_definitions(-D_ENABLE_ATOMIC_ALIGNMENT_FIX)
@@ -155,14 +154,6 @@ if(MSVC)
endforeach()
endif()
-if(APPLE)
- add_compile_definitions(-stdlib=libc++)
- add_link_options(-stdlib=libc++)
-
- add_link_options(-framework Cocoa -framework CoreFoundation -framework Carbon)
- link_libraries(objc z)
-endif()
-
if(NOT MSVC)
include(FindPkgConfig)
endif()
diff --git a/cmake/opentrack-qt.cmake b/cmake/opentrack-qt.cmake
index 8c92483c..41bd6291 100644
--- a/cmake/opentrack-qt.cmake
+++ b/cmake/opentrack-qt.cmake
@@ -2,19 +2,33 @@ include_guard(GLOBAL)
if(WIN32)
find_package(Qt5Gui REQUIRED COMPONENTS QWindowsIntegrationPlugin)
endif()
-find_package(Qt5 REQUIRED COMPONENTS Core Network Widgets LinguistTools Gui QUIET)
-find_package(Qt5 COMPONENTS SerialPort QUIET)
+set(qt-required-components Core Network Widgets LinguistTools Gui)
+set(qt-optional-components SerialPort)
+set(qt-imported-targets Qt5::Core Qt5::Gui Qt5::Network Qt5::SerialPort Qt5::Widgets)
+if(APPLE)
+ list(APPEND qt-required-components "DBus")
+ list(APPEND qt-optional-components "Multimedia")
+ list(APPEND qt-imported-targets Qt5::DBus Qt5::Multimedia)
+endif()
+
+find_package(Qt5 REQUIRED COMPONENTS ${qt-required-components} QUIET)
+find_package(Qt5 COMPONENTS ${qt-optional-components} QUIET)
set(MY_QT_LIBS ${Qt5Core_LIBRARIES} ${Qt5Gui_LIBRARIES} ${Qt5Widgets_LIBRARIES} ${Qt5Network_LIBRARIES})
+if(APPLE)
+ list(APPEND MY_QT_LIBS ${Qt5Multimedia_LIBRARIES} ${Qt5DBus_LIBRARIES})
+endif()
function(otr_install_qt_libs)
- foreach(i Qt5::Core Qt5::Gui Qt5::Network Qt5::SerialPort Qt5::Widgets)
+ foreach(i ${qt-imported-targets})
if(NOT TARGET "${i}")
continue()
endif()
otr_install_lib(${i} ".")
endforeach()
+ if(WIN32)
otr_install_lib(Qt5::QWindowsIntegrationPlugin "./platforms")
+ endif()
endfunction()
otr_install_qt_libs()
diff --git a/cmake/opentrack-rift.cmake b/cmake/opentrack-rift.cmake
deleted file mode 100644
index cdcfc946..00000000
--- a/cmake/opentrack-rift.cmake
+++ /dev/null
@@ -1,38 +0,0 @@
-include_guard(GLOBAL)
-function(otr_rift proj opt)
- if(${opt})
- set(link-flags)
- set(c-flags)
- if(APPLE)
- set(link-flags "-framework CoreFoundation -framework CoreGraphics -framework IOKit -framework Quartz")
- set(c-flags "-fno-strict-aliasing")
- elseif(NOT MSVC)
- set(c-flags "-fno-strict-aliasing")
- endif()
- otr_module(${proj} LINK ${link-flags} COMPILE ${c-flags})
- set(proj "opentrack-${proj}")
- target_include_directories(${proj} SYSTEM PUBLIC ${${opt}}/Include ${${opt}}/Src)
- set(c-flags)
- set(link-flags)
- if(MSVC)
- set(ext lib)
- set(p)
- else()
- set(ext a)
- set(p lib)
- endif()
- if(MSVC)
- set(pfx "")
- else()
- set(pfx "lib")
- endif()
- target_link_libraries(${proj} ${${opt}}/${pfx}LibOVR.${ext})
- if(WIN32)
- target_link_libraries(${proj} winmm setupapi ws2_32 imagehlp wbemuuid)
- set(ext)
- set(p)
- elseif(NOT APPLE)
- target_link_libraries(${proj} udev Xinerama)
- endif()
- endif()
-endfunction()