summaryrefslogtreecommitdiff
path: root/CMake
diff options
context:
space:
mode:
authorAlbrecht Schlosser <albrechts.fltk@online.de>2021-04-30 19:47:47 +0200
committerAlbrecht Schlosser <albrechts.fltk@online.de>2021-04-30 19:47:47 +0200
commita484541d4b6203d538f1a65db5a95e98f5bde920 (patch)
treee2b33bd7f0da7e60d60cfd7fa5beeb55f40e3f50 /CMake
parent2555e3b37e6218378e7becbb2b62ab6e7f1c1cd1 (diff)
CMake: improve detection and configuration of image libs
Also: fix old (pre 3.13) link_directories() usage
Diffstat (limited to 'CMake')
-rw-r--r--CMake/fl_create_example.cmake4
-rw-r--r--CMake/options.cmake84
2 files changed, 49 insertions, 39 deletions
diff --git a/CMake/fl_create_example.cmake b/CMake/fl_create_example.cmake
index a245bb5ea..8071b5070 100644
--- a/CMake/fl_create_example.cmake
+++ b/CMake/fl_create_example.cmake
@@ -117,9 +117,9 @@ macro (CREATE_EXAMPLE NAME SOURCES LIBRARIES)
if (FLTK_HAVE_CAIRO)
if (CMAKE_VERSION VERSION_LESS "3.13")
- link_directories (${TARGET_NAME} PUBLIC ${PKG_CAIRO_LIBRARY_DIRS})
+ link_directories (${PKG_CAIRO_LIBRARY_DIRS})
else()
- target_link_directories (${TARGET_NAME} PUBLIC ${PKG_CAIRO_LIBRARY_DIRS})
+ target_link_directories (${TARGET_NAME} PRIVATE ${PKG_CAIRO_LIBRARY_DIRS})
endif()
endif (FLTK_HAVE_CAIRO)
diff --git a/CMake/options.cmake b/CMake/options.cmake
index 008088a45..cf50da6b8 100644
--- a/CMake/options.cmake
+++ b/CMake/options.cmake
@@ -168,11 +168,16 @@ if (OPTION_CAIRO OR OPTION_CAIROEXT)
endif (OPTION_CAIROEXT)
add_subdirectory (cairo)
- # fl_debug_var (PKG_CAIRO_INCLUDE_DIRS)
- # fl_debug_var (PKG_CAIRO_CFLAGS)
- # fl_debug_var (PKG_CAIRO_STATIC_CFLAGS)
- # fl_debug_var (PKG_CAIRO_LIBRARIES)
- # fl_debug_var (PKG_CAIRO_STATIC_LIBRARIES)
+ if (0)
+ fl_debug_var (PKG_CAIRO_INCLUDE_DIRS)
+ fl_debug_var (PKG_CAIRO_CFLAGS)
+ fl_debug_var (PKG_CAIRO_LIBRARIES)
+ fl_debug_var (PKG_CAIRO_LIBRARY_DIRS)
+ fl_debug_var (PKG_CAIRO_STATIC_INCLUDE_DIRS)
+ fl_debug_var (PKG_CAIRO_STATIC_CFLAGS)
+ fl_debug_var (PKG_CAIRO_STATIC_LIBRARIES)
+ fl_debug_var (PKG_CAIRO_STATIC_LIBRARY_DIRS)
+ endif()
include_directories (${PKG_CAIRO_INCLUDE_DIRS})
@@ -339,87 +344,92 @@ endif (debug_threads)
unset (debug_threads)
#######################################################################
-option (OPTION_USE_SYSTEM_ZLIB "use system zlib" ON)
+# Image Library Options
+#######################################################################
+
+option (OPTION_USE_SYSTEM_ZLIB "use system zlib" ON)
+
+if (APPLE)
+ option (OPTION_USE_SYSTEM_LIBJPEG "use system libjpeg" OFF)
+ option (OPTION_USE_SYSTEM_LIBPNG "use system libpng" OFF)
+else ()
+ option (OPTION_USE_SYSTEM_LIBJPEG "use system libjpeg" ON)
+ option (OPTION_USE_SYSTEM_LIBPNG "use system libpng" ON)
+endif ()
+
+#######################################################################
+# Image Library : ZLIB
+#######################################################################
if (OPTION_USE_SYSTEM_ZLIB)
- include (FindZLIB)
-endif (OPTION_USE_SYSTEM_ZLIB)
+ find_package (ZLIB)
+endif ()
-if (ZLIB_FOUND)
+if (OPTION_USE_SYSTEM_ZLIB AND ZLIB_FOUND)
+ set (FLTK_USE_BUILTIN_ZLIB FALSE)
set (FLTK_ZLIB_LIBRARIES ${ZLIB_LIBRARIES})
include_directories (${ZLIB_INCLUDE_DIRS})
- set (FLTK_BUILTIN_ZLIB_FOUND FALSE)
else()
if (OPTION_USE_SYSTEM_ZLIB)
message (STATUS "cannot find system zlib library - using built-in\n")
- endif (OPTION_USE_SYSTEM_ZLIB)
+ endif ()
add_subdirectory (zlib)
+ set (FLTK_USE_BUILTIN_ZLIB TRUE)
set (FLTK_ZLIB_LIBRARIES fltk_z)
set (ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/zlib)
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/zlib)
- set (FLTK_BUILTIN_ZLIB_FOUND TRUE)
-endif (ZLIB_FOUND)
+endif ()
set (HAVE_LIBZ 1)
#######################################################################
-if (APPLE)
- option (OPTION_USE_SYSTEM_LIBJPEG "use system libjpeg" OFF)
-else ()
- option (OPTION_USE_SYSTEM_LIBJPEG "use system libjpeg" ON)
-endif (APPLE)
if (OPTION_USE_SYSTEM_LIBJPEG)
- include (FindJPEG)
-endif (OPTION_USE_SYSTEM_LIBJPEG)
+ find_package (JPEG)
+endif ()
-if (JPEG_FOUND)
+if (OPTION_USE_SYSTEM_LIBJPEG AND JPEG_FOUND)
+ set (FLTK_USE_BUILTIN_JPEG FALSE)
set (FLTK_JPEG_LIBRARIES ${JPEG_LIBRARIES})
include_directories (${JPEG_INCLUDE_DIR})
- set (FLTK_BUILTIN_JPEG_FOUND FALSE)
else ()
if (OPTION_USE_SYSTEM_LIBJPEG)
message (STATUS "cannot find system jpeg library - using built-in\n")
- endif (OPTION_USE_SYSTEM_LIBJPEG)
+ endif ()
add_subdirectory (jpeg)
+ set (FLTK_USE_BUILTIN_JPEG TRUE)
set (FLTK_JPEG_LIBRARIES fltk_jpeg)
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/jpeg)
- set (FLTK_BUILTIN_JPEG_FOUND TRUE)
-endif (JPEG_FOUND)
+endif ()
set (HAVE_LIBJPEG 1)
#######################################################################
-if (APPLE)
- option (OPTION_USE_SYSTEM_LIBPNG "use system libpng" OFF)
-else ()
- option (OPTION_USE_SYSTEM_LIBPNG "use system libpng" ON)
-endif (APPLE)
if (OPTION_USE_SYSTEM_LIBPNG)
- include (FindPNG)
-endif (OPTION_USE_SYSTEM_LIBPNG)
+ find_package (PNG)
+endif ()
-if (PNG_FOUND)
+if (OPTION_USE_SYSTEM_LIBPNG AND PNG_FOUND)
+ set (FLTK_USE_BUILTIN_PNG FALSE)
set (FLTK_PNG_LIBRARIES ${PNG_LIBRARIES})
include_directories (${PNG_INCLUDE_DIR})
add_definitions (${PNG_DEFINITIONS})
- set (FLTK_BUILTIN_PNG_FOUND FALSE)
else()
if (OPTION_USE_SYSTEM_LIBPNG)
message (STATUS "cannot find system png library - using built-in\n")
- endif (OPTION_USE_SYSTEM_LIBPNG)
+ endif ()
add_subdirectory (png)
+ set (FLTK_USE_BUILTIN_PNG TRUE)
set (FLTK_PNG_LIBRARIES fltk_png)
set (HAVE_PNG_H 1)
set (HAVE_PNG_GET_VALID 1)
set (HAVE_PNG_SET_TRNS_TO_ALPHA 1)
include_directories (${CMAKE_CURRENT_SOURCE_DIR}/png)
- set (FLTK_BUILTIN_PNG_FOUND TRUE)
-endif (PNG_FOUND)
+endif ()
set (HAVE_LIBPNG 1)