Merge pull request #2314 from libgit2/cmn/known-libs Assorted CMake fixups
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
diff --git a/.travis.yml b/.travis.yml
index f25ff76..fcae726 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -19,7 +19,7 @@ matrix:
fast_finish: true
include:
- compiler: i586-mingw32msvc-gcc
- env: OPTIONS="-DBUILD_CLAR=OFF -DWIN32=ON -DMINGW=ON"
+ env: OPTIONS="-DBUILD_CLAR=OFF -DWIN32=ON -DMINGW=ON -DUSE_SSH=OFF"
- compiler: gcc
env: COVERITY=1
allow_failures:
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8a38901..b5bd669 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -139,7 +139,7 @@ ELSE ()
FIND_PACKAGE(OpenSSL)
ENDIF ()
- FIND_PACKAGE(HTTP_Parser QUIET)
+ FIND_PACKAGE(HTTP_Parser)
IF (HTTP_PARSER_FOUND AND HTTP_PARSER_VERSION_MAJOR EQUAL 2)
INCLUDE_DIRECTORIES(${HTTP_PARSER_INCLUDE_DIRS})
LINK_LIBRARIES(${HTTP_PARSER_LIBRARIES})
@@ -157,7 +157,11 @@ IF (WIN32 AND NOT MINGW AND NOT SHA1_TYPE STREQUAL "builtin")
FILE(GLOB SRC_SHA1 src/hash/hash_win32.c)
ELSEIF (OPENSSL_FOUND AND NOT SHA1_TYPE STREQUAL "builtin")
ADD_DEFINITIONS(-DOPENSSL_SHA1)
- SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} openssl")
+ IF (CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
+ SET(LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS} -lssl")
+ ELSE()
+ SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} openssl")
+ ENDIF ()
ELSE()
FILE(GLOB SRC_SHA1 src/hash/hash_generic.c)
ENDIF()
@@ -174,19 +178,15 @@ IF(WIN32 OR AMIGA OR ANDROID)
ENDIF()
# Optional external dependency: zlib
-# It's optional, but FIND_PACKAGE gives a warning that looks more like an
-# error.
-FIND_PACKAGE(ZLIB QUIET)
+FIND_PACKAGE(ZLIB)
IF (ZLIB_FOUND)
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
LINK_LIBRARIES(${ZLIB_LIBRARIES})
- IF(APPLE)
+ IF(APPLE OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
SET(LIBGIT2_PC_LIBS "${LIBGIT2_PC_LIBS} -lz")
ELSE()
SET(LIBGIT2_PC_REQUIRES "${LIBGIT2_PC_REQUIRES} zlib")
ENDIF()
- # Fake the message CMake would have shown
- MESSAGE(STATUS "Found zlib: ${ZLIB_LIBRARY}")
ELSE()
MESSAGE(STATUS "zlib was not found; using bundled 3rd-party sources." )
INCLUDE_DIRECTORIES(deps/zlib)
@@ -195,8 +195,8 @@ ELSE()
ENDIF()
# Optional external dependency: libssh2
-IF (USE_SSH AND NOT MINGW)
- FIND_PACKAGE(LIBSSH2 QUIET)
+IF (USE_SSH)
+ FIND_PACKAGE(LIBSSH2)
ENDIF()
IF (LIBSSH2_FOUND)
ADD_DEFINITIONS(-DGIT_SSH)
@@ -207,7 +207,7 @@ ENDIF()
# Optional external dependency: iconv
IF (USE_ICONV)
- FIND_PACKAGE(ICONV QUIET)
+ FIND_PACKAGE(ICONV)
ENDIF()
IF (ICONV_FOUND)
ADD_DEFINITIONS(-DGIT_USE_ICONV)