[CMake] Anyone gotten OpenSSL to build as an external project?
kent williams
nkwmailinglists at gmail.com
Fri Jan 7 17:03:18 EST 2011
That's kind of a solution, but as near as I can figure
CMAKE_SIZEOF_VOID_P doesn't change if I set CMAKE_OSX_ARCHITECTURE to
i386.
The following seems to work, but I explicitly test
CMAKE_OSX_ARCHITECTURE so that if I'm building i386 on a system with
x86_64 as the default, it correctly configures OpenSSL.
enable_language(CXX)
if(APPLE)
if(CMAKE_SIZEOF_VOID_P EQUAL 8 AND
NOT ${CMAKE_OSX_ARCHITECTURES} MATCHES "i386")
set(OPENSSL_CONFIG_CMD
./Configure darwin64-x86_64-cc
--prefix=${CMAKE_CURRENT_BINARY_DIR}/OpenSSL)
else()
set(OPENSSL_CONFIG_CMD
./config --prefix=${CMAKE_CURRENT_BINARY_DIR}/OpenSSL)
endif()
else(APPLE)
set(OPENSSL_CONFIG_CMD
./config --prefix=${CMAKE_CURRENT_BINARY_DIR}/OpenSSL)
endif(APPLE)
if(NOT ExternalProject_loaded)
include(ExternalProject)
set(ExternalProject_loaded 1)
endif(NOT ExternalProject_loaded)
ExternalProject_add(OpenSSL
URL "http://www.openssl.org/source/openssl-1.0.0c.tar.gz"
URL_MD5 ff8fb85610aef328315a9decbb2712e4
CONFIGURE_COMMAND ${OPENSSL_CONFIG_CMD}
BUILD_IN_SOURCE 1
INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}/OpenSSL"
)
set(OPENSSL_INCLUDE_DIR "${CMAKE_CURRENT_BINARY_DIR}/OpenSSL/include")
link_directories("${CMAKE_CURRENT_BINARY_DIR}/OpenSSL/lib")
set(OPENSSL_LIBRARIES ssl crypto)
More information about the CMake
mailing list