summaryrefslogtreecommitdiff
path: root/indra/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'indra/cmake')
-rw-r--r--indra/cmake/00-Common.cmake2
-rw-r--r--indra/cmake/LLAddBuildTest.cmake12
-rw-r--r--indra/cmake/LLKDU.cmake14
-rw-r--r--indra/cmake/Linking.cmake11
-rw-r--r--indra/cmake/WebRTC.cmake32
-rw-r--r--indra/cmake/xxHash.cmake5
6 files changed, 41 insertions, 35 deletions
diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake
index 69eeff0a79..167964fa16 100644
--- a/indra/cmake/00-Common.cmake
+++ b/indra/cmake/00-Common.cmake
@@ -34,7 +34,7 @@ add_compile_definitions(BOOST_BIND_GLOBAL_PLACEHOLDERS)
# Force enable SSE2 instructions in GLM per the manual
# https://github.com/g-truc/glm/blob/master/manual.md#section2_10
-add_compile_definitions(GLM_FORCE_DEFAULT_ALIGNED_GENTYPES=1 GLM_FORCE_SSE2=1)
+add_compile_definitions(GLM_FORCE_DEFAULT_ALIGNED_GENTYPES=1 GLM_ENABLE_EXPERIMENTAL=1)
# Configure crash reporting
set(RELEASE_CRASH_REPORTING OFF CACHE BOOL "Enable use of crash reporting in release builds")
diff --git a/indra/cmake/LLAddBuildTest.cmake b/indra/cmake/LLAddBuildTest.cmake
index 6408f1200c..83725ffd1b 100644
--- a/indra/cmake/LLAddBuildTest.cmake
+++ b/indra/cmake/LLAddBuildTest.cmake
@@ -92,6 +92,13 @@ MACRO(LL_ADD_PROJECT_UNIT_TESTS project sources)
target_include_directories (PROJECT_${project}_TEST_${name} PRIVATE ${LIBS_OPEN_DIR}/test )
set_target_properties(PROJECT_${project}_TEST_${name} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}")
+ if (DARWIN)
+ set_target_properties(PROJECT_${project}_TEST_${name}
+ PROPERTIES
+ BUILD_WITH_INSTALL_RPATH 1
+ INSTALL_RPATH "@executable_path/Resources"
+ )
+ endif(DARWIN)
#
# Per-codefile additional / external project dep and lib dep property extraction
@@ -225,7 +232,10 @@ FUNCTION(LL_ADD_INTEGRATION_TEST
# test binaries always need to be signed for local development
set_target_properties(INTEGRATION_TEST_${testname}
PROPERTIES
- XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "-")
+ XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "-"
+ BUILD_WITH_INSTALL_RPATH 1
+ INSTALL_RPATH "@executable_path/Resources"
+ )
endif ()
# Add link deps to the executable
diff --git a/indra/cmake/LLKDU.cmake b/indra/cmake/LLKDU.cmake
index 6d27dcc286..dc98335a28 100644
--- a/indra/cmake/LLKDU.cmake
+++ b/indra/cmake/LLKDU.cmake
@@ -13,15 +13,17 @@ add_library( ll::kdu INTERFACE IMPORTED )
if (USE_KDU)
include(Prebuilt)
use_prebuilt_binary(kdu)
- if (WINDOWS)
- target_link_libraries( ll::kdu INTERFACE kdu.lib)
- else (WINDOWS)
- target_link_libraries( ll::kdu INTERFACE libkdu.a)
- endif (WINDOWS)
+
+ find_library(KDU_LIBRARY
+ NAMES
+ kdu
+ PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
+
+ target_link_libraries(ll::kdu INTERFACE ${KDU_LIBRARY})
target_include_directories( ll::kdu SYSTEM INTERFACE
${AUTOBUILD_INSTALL_DIR}/include/kdu
${LIBS_OPEN_DIR}/llkdu
)
- target_compile_definitions(ll::kdu INTERFACE KDU_X86_INTRINSICS=1 KDU_NO_THREADS=1)
+ target_compile_definitions(ll::kdu INTERFACE KDU_NO_THREADS=1)
endif (USE_KDU)
diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake
index 1093fc7f71..3f4d0ed534 100644
--- a/indra/cmake/Linking.cmake
+++ b/indra/cmake/Linking.cmake
@@ -38,9 +38,10 @@ endif ()
# windows) and CMAKE_BUILD_TYPE on Makefile based generators (like linux). The reason for this is
# that CMAKE_BUILD_TYPE is essentially meaningless at configuration time for IDE generators and
# CMAKE_CFG_INTDIR is meaningless at build time for Makefile generators
-
-link_directories(${AUTOBUILD_INSTALL_DIR}/lib/$<LOWER_CASE:$<CONFIG>>)
-link_directories(${AUTOBUILD_INSTALL_DIR}/lib/release)
+if(NOT DARWIN)
+ link_directories(${AUTOBUILD_INSTALL_DIR}/lib/$<LOWER_CASE:$<CONFIG>>)
+ link_directories(${AUTOBUILD_INSTALL_DIR}/lib/release)
+endif(NOT DARWIN)
add_library( ll::oslibraries INTERFACE IMPORTED )
@@ -75,6 +76,8 @@ else()
find_library(AGL_LIBRARY AGL)
find_library(APPKIT_LIBRARY AppKit)
find_library(COREAUDIO_LIBRARY CoreAudio)
+ find_library(COREGRAPHICS_LIBRARY CoreGraphics)
+ find_library(AUDIOTOOLBOX_LIBRARY AudioToolbox)
target_link_libraries( ll::oslibraries INTERFACE
${COCOA_LIBRARY}
@@ -84,6 +87,8 @@ else()
${AGL_LIBRARY}
${APPKIT_LIBRARY}
${COREAUDIO_LIBRARY}
+ ${AUDIOTOOLBOX_LIBRARY}
+ ${COREGRAPHICS_LIBRARY}
)
endif()
diff --git a/indra/cmake/WebRTC.cmake b/indra/cmake/WebRTC.cmake
index 230522a40a..7fefaa4152 100644
--- a/indra/cmake/WebRTC.cmake
+++ b/indra/cmake/WebRTC.cmake
@@ -1,32 +1,24 @@
# -*- cmake -*-
+include_guard()
+
include(Linking)
include(Prebuilt)
-include_guard()
-
add_library( ll::webrtc INTERFACE IMPORTED )
target_include_directories( ll::webrtc SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/webrtc" "${LIBS_PREBUILT_DIR}/include/webrtc/third_party/abseil-cpp")
use_prebuilt_binary(webrtc)
-if (WINDOWS)
- target_link_libraries( ll::webrtc INTERFACE webrtc.lib )
-elseif (DARWIN)
- FIND_LIBRARY(COREAUDIO_LIBRARY CoreAudio)
- FIND_LIBRARY(COREGRAPHICS_LIBRARY CoreGraphics)
- FIND_LIBRARY(AUDIOTOOLBOX_LIBRARY AudioToolbox)
- FIND_LIBRARY(COREFOUNDATION_LIBRARY CoreFoundation)
- FIND_LIBRARY(COCOA_LIBRARY Cocoa)
+find_library(WEBRTC_LIBRARY
+ NAMES
+ webrtc
+ PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
+
+target_link_libraries( ll::webrtc INTERFACE ${WEBRTC_LIBRARY} )
- target_link_libraries( ll::webrtc INTERFACE
- libwebrtc.a
- ${COREAUDIO_LIBRARY}
- ${AUDIOTOOLBOX_LIBRARY}
- ${COREGRAPHICS_LIBRARY}
- ${COREFOUNDATION_LIBRARY}
- ${COCOA_LIBRARY}
- )
+if (DARWIN)
+ target_link_libraries( ll::webrtc INTERFACE ll::oslibraries )
elseif (LINUX)
- target_link_libraries( ll::webrtc INTERFACE libwebrtc.a X11 )
-endif (WINDOWS)
+ target_link_libraries( ll::webrtc INTERFACE X11 )
+endif ()
diff --git a/indra/cmake/xxHash.cmake b/indra/cmake/xxHash.cmake
index a7c1cba62c..e4f8517d9b 100644
--- a/indra/cmake/xxHash.cmake
+++ b/indra/cmake/xxHash.cmake
@@ -1,8 +1,5 @@
# -*- cmake -*-
-if (XXHASH_CMAKE_INCLUDED)
- return()
-endif (XXHASH_CMAKE_INCLUDED)
-set (XXHASH_CMAKE_INCLUDED TRUE)
+include_guard()
include(Prebuilt)
use_prebuilt_binary(xxhash)