FindCURL.cmake 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #获取CURL的路径
  2. message(STATUS "***** Find CURL *****")
  3. unset(CURL_INCLUDE_DIR CACHE)
  4. unset(CURL_LIBRARY CACHE)
  5. # 1. 查找头文件
  6. unset(INCLUDE_DIR CACHE)
  7. find_path(INCLUDE_DIR
  8. NAMES curl.h
  9. PATHS ${CMAKE_CURRENT_LIST_DIR}/curl/include
  10. NO_DEFAULT_PATH
  11. )
  12. list(APPEND CURL_INCLUDE_DIR ${INCLUDE_DIR})
  13. unset(INCLUDE_DIR CACHE)
  14. find_path(INCLUDE_DIR
  15. NAMES CurlFtp.h
  16. PATHS ${CMAKE_CURRENT_LIST_DIR}/ftp
  17. NO_DEFAULT_PATH
  18. )
  19. list(APPEND CURL_INCLUDE_DIR ${INCLUDE_DIR})
  20. # 2. 查找源文件
  21. unset(SOURCE CACHE)
  22. find_path(SOURCE
  23. NAMES CurlFtp.cpp
  24. PATHS ${CMAKE_CURRENT_LIST_DIR}/ftp
  25. NO_DEFAULT_PATH
  26. )
  27. list(APPEND CURL_SOURCE_DIR ${SOURCE})
  28. # 3. 查找库文件
  29. unset(LIBRARY CACHE)
  30. find_library(CURL_LIBRARY
  31. NAMES curl
  32. PATHS ${CMAKE_CURRENT_LIST_DIR}/curl/lib
  33. NO_DEFAULT_PATH
  34. )
  35. list(APPEND CURL_LIBRARY ${LIBRARY})
  36. # 4. 输出查找结果
  37. message(STATUS "CURL include : CURL_INCLUDE_DIR")
  38. message(STATUS "CURL source : CURL_SOURCE_DIR")
  39. message(STATUS "CURL library : CURL_LIBRARY")
  40. # message(STATUS "CURL include : ${CURL_INCLUDE_DIR}")
  41. # message(STATUS "CURL source : ${CURL_SOURCE_DIR}")
  42. # message(STATUS "CURL library : ${CURL_LIBRARY}")
  43. # 5. 设置标志位
  44. if(CURL_INCLUDE_DIR AND CURL_SOURCE_DIR AND CURL_LIBRARY)
  45. set(CURL_FOUND TRUE)
  46. else()
  47. set(CURL_FOUND FALSE)
  48. endif()
  49. message(STATUS "---------------------------------")