diff options
Diffstat (limited to 'indra/cmake')
27 files changed, 216 insertions, 13 deletions
| diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 1207979762..4d8ebfdae2 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -106,7 +106,7 @@ if (WINDOWS)  endif (WINDOWS) -if (LINUX) +if (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")    set(CMAKE_SKIP_RPATH TRUE)     # EXTERNAL_TOS @@ -134,9 +134,12 @@ if (LINUX)            -pthread            -Wno-parentheses            -Wno-deprecated -          -fvisibility=hidden    ) +  if (NOT BUILD_SHARED_LIBS) +    add_compile_options(-fvisibility=hidden) +  endif (NOT BUILD_SHARED_LIBS) +    if (ADDRESS_SIZE EQUAL 32)      add_compile_options(-march=pentium4)    endif (ADDRESS_SIZE EQUAL 32) @@ -147,7 +150,7 @@ if (LINUX)    set(CMAKE_CXX_LINK_FLAGS "-Wl,--no-keep-memory")    set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}") -endif (LINUX) +endif (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")  if (DARWIN) diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake index 21139319c3..72486f110d 100644 --- a/indra/cmake/APR.cmake +++ b/indra/cmake/APR.cmake @@ -5,6 +5,15 @@ include_guard()  add_library( ll::apr INTERFACE IMPORTED ) +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  include(FindPkgConfig) +  pkg_check_modules(Apr REQUIRED apr-1 apr-util-1) +  target_include_directories(ll::apr SYSTEM INTERFACE ${Apr_INCLUDE_DIRS}) +  target_link_directories(ll::apr INTERFACE ${Apr_LIBRARY_DIRS}) +  target_link_libraries(ll::apr INTERFACE ${Apr_LIBRARIES}) +  return () +endif () +  use_system_binary( apr apr-util )  use_prebuilt_binary(apr_suite) diff --git a/indra/cmake/Audio.cmake b/indra/cmake/Audio.cmake index 38547bb017..4c1a141dc5 100644 --- a/indra/cmake/Audio.cmake +++ b/indra/cmake/Audio.cmake @@ -4,6 +4,15 @@ include(Prebuilt)  include_guard()  add_library( ll::vorbis INTERFACE IMPORTED ) +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  include(FindPkgConfig) +  pkg_check_modules(Vorbis REQUIRED ogg vorbis vorbisenc vorbisfile) +  target_include_directories(ll::vorbis SYSTEM INTERFACE ${Vorbis_INCLUDE_DIRS}) +  target_link_directories(ll::vorbis INTERFACE ${Vorbis_LIBRARY_DIRS}) +  target_link_libraries(ll::vorbis INTERFACE ${Vorbis_LIBRARIES}) +  return () +endif () +  use_system_binary(vorbis)  use_prebuilt_binary(ogg_vorbis)  target_include_directories( ll::vorbis SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include ) diff --git a/indra/cmake/Boost.cmake b/indra/cmake/Boost.cmake index 601a23a86d..0c5abd885c 100644 --- a/indra/cmake/Boost.cmake +++ b/indra/cmake/Boost.cmake @@ -8,6 +8,21 @@ if( USE_CONAN )    target_link_libraries( ll::boost INTERFACE CONAN_PKG::boost )    target_compile_definitions( ll::boost INTERFACE BOOST_ALLOW_DEPRECATED_HEADERS BOOST_BIND_GLOBAL_PLACEHOLDERS )    return() +elseif( NOT USE_AUTOBUILD_3P ) +  find_package( Boost REQUIRED ) +  target_compile_definitions( ll::boost INTERFACE BOOST_BIND_GLOBAL_PLACEHOLDERS ) +  if (DARWIN) +    set(sfx "-mt") +  endif() +  target_link_libraries( ll::boost INTERFACE +	  boost_context${sfx} +	  boost_fiber${sfx} +	  boost_filesystem${sfx} +	  boost_program_options${sfx} +	  boost_regex${sfx} +	  boost_system${sfx} +	  boost_thread${sfx}) +  return()  endif()  use_prebuilt_binary(boost) diff --git a/indra/cmake/BuildVersion.cmake b/indra/cmake/BuildVersion.cmake index b531f29ee2..a56829bf14 100644 --- a/indra/cmake/BuildVersion.cmake +++ b/indra/cmake/BuildVersion.cmake @@ -55,4 +55,10 @@ if (NOT DEFINED VIEWER_SHORT_VERSION) # will be true in indra/, false in indra/n          "LL_VIEWER_VERSION_BUILD=${VIEWER_VERSION_REVISION}"          "LLBUILD_CONFIG=\"${CMAKE_BUILD_TYPE}\""          ) +if (PACKAGE) +	include(CPack) +	set(CPACK_PACKAGE_VERSION +		${VIEWER_VERSION_MAJOR}.${VIEWER_VERSION_MINOR}.${VIEWER_VERSION_PATCH}.${VIEWER_VERSION_REVISION} +		CACHE STRING "Viewer major.minor.patch.revision versions.") +endif (PACKAGE)  endif (NOT DEFINED VIEWER_SHORT_VERSION) diff --git a/indra/cmake/ConfigurePkgConfig.cmake b/indra/cmake/ConfigurePkgConfig.cmake index 55d865392e..a2d5b31e25 100644 --- a/indra/cmake/ConfigurePkgConfig.cmake +++ b/indra/cmake/ConfigurePkgConfig.cmake @@ -14,7 +14,7 @@ IF("$ENV{PKG_CONFIG_LIBDIR}" STREQUAL "")    else (ADDRESS_SIZE EQUAL 32)      SET(PKG_CONFIG_NO_MULTI_GUESS /usr/lib64 /usr/lib)      SET(PKG_CONFIG_NO_MULTI_LOCAL_GUESS /usr/local/lib64 /usr/local/lib) -    SET(PKG_CONFIG_MULTI_GUESS /usr/local/lib/x86_64-linux-gnu) +    SET(PKG_CONFIG_MULTI_GUESS /usr/lib/x86_64-linux-gnu)      SET(PKG_CONFIG_MULTI_LOCAL_GUESS /usr/local/lib/x86_64-linux-gnu)    endif (ADDRESS_SIZE EQUAL 32) diff --git a/indra/cmake/FreeType.cmake b/indra/cmake/FreeType.cmake index 77140af641..fbf188d100 100644 --- a/indra/cmake/FreeType.cmake +++ b/indra/cmake/FreeType.cmake @@ -4,6 +4,15 @@ include(Prebuilt)  include_guard()  add_library( ll::freetype INTERFACE IMPORTED ) +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  include(FindPkgConfig) +  pkg_check_modules(Freetype REQUIRED freetype2) +  target_include_directories( ll::freetype SYSTEM INTERFACE ${Freetype_INCLUDE_DIRS} ) +  target_link_directories( ll::freetype INTERFACE ${Freetype_LIBRARY_DIRS} ) +  target_link_libraries( ll::freetype INTERFACE ${Freetype_LIBRARIES} ) +  return () +endif () +  use_system_binary(freetype)  use_prebuilt_binary(freetype)  target_include_directories( ll::freetype SYSTEM INTERFACE  ${LIBS_PREBUILT_DIR}/include/freetype2/) diff --git a/indra/cmake/GLEXT.cmake b/indra/cmake/GLEXT.cmake index 434b6f0ee8..2e46d1bea8 100644 --- a/indra/cmake/GLEXT.cmake +++ b/indra/cmake/GLEXT.cmake @@ -3,6 +3,11 @@ include(Prebuilt)  include(GLH)  add_library( ll::glext INTERFACE IMPORTED ) + +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  return () +endif () +  if (WINDOWS OR LINUX)    use_system_binary(glext)    use_prebuilt_binary(glext) diff --git a/indra/cmake/GLH.cmake b/indra/cmake/GLH.cmake index 0cefc3543a..09f7d568be 100644 --- a/indra/cmake/GLH.cmake +++ b/indra/cmake/GLH.cmake @@ -3,5 +3,11 @@ include(Prebuilt)  add_library( ll::glh_linear INTERFACE IMPORTED ) +if (USESYSTEMLIBS) +	target_include_directories(ll::glh_linear SYSTEM INTERFACE +		${CMAKE_SYSROOT}/usr/local/include) +	return () +endif () +  use_system_binary( glh_linear )  use_prebuilt_binary(glh_linear) diff --git a/indra/cmake/Hunspell.cmake b/indra/cmake/Hunspell.cmake index bb037c0237..96c75ad262 100644 --- a/indra/cmake/Hunspell.cmake +++ b/indra/cmake/Hunspell.cmake @@ -2,7 +2,9 @@  include(Prebuilt)  include_guard() +if (USE_AUTOBUILD_3P OR USE_CONAN)  use_prebuilt_binary(dictionaries) +endif ()  add_library( ll::hunspell INTERFACE IMPORTED )  use_system_binary(hunspell) diff --git a/indra/cmake/LLPhysicsExtensions.cmake b/indra/cmake/LLPhysicsExtensions.cmake index 36821447c9..b2151dc781 100644 --- a/indra/cmake/LLPhysicsExtensions.cmake +++ b/indra/cmake/LLPhysicsExtensions.cmake @@ -26,6 +26,9 @@ if (HAVOK)  elseif (HAVOK_TPV)     use_prebuilt_binary(llphysicsextensions_tpv)     target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensions_tpv) +elseif (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +   target_link_libraries( llphysicsextensions_impl INTERFACE llphysicsextensionsstub) +   return ()  else (HAVOK)     use_prebuilt_binary(llphysicsextensions_stub)     set(LLPHYSICSEXTENSIONS_SRC_DIR ${LIBS_PREBUILT_DIR}/llphysicsextensions/stub) diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake index 3d8499cbc3..387cae61d8 100644 --- a/indra/cmake/LLPrimitive.cmake +++ b/indra/cmake/LLPrimitive.cmake @@ -11,6 +11,16 @@ add_library( ll::minizip-ng INTERFACE IMPORTED )  add_library( ll::libxml INTERFACE IMPORTED )  add_library( ll::colladadom INTERFACE IMPORTED ) +if ( NOT (USE_AUTOBUILD_3P OR USE_CONAN) ) +  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} ) +  return () +endif () +  # ND, needs fixup in collada conan pkg  if( USE_CONAN )    target_include_directories( ll::colladadom SYSTEM INTERFACE diff --git a/indra/cmake/LLWindow.cmake b/indra/cmake/LLWindow.cmake index b36e970560..8cb383d718 100644 --- a/indra/cmake/LLWindow.cmake +++ b/indra/cmake/LLWindow.cmake @@ -7,6 +7,19 @@ include(Prebuilt)  include_guard()  add_library( ll::SDL INTERFACE IMPORTED ) +if (USESYSTEMLIBS) +  include(FindPkgConfig) +  pkg_check_modules(Sdl2 REQUIRED sdl2) +  target_compile_definitions( ll::SDL INTERFACE LL_SDL=1) +  target_include_directories(ll::SDL SYSTEM INTERFACE ${Sdl2_INCLUDE_DIRS}) +  target_link_directories(ll::SDL INTERFACE ${Sdl2_LIBRARY_DIRS}) +  if (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD") +    list(APPEND Sdl2_LIBRARIES X11) +  endif () +  target_link_libraries(ll::SDL INTERFACE ${Sdl2_LIBRARIES}) +  return () +endif () +  if (LINUX)    #Must come first as use_system_binary can exit this file early diff --git a/indra/cmake/LibVLCPlugin.cmake b/indra/cmake/LibVLCPlugin.cmake index 599ce02844..f4ec34ec1b 100644 --- a/indra/cmake/LibVLCPlugin.cmake +++ b/indra/cmake/LibVLCPlugin.cmake @@ -5,9 +5,26 @@ include(Prebuilt)  include_guard()  add_library( ll::libvlc INTERFACE IMPORTED ) +if (USE_AUTOBUILD_3P OR USE_CONAN)  use_prebuilt_binary(vlc-bin)  set(LIBVLCPLUGIN ON CACHE BOOL          "LIBVLCPLUGIN support for the llplugin/llmedia test apps.") +else () +    include(FindPkgConfig) +    if (DARWIN) +        set(CMAKE_PREFIX_PATH "/opt/local/libexec/vlc3/lib/pkgconfig") +        pkg_check_modules(Libvlc REQUIRED libvlc) +        target_link_libraries( ll::libvlc INTERFACE vlccore ) +    else () +        pkg_check_modules(Libvlc REQUIRED libvlc vlc-plugin) +    endif () +    target_include_directories( ll::libvlc SYSTEM INTERFACE ${Libvlc_INCLUDE_DIRS} ) +    target_link_directories( ll::libvlc INTERFACE ${Libvlc_LIBRARY_DIRS} ) +    target_link_libraries( ll::libvlc INTERFACE ${Libvlc_LIBRARIES} ) +    set(LIBVLCPLUGIN ON CACHE BOOL +            "LIBVLCPLUGIN support for the llplugin/llmedia test apps.") +    return() +endif ()  if (WINDOWS)      target_link_libraries( ll::libvlc INTERFACE diff --git a/indra/cmake/LibraryInstall.cmake b/indra/cmake/LibraryInstall.cmake new file mode 100644 index 0000000000..01838fe42e --- /dev/null +++ b/indra/cmake/LibraryInstall.cmake @@ -0,0 +1,6 @@ +list(REMOVE_ITEM ${PROJECT_NAME}_HEADER_FILES CMakeLists.txt) +#install(FILES ${${PROJECT_NAME}_HEADER_FILES} +#	DESTINATION include/${PROJECT_NAME}) +if (BUILD_SHARED_LIBS) +	install(TARGETS ${PROJECT_NAME} DESTINATION lib) +endif () diff --git a/indra/cmake/Linking.cmake b/indra/cmake/Linking.cmake index 1ce21c11f9..65f333b30a 100644 --- a/indra/cmake/Linking.cmake +++ b/indra/cmake/Linking.cmake @@ -65,7 +65,7 @@ elseif (WINDOWS)            rpcrt4.lib            legacy_stdio_definitions            ) -else() +elseif (DARWIN)    include(CMakeFindFrameworks)    find_library(COREFOUNDATION_LIBRARY CoreFoundation)    find_library(CARBON_LIBRARY Carbon) diff --git a/indra/cmake/Meshoptimizer.cmake b/indra/cmake/Meshoptimizer.cmake index fd144d2b97..70b3a2c088 100644 --- a/indra/cmake/Meshoptimizer.cmake +++ b/indra/cmake/Meshoptimizer.cmake @@ -6,6 +6,12 @@ include(Prebuilt)  include_guard()  add_library( ll::meshoptimizer INTERFACE IMPORTED ) +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  target_include_directories( ll::meshoptimizer SYSTEM INTERFACE ${CMAKE_SYSROOT}/usr/local/include ) +  target_link_libraries( ll::meshoptimizer INTERFACE meshoptimizer) +  return () +endif () +  use_system_binary(meshoptimizer)  use_prebuilt_binary(meshoptimizer) diff --git a/indra/cmake/OPENAL.cmake b/indra/cmake/OPENAL.cmake index 0b6a7c2853..cc7deac2d9 100644 --- a/indra/cmake/OPENAL.cmake +++ b/indra/cmake/OPENAL.cmake @@ -18,6 +18,17 @@ endif()  if (USE_OPENAL)    add_library( ll::openal INTERFACE IMPORTED ) + +  if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +    target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1) +    include(FindPkgConfig) +    pkg_check_modules(Openal REQUIRED freealut) +    target_include_directories(ll::openal SYSTEM INTERFACE ${Openal_INCLUDE_DIRS}) +    target_link_directories(ll::openal INTERFACE ${Openal_LIBRARY_DIRS}) +    target_link_libraries(ll::openal INTERFACE ${Openal_LIBRARIES}) +    return () +  endif () +    target_include_directories( ll::openal SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/AL")    target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1)    use_prebuilt_binary(openal) diff --git a/indra/cmake/OpenJPEG.cmake b/indra/cmake/OpenJPEG.cmake index c4aab2e9e5..83b959e140 100644 --- a/indra/cmake/OpenJPEG.cmake +++ b/indra/cmake/OpenJPEG.cmake @@ -4,8 +4,17 @@ include(Prebuilt)  include_guard()  add_library( ll::openjpeg INTERFACE IMPORTED ) -use_system_binary(openjpeg) -use_prebuilt_binary(openjpeg) +#if (USESYSTEMLIBS) +#  include(FindPkgConfig) +#  pkg_check_modules(Openjpeg REQUIRED libopenjp2) +#  target_include_directories(ll::openjpeg SYSTEM INTERFACE ${Openjpeg_INCLUDE_DIRS}) +#  target_link_directories(ll::openjpeg INTERFACE ${Openjpeg_LIBRARY_DIRS}) +#  target_link_libraries(ll::openjpeg INTERFACE ${Openjpeg_LIBRARIES}) +#  return () +#endif () + +#use_system_binary(openjpeg) +#use_prebuilt_binary(openjpeg)  target_link_libraries(ll::openjpeg INTERFACE openjp2 )  target_include_directories( ll::openjpeg SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/openjpeg) diff --git a/indra/cmake/OpenSSL.cmake b/indra/cmake/OpenSSL.cmake index 3387c74f45..c9147f1d5e 100644 --- a/indra/cmake/OpenSSL.cmake +++ b/indra/cmake/OpenSSL.cmake @@ -4,8 +4,11 @@ include(Prebuilt)  include_guard()  add_library( ll::openssl INTERFACE IMPORTED ) +if (USE_AUTOBUILD_3P OR USE_CONAN)  use_system_binary(openssl)  use_prebuilt_binary(openssl) +endif () +  if (WINDOWS)    target_link_libraries(ll::openssl INTERFACE libssl libcrypto)  elseif (LINUX) @@ -13,5 +16,6 @@ elseif (LINUX)  else()    target_link_libraries(ll::openssl INTERFACE ssl crypto)  endif (WINDOWS) +if (USE_AUTOBUILD_3P OR USE_CONAN)  target_include_directories( ll::openssl SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include) - +endif () diff --git a/indra/cmake/Prebuilt.cmake b/indra/cmake/Prebuilt.cmake index 634cc15c21..b0acae279b 100644 --- a/indra/cmake/Prebuilt.cmake +++ b/indra/cmake/Prebuilt.cmake @@ -67,6 +67,22 @@ macro ( use_system_binary package )        endif()      endforeach()      return() +  elseif( NOT USE_AUTOBUILD_3P ) +    include(FindPkgConfig) +    pkg_check_modules(${package} ${package}) +    if( ${package}_FOUND ) +      target_link_directories( ll::${package} INTERFACE ${${package}_LIBRARY_DIRS} ) +    else() +      pkg_check_modules(${package} lib${package}) +      if( ${package}_FOUND ) +        target_link_directories( ll::${package} INTERFACE ${${package}_LIBRARY_DIRS} ) +      else() +        find_package( ${package} REQUIRED ) +      endif() +    endif() +    target_include_directories( ll::${package} SYSTEM INTERFACE ${${package}_INCLUDE_DIRS} ) +    target_link_libraries( ll::${package} INTERFACE ${${package}_LIBRARIES} ) +    return()    endif()  endmacro() diff --git a/indra/cmake/UI.cmake b/indra/cmake/UI.cmake index 8b70192efc..03bdf4e434 100644 --- a/indra/cmake/UI.cmake +++ b/indra/cmake/UI.cmake @@ -4,12 +4,19 @@ include(FreeType)  add_library( ll::uilibraries INTERFACE IMPORTED ) -if (LINUX) +if (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")    target_compile_definitions(ll::uilibraries INTERFACE LL_GTK=1 LL_X11=1 )    if( USE_CONAN )      target_link_libraries( ll::uilibraries INTERFACE CONAN_PKG::gtk )      return() +  elseif( NOT USE_AUTOBUILD_3P ) +    include(FindPkgConfig) +    pkg_check_modules(Gtk2 REQUIRED gtk+-2.0) +    target_include_directories( ll::uilibraries SYSTEM INTERFACE ${Gtk2_INCLUDE_DIRS} ) +    target_link_directories( ll::uilibraries INTERFACE ${Gtk2_LIBRARY_DIRS} ) +    target_link_libraries( ll::uilibraries INTERFACE ${Gtk2_LIBRARIES} ) +    return()    endif()    use_prebuilt_binary(gtk-atk-pango-glib) @@ -30,7 +37,7 @@ if (LINUX)            Xinerama            ll::freetype            ) -endif (LINUX) +endif (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")  if( WINDOWS )    target_link_libraries( ll::uilibraries INTERFACE            opengl32 @@ -48,7 +55,9 @@ if( WINDOWS )            )  endif() +if (USE_AUTOBUILD_3P OR USE_CONAN)  target_include_directories( ll::uilibraries SYSTEM INTERFACE          ${LIBS_PREBUILT_DIR}/include          ) +endif () diff --git a/indra/cmake/UnixInstall.cmake b/indra/cmake/UnixInstall.cmake index 139be0a008..55b6889836 100644 --- a/indra/cmake/UnixInstall.cmake +++ b/indra/cmake/UnixInstall.cmake @@ -6,7 +6,7 @@ set(INSTALL OFF CACHE BOOL      "Generate install target.")  if (INSTALL) -  set(INSTALL_PREFIX /usr CACHE PATH +  set(INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH        "Top-level installation directory.")    if (EXISTS /lib64) @@ -21,11 +21,15 @@ if (INSTALL)    set(INSTALL_SHARE_DIR ${INSTALL_PREFIX}/share CACHE PATH        "Installation directory for read-only shared files.") -  set(APP_BINARY_DIR ${INSTALL_LIBRARY_DIR}/secondlife-${viewer_VERSION} +  set(APP_BINARY_DIR ${INSTALL_PREFIX}/bin        CACHE PATH        "Installation directory for binaries.") -  set(APP_SHARE_DIR ${INSTALL_SHARE_DIR}/secondlife-${viewer_VERSION} +  set(APP_SHARE_DIR ${INSTALL_SHARE_DIR}/${VIEWER_BINARY_NAME}        CACHE PATH        "Installation directory for read-only data files.") + +  set(APP_LIBEXEC_DIR ${INSTALL_PREFIX}/libexec/${VIEWER_BINARY_NAME} +      CACHE PATH +      "Installation directory for non-manual executables.")  endif (INSTALL) diff --git a/indra/cmake/ViewerMiscLibs.cmake b/indra/cmake/ViewerMiscLibs.cmake index 00f8b77106..52128414c9 100644 --- a/indra/cmake/ViewerMiscLibs.cmake +++ b/indra/cmake/ViewerMiscLibs.cmake @@ -1,6 +1,12 @@  # -*- cmake -*-  include(Prebuilt) +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  add_library( ll::fontconfig INTERFACE IMPORTED ) +  use_system_binary(fontconfig) +  return () +endif () +  if (LINUX)    #use_prebuilt_binary(libuuid)    add_library( ll::fontconfig INTERFACE IMPORTED ) diff --git a/indra/cmake/XmlRpcEpi.cmake b/indra/cmake/XmlRpcEpi.cmake index 6409f9d6e2..994df3d128 100644 --- a/indra/cmake/XmlRpcEpi.cmake +++ b/indra/cmake/XmlRpcEpi.cmake @@ -4,8 +4,20 @@ include(Prebuilt)  include_guard()  add_library( ll::xmlrpc-epi INTERFACE IMPORTED ) +if (USE_AUTOBUILD_3P OR USE_CONAN)  use_system_binary( xmlrpc-epi )  use_prebuilt_binary(xmlrpc-epi) +endif () +  target_link_libraries(ll::xmlrpc-epi INTERFACE xmlrpc-epi ) + +if (USE_AUTOBUILD_3P OR USE_CONAN)  target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include) +elseif (LINUX) +	target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE +		${CMAKE_SYSROOT}/usr/include/xmlrpc-epi) +elseif (DARWIN) +	target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE /usr/local/include) +	target_link_directories( ll::xmlrpc-epi INTERFACE /usr/local/lib) +endif () diff --git a/indra/cmake/ZLIBNG.cmake b/indra/cmake/ZLIBNG.cmake index 5d99cd9709..60164116dd 100644 --- a/indra/cmake/ZLIBNG.cmake +++ b/indra/cmake/ZLIBNG.cmake @@ -8,6 +8,12 @@ add_library( ll::zlib-ng INTERFACE IMPORTED )  if(USE_CONAN )    target_link_libraries( ll::zlib-ng INTERFACE CONAN_PKG::zlib )    return() +elseif(NOT USE_AUTOBUILD_3P) +  pkg_check_modules(Zlib REQUIRED zlib) +  target_include_directories( ll::zlib-ng SYSTEM INTERFACE ${Zlib_INCLUDE_DIRS}) +  target_link_directories( ll::zlib-ng INTERFACE ${Zlib_LIBRARY_DIRS} ) +  target_link_libraries( ll::zlib-ng INTERFACE ${Zlib_LIBRARIES}) +  return()  endif()  use_prebuilt_binary(zlib-ng) diff --git a/indra/cmake/xxHash.cmake b/indra/cmake/xxHash.cmake index a7c1cba62c..2dcab005ba 100644 --- a/indra/cmake/xxHash.cmake +++ b/indra/cmake/xxHash.cmake @@ -5,4 +5,11 @@ endif (XXHASH_CMAKE_INCLUDED)  set (XXHASH_CMAKE_INCLUDED TRUE)  include(Prebuilt) + +if (NOT (USE_AUTOBUILD_3P OR USE_CONAN)) +  include(FindPkgConfig) +  pkg_check_modules(Xxhash REQUIRED libxxhash) +  return () +endif () +  use_prebuilt_binary(xxhash) | 
