Merge pull request #1035 from winterheart/cmake

CMake improvements
This commit is contained in:
David Capello 2016-03-26 09:21:10 -03:00
commit 3b7674a6c7
3 changed files with 24 additions and 43 deletions

View File

@ -157,30 +157,24 @@ endif()
# zlib
if(USE_SHARED_ZLIB)
find_package(ZLIB)
if(NOT ZLIB_FOUND)
message(FATAL_ERROR "zlib not found")
endif()
find_package(ZLIB REQUIRED)
else()
set(ZLIB_LIBRARIES zlib)
set(ZLIB_INCLUDE_DIR ${ZLIB_DIR})
set(ZLIB_INCLUDE_DIRS ${ZLIB_DIR})
# Zlib generated zconf.h file
include_directories(${CMAKE_BINARY_DIR}/third_party/zlib)
endif()
include_directories(${ZLIB_INCLUDE_DIR})
include_directories(${ZLIB_INCLUDE_DIRS})
# libpng
if(USE_SHARED_LIBPNG)
find_package(PNG)
if(NOT PNG_FOUND)
message(FATAL_ERROR "libpng not found")
endif()
find_package(PNG REQUIRED)
add_definitions(${PNG_DEFINITIONS})
else()
set(PNG_LIBRARIES libpng)
set(PNG_INCLUDE_DIR ${LIBPNG_DIR})
set(PNG_INCLUDE_DIRS ${LIBPNG_DIR})
endif()
include_directories(${PNG_INCLUDE_DIR})
include_directories(${PNG_INCLUDE_DIRS})
add_definitions(-DPNG_NO_MMX_CODE) # Do not use MMX optimizations in PNG code
# libwebp
@ -222,35 +216,28 @@ include_directories(${PIXMAN_INCLUDE_DIR})
# freetype
if(USE_SHARED_FREETYPE)
find_library(FREETYPE_LIBRARY NAMES freetype)
find_path(FREETYPE_INCLUDE_DIR NAMES freetype.h)
find_package(Freetype REQUIRED)
else()
set(FREETYPE_LIBRARY freetype)
set(FREETYPE_INCLUDE_DIR ${FREETYPE_DIR}/include)
set(FREETYPE_LIBRARIES freetype)
set(FREETYPE_INCLUDE_DIRS ${FREETYPE_DIR}/include)
endif()
include_directories(${FREETYPE_INCLUDE_DIR})
include_directories(${FREETYPE_INCLUDE_DIRS})
if(USE_SHARED_GIFLIB)
find_package(GIF REQUIRED)
if(NOT GIF_FOUND)
message(FATAL_ERROR "giflib not found")
endif()
else()
set(GIF_LIBRARIES giflib)
set(GIF_INCLUDE_DIR ${GIFLIB_DIR}/lib)
set(GIF_INCLUDE_DIRS ${GIFLIB_DIR}/lib)
endif()
include_directories(${GIF_INCLUDE_DIR})
include_directories(${GIF_INCLUDE_DIRS})
if(USE_SHARED_JPEGLIB)
find_package(JPEG)
if(NOT JPEG_FOUND)
message(FATAL_ERROR "jpeg not found")
endif()
find_package(JPEG REQUIRED)
else()
set(JPEG_LIBRARIES jpeg)
set(JPEG_INCLUDE_DIR ${LIBJPEG_DIR})
set(JPEG_INCLUDE_DIRS ${LIBJPEG_DIRS})
endif()
include_directories(${JPEG_INCLUDE_DIR})
include_directories(${JPEG_INCLUDE_DIRS})
if(USE_ALLEG4_BACKEND)
if(USE_SHARED_LIBLOADPNG)
@ -264,13 +251,12 @@ if(USE_ALLEG4_BACKEND)
endif()
if(USE_SHARED_CURL)
find_library(LIBCURL_LIBRARY NAMES curl)
find_path(LIBCURL_INCLUDE_DIR NAMES curl/curl.h)
find_package(CURL REQUIRED)
else()
set(LIBCURL_LIBRARY libcurl)
set(LIBCURL_INCLUDE_DIR ${CURL_DIR}/include)
set(CURL_LIBRARIES libcurl)
set(CURL_INCLUDE_DIRS ${CURL_DIR}/include)
endif()
include_directories(${LIBCURL_INCLUDE_DIR})
include_directories(${CURL_INCLUDE_DIRS})
# simpleini
include_directories(${SIMPLEINI_DIR})
@ -323,17 +309,11 @@ endif()
if(UNIX AND NOT APPLE AND NOT BEOS)
# Pthreads
find_package(Threads)
if(NOT CMAKE_USE_PTHREADS_INIT)
message(FATAL_ERROR "Unix port requires pthreads support.")
endif()
find_package(Threads REQUIRED)
list(APPEND PLATFORM_LIBS m ${CMAKE_THREAD_LIBS_INIT})
# X11
find_package(X11)
if(NOT X11_FOUND)
message(FATAL_ERROR "Unix port requires X11 (e.g. libx11-dev).")
endif()
find_package(X11 REQUIRED)
include_directories(SYSTEM ${X11_INCLUDE_DIR})
list(APPEND PLATFORM_LIBS ${X11_LIBRARIES})

View File

@ -446,12 +446,13 @@ target_link_libraries(app-lib
ui-lib
undo-lib
${TINYXML_LIBRARY}
${CURL_LIBRARIES}
${JPEG_LIBRARIES}
${GIF_LIBRARIES}
${PNG_LIBRARIES}
${WEBP_LIBRARIES}
${ZLIB_LIBRARIES}
${FREETYPE_LIBRARY})
${FREETYPE_LIBRARIES})
if(ENABLE_UPDATER)
target_link_libraries(app-lib updater-lib)

View File

@ -7,4 +7,4 @@ add_library(net-lib
http_response.cpp)
target_link_libraries(net-lib
${LIBCURL_LIBRARY})
${CURL_LIBRARIES})