Attempt to cleanup CMake and try to fix build on some systems
This commit is contained in:
parent
6c9d1983d7
commit
c3fe9fba56
@ -1,6 +1,7 @@
|
||||
CMAKE_MINIMUM_REQUIRED(VERSION 1.5)
|
||||
PROJECT(LIBCURL C)
|
||||
|
||||
# Setup package meta-data
|
||||
SET(PACKAGE "curl")
|
||||
SET(VERSION "7.10.3")
|
||||
SET(PACKAGE_TARNAME " ")
|
||||
@ -10,12 +11,16 @@ SET(PACKAGE_VERSION " ")
|
||||
SET(PACKAGE_STRING " ")
|
||||
SET(OPERATING_SYSTEM ${CMAKE_SYSTEM_NAME})
|
||||
|
||||
# We need ansi c-flags, especially on HP
|
||||
SET(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}")
|
||||
SET(CMAKE_REQUIRED_FLAGS ${CMAKE_ANSI_CFLAGS})
|
||||
|
||||
# If we are on AIX, do the _ALL_SOURCE magic
|
||||
IF(${CMAKE_SYSTEM_NAME} MATCHES AIX)
|
||||
SET(_ALL_SOURCE 1)
|
||||
ENDIF(${CMAKE_SYSTEM_NAME} MATCHES AIX)
|
||||
|
||||
# Include all the necessary files for macros
|
||||
INCLUDE (${CMAKE_ROOT}/Modules/CheckFunctionExists.cmake)
|
||||
INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFile.cmake)
|
||||
INCLUDE (${CMAKE_ROOT}/Modules/CheckIncludeFiles.cmake)
|
||||
@ -64,134 +69,102 @@ SET(libCurl_SRCS
|
||||
content_encoding.c
|
||||
)
|
||||
|
||||
# On windows preload settings
|
||||
IF(WIN32)
|
||||
INCLUDE(${LIBCURL_SOURCE_DIR}/Platforms/WindowsCache.cmake)
|
||||
ENDIF(WIN32)
|
||||
|
||||
# This macro checks if the symbol exists in the library and if it
|
||||
# does, it appends library to the list.
|
||||
SET(CURL_LIBS "")
|
||||
MACRO(CHECK_LIBRARY_EXISTS_CONCAT LIBRARY SYMBOL VARIABLE)
|
||||
CHECK_LIBRARY_EXISTS("${LIBRARY};${CURL_LIBS}" ${SYMBOL} ""
|
||||
${VARIABLE})
|
||||
IF(${VARIABLE})
|
||||
SET(CURL_LIBS ${CURL_LIBS} ${LIBRARY})
|
||||
ENDIF(${VARIABLE})
|
||||
ENDMACRO(CHECK_LIBRARY_EXISTS_CONCAT)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("nsl;${CURL_LIBS}" gethostname "" HAVE_LIBNSL)
|
||||
IF(HAVE_LIBNSL)
|
||||
SET(CURL_LIBS ${CURL_LIBS} nsl)
|
||||
ENDIF(HAVE_LIBNSL)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("dl;${CURL_LIBS}" dlopen "" HAVE_LIBDL)
|
||||
IF(HAVE_LIBDL)
|
||||
SET(CURL_LIBS ${CURL_LIBS} dl)
|
||||
ENDIF(HAVE_LIBDL)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("ucb;${CURL_LIBS}" gethostname "" HAVE_LIBUCB)
|
||||
IF(HAVE_LIBUCB)
|
||||
SET(CURL_LIBS ${CURL_LIBS} ucb)
|
||||
ENDIF(HAVE_LIBUCB)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("socket;${CURL_LIBS}" connect "" HAVE_LIBSOCKET)
|
||||
IF(HAVE_LIBSOCKET)
|
||||
SET(CURL_LIBS ${CURL_LIBS} socket)
|
||||
ENDIF(HAVE_LIBSOCKET)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("ws2_32;${CURL_LIBS}" printf "" HAVE_LIBWS2_32)
|
||||
IF(HAVE_LIBWS2_32)
|
||||
SET(CURL_LIBS ${CURL_LIBS} ws2_32)
|
||||
ENDIF(HAVE_LIBWS2_32)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("winmm;${CURL_LIBS}" printf "" HAVE_LIBWINMM)
|
||||
IF(HAVE_LIBWINMM)
|
||||
SET(CURL_LIBS ${CURL_LIBS} winmm)
|
||||
ENDIF(HAVE_LIBWINMM)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("z;${CURL_LIBS}" inflateEnd "" HAVE_LIBZ)
|
||||
IF(HAVE_LIBZ)
|
||||
SET(CURL_LIBS ${CURL_LIBS} z)
|
||||
ENDIF(HAVE_LIBZ)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("crypto;${CURL_LIBS}" CRYPTO_lock "" HAVE_LIBCRYPTO)
|
||||
IF(HAVE_LIBCRYPTO)
|
||||
SET(CURL_LIBS ${CURL_LIBS} crypto)
|
||||
ENDIF(HAVE_LIBCRYPTO)
|
||||
|
||||
CHECK_LIBRARY_EXISTS("ssl;${CURL_LIBS}" SSL_connect "" HAVE_LIBSSL)
|
||||
IF(HAVE_LIBSSL)
|
||||
SET(CURL_LIBS ${CURL_LIBS} ssl)
|
||||
ENDIF(HAVE_LIBSSL)
|
||||
# Check for all needed libraries
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("nsl" gethostname HAVE_LIBNSL)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("dl" dlopen HAVE_LIBDL)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("ucb" gethostname HAVE_LIBUCB)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("socket" connect HAVE_LIBSOCKET)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("ws2_32" printf HAVE_LIBWS2_32)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("winmm" printf HAVE_LIBWINMM)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("z" inflateEnd HAVE_LIBZ)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("crypto" CRYPTO_lock HAVE_LIBCRYPTO)
|
||||
CHECK_LIBRARY_EXISTS_CONCAT("ssl" SSL_connect HAVE_LIBSSL)
|
||||
|
||||
# Check for symbol dlopen (same as HAVE_LIBDL)
|
||||
CHECK_LIBRARY_EXISTS("${CURL_LIBS}" dlopen "" HAVE_DLOPEN)
|
||||
|
||||
# For other tests to use the same libraries
|
||||
SET(CMAKE_REQUIRED_LIBRARIES ${CURL_LIBS})
|
||||
|
||||
# If we have features.h, then do the _BSD_SOURCE magic
|
||||
CHECK_INCLUDE_FILE("features.h" HAVE_FEATURES_H)
|
||||
IF(HAVE_FEATURES_H)
|
||||
SET_SOURCE_FILES_PROPERTIES(if2ip.c COMPILE_FLAGS -D_BSD_SOURCE)
|
||||
ENDIF(HAVE_FEATURES_H)
|
||||
|
||||
CHECK_INCLUDE_FILE("sys/types.h" HAVE_SYS_TYPES_H)
|
||||
CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
|
||||
CHECK_INCLUDE_FILE("alloca.h" HAVE_ALLOCA_H)
|
||||
CHECK_INCLUDE_FILE("arpa/inet.h" HAVE_ARPA_INET_H)
|
||||
CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H)
|
||||
CHECK_INCLUDE_FILE("fcntl.h" HAVE_FCNTL_H)
|
||||
CHECK_INCLUDE_FILE("malloc.h" HAVE_MALLOC_H)
|
||||
CHECK_INCLUDE_FILE("memory.h" HAVE_MEMORY_H)
|
||||
CHECK_INCLUDE_FILE("netdb.h" HAVE_NETDB_H)
|
||||
CHECK_INCLUDE_FILE("zlib.h" HAVE_ZLIB_H)
|
||||
CHECK_INCLUDE_FILE("sys/poll.h" HAVE_SYS_POLL_H)
|
||||
CHECK_INCLUDE_FILE("openssl/x509.h" HAVE_OPENSSL_X509_H)
|
||||
CHECK_INCLUDE_FILE("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
|
||||
CHECK_INCLUDE_FILE("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
|
||||
CHECK_INCLUDE_FILE("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
|
||||
CHECK_INCLUDE_FILE("openssl/pem.h" HAVE_OPENSSL_PEM_H)
|
||||
CHECK_INCLUDE_FILE("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
|
||||
CHECK_INCLUDE_FILE("openssl/err.h" HAVE_OPENSSL_ERR_H)
|
||||
# Check if header file exists and add it to the list.
|
||||
MACRO(CHECK_INCLUDE_FILE_CONCAT FILE VARIABLE)
|
||||
CHECK_INCLUDE_FILES("${CURL_INCLUDES};${FILE}" ${VARIABLE})
|
||||
IF(${VARIABLE})
|
||||
SET(CURL_INCLUDES ${CURL_INCLUDES} ${FILE})
|
||||
ENDIF(${VARIABLE})
|
||||
ENDMACRO(CHECK_INCLUDE_FILE_CONCAT)
|
||||
|
||||
IF(HAVE_SYS_TYPES_H)
|
||||
SET(TEST_NETWORK_INCLUDES ${TEST_NETWORK_INCLUDES} "sys/types.h")
|
||||
ENDIF(HAVE_SYS_TYPES_H)
|
||||
# Check for header files
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/types.h" HAVE_SYS_TYPES_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("inttypes.h" HAVE_INTTYPES_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("alloca.h" HAVE_ALLOCA_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("arpa/inet.h" HAVE_ARPA_INET_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("dlfcn.h" HAVE_DLFCN_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("fcntl.h" HAVE_FCNTL_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("malloc.h" HAVE_MALLOC_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("memory.h" HAVE_MEMORY_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("netdb.h" HAVE_NETDB_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("zlib.h" HAVE_ZLIB_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/poll.h" HAVE_SYS_POLL_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/x509.h" HAVE_OPENSSL_X509_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/pem.h" HAVE_OPENSSL_PEM_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("openssl/err.h" HAVE_OPENSSL_ERR_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/socket.h" HAVE_SYS_SOCKET_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("netinet/in.h" HAVE_NETINET_IN_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("net/if.h" HAVE_NET_IF_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("netinet/if_ether.h"
|
||||
HAVE_NETINET_IF_ETHER_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/select.h" HAVE_SYS_SELECT_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("utime.h" HAVE_UTIME_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("netinet/in.h" HAVE_NETINET_IN_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("pwd.h" HAVE_PWD_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sgtty.h" HAVE_SGTTY_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("stdint.h" HAVE_STDINT_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("stdlib.h" HAVE_STDLIB_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("string.h" HAVE_STRING_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("strings.h" HAVE_STRINGS_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/param.h" HAVE_SYS_PARAM_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/stat.h" HAVE_SYS_STAT_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/time.h" HAVE_SYS_TIME_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("termios.h" HAVE_TERMIOS_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("termio.h" HAVE_TERMIO_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("io.h" HAVE_IO_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("time.h" HAVE_TIME_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("unistd.h" HAVE_UNISTD_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/utime.h" HAVE_SYS_UTIME_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("winsock.h" HAVE_WINSOCK_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sockio.h" HAVE_SOCKIO_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("sys/sockio.h" HAVE_SYS_SOCKIO_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("x509.h" HAVE_X509_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("setjmp.h" HAVE_SETJMP_H)
|
||||
CHECK_INCLUDE_FILE_CONCAT("signal.h" HAVE_SIGNAL_H)
|
||||
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};sys/socket.h" HAVE_SYS_SOCKET_H)
|
||||
IF(HAVE_SYS_SOCKET_H)
|
||||
SET(TEST_NETWORK_INCLUDES ${TEST_NETWORK_INCLUDES} "sys/socket.h")
|
||||
ENDIF(HAVE_SYS_SOCKET_H)
|
||||
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};netinet/in.h" HAVE_NETINET_IN_H)
|
||||
IF(HAVE_SYS_SOCKET_H)
|
||||
SET(TEST_NETWORK_INCLUDES ${TEST_NETWORK_INCLUDES} "sys/socket.h")
|
||||
ENDIF(HAVE_SYS_SOCKET_H)
|
||||
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};net/if.h" HAVE_NET_IF_H)
|
||||
|
||||
IF(HAVE_NET_IF_H)
|
||||
SET(TEST_NETWORK_INCLUDES ${TEST_NETWORK_INCLUDES} "net/if.h")
|
||||
ENDIF(HAVE_NET_IF_H)
|
||||
IF(HAVE_NETINET_IN_H)
|
||||
SET(TEST_NETWORK_INCLUDES ${TEST_NETWORK_INCLUDES} "netinet/in.h")
|
||||
ENDIF(HAVE_NETINET_IN_H)
|
||||
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};netinet/if_ether.h"
|
||||
HAVE_NETINET_IF_ETHER_H)
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};sys/select.h" HAVE_SYS_SELECT_H)
|
||||
|
||||
CHECK_INCLUDE_FILES("${TEST_NETWORK_INCLUDES};utime.h" HAVE_UTIME_H)
|
||||
|
||||
CHECK_INCLUDE_FILE("netinet/in.h" HAVE_NETINET_IN_H)
|
||||
CHECK_INCLUDE_FILE("pwd.h" HAVE_PWD_H)
|
||||
CHECK_INCLUDE_FILE("sgtty.h" HAVE_SGTTY_H)
|
||||
CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
|
||||
CHECK_INCLUDE_FILE("stdlib.h" HAVE_STDLIB_H)
|
||||
CHECK_INCLUDE_FILE("string.h" HAVE_STRING_H)
|
||||
CHECK_INCLUDE_FILE("strings.h" HAVE_STRINGS_H)
|
||||
CHECK_INCLUDE_FILE("sys/param.h" HAVE_SYS_PARAM_H)
|
||||
CHECK_INCLUDE_FILE("sys/stat.h" HAVE_SYS_STAT_H)
|
||||
CHECK_INCLUDE_FILE("sys/time.h" HAVE_SYS_TIME_H)
|
||||
CHECK_INCLUDE_FILE("termios.h" HAVE_TERMIOS_H)
|
||||
CHECK_INCLUDE_FILE("termio.h" HAVE_TERMIO_H)
|
||||
CHECK_INCLUDE_FILE("io.h" HAVE_IO_H)
|
||||
CHECK_INCLUDE_FILE("time.h" HAVE_TIME_H)
|
||||
CHECK_INCLUDE_FILE("unistd.h" HAVE_UNISTD_H)
|
||||
CHECK_INCLUDE_FILE("sys/utime.h" HAVE_SYS_UTIME_H)
|
||||
CHECK_INCLUDE_FILE("winsock.h" HAVE_WINSOCK_H)
|
||||
CHECK_INCLUDE_FILE("sockio.h" HAVE_SOCKIO_H)
|
||||
CHECK_INCLUDE_FILE("sys/sockio.h" HAVE_SYS_SOCKIO_H)
|
||||
CHECK_INCLUDE_FILE("x509.h" HAVE_X509_H)
|
||||
CHECK_INCLUDE_FILE("setjmp.h" HAVE_SETJMP_H)
|
||||
CHECK_TYPE_SIZE(ssize_t SIZEOF_SSIZE_T)
|
||||
CHECK_TYPE_SIZE("long double" SIZEOF_LONG_DOUBLE)
|
||||
IF(NOT HAVE_SIZEOF_SSIZE_T)
|
||||
@ -200,6 +173,7 @@ ENDIF(NOT HAVE_SIZEOF_SSIZE_T)
|
||||
|
||||
FIND_FILE(RANDOM_FILE urandom /dev)
|
||||
|
||||
# Check for some functions that are used
|
||||
CHECK_FUNCTION_EXISTS(socket HAVE_SOCKET)
|
||||
CHECK_FUNCTION_EXISTS(poll HAVE_POLL)
|
||||
CHECK_FUNCTION_EXISTS(select HAVE_SELECT)
|
||||
@ -223,10 +197,25 @@ CHECK_FUNCTION_EXISTS(closesocket HAVE_CLOSESOCKET)
|
||||
CHECK_FUNCTION_EXISTS(setvbuf HAVE_SETVBUF)
|
||||
CHECK_FUNCTION_EXISTS(signal HAVE_SIGNAL)
|
||||
CHECK_FUNCTION_EXISTS(sigsetjmp HAVE_SIGSETJMP)
|
||||
CHECK_FUNCTION_EXISTS(getpass_r HAVE_GETPASS_R)
|
||||
CHECK_FUNCTION_EXISTS(strlcat HAVE_STRLCAT)
|
||||
CHECK_FUNCTION_EXISTS(getpwuid HAVE_GETPWUID)
|
||||
CHECK_FUNCTION_EXISTS(geteuid HAVE_GETEUID)
|
||||
CHECK_FUNCTION_EXISTS(utime HAVE_UTIME)
|
||||
CHECK_FUNCTION_EXISTS(RAND_status HAVE_RAND_STATUS)
|
||||
CHECK_FUNCTION_EXISTS(RAND_screen HAVE_RAND_SCREEN)
|
||||
CHECK_FUNCTION_EXISTS(RAND_egd HAVE_RAND_EGD)
|
||||
CHECK_FUNCTION_EXISTS(gethostbyname_r HAVE_GETHOSTBYNAME_R)
|
||||
CHECK_FUNCTION_EXISTS(gethostbyaddr_r HAVE_GETHOSTBYADDR_R)
|
||||
CHECK_FUNCTION_EXISTS(gmtime HAVE_GMTIME_R)
|
||||
CHECK_FUNCTION_EXISTS(localtime HAVE_LOCALTIME_R)
|
||||
|
||||
IF(HAVE_SIGNAL)
|
||||
|
||||
# sigaction and sigsetjmp are special. Use special mechanism for
|
||||
# detecting those, but only if previous attempt failed.
|
||||
IF(HAVE_SIGNAL_H)
|
||||
CHECK_SYMBOL_EXISTS(sigaction "signal.h" HAVE_SIGACTION)
|
||||
ENDIF(HAVE_SIGNAL)
|
||||
ENDIF(HAVE_SIGNAL_H)
|
||||
|
||||
IF(NOT HAVE_SIGSETJMP)
|
||||
IF(HAVE_SETJMP_H)
|
||||
@ -237,20 +226,7 @@ IF(NOT HAVE_SIGSETJMP)
|
||||
ENDIF(HAVE_SETJMP_H)
|
||||
ENDIF(NOT HAVE_SIGSETJMP)
|
||||
|
||||
CHECK_FUNCTION_EXISTS(getpass_r HAVE_GETPASS_R)
|
||||
CHECK_FUNCTION_EXISTS(strlcat HAVE_STRLCAT)
|
||||
CHECK_FUNCTION_EXISTS(getpwuid HAVE_GETPWUID)
|
||||
CHECK_FUNCTION_EXISTS(geteuid HAVE_GETEUID)
|
||||
CHECK_FUNCTION_EXISTS(utime HAVE_UTIME)
|
||||
CHECK_FUNCTION_EXISTS(RAND_status HAVE_RAND_STATUS)
|
||||
CHECK_FUNCTION_EXISTS(RAND_screen HAVE_RAND_SCREEN)
|
||||
CHECK_FUNCTION_EXISTS(RAND_egd HAVE_RAND_EGD)
|
||||
|
||||
CHECK_FUNCTION_EXISTS(gethostbyname_r HAVE_GETHOSTBYNAME_R)
|
||||
CHECK_FUNCTION_EXISTS(gethostbyaddr_r HAVE_GETHOSTBYADDR_R)
|
||||
CHECK_FUNCTION_EXISTS(gmtime HAVE_GMTIME_R)
|
||||
CHECK_FUNCTION_EXISTS(localtime HAVE_LOCALTIME_R)
|
||||
|
||||
# For other curl specific tests, use this macro.
|
||||
MACRO(CURL_INTERNAL_TEST CURL_TEST)
|
||||
IF("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
|
||||
SET(MACRO_CHECK_FUNCTION_DEFINITIONS
|
||||
@ -280,6 +256,7 @@ MACRO(CURL_INTERNAL_TEST CURL_TEST)
|
||||
ENDIF("${CURL_TEST}" MATCHES "^${CURL_TEST}$")
|
||||
ENDMACRO(CURL_INTERNAL_TEST)
|
||||
|
||||
# Do curl specific tests
|
||||
FOREACH(CURL_TEST
|
||||
TIME_WITH_SYS_TIME
|
||||
HAVE_O_NONBLOCK
|
||||
@ -306,6 +283,7 @@ FOREACH(CURL_TEST
|
||||
CURL_INTERNAL_TEST(${CURL_TEST})
|
||||
ENDFOREACH(CURL_TEST)
|
||||
|
||||
# Check for reentrant
|
||||
FOREACH(CURL_TEST
|
||||
HAVE_GETHOSTBYADDR_R_5
|
||||
HAVE_GETHOSTBYADDR_R_7
|
||||
@ -341,6 +319,8 @@ IF(HAVE_INET_NTOA_R_DECL_REENTRANT)
|
||||
SET(NEED_REENTRANT 1)
|
||||
ENDIF(HAVE_INET_NTOA_R_DECL_REENTRANT)
|
||||
|
||||
# Some other minor tests
|
||||
|
||||
IF(NOT HAVE_SOCKLEN_T)
|
||||
SET(socklen_t "int")
|
||||
ENDIF(NOT HAVE_SOCKLEN_T)
|
||||
@ -349,6 +329,8 @@ IF(NOT HAVE_IN_ADDR_T)
|
||||
SET(in_addr_t "unsigned long")
|
||||
ENDIF(NOT HAVE_IN_ADDR_T)
|
||||
|
||||
# Fix libz / zlib.h
|
||||
|
||||
IF(NOT HAVE_LIBZ)
|
||||
SET(HAVE_ZLIB_H 0)
|
||||
ENDIF(NOT HAVE_LIBZ)
|
||||
@ -357,6 +339,8 @@ IF(NOT HAVE_ZLIB_H)
|
||||
SET(HAVE_LIBZ 0)
|
||||
ENDIF(NOT HAVE_ZLIB_H)
|
||||
|
||||
# Check for nonblocking
|
||||
|
||||
SET(HAVE_SOME_NONBLOCK 0)
|
||||
FOREACH(CURL_TEST
|
||||
HAVE_FIONBIO
|
||||
@ -377,6 +361,8 @@ ELSE(RETSIGTYPE_TEST)
|
||||
SET(RETSIGTYPE int)
|
||||
ENDIF(RETSIGTYPE_TEST)
|
||||
|
||||
# The rest of the build
|
||||
|
||||
INCLUDE_DIRECTORIES(${LIBCURL_SOURCE_DIR})
|
||||
INCLUDE_DIRECTORIES(${LIBCURL_BINARY_DIR})
|
||||
ADD_DEFINITIONS(-DHAVE_CONFIG_H)
|
||||
|
Loading…
x
Reference in New Issue
Block a user