Commit a8ea1e9e authored by Bill Hoffman's avatar Bill Hoffman
Browse files

ENH: add optional support for c-ares

parent 6dade671
Loading
Loading
Loading
Loading

CMake/FindCARES.cmake

0 → 100755
+42 −0
Original line number Diff line number Diff line
# - Find c-ares
# Find the c-ares includes and library
# This module defines
#  CARES_INCLUDE_DIR, where to find ares.h, etc.
#  CARES_LIBRARIES, the libraries needed to use c-ares.
#  CARES_FOUND, If false, do not try to use c-ares.
# also defined, but not for general use are
# CARES_LIBRARY, where to find the c-ares library.
	
FIND_PATH(CARES_INCLUDE_DIR ares.h
  /usr/local/include
  /usr/include
  )
 	
SET(CARES_NAMES ${CARES_NAMES} cares)
FIND_LIBRARY(CARES_LIBRARY
  NAMES ${CARES_NAMES}
  PATHS /usr/lib /usr/local/lib
  )

IF (CARES_LIBRARY AND CARES_INCLUDE_DIR)
  SET(CARES_LIBRARIES ${CARES_LIBRARY})
  SET(CARES_FOUND "YES")
ELSE (CARES_LIBRARY AND CARES_INCLUDE_DIR)
  SET(CARES_FOUND "NO")
ENDIF (CARES_LIBRARY AND CARES_INCLUDE_DIR)


IF (CARES_FOUND)
  IF (NOT CARES_FIND_QUIETLY)
    MESSAGE(STATUS "Found c-ares: ${CARES_LIBRARIES}")
  ENDIF (NOT CARES_FIND_QUIETLY)
ELSE (CARES_FOUND)
  IF (CARES_FIND_REQUIRED)
    MESSAGE(FATAL_ERROR "Could not find c-ares library")
  ENDIF (CARES_FIND_REQUIRED)
ENDIF (CARES_FOUND)

MARK_AS_ADVANCED(
  CARES_LIBRARY
  CARES_INCLUDE_DIR
  )
+11 −1
Original line number Diff line number Diff line
@@ -68,6 +68,17 @@ endif()
option(BUILD_CURL_EXE "Set to ON to build cURL executable." ON)
option(BUILD_CURL_TESTS "Set to ON to build cURL tests." ON)
option(CURL_STATICLIB "Set to ON to build libcurl with static linking." OFF)
option(CURL_USE_ARES "Set to ON to enable c-ares support" OFF)
# initialize CURL_LIBS
set(CURL_LIBS "")

if(CURL_USE_ARES)
  set(USE_ARES ${CURL_USE_ARES})
  find_package(CARES REQUIRED) 
  list(APPEND CURL_LIBS ${CARES_LIBRARY} )
  message("CURL_LIBS = ${CURL_LIBS}")
  set(CURL_LIBS ${CURL_LIBS} ${CARES_LIBRARY})
endif()

option(BUILD_DASHBOARD_REPORTS "Set to ON to activate reporting of cURL builds here http://www.cdash.org/CDashPublic/index.php?project=CURL" OFF)
if(BUILD_DASHBOARD_REPORTS)
@@ -188,7 +199,6 @@ 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})
+3 −1
Original line number Diff line number Diff line
@@ -5,7 +5,6 @@ configure_file(${CURL_SOURCE_DIR}/include/curl/curlbuild.h.cmake
configure_file(curl_config.h.cmake
  ${CMAKE_CURRENT_BINARY_DIR}/curl_config.h)


transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)

@@ -77,6 +76,9 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../include)
include_directories(${CMAKE_CURRENT_BINARY_DIR}/..)
include_directories(${CMAKE_CURRENT_SOURCE_DIR})
include_directories(${CMAKE_CURRENT_BINARY_DIR})
if(CURL_USE_ARES)
  include_directories(${CARES_INCLUDE_DIR})
endif()

if(CURL_STATICLIB)
  # Static lib
+3 −1
Original line number Diff line number Diff line
@@ -9,7 +9,9 @@ function(SETUP_TEST TEST_NAME) # ARGN are the files in the test
    ${CURL_BINARY_DIR}/lib          # To be able to reach "curl_config.h"
    ${CURL_BINARY_DIR}/include      # To be able to reach "curl/curlbuild.h"
    )

  if(CURL_USE_ARES)
    include_directories(${CARES_INCLUDE_DIR})
  endif()
  setup_curl_dependencies(${TEST_NAME})
  target_link_libraries( ${TEST_NAME} libcurl )

+4 −1
Original line number Diff line number Diff line
@@ -9,7 +9,10 @@ function(SETUP_EXECUTABLE TEST_NAME) # ARGN are the files in the test
    ${CURL_BINARY_DIR}/lib              # To be able to reach "curl_config.h"
    ${CURL_BINARY_DIR}/include  # To be able to reach "curl/curlbuild.h"
    )

  if(CURL_USE_ARES)
    include_directories(${CARES_INCLUDE_DIR})
  endif()  
  # resolve test needs this 
  setup_curl_dependencies(${TEST_NAME})
  #TARGET_LINK_LIBRARIES( ${TEST_NAME} libcurl )