summaryrefslogtreecommitdiff
path: root/indra/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'indra/cmake')
-rw-r--r--indra/cmake/LLPrimitive.cmake18
-rw-r--r--indra/cmake/Prebuilt.cmake11
2 files changed, 15 insertions, 14 deletions
diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake
index 4aa46a5cf8..1e77ec3346 100644
--- a/indra/cmake/LLPrimitive.cmake
+++ b/indra/cmake/LLPrimitive.cmake
@@ -19,15 +19,11 @@ if( USE_CONAN )
endif()
if( USESYSTEMLIBS )
- if( LINUX )
- include(FindPkgConfig)
- pkg_check_modules(Colladadom REQUIRED collada-dom)
- target_compile_definitions( ll::colladadom INTERFACE COLLADA_DOM_SUPPORT141 )
- target_include_directories( ll::colladadom SYSTEM INTERFACE ${Colladadom_INCLUDE_DIRS} ${Colladadom_INCLUDE_DIRS}/1.4 )
- target_link_directories( ll::colladadom INTERFACE ${Colladadom_LIBRARY_DIRS} )
- target_link_libraries( ll::colladadom INTERFACE ${Colladadom_LIBRARIES} )
+ if( LINUX OR CMAKE_SYSTEM_NAME MATCHES FreeBSD)
+ # Build of the collada-dom for Linux and FreeBSD is done in
+ # indra/llprimitive/CMakeLists.txt
return ()
- endif( LINUX )
+ endif( LINUX OR CMAKE_SYSTEM_NAME MATCHES FreeBSD)
if ( ${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/colladadom_installed OR NOT ${colladadom_installed} EQUAL 0 )
if (NOT EXISTS ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r4.tar.gz)
file(DOWNLOAD
@@ -79,12 +75,6 @@ if( USESYSTEMLIBS )
)
endif (${COLLADADOM_RESULT})
else( DARWIN )
- if( CMAKE_SYSTEM_NAME MATCHES FreeBSD )
- execute_process(
- COMMAND sed -i "" -e "s/linux/FreeBSD/g" dae/daeUtils.cpp
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r4/src
- )
- endif( CMAKE_SYSTEM_NAME MATCHES FreeBSD )
execute_process(
COMMAND sed -i "" -e "s/SHARED/STATIC/g" 1.4/CMakeLists.txt
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r4/src
diff --git a/indra/cmake/Prebuilt.cmake b/indra/cmake/Prebuilt.cmake
index 8d911b339c..4034599fde 100644
--- a/indra/cmake/Prebuilt.cmake
+++ b/indra/cmake/Prebuilt.cmake
@@ -119,3 +119,14 @@ macro ( use_system_binary package )
endif()
endmacro()
+find_package(Patch)
+
+# Download the third party software archive and patch it.
+macro(prepare_thirdparty url filename dirname patch hash)
+ file(DOWNLOAD ${url} ${filename} EXPECTED_HASH SHA512=${hash})
+ file(ARCHIVE_EXTRACT INPUT ${filename}
+ DESTINATION ${CMAKE_SOURCE_DIR}/../..)
+ execute_process(COMMAND ${Patch_EXECUTABLE} "-p1" "-i"
+ ${CMAKE_SOURCE_DIR}/../patches/${patch}
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/../../${dirname})
+endmacro()