Просмотр исходного кода

libarchive: Use OpenSSL only if CMAKE_USE_OPENSSL (#11815)

OpenSSL is not part of the Linux Standard Base but its headers and
libraries may still be found at build time even though they may not be
available at runtime.  Use it only if explicitly allowed.
Brad King 15 лет назад
Родитель
Сommit
ee55a4f709
1 измененных файлов с 10 добавлено и 2 удалено
  1. 10 2
      Utilities/cmlibarchive/CMakeLists.txt

+ 10 - 2
Utilities/cmlibarchive/CMakeLists.txt

@@ -274,7 +274,11 @@ LA_CHECK_INCLUDE_FILE("windows.h" HAVE_WINDOWS_H)
 #
 # Find OpenSSL
 #
-FIND_PACKAGE(OpenSSL)
+IF(CMAKE_USE_OPENSSL)
+  FIND_PACKAGE(OpenSSL)
+ELSE()
+  SET(OPENSSL_FOUND 0)
+ENDIF()
 IF(OPENSSL_FOUND)
   INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
   LIST(APPEND ADDITIONAL_LIBS ${OPENSSL_LIBRARIES})
@@ -296,7 +300,11 @@ LA_CHECK_INCLUDE_FILE("sha256.h" HAVE_SHA256_H)
 #
 # Find MD5/RMD160/SHA library
 #
-FIND_LIBRARY(CRYPTO_LIBRARY NAMES crypto)
+IF(CMAKE_USE_OPENSSL)
+  FIND_LIBRARY(CRYPTO_LIBRARY NAMES crypto)
+ELSE()
+  SET(CRYPTO_LIBRARY "")
+ENDIF()
 IF(CRYPTO_LIBRARY)
   LIST(APPEND ADDITIONAL_LIBS ${CRYPTO_LIBRARY})
 ELSE(CRYPTO_LIBRARY)