From 3733fa02eecabd12f2274f63f3dc9a9eda308728 Mon Sep 17 00:00:00 2001 From: Benoit Neil Date: Wed, 8 Apr 2009 23:20:04 +0000 Subject: [PATCH] Made the windows .lib addition cleaner. --- CMakeLists.txt | 245 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 130 insertions(+), 115 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2efaeee..023e2e1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,9 +9,9 @@ # Check on all possible platforms # Test with as many configurations possible (With or without any option) # Create scripts that help keeping the CMake build system up to date (to reduce maintenance). According to Tetetest: -# - lists of headers that 'configure' checks for; -# - curl-specific tests (the ones that are in m4/curl-*.m4 files); -# - (most obvious thing:) curl version numbers. +# - lists of headers that 'configure' checks for; +# - curl-specific tests (the ones that are in m4/curl-*.m4 files); +# - (most obvious thing:) curl version numbers. # Add documentation subproject # # To check: @@ -21,12 +21,31 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6.2 FATAL_ERROR) SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}") +FUNCTION(TO_LIST_SPACES _LIST_NAME OUTPUT_VAR) + SET(NEW_LIST_SPACE) + FOREACH(ITEM ${${_LIST_NAME}}) + SET(NEW_LIST_SPACE "${NEW_LIST_SPACE} ${ITEM}") + ENDFOREACH() + STRING(STRIP ${NEW_LIST_SPACE} NEW_LIST_SPACE) + SET(${OUTPUT_VAR} "${NEW_LIST_SPACE}" PARENT_SCOPE) +ENDFUNCTION() + +# Appends a lis of item to a string which is a space-separated list, if they don't already exist. +FUNCTION(LIST_SPACES_APPEND_ONCE LIST_NAME) + STRING(REPLACE " " ";" _LIST ${${LIST_NAME}}) + LIST(APPEND _LIST ${ARGN}) + LIST(REMOVE_DUPLICATES _LIST) + TO_LIST_SPACES(_LIST NEW_LIST_SPACE) + SET(${LIST_NAME} "${NEW_LIST_SPACE}" PARENT_SCOPE) +ENDFUNCTION() + + project( CURL C ) SET(CURL_MAJOR_VERSION 7) SET(CURL_MINOR_VERSION 19) SET(CURL_PATCH_VERSION 4) -INCLUDE_REGULAR_EXPRESSION("^.*$") # Sukender: Is it necessary? +INCLUDE_REGULAR_EXPRESSION("^.*$") # Sukender: Is it necessary? # Setup package meta-data # SET(PACKAGE "curl") @@ -45,14 +64,8 @@ SET(OS "\"${CMAKE_SYSTEM_NAME}\"") # ENDIF() INCLUDE_DIRECTORIES( ${CURL_SOURCE_DIR}/include ) -# Save C and CXX STD libs (we may need to modify them) -IF(NOT CURL_CONFIG_HAS_BEEN_RUN_BEFORE) - SET(CMAKE_CXX_STANDARD_LIBRARIES_INITIAL ${CMAKE_CXX_STANDARD_LIBRARIES} CACHE INTERNAL "Initial C++ libs") - SET(CMAKE_C_STANDARD_LIBRARIES_INITIAL ${CMAKE_C_STANDARD_LIBRARIES} CACHE INTERNAL "Initial C libs") -ENDIF() - IF(WIN32) - SET(NATIVE_WINDOWS ON) + SET(NATIVE_WINDOWS ON) ENDIF() OPTION(BUILD_CURL_EXE "Set to ON to build cURL executable." ON) @@ -66,16 +79,16 @@ IF(BUILD_DASHBOARD_REPORTS) ENDIF(BUILD_DASHBOARD_REPORTS) IF(MSVC) - OPTION(BUILD_RELEASE_DEBUG_DIRS "Set OFF to build each configuration to a separate directory" OFF) - MARK_AS_ADVANCED(BUILD_RELEASE_DEBUG_DIRS) + OPTION(BUILD_RELEASE_DEBUG_DIRS "Set OFF to build each configuration to a separate directory" OFF) + MARK_AS_ADVANCED(BUILD_RELEASE_DEBUG_DIRS) ENDIF() -OPTION(CURL_HIDDEN_SYMBOLS "Set to ON to hide libcurl internal symbols (=hide all symbols that aren't officially external)." OFF) +OPTION(CURL_HIDDEN_SYMBOLS "Set to ON to hide libcurl internal symbols (=hide all symbols that aren't officially external)." ON) MARK_AS_ADVANCED(CURL_HIDDEN_SYMBOLS) # IF(WIN32) - # OPTION(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON) - # MARK_AS_ADVANCED(CURL_WINDOWS_SSPI) + # OPTION(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON) + # MARK_AS_ADVANCED(CURL_WINDOWS_SSPI) # ENDIF() OPTION(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF) @@ -98,22 +111,22 @@ MARK_AS_ADVANCED(CURL_DISABLE_HTTP) OPTION(CURL_DISABLE_LDAPS "to disable LDAPS" OFF) MARK_AS_ADVANCED(CURL_DISABLE_LDAPS) IF(WIN32) - SET(CURL_LDAP_HYBRID OFF) - OPTION(CURL_LDAP_WIN "Use W$ LDAP implementation" ON) - MARK_AS_ADVANCED(CURL_LDAP_WIN) + SET(CURL_LDAP_HYBRID OFF) + OPTION(CURL_LDAP_WIN "Use W$ LDAP implementation" ON) + MARK_AS_ADVANCED(CURL_LDAP_WIN) ELSE() - OPTION(CURL_LDAP_HYBRID "W$ LDAP with non-W$ compiler" OFF) - MARK_AS_ADVANCED(CURL_LDAP_HYBRID) - SET(CURL_LDAP_WIN OFF) + OPTION(CURL_LDAP_HYBRID "W$ LDAP with non-W$ compiler" OFF) + MARK_AS_ADVANCED(CURL_LDAP_HYBRID) + SET(CURL_LDAP_WIN OFF) ENDIF() IF(HTTP_ONLY) - SET(CURL_DISABLE_FTP ON) - SET(CURL_DISABLE_LDAP ON) - SET(CURL_DISABLE_TELNET ON) - SET(CURL_DISABLE_DICT ON) - SET(CURL_DISABLE_FILE ON) - SET(CURL_DISABLE_TFTP ON) + SET(CURL_DISABLE_FTP ON) + SET(CURL_DISABLE_LDAP ON) + SET(CURL_DISABLE_TELNET ON) + SET(CURL_DISABLE_DICT ON) + SET(CURL_DISABLE_FILE ON) + SET(CURL_DISABLE_TFTP ON) ENDIF() OPTION(CURL_DISABLE_COOKIES "to disable cookies support" OFF) @@ -130,15 +143,17 @@ MARK_AS_ADVANCED(ENABLE_IPV6) IF(WIN32) - IF(CURL_DISABLE_LDAP) - #SET(CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES} wsock32.lib bufferoverflowu.lib ws2_32.lib" CACHE STRING "" FORCE) - #SET(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES_INITIAL} wsock32.lib bufferoverflowu.lib ws2_32.lib" CACHE STRING "" FORCE) - SET(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES_INITIAL} wsock32.lib ws2_32.lib" CACHE STRING "" FORCE) - ELSE() - #SET(CMAKE_CXX_STANDARD_LIBRARIES "${CMAKE_CXX_STANDARD_LIBRARIES} wsock32.lib bufferoverflowu.lib ws2_32.lib wldap32.lib" CACHE STRING "" FORCE) - #SET(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES_INITIAL} wsock32.lib bufferoverflowu.lib ws2_32.lib wldap32.lib" CACHE STRING "" FORCE) - SET(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES_INITIAL} wsock32.lib ws2_32.lib wldap32.lib" CACHE STRING "" FORCE) - ENDIF() + LIST_SPACES_APPEND_ONCE(CMAKE_C_STANDARD_LIBRARIES wsock32.lib ws2_32.lib) # bufferoverflowu.lib + IF(CURL_DISABLE_LDAP) + # Remove wldap32.lib from space-separated list + STRING(REPLACE " " ";" _LIST ${CMAKE_C_STANDARD_LIBRARIES}) + LIST(REMOVE_ITEM _LIST "wldap32.lib") + TO_LIST_SPACES(_LIST CMAKE_C_STANDARD_LIBRARIES) + ELSE() + # Append wldap32.lib + LIST_SPACES_APPEND_ONCE(CMAKE_C_STANDARD_LIBRARIES wldap32.lib) + ENDIF() + SET(CMAKE_C_STANDARD_LIBRARIES "${CMAKE_C_STANDARD_LIBRARIES}" CACHE STRING "" FORCE) ENDIF() @@ -213,12 +228,12 @@ OPTION(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ON) MARK_AS_ADVANCED(CMAKE_USE_OPENSSL) IF(CMAKE_USE_OPENSSL) IF(WIN32) - FIND_PACKAGE(OpenSSL) - IF(OPENSSL_FOUND) - SET(USE_SSLEAY TRUE) - SET(USE_OPENSSL TRUE) - LIST(APPEND CURL_LIBS ${OPENSSL_LIBRARIES} ) - ENDIF() + FIND_PACKAGE(OpenSSL) + IF(OPENSSL_FOUND) + SET(USE_SSLEAY TRUE) + SET(USE_OPENSSL TRUE) + LIST(APPEND CURL_LIBS ${OPENSSL_LIBRARIES} ) + ENDIF() #FIND_LIBRARY(LIBEAY NAMES libeay32) #LIST(APPEND CURL_LIBS ${LIBEAY} ) ELSE(WIN32) @@ -246,13 +261,13 @@ OPTION(CURL_ZLIB "Set to ON to enable building cURL with zlib support." ON) SET(HAVE_LIBZ OFF) SET(HAVE_ZLIB_H OFF) SET(HAVE_ZLIB OFF) -IF(CURL_ZLIB) # AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE - FIND_PACKAGE(ZLIB) - IF(ZLIB_FOUND) - SET(HAVE_ZLIB_H ON) - SET(HAVE_ZLIB ON) - SET(HAVE_LIBZ ON) - ENDIF() +IF(CURL_ZLIB) # AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE + FIND_PACKAGE(ZLIB) + IF(ZLIB_FOUND) + SET(HAVE_ZLIB_H ON) + SET(HAVE_ZLIB ON) + SET(HAVE_LIBZ ON) + ENDIF() ENDIF() # If we have features.h, then do the _BSD_SOURCE magic @@ -477,8 +492,8 @@ IF(CMAKE_USE_OPENSSL) CHECK_SYMBOL_EXISTS(CRYPTO_cleanup_all_ex_data "${CURL_INCLUDES}" HAVE_CRYPTO_CLEANUP_ALL_EX_DATA) IF(HAVE_LIBCRYPTO AND HAVE_LIBSSL) - SET(USE_OPENSSL 1) - SET(USE_SSLEAY 1) + SET(USE_OPENSSL 1) + SET(USE_SSLEAY 1) ENDIF(HAVE_LIBCRYPTO AND HAVE_LIBSSL) ENDIF(CMAKE_USE_OPENSSL) CHECK_SYMBOL_EXISTS(gmtime_r "${CURL_INCLUDES}" HAVE_GMTIME_R) @@ -619,7 +634,7 @@ FOREACH(CURL_TEST HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID TIME_WITH_SYS_TIME HAVE_O_NONBLOCK - HAVE_GETHOSTBYADDR_R_5 + HAVE_GETHOSTBYADDR_R_5 HAVE_GETHOSTBYADDR_R_7 HAVE_GETHOSTBYADDR_R_8 HAVE_GETHOSTBYADDR_R_5_REENTRANT @@ -762,7 +777,7 @@ ADD_DEFINITIONS(-DHAVE_CONFIG_H) # For windows, do not allow the compiler to use default target (Vista). IF(WIN32) - ADD_DEFINITIONS(-D_WIN32_WINNT=0x0501) + ADD_DEFINITIONS(-D_WIN32_WINNT=0x0501) ENDIF(WIN32) IF(MSVC) @@ -772,77 +787,77 @@ ENDIF(MSVC) # Sets up the dependencies (zlib, OpenSSL, etc.) of a cURL subproject according to options. # TODO This is far to be complete! FUNCTION(SETUP_CURL_DEPENDENCIES TARGET_NAME) - IF(CURL_ZLIB AND ZLIB_FOUND) - INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) - ENDIF() - IF(CURL_ZLIB AND ZLIB_FOUND) - TARGET_LINK_LIBRARIES(${TARGET_NAME} ${ZLIB_LIBRARIES}) - #ADD_DEFINITIONS( -DHAVE_ZLIB_H -DHAVE_ZLIB -DHAVE_LIBZ ) - ENDIF() - - IF(CMAKE_USE_OPENSSL AND OPENSSL_FOUND) - INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR}) - ENDIF() - IF(CURL_SSL AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE) - TARGET_LINK_LIBRARIES(${TARGET_NAME} ${OPENSSL_LIBRARIES}) - #ADD_DEFINITIONS( -DUSE_SSLEAY ) - ENDIF() + IF(CURL_ZLIB AND ZLIB_FOUND) + INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) + ENDIF() + IF(CURL_ZLIB AND ZLIB_FOUND) + TARGET_LINK_LIBRARIES(${TARGET_NAME} ${ZLIB_LIBRARIES}) + #ADD_DEFINITIONS( -DHAVE_ZLIB_H -DHAVE_ZLIB -DHAVE_LIBZ ) + ENDIF() + + IF(CMAKE_USE_OPENSSL AND OPENSSL_FOUND) + INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR}) + ENDIF() + IF(CURL_SSL AND CURL_CONFIG_HAS_BEEN_RUN_BEFORE) + TARGET_LINK_LIBRARIES(${TARGET_NAME} ${OPENSSL_LIBRARIES}) + #ADD_DEFINITIONS( -DUSE_SSLEAY ) + ENDIF() ENDFUNCTION() # Ugly (but functional) way to include "Makefile.inc" by transforming it (= regenerate it). FUNCTION(TRANSFORM_MAKEFILE_INC INPUT_FILE OUTPUT_FILE) - FILE(READ ${INPUT_FILE} MAKEFILE_INC_TEXT) - STRING(REPLACE "$(top_srcdir)" "\${CURL_SOURCE_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - STRING(REPLACE "$(top_builddir)" "\${CURL_BINARY_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - - STRING(REGEX REPLACE "\\\\\n" "§!§" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - STRING(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*\n)" "SET(\\1 \\2)\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - STRING(REPLACE "§!§" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - - STRING(REGEX REPLACE "\\$\\(([a-zA-Z_][a-zA-Z0-9_]*)\\)" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace $() with ${} - STRING(REGEX REPLACE "@([a-zA-Z_][a-zA-Z0-9_]*)@" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace @@ with ${}, even if that may not be read by CMake scripts. - FILE(WRITE ${OUTPUT_FILE} ${MAKEFILE_INC_TEXT}) - - ### BUGGY METHOD 1 - # FILE(STRINGS Makefile.inc MAKEFILE_INC_TEXT) - # STRING(REPLACE "# ./lib/Makefile.inc" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # STRING(REPLACE " " " " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace tabs with spaces - - # #STRING(REGEX MATCH "CSOURCES *=" AAA ${MAKEFILE_INC_TEXT}) - # #MESSAGE(STATUS ${AAA}) - - # STRING(REPLACE "CSOURCES =" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # STRING(REPLACE "HHEADERS =" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - - # STRING(REGEX REPLACE "[^ ]+\\.c" "" ${HEADERS_VAR} ${MAKEFILE_INC_TEXT}) # Remove source files and store into headers var - # STRING(REGEX REPLACE " +" " " ${HEADERS_VAR} ${${HEADERS_VAR}}) - # STRING(REGEX REPLACE " " ";" ${HEADERS_VAR} ${${HEADERS_VAR}}) - - # STRING(REGEX REPLACE "[^ ]+\\.h" "" ${SOURCES_VAR} ${MAKEFILE_INC_TEXT}) # Remove headers and store into source files var - # STRING(REGEX REPLACE " +" " " ${SOURCES_VAR} ${${SOURCES_VAR}}) - # STRING(REGEX REPLACE " " ";" ${SOURCES_VAR} ${${SOURCES_VAR}}) - - # SET(${HEADERS_VAR} ${${HEADERS_VAR}} PARENT_SCOPE) - # SET(${SOURCES_VAR} ${${SOURCES_VAR}} PARENT_SCOPE) - - ### BUGGY METHOD 2 - # FILE(READ Makefile.inc MAKEFILE_INC_TEXT) - # #STRING(REPLACE "\t" " " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace tabs with spaces - # #STRING(REGEX REPLACE "\n+" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Remove empty lines (allow a simplification in the script) - # STRING(REGEX REPLACE "([A-Z]+)[\t ]*=[\t ]*" "SET(\\1 " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # #STRING(REGEX REPLACE "^(.*)[\t ]*[^\\]$" ")" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # STRING(REGEX REPLACE "([^\\])\n" "\\1)\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # # STRING(REGEX REPLACE "CSOURCES *=" "SET(libCurl_SRCS " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # # STRING(REGEX REPLACE "HHEADERS *=" "SET(libCurl_HEADERS " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) - # FILE(WRITE Makefile.inc.cmake ${MAKEFILE_INC_TEXT}) + FILE(READ ${INPUT_FILE} MAKEFILE_INC_TEXT) + STRING(REPLACE "$(top_srcdir)" "\${CURL_SOURCE_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + STRING(REPLACE "$(top_builddir)" "\${CURL_BINARY_DIR}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + + STRING(REGEX REPLACE "\\\\\n" "§!§" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + STRING(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*\n)" "SET(\\1 \\2)\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + STRING(REPLACE "§!§" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + + STRING(REGEX REPLACE "\\$\\(([a-zA-Z_][a-zA-Z0-9_]*)\\)" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace $() with ${} + STRING(REGEX REPLACE "@([a-zA-Z_][a-zA-Z0-9_]*)@" "\${\\1}" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace @@ with ${}, even if that may not be read by CMake scripts. + FILE(WRITE ${OUTPUT_FILE} ${MAKEFILE_INC_TEXT}) + + ### BUGGY METHOD 1 + # FILE(STRINGS Makefile.inc MAKEFILE_INC_TEXT) + # STRING(REPLACE "# ./lib/Makefile.inc" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # STRING(REPLACE " " " " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace tabs with spaces + + # #STRING(REGEX MATCH "CSOURCES *=" AAA ${MAKEFILE_INC_TEXT}) + # #MESSAGE(STATUS ${AAA}) + + # STRING(REPLACE "CSOURCES =" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # STRING(REPLACE "HHEADERS =" "" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + + # STRING(REGEX REPLACE "[^ ]+\\.c" "" ${HEADERS_VAR} ${MAKEFILE_INC_TEXT}) # Remove source files and store into headers var + # STRING(REGEX REPLACE " +" " " ${HEADERS_VAR} ${${HEADERS_VAR}}) + # STRING(REGEX REPLACE " " ";" ${HEADERS_VAR} ${${HEADERS_VAR}}) + + # STRING(REGEX REPLACE "[^ ]+\\.h" "" ${SOURCES_VAR} ${MAKEFILE_INC_TEXT}) # Remove headers and store into source files var + # STRING(REGEX REPLACE " +" " " ${SOURCES_VAR} ${${SOURCES_VAR}}) + # STRING(REGEX REPLACE " " ";" ${SOURCES_VAR} ${${SOURCES_VAR}}) + + # SET(${HEADERS_VAR} ${${HEADERS_VAR}} PARENT_SCOPE) + # SET(${SOURCES_VAR} ${${SOURCES_VAR}} PARENT_SCOPE) + + ### BUGGY METHOD 2 + # FILE(READ Makefile.inc MAKEFILE_INC_TEXT) + # #STRING(REPLACE "\t" " " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Replace tabs with spaces + # #STRING(REGEX REPLACE "\n+" "\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) # Remove empty lines (allow a simplification in the script) + # STRING(REGEX REPLACE "([A-Z]+)[\t ]*=[\t ]*" "SET(\\1 " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # #STRING(REGEX REPLACE "^(.*)[\t ]*[^\\]$" ")" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # STRING(REGEX REPLACE "([^\\])\n" "\\1)\n" MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # # STRING(REGEX REPLACE "CSOURCES *=" "SET(libCurl_SRCS " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # # STRING(REGEX REPLACE "HHEADERS *=" "SET(libCurl_HEADERS " MAKEFILE_INC_TEXT ${MAKEFILE_INC_TEXT}) + # FILE(WRITE Makefile.inc.cmake ${MAKEFILE_INC_TEXT}) ENDFUNCTION() ADD_SUBDIRECTORY(lib) IF(BUILD_CURL_EXE) - ADD_SUBDIRECTORY(src) + ADD_SUBDIRECTORY(src) ENDIF() IF(BUILD_CURL_TESTS) - ADD_SUBDIRECTORY(tests) + ADD_SUBDIRECTORY(tests) ENDIF() # This needs to be run very last so other parts of the scripts can take advantage of this. -- 2.7.4