diff options
| author | Erik Kundiman <erik@megapahit.org> | 2024-08-31 21:25:47 +0800 | 
|---|---|---|
| committer | Erik Kundiman <erik@megapahit.org> | 2024-09-01 20:43:42 +0800 | 
| commit | 95582654e49422d51b55665c3f2821c848ad1cb8 (patch) | |
| tree | d6d03a887b8e1b6c3be1b139d63b1638c5d0fdcd /indra/cmake | |
| parent | ab3f483a3e5ed213882a83b882095cfdb6a4de57 (diff) | |
| parent | b0fefd62adbf51f32434ba077e9f52d8a9241d15 (diff) | |
Merge remote-tracking branch 'secondlife/release/2024.08-DeltaFPS' into 2024.08-DeltaFPS
Diffstat (limited to 'indra/cmake')
| -rw-r--r-- | indra/cmake/00-Common.cmake | 16 | ||||
| -rw-r--r-- | indra/cmake/APR.cmake | 14 | ||||
| -rw-r--r-- | indra/cmake/Audio.cmake | 19 | ||||
| -rw-r--r-- | indra/cmake/Boost.cmake | 11 | ||||
| -rw-r--r-- | indra/cmake/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | indra/cmake/CURL.cmake | 19 | ||||
| -rw-r--r-- | indra/cmake/Copy3rdPartyLibs.cmake | 69 | ||||
| -rw-r--r-- | indra/cmake/EXPAT.cmake | 19 | ||||
| -rw-r--r-- | indra/cmake/FreeType.cmake | 16 | ||||
| -rw-r--r-- | indra/cmake/Hunspell.cmake | 13 | ||||
| -rw-r--r-- | indra/cmake/JPEG.cmake | 10 | ||||
| -rw-r--r-- | indra/cmake/LLCommon.cmake | 2 | ||||
| -rw-r--r-- | indra/cmake/LLPrimitive.cmake | 31 | ||||
| -rw-r--r-- | indra/cmake/NGHTTP2.cmake | 8 | ||||
| -rw-r--r-- | indra/cmake/OpenSSL.cmake | 231 | ||||
| -rw-r--r-- | indra/cmake/PNG.cmake | 4 | ||||
| -rw-r--r-- | indra/cmake/Tracy.cmake | 22 | ||||
| -rw-r--r-- | indra/cmake/URIPARSER.cmake | 19 | ||||
| -rw-r--r-- | indra/cmake/XmlRpcEpi.cmake | 38 | ||||
| -rw-r--r-- | indra/cmake/ZLIBNG.cmake | 4 | 
20 files changed, 284 insertions, 283 deletions
| diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index afe20a6dd3..d51ae77662 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -33,6 +33,14 @@ add_compile_definitions( ADDRESS_SIZE=${ADDRESS_SIZE})  # -- which we do. Without one or the other, we get a ton of Boost warnings.  add_compile_definitions(BOOST_BIND_GLOBAL_PLACEHOLDERS) +if(CMAKE_OSX_ARCHITECTURES MATCHES arm64) +add_compile_definitions(GLM_FORCE_DEFAULT_ALIGNED_GENTYPES=1 GLM_FORCE_NEON=1) +else(CMAKE_OSX_ARCHITECTURES MATCHES arm64) +# 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) +endif(CMAKE_OSX_ARCHITECTURES MATCHES arm64) +  # Configure crash reporting  set(RELEASE_CRASH_REPORTING OFF CACHE BOOL "Enable use of crash reporting in release builds")  set(NON_RELEASE_CRASH_REPORTING OFF CACHE BOOL "Enable use of crash reporting in developer builds") @@ -61,9 +69,7 @@ if (WINDOWS)    # http://www.cmake.org/pipermail/cmake/2009-September/032143.html    string(REPLACE "/Zm1000" " " CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) -  # zlib has assembly-language object files incompatible with SAFESEH    add_link_options(/LARGEADDRESSAWARE -          /SAFESEH:NO            /NODEFAULTLIB:LIBCMT            /IGNORE:4099) @@ -82,6 +88,7 @@ if (WINDOWS)            /Oy-            /fp:fast            /MP +          /permissive-        )    # Nicky: x64 implies SSE2 @@ -105,11 +112,6 @@ if (WINDOWS)      string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")    endif() -  # workaround for github runner image breakage: -  # https://github.com/actions/runner-images/issues/10004#issuecomment-2153445161 -  # can be removed after the above issue is resolved and deployed across GHA -  add_compile_definitions(_DISABLE_CONSTEXPR_MUTEX_CONSTRUCTOR) -    # Allow use of sprintf etc    add_compile_definitions(_CRT_SECURE_NO_WARNINGS)  endif (WINDOWS) diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake index 72486f110d..506f792570 100644 --- a/indra/cmake/APR.cmake +++ b/indra/cmake/APR.cmake @@ -27,6 +27,7 @@ if (WINDOWS)            ${ARCH_PREBUILT_DIRS_RELEASE}/${APR_selector}apr-1.lib            ${ARCH_PREBUILT_DIRS_RELEASE}/${APR_selector}aprutil-1.lib            ) +  target_compile_definitions( ll::apr INTERFACE APR_DECLARE_STATIC=1 APU_DECLARE_STATIC=1 API_DECLARE_STATIC=1)  elseif (DARWIN)    if (LLCOMMON_LINK_SHARED)      set(APR_selector     "0.dylib") @@ -37,16 +38,15 @@ elseif (DARWIN)    endif (LLCOMMON_LINK_SHARED)    target_link_libraries( ll::apr INTERFACE -          libapr-1.${APR_selector} -          libaprutil-1.${APRUTIL_selector} +          ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.${APR_selector} +          ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.${APR_selector}            iconv            ) -else (WINDOWS) +else()    target_link_libraries( ll::apr INTERFACE -          apr-1 -          aprutil-1 -          uuid +          ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.a +          ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.a            rt            ) -endif (WINDOWS) +endif ()  target_include_directories( ll::apr SYSTEM INTERFACE  ${LIBS_PREBUILT_DIR}/include/apr-1 ) diff --git a/indra/cmake/Audio.cmake b/indra/cmake/Audio.cmake index 4388e1e259..3c4c0ef1a7 100644 --- a/indra/cmake/Audio.cmake +++ b/indra/cmake/Audio.cmake @@ -1,4 +1,5 @@  # -*- cmake -*- +include(Linking)  include(Prebuilt)  include_guard() @@ -18,8 +19,22 @@ use_prebuilt_binary(ogg_vorbis)  target_include_directories( ll::vorbis SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include )  if (WINDOWS) -  target_link_libraries(ll::vorbis INTERFACE ogg_static vorbis_static vorbisenc_static vorbisfile_static ) +  target_link_libraries(ll::vorbis INTERFACE +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libogg.lib +        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libogg.lib +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbisenc.lib +        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libvorbisenc.lib +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbisfile.lib +        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libvorbisfile.lib +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbis.lib +        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libvorbis.lib +    )  else (WINDOWS) -  target_link_libraries(ll::vorbis INTERFACE vorbisfile vorbis ogg vorbisenc ) +  target_link_libraries(ll::vorbis INTERFACE +        ${ARCH_PREBUILT_DIRS_RELEASE}/libogg.a +        ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbisenc.a +        ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbisfile.a +        ${ARCH_PREBUILT_DIRS_RELEASE}/libvorbis.a +        )  endif (WINDOWS) diff --git a/indra/cmake/Boost.cmake b/indra/cmake/Boost.cmake index a4f81917ea..f54eb3e3db 100644 --- a/indra/cmake/Boost.cmake +++ b/indra/cmake/Boost.cmake @@ -19,6 +19,7 @@ elseif( NOT USE_AUTOBUILD_3P )        /opt/local/libexec/boost/1.81/lib/libboost_regex-mt.a        /opt/local/libexec/boost/1.81/lib/libboost_system-mt.a        /opt/local/libexec/boost/1.81/lib/libboost_thread-mt.a +      /opt/local/libexec/boost/1.81/lib/libboost_url-mt.a        )    else (DARWIN)      find_package( Boost REQUIRED ) @@ -30,6 +31,7 @@ elseif( NOT USE_AUTOBUILD_3P )        boost_regex        boost_system        boost_thread +      boost_url        )    endif (DARWIN)    target_compile_definitions( ll::boost INTERFACE BOOST_BIND_GLOBAL_PLACEHOLDERS ) @@ -50,7 +52,8 @@ if (WINDOWS)            libboost_program_options-mt${addrsfx}            libboost_regex-mt${addrsfx}            libboost_system-mt${addrsfx} -          libboost_thread-mt${addrsfx}) +          libboost_thread-mt${addrsfx} +          libboost_url-mt${addrsfx})  elseif (LINUX)    target_link_libraries( ll::boost INTERFACE            boost_fiber-mt${addrsfx} @@ -60,7 +63,8 @@ elseif (LINUX)            boost_regex-mt${addrsfx}            boost_thread-mt${addrsfx}            boost_system-mt${addrsfx} -  ) +          boost_thread-mt${addrsfx} +          boost_url-mt${addrsfx})  elseif (DARWIN)    target_link_libraries( ll::boost INTERFACE            boost_context-mt${addrsfx} @@ -69,7 +73,8 @@ elseif (DARWIN)            boost_program_options-mt${addrsfx}            boost_regex-mt${addrsfx}            boost_system-mt${addrsfx} -          boost_thread-mt${addrsfx}) +          boost_thread-mt${addrsfx} +          boost_url-mt${addrsfx})  endif (WINDOWS)  if (LINUX) diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt index fa6cd8556b..f4d7589746 100644 --- a/indra/cmake/CMakeLists.txt +++ b/indra/cmake/CMakeLists.txt @@ -57,13 +57,11 @@ set(cmake_SOURCE_FILES          Tut.cmake          UI.cmake          UnixInstall.cmake -        URIPARSER.cmake          Variables.cmake          ViewerMiscLibs.cmake          VisualLeakDetector.cmake          LibVLCPlugin.cmake          WebRTC.cmake -        XmlRpcEpi.cmake          xxHash.cmake          ZLIBNG.cmake          ) diff --git a/indra/cmake/CURL.cmake b/indra/cmake/CURL.cmake index 08938ff3d8..c1ef0c3447 100644 --- a/indra/cmake/CURL.cmake +++ b/indra/cmake/CURL.cmake @@ -1,5 +1,6 @@  # -*- cmake -*-  include(Prebuilt) +include(Linking)  include_guard()  add_library( ll::libcurl INTERFACE IMPORTED ) @@ -89,8 +90,18 @@ elseif (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRA    file(WRITE ${PREBUILD_TRACKING_DIR}/curl_installed "${curl_installed}")  endif (DARWIN OR LINUX OR NOT USESYSTEMLIBS)  if (WINDOWS) -  target_link_libraries(ll::libcurl INTERFACE libcurl.lib) -else (WINDOWS) -  target_link_libraries(ll::libcurl INTERFACE libcurl.a) -endif (WINDOWS) +  target_link_libraries(ll::libcurl INTERFACE +    ${ARCH_PREBUILT_DIRS_RELEASE}/libcurl.lib +    ll::openssl +    ll::nghttp2 +    ll::zlib-ng +    ) +else () +  target_link_libraries(ll::libcurl INTERFACE +    ${ARCH_PREBUILT_DIRS_RELEASE}/libcurl.a +    ll::openssl +    ll::nghttp2 +    ll::zlib-ng +    ) +endif ()  target_include_directories( ll::libcurl SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include) diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index d78f2b90b8..6ac00fd131 100644 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -54,21 +54,12 @@ if(WINDOWS)      set(release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}")      set(release_files          openjp2.dll -        libapr-1.dll -        libaprutil-1.dll -        nghttp2.dll -        libhunspell.dll -        uriparser.dll          ) -    # OpenSSL -    if(ADDRESS_SIZE EQUAL 64) -        set(release_files ${release_files} libcrypto-1_1-x64.dll) -        set(release_files ${release_files} libssl-1_1-x64.dll) -    else(ADDRESS_SIZE EQUAL 64) -        set(release_files ${release_files} libcrypto-1_1.dll) -        set(release_files ${release_files} libssl-1_1.dll) -    endif(ADDRESS_SIZE EQUAL 64) +    if(LLCOMMON_LINK_SHARED) +        set(release_files ${release_files} libapr-1.dll) +        set(release_files ${release_files} libaprutil-1.dll) +    endif()      # Filenames are different for 32/64 bit BugSplat file and we don't      # have any control over them so need to branch. @@ -137,9 +128,14 @@ if(WINDOWS)      # Check each of them.      foreach(release_msvc_file              msvcp${MSVC_VER}.dll +            msvcp${MSVC_VER}_1.dll +            msvcp${MSVC_VER}_2.dll +            msvcp${MSVC_VER}_atomic_wait.dll +            msvcp${MSVC_VER}_codecvt_ids.dll              msvcr${MSVC_VER}.dll              vcruntime${MSVC_VER}.dll              vcruntime${MSVC_VER}_1.dll +            vcruntime${MSVC_VER}_threads.dll              )          if(redist_path AND EXISTS "${redist_path}/${release_msvc_file}")              MESSAGE(STATUS "Copying redist file from ${redist_path}/${release_msvc_file}") @@ -159,10 +155,6 @@ if(WINDOWS)              MESSAGE(STATUS "Redist lib ${release_msvc_file} not found")          endif()      endforeach() -    MESSAGE(STATUS "Will copy redist files for MSVC ${MSVC_VER}:") -    foreach(target ${third_party_targets}) -        MESSAGE(STATUS "${target}") -    endforeach()  elseif(DARWIN)      set(vivox_lib_dir "${ARCH_PREBUILT_DIRS_RELEASE}") @@ -176,20 +168,18 @@ elseif(DARWIN)         )      set(release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}")      set(release_files -        libapr-1.0.dylib -        libapr-1.dylib -        libaprutil-1.0.dylib -        libaprutil-1.dylib -        ${EXPAT_COPY} -        libhunspell-1.3.0.dylib          libndofdev.dylib -        libnghttp2.dylib -        libnghttp2.14.dylib -        liburiparser.dylib -        liburiparser.1.dylib -        liburiparser.1.0.27.dylib         ) +    if(LLCOMMON_LINK_SHARED) +        set(release_files ${release_files} +            libapr-1.0.dylib +            libapr-1.dylib +            libaprutil-1.0.dylib +            libaprutil-1.dylib +            ) +    endif() +      if (TARGET ll::openal)        list(APPEND release_files libalut.dylib libopenal.dylib)      endif () @@ -220,15 +210,28 @@ elseif(LINUX)      set(release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}")      # *FIX - figure out what to do with duplicate libalut.so here -brad      set(release_files -            ${EXPAT_COPY} -            ) +       )       if( USE_AUTOBUILD_3P )           list( APPEND release_files -                 libapr-1.so.0 -                 libaprutil-1.so.0 -                 libhunspell-1.3.so.0.0.0 +                 libatk-1.0.so +                 libfreetype.so.6.6.2 +                 libfreetype.so.6 +                 libopenjp2.so +                 libuuid.so.16 +                 libuuid.so.16.0.22 +                 libfontconfig.so.1.8.0 +                 libfontconfig.so.1 +                 libgmodule-2.0.so +                 libgobject-2.0.so                   ) + +        if(LLCOMMON_LINK_SHARED) +            set(release_files ${release_files} +                libapr-1.so.0 +                libaprutil-1.so.0 +                ) +        endif()       endif()  else(WINDOWS) diff --git a/indra/cmake/EXPAT.cmake b/indra/cmake/EXPAT.cmake index 327fe8aa72..1a0b8789dc 100644 --- a/indra/cmake/EXPAT.cmake +++ b/indra/cmake/EXPAT.cmake @@ -7,14 +7,13 @@ add_library( ll::expat INTERFACE IMPORTED )  use_system_binary(expat)  use_prebuilt_binary(expat)  if (WINDOWS) -    target_link_libraries( ll::expat  INTERFACE libexpatMT ) -    set(EXPAT_COPY libexpatMT.dll) -else (WINDOWS) -    target_link_libraries( ll::expat INTERFACE expat ) -    if (DARWIN) -        set(EXPAT_COPY libexpat.1.dylib libexpat.dylib) -    else () -        set(EXPAT_COPY libexpat.so.1 libexpat.so) -    endif () -endif (WINDOWS) +    target_compile_definitions( ll::expat INTERFACE XML_STATIC=1) +    target_link_libraries( ll::expat  INTERFACE +            debug ${ARCH_PREBUILT_DIRS_DEBUG}/libexpatd.lib +            optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libexpat.lib) +else () +    target_link_libraries( ll::expat  INTERFACE +            debug ${ARCH_PREBUILT_DIRS_DEBUG}/libexpat.a +            optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libexpat.a) +endif ()  target_include_directories( ll::expat SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include ) diff --git a/indra/cmake/FreeType.cmake b/indra/cmake/FreeType.cmake index 82ba8fc06e..7683fe364a 100644 --- a/indra/cmake/FreeType.cmake +++ b/indra/cmake/FreeType.cmake @@ -1,5 +1,6 @@  # -*- cmake -*-  include(Prebuilt) +include(Linking)  include_guard()  add_library( ll::freetype INTERFACE IMPORTED ) @@ -11,13 +12,14 @@ if (USESYSTEMLIBS)      target_link_directories( ll::freetype INTERFACE ${Freetype_LIBRARY_DIRS} )      target_link_libraries( ll::freetype INTERFACE ${Freetype_LIBRARIES} )      return () -endif () +endif (USESYSTEMLIBS) +use_system_binary(freetype) +use_prebuilt_binary(freetype) +target_include_directories( ll::freetype SYSTEM INTERFACE  ${LIBS_PREBUILT_DIR}/include/freetype2/) -    use_system_binary(freetype) -    use_prebuilt_binary(freetype) -    target_include_directories( ll::freetype SYSTEM INTERFACE  ${LIBS_PREBUILT_DIR}/include/freetype2/) -if( LINUX ) -    target_link_libraries( ll::freetype INTERFACE ${LIBS_PREBUILT_DIR}/lib/release/libfreetype.a ${LIBS_PREBUILT_DIR}/lib/release/libpng16.a) +if (WINDOWS) +    target_link_libraries( ll::freetype INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/freetype.lib)  else() -    target_link_libraries( ll::freetype INTERFACE freetype ) +    target_link_libraries( ll::freetype INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libfreetype.a)  endif() + diff --git a/indra/cmake/Hunspell.cmake b/indra/cmake/Hunspell.cmake index 96c75ad262..5fa22120e6 100644 --- a/indra/cmake/Hunspell.cmake +++ b/indra/cmake/Hunspell.cmake @@ -1,4 +1,5 @@  # -*- cmake -*- +include(Linking)  include(Prebuilt)  include_guard() @@ -10,10 +11,16 @@ add_library( ll::hunspell INTERFACE IMPORTED )  use_system_binary(hunspell)  use_prebuilt_binary(libhunspell)  if (WINDOWS) -  target_link_libraries( ll::hunspell INTERFACE libhunspell) +    target_compile_definitions( ll::hunspell INTERFACE HUNSPELL_STATIC=1) +    target_link_libraries( ll::hunspell INTERFACE +        debug ${ARCH_PREBUILT_DIRS_DEBUG}/libhunspell.lib +        optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libhunspell.lib +        )  elseif(DARWIN) -  target_link_libraries( ll::hunspell INTERFACE hunspell-1.3) +    target_link_libraries( ll::hunspell INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libhunspell-1.7.a +        )  elseif(LINUX) -  target_link_libraries( ll::hunspell INTERFACE hunspell-1.3) +    target_link_libraries( ll::hunspell INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libhunspell-1.7.a +        )  endif()  target_include_directories( ll::hunspell SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/hunspell) diff --git a/indra/cmake/JPEG.cmake b/indra/cmake/JPEG.cmake index 252d7852d4..ade5a070cc 100644 --- a/indra/cmake/JPEG.cmake +++ b/indra/cmake/JPEG.cmake @@ -7,12 +7,14 @@ include_guard()  add_library( ll::libjpeg INTERFACE IMPORTED )  use_system_binary(libjpeg) -use_prebuilt_binary(jpeglib) +use_prebuilt_binary(libjpeg-turbo)  if (LINUX) -  target_link_libraries( ll::libjpeg INTERFACE jpeg) +  target_link_libraries( ll::libjpeg INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libjpeg.a)  elseif (DARWIN) -  target_link_libraries( ll::libjpeg INTERFACE jpeg) +  target_link_libraries( ll::libjpeg INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libjpeg.a)  elseif (WINDOWS) -  target_link_libraries( ll::libjpeg INTERFACE jpeglib) +    target_link_libraries( ll::libjpeg INTERFACE +      debug ${ARCH_PREBUILT_DIRS_DEBUG}/jpeg.lib +      optimized ${ARCH_PREBUILT_DIRS_RELEASE}/jpeg.lib)  endif (LINUX)  target_include_directories( ll::libjpeg SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include) diff --git a/indra/cmake/LLCommon.cmake b/indra/cmake/LLCommon.cmake index 9e3707ff17..dd43ca4916 100644 --- a/indra/cmake/LLCommon.cmake +++ b/indra/cmake/LLCommon.cmake @@ -6,5 +6,3 @@ include(EXPAT)  include(Tracy)  include(xxHash)  include(ZLIBNG) - -include(XmlRpcEpi) diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake index 4aa46a5cf8..96895ae008 100644 --- a/indra/cmake/LLPrimitive.cmake +++ b/indra/cmake/LLPrimitive.cmake @@ -2,11 +2,11 @@  # these should be moved to their own cmake file  include(Prebuilt) +include(Linking)  include(Boost)  include_guard() -add_library( ll::pcre INTERFACE IMPORTED )  add_library( ll::minizip-ng INTERFACE IMPORTED )  add_library( ll::libxml INTERFACE IMPORTED )  add_library( ll::colladadom INTERFACE IMPORTED ) @@ -28,6 +28,12 @@ if( USESYSTEMLIBS )      target_link_libraries( ll::colladadom INTERFACE ${Colladadom_LIBRARIES} )      return ()    endif( LINUX ) +  include(FindPkgConfig) +  pkg_check_modules(Minizip REQUIRED minizip) +  pkg_check_modules(Libxml2 REQUIRED libxml-2.0) +  pkg_check_modules(Libpcrecpp libpcrecpp) +  target_link_libraries( ll::minizip-ng INTERFACE ${Minizip_LIBRARIES} ) +  target_link_libraries( ll::libxml INTERFACE ${Libxml2_LIBRARIES} )    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 @@ -40,10 +46,6 @@ if( USESYSTEMLIBS )        DESTINATION ${CMAKE_BINARY_DIR}        )      file(MAKE_DIRECTORY ${LIBS_PREBUILT_DIR}/include/collada/1.4) -    include(FindPkgConfig) -    pkg_check_modules(Minizip REQUIRED minizip) -    pkg_check_modules(Libxml2 REQUIRED libxml-2.0) -    pkg_check_modules(Libpcrecpp libpcrecpp)      if( DARWIN )        try_compile(COLLADADOM_RESULT          PROJECT colladadom @@ -137,32 +139,29 @@ use_system_binary( colladadom )  use_prebuilt_binary(colladadom)  use_prebuilt_binary(minizip-ng) # needed for colladadom -use_prebuilt_binary(pcre)  use_prebuilt_binary(libxml2) -endif( USESYSTEMLIBS ) - -target_link_libraries( ll::pcre INTERFACE pcrecpp pcre )  if (WINDOWS) -    target_link_libraries( ll::minizip-ng INTERFACE libminizip ) +    target_link_libraries( ll::minizip-ng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/minizip.lib )  else() -    target_link_libraries( ll::minizip-ng INTERFACE minizip ) +    target_link_libraries( ll::minizip-ng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libminizip.a )  endif()  if (WINDOWS) -    target_link_libraries( ll::libxml INTERFACE libxml2_a) +    target_link_libraries( ll::libxml INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libxml2.lib Bcrypt.lib)  else() -    target_link_libraries( ll::libxml INTERFACE xml2) +    target_link_libraries( ll::libxml INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libxml2.a)  endif() +endif( USESYSTEMLIBS )  target_include_directories( ll::colladadom SYSTEM INTERFACE          ${LIBS_PREBUILT_DIR}/include/collada          ${LIBS_PREBUILT_DIR}/include/collada/1.4          )  if (WINDOWS) -    target_link_libraries(ll::colladadom INTERFACE libcollada14dom23-s ll::libxml ll::minizip-ng ) +    target_link_libraries(ll::colladadom INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libcollada14dom23-s.lib ll::libxml ll::minizip-ng )  elseif (DARWIN) -    target_link_libraries(ll::colladadom INTERFACE collada14dom ll::libxml ll::minizip-ng) +    target_link_libraries(ll::colladadom INTERFACE collada14dom ll::boost ll::libxml ll::minizip-ng)  else () -    target_link_libraries(ll::colladadom INTERFACE collada14dom ll::libxml ll::minizip-ng) +    target_link_libraries(ll::colladadom INTERFACE collada14dom ll::boost ll::libxml ll::minizip-ng ${Libpcrecpp_LIBRARIES})  endif() diff --git a/indra/cmake/NGHTTP2.cmake b/indra/cmake/NGHTTP2.cmake index 6396a5bd01..7b2aa5971f 100644 --- a/indra/cmake/NGHTTP2.cmake +++ b/indra/cmake/NGHTTP2.cmake @@ -8,9 +8,7 @@ use_system_binary(nghttp2)  use_prebuilt_binary(nghttp2)  if (WINDOWS)    target_link_libraries( ll::nghttp2 INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/nghttp2.lib) -elseif (DARWIN) -  target_link_libraries( ll::nghttp2 INTERFACE libnghttp2.dylib) -else (WINDOWS) -  target_link_libraries( ll::nghttp2 INTERFACE libnghttp2.a ) -endif (WINDOWS) +else () +  target_link_libraries( ll::nghttp2 INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libnghttp2.a) +endif ()  target_include_directories( ll::nghttp2 SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/nghttp2) diff --git a/indra/cmake/OpenSSL.cmake b/indra/cmake/OpenSSL.cmake index 118ca84132..801850b7ab 100644 --- a/indra/cmake/OpenSSL.cmake +++ b/indra/cmake/OpenSSL.cmake @@ -1,5 +1,6 @@  # -*- cmake -*-  include(Prebuilt) +include(Linking)  include_guard()  add_library( ll::openssl INTERFACE IMPORTED ) @@ -42,145 +43,145 @@ use_prebuilt_binary(openssl)      endif (NOT ${ssl_archs} STREQUAL ${CMAKE_OSX_ARCHITECTURES})    endif (DARWIN)  elseif (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/openssl_installed OR NOT ${openssl_installed} EQUAL 0) -  if (NOT EXISTS ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55.tar.gz) +  if (NOT EXISTS ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w.tar.gz)      file(DOWNLOAD -      https://github.com/secondlife/3p-openssl/archive/refs/tags/v1.1.1q.de53f55.tar.gz -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55.tar.gz +      https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_1_1_1w.tar.gz +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w.tar.gz        ) -  endif (NOT EXISTS ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55.tar.gz) +  endif (NOT EXISTS ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w.tar.gz)    file(ARCHIVE_EXTRACT -    INPUT ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55.tar.gz +    INPUT ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w.tar.gz      DESTINATION ${CMAKE_BINARY_DIR}      )    execute_process(      COMMAND ./config no-shared -    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl +    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w      )    execute_process(      COMMAND make -j${MAKE_JOBS} -    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl +    WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w      RESULT_VARIABLE openssl_installed      )    file(      COPY -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/aes.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/bnerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/conf_api.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/dtls1.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/evperr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/obj_mac.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pkcs12.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rsa.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/stack.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/x509.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/asn1.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/buffer.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/conferr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/e_os2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/hmac.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/objects.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pkcs12err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rsaerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/store.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/x509_vfy.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/asn1_mac.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/buffererr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/crypto.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ebcdic.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/idea.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/objectserr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pkcs7.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/safestack.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/storeerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/x509err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/asn1err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/camellia.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cryptoerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ec.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/kdf.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ocsp.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pkcs7err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/seed.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/symhacks.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/x509v3.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/asn1t.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cast.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ct.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ecdh.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/kdferr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ocsperr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rand.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/sha.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/tls1.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/x509v3err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/async.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cmac.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cterr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ecdsa.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/lhash.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/opensslconf.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rand_drbg.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/srp.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ts.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/asyncerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cms.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/des.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ecerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/md2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/opensslv.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/randerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/srtp.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/tserr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/bio.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/cmserr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/dh.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/engine.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/md4.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ossl_typ.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rc2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ssl.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/txt_db.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/bioerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/comp.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/dherr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/engineerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/md5.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pem.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rc4.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ssl2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ui.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/blowfish.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/comperr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/dsa.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/err.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/mdc2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pem2.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/rc5.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ssl3.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/uierr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/bn.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/conf.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/dsaerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/evp.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/modes.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/pemerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/ripemd.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/sslerr.h -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/include/openssl/whrlpool.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/aes.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/asn1.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/asn1_mac.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/asn1err.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/asn1t.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/async.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/asyncerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/bio.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/bioerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/blowfish.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/bn.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/bnerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/buffer.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/buffererr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/camellia.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cast.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cmac.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cms.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cmserr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/comp.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/comperr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/conf.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/conf_api.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/conferr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/crypto.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cryptoerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ct.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/cterr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/des.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/dh.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/dherr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/dsa.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/dsaerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/dtls1.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/e_os2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ebcdic.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ec.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ecdh.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ecdsa.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ecerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/engine.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/engineerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/err.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/evp.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/evperr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/hmac.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/idea.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/kdf.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/kdferr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/lhash.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/md2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/md4.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/md5.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/mdc2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/modes.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/obj_mac.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/objects.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/objectserr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ocsp.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ocsperr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/opensslconf.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/opensslv.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ossl_typ.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pem.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pem2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pemerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pkcs12.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pkcs12err.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pkcs7.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/pkcs7err.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rand.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rand_drbg.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/randerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rc2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rc4.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rc5.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ripemd.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rsa.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/rsaerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/safestack.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/seed.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/sha.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/srp.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/srtp.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ssl.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ssl2.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ssl3.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/sslerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/stack.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/store.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/storeerr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/symhacks.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/tls1.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ts.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/tserr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/txt_db.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/ui.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/uierr.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/whrlpool.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/x509.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/x509_vfy.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/x509err.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/x509v3.h +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/include/openssl/x509v3err.h      DESTINATION ${LIBS_PREBUILT_DIR}/include/openssl      )    file(      COPY -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/libcrypto.a -      ${CMAKE_BINARY_DIR}/3p-openssl-1.1.1q.de53f55/openssl/libssl.a +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/libcrypto.a +      ${CMAKE_BINARY_DIR}/OpenSSL_1_1_1w/libssl.a      DESTINATION ${LIBS_PREBUILT_DIR}/lib/release      )    file(WRITE ${PREBUILD_TRACKING_DIR}/openssl_installed "${openssl_installed}")  endif (DARWIN OR LINUX OR NOT USESYSTEMLIBS)  if (WINDOWS) -  target_link_libraries(ll::openssl INTERFACE libssl libcrypto) +  target_link_libraries(ll::openssl INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libssl.lib ${ARCH_PREBUILT_DIRS_RELEASE}/libcrypto.lib Crypt32.lib)  elseif (LINUX) -  target_link_libraries(ll::openssl INTERFACE ssl crypto dl) +  target_link_libraries(ll::openssl INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libssl.a ${ARCH_PREBUILT_DIRS_RELEASE}/libcrypto.a dl)  else()    target_link_libraries(ll::openssl INTERFACE ssl crypto)  endif (WINDOWS) diff --git a/indra/cmake/PNG.cmake b/indra/cmake/PNG.cmake index 044262bc8d..e5893e9a20 100644 --- a/indra/cmake/PNG.cmake +++ b/indra/cmake/PNG.cmake @@ -7,8 +7,8 @@ add_library( ll::libpng INTERFACE IMPORTED )  use_system_binary(libpng)  use_prebuilt_binary(libpng)  if (WINDOWS) -  target_link_libraries(ll::libpng INTERFACE libpng16) +  target_link_libraries(ll::libpng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libpng16.lib)  else() -  target_link_libraries(ll::libpng INTERFACE png16 ) +  target_link_libraries(ll::libpng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libpng16.a)  endif()  target_include_directories( ll::libpng SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/libpng16) diff --git a/indra/cmake/Tracy.cmake b/indra/cmake/Tracy.cmake index 32c02edb93..d54a32fdc2 100644 --- a/indra/cmake/Tracy.cmake +++ b/indra/cmake/Tracy.cmake @@ -4,14 +4,32 @@ include(Prebuilt)  include_guard()  add_library( ll::tracy INTERFACE IMPORTED ) -set(USE_TRACY OFF CACHE BOOL "Use Tracy profiler.") +# default Tracy profiling on for test builds, but off for all others +string(TOLOWER ${VIEWER_CHANNEL} channel_lower) +if(WINDOWS AND channel_lower MATCHES "^second life test") +  option(USE_TRACY "Use Tracy profiler." ON) +else() +    option(USE_TRACY "Use Tracy profiler." OFF) +endif()  if (USE_TRACY) +  option(USE_TRACY_ON_DEMAND "Use on-demand Tracy profiling." ON) +  option(USE_TRACY_LOCAL_ONLY "Disallow remote Tracy profiling." OFF) +    use_system_binary(tracy)    use_prebuilt_binary(tracy)    target_include_directories( ll::tracy SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/tracy) -  target_link_libraries( ll::tracy INTERFACE TracyClient ) + +  target_compile_definitions(ll::tracy INTERFACE -DTRACY_ENABLE=1 -DTRACY_ONLY_IPV4=1) + +  if (USE_TRACY_ON_DEMAND) +    target_compile_definitions(ll::tracy INTERFACE -DTRACY_ON_DEMAND=1) +  endif () + +  if (USE_TRACY_LOCAL_ONLY) +    target_compile_definitions(ll::tracy INTERFACE -DTRACY_NO_BROADCAST=1 -DTRACY_ONLY_LOCALHOST=1) +  endif ()    # See: indra/llcommon/llprofiler.h    add_compile_definitions(LL_PROFILER_CONFIGURATION=3) diff --git a/indra/cmake/URIPARSER.cmake b/indra/cmake/URIPARSER.cmake deleted file mode 100644 index 6c33ff70e1..0000000000 --- a/indra/cmake/URIPARSER.cmake +++ /dev/null @@ -1,19 +0,0 @@ -# -*- cmake -*- - -include_guard() - -include(Prebuilt) - -add_library( ll::uriparser INTERFACE IMPORTED ) - -use_system_binary( uriparser ) - -use_prebuilt_binary(uriparser) -if (WINDOWS) -  target_link_libraries( ll::uriparser INTERFACE uriparser) -elseif (LINUX) -  target_link_libraries( ll::uriparser INTERFACE uriparser) -elseif (DARWIN) -  target_link_libraries( ll::uriparser INTERFACE liburiparser.dylib) -endif (WINDOWS) -target_include_directories( ll::uriparser SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/uriparser) diff --git a/indra/cmake/XmlRpcEpi.cmake b/indra/cmake/XmlRpcEpi.cmake deleted file mode 100644 index a008e06d62..0000000000 --- a/indra/cmake/XmlRpcEpi.cmake +++ /dev/null @@ -1,38 +0,0 @@ -# -*- cmake -*- -include(Prebuilt) - -include_guard() -add_library( ll::xmlrpc-epi INTERFACE IMPORTED ) - -if (NOT USESYSTEMLIBS) -use_system_binary( xmlrpc-epi ) -endif (NOT USESYSTEMLIBS) - -if (${LINUX_DISTRO} MATCHES opensuse-tumbleweed OR DARWIN OR NOT USESYSTEMLIBS) -use_prebuilt_binary(xmlrpc-epi) -  if (DARWIN) -    execute_process( -      COMMAND lipo -archs libxmlrpc-epi.0.dylib -      WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/lib/release -      OUTPUT_VARIABLE xmlrpc-epi_archs -      OUTPUT_STRIP_TRAILING_WHITESPACE -      ) -    if (NOT ${xmlrpc-epi_archs} STREQUAL ${CMAKE_OSX_ARCHITECTURES}) -      execute_process( -        COMMAND lipo -          libxmlrpc-epi.0.dylib -          -thin ${CMAKE_OSX_ARCHITECTURES} -          -output libxmlrpc-epi.0.dylib -        WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/lib/release -        ) -    endif (NOT ${xmlrpc-epi_archs} STREQUAL ${CMAKE_OSX_ARCHITECTURES}) -  endif (DARWIN) -endif (${LINUX_DISTRO} MATCHES opensuse-tumbleweed OR DARWIN OR NOT USESYSTEMLIBS) -target_link_libraries(ll::xmlrpc-epi INTERFACE xmlrpc-epi ) -if (NOT USESYSTEMLIBS) -target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include) -elseif (${LINUX_DISTRO} MATCHES opensuse-tumbleweed OR DARWIN) -  target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/xmlrpc-epi) -elseif (LINUX) -  target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE ${CMAKE_SYSROOT}/usr/include/xmlrpc-epi) -endif () diff --git a/indra/cmake/ZLIBNG.cmake b/indra/cmake/ZLIBNG.cmake index 60164116dd..5aa54b0152 100644 --- a/indra/cmake/ZLIBNG.cmake +++ b/indra/cmake/ZLIBNG.cmake @@ -18,9 +18,9 @@ endif()  use_prebuilt_binary(zlib-ng)  if (WINDOWS) -  target_link_libraries( ll::zlib-ng INTERFACE zlib ) +  target_link_libraries( ll::zlib-ng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/zlib.lib )  else() -  target_link_libraries( ll::zlib-ng INTERFACE z ) +  target_link_libraries( ll::zlib-ng INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libz.a )  endif (WINDOWS)  if( NOT LINUX ) | 
