From 2a136cf86e8b533b41265be7fa25a5d3aa027954 Mon Sep 17 00:00:00 2001
From: Jakub Zakrzewski <jzakrzewski@e2ebridge.com>
Date: Fri, 22 Aug 2014 17:02:59 +0200
Subject: [PATCH 4/5] Cmake: Got rid of setup_curl_dependencies

There is no need for such function. Include_directories propagate by
themselves and having a function with one simple link statement makes
little sense.
---
 CMakeLists.txt               | 20 ++------------------
 lib/CMakeLists.txt           |  2 --
 src/CMakeLists.txt           |  7 ++-----
 tests/libtest/CMakeLists.txt |  4 ++--
 tests/server/CMakeLists.txt  |  4 ++--
 5 files changed, 8 insertions(+), 29 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index fca42e0..c48fd01 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -378,6 +378,7 @@ if(CURL_ZLIB)
     set(HAVE_ZLIB ON)
     set(HAVE_LIBZ ON)
     list(APPEND CURL_LIBS ${ZLIB_LIBRARIES})
+    include_directories(${ZLIB_INCLUDE_DIR})
   endif()
 endif()
 
@@ -394,6 +395,7 @@ if(CMAKE_USE_LIBSSH2)
     list(APPEND CURL_LIBS ${LIBSSH2_LIBRARY})
     set(CMAKE_REQUIRED_LIBRARIES ${LIBSSH2_LIBRARY})
     set(CMAKE_REQUIRED_INCLUDES "${LIBSSH2_INCLUDE_DIR}")
+    include_directories("${LIBSSH2_INCLUDE_DIR}")
     set(HAVE_LIBSSH2 ON)
     set(USE_LIBSSH2 ON)
 
@@ -870,24 +872,6 @@ if(MSVC)
   add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
 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(CMAKE_USE_OPENSSL AND OPENSSL_FOUND)
-    include_directories(${OPENSSL_INCLUDE_DIR})
-  endif()
-
-  if(CMAKE_USE_LIBSSH2 AND LIBSSH2_FOUND)
-    include_directories(${LIBSSH2_INCLUDE_DIR})
-  endif()
-
-  target_link_libraries(${TARGET_NAME} ${CURL_LIBS})
-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)
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index b2bcf09..3ad62df 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -106,8 +106,6 @@ endif()
 
 set_target_properties(${LIB_NAME} PROPERTIES COMPILE_DEFINITIONS BUILDING_LIBCURL)
 
-setup_curl_dependencies(${LIB_NAME})
-
 # Remove the "lib" prefix since the library is already named "libcurl".
 set_target_properties(${LIB_NAME} PROPERTIES PREFIX "")
 set_target_properties(${LIB_NAME} PROPERTIES IMPORT_PREFIX "")
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 2822c5b..fceaf10 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -30,11 +30,8 @@ include_directories(
   ${CURL_BINARY_DIR}/include    # To be able to reach "curl/curlbuild.h"
   )
 
-
-# Setup dependencies
-setup_curl_dependencies(${EXE_NAME})
-target_link_libraries( ${EXE_NAME} libcurl )
-
+#Build cURL executable
+target_link_libraries( ${EXE_NAME} libcurl ${CURL_LIBS})
 
 ################################################################################
 
diff --git a/tests/libtest/CMakeLists.txt b/tests/libtest/CMakeLists.txt
index c06b356..73aaaa1 100644
--- a/tests/libtest/CMakeLists.txt
+++ b/tests/libtest/CMakeLists.txt
@@ -12,8 +12,8 @@ function(SETUP_TEST TEST_NAME)          # ARGN are the files in the test
   if(CURL_USE_ARES)
     include_directories(${CARES_INCLUDE_DIR})
   endif()
-  setup_curl_dependencies(${TEST_NAME})
-  target_link_libraries( ${TEST_NAME} libcurl )
+
+  target_link_libraries( ${TEST_NAME} libcurl ${CURL_LIBS})
 
   set_target_properties(${TEST_NAME}
     PROPERTIES COMPILE_DEFINITIONS ${UPPER_TEST_NAME})
diff --git a/tests/server/CMakeLists.txt b/tests/server/CMakeLists.txt
index ee08345..031d817 100644
--- a/tests/server/CMakeLists.txt
+++ b/tests/server/CMakeLists.txt
@@ -12,8 +12,8 @@ function(SETUP_EXECUTABLE TEST_NAME)    # ARGN are the files in the test
   if(CURL_USE_ARES)
     include_directories(${CARES_INCLUDE_DIR})
   endif()
-  # resolve test needs this
-  setup_curl_dependencies(${TEST_NAME})
+
+  target_link_libraries(${TEST_NAME} ${CURL_LIBS})
 
   # Test servers simply are standalone programs that do not use libcurl
   # library.  For convinience and to ease portability of these servers,
-- 
1.8.1.4

