Commit 790cabf06a12cddb0dffc95a703c5de7f8dd290a

Carlos Martín Nieto 2015-06-26T13:51:41

pc: Put libcurl and libssh2 in Libs.private Pass on to whoever wants to link to libgit2 statically the flags that we would have used for these libraries. Putting them in Requires.private as we do now makes pkg-config put their dependencies in the linker arguments as well, which is not what we want.

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 90ec9e6..eb56dfe 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -201,7 +201,7 @@ IF (WIN32 AND WINHTTP)
 	LINK_LIBRARIES(winhttp rpcrt4 crypt32)
 ELSE ()
 	IF (CURL)
-		FIND_PACKAGE(CURL)
+		PKG_CHECK_MODULES(CURL libcurl)
 	ENDIF ()
 
 	IF (NOT AMIGA AND USE_OPENSSL)
@@ -212,7 +212,7 @@ ELSE ()
 		ADD_DEFINITIONS(-DGIT_CURL)
 		INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIRS})
 		LINK_LIBRARIES(${CURL_LIBRARIES})
-		SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} libcurl")
+		SET(LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS} ${CURL_LDFLAGS}")
 	ENDIF()
 
 	FIND_PACKAGE(HTTP_Parser)
@@ -280,7 +280,7 @@ IF (LIBSSH2_FOUND)
 	ADD_DEFINITIONS(-DGIT_SSH)
 	INCLUDE_DIRECTORIES(${LIBSSH2_INCLUDE_DIRS})
 	LINK_DIRECTORIES(${LIBSSH2_LIBRARY_DIRS})
-	SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} libssh2")
+	SET(LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS} ${LIBSSH2_LDFLAGS}")
 	SET(SSH_LIBRARIES ${LIBSSH2_LIBRARIES})
 
 	CHECK_LIBRARY_EXISTS("${LIBSSH2_LIBRARIES}" libssh2_userauth_publickey_frommemory "" HAVE_LIBSSH2_MEMORY_CREDENTIALS)