2019-11-06 07:36:20 -08:00
|
|
|
CMAKE_MINIMUM_REQUIRED(VERSION 3.7 FATAL_ERROR)
|
2022-01-22 02:29:04 -08:00
|
|
|
project(GD)
|
2008-01-13 13:11:35 -08:00
|
|
|
SET(PACKAGE GD)
|
|
|
|
SET(PACKAGE_NAME GD)
|
|
|
|
|
2022-01-22 02:29:04 -08:00
|
|
|
|
2008-01-13 13:11:35 -08:00
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
SET(CMAKE_MODULE_PATH "${GD_SOURCE_DIR}/cmake/modules")
|
|
|
|
|
2016-04-30 13:25:09 -07:00
|
|
|
include(gd)
|
|
|
|
|
2018-01-29 15:07:44 -08:00
|
|
|
OPTION(ENABLE_GD_FORMATS "Enable GD image formats" 0)
|
2013-04-04 13:24:57 -07:00
|
|
|
OPTION(ENABLE_PNG "Enable PNG support" 0)
|
|
|
|
OPTION(ENABLE_LIQ "Enable libimagequant support" 0)
|
|
|
|
OPTION(ENABLE_JPEG "Enable JPEG support" 0)
|
|
|
|
OPTION(ENABLE_TIFF "Enable TIFF support" 0)
|
2014-10-02 11:59:29 -07:00
|
|
|
OPTION(ENABLE_ICONV "Enable ICONV support" 0)
|
2013-04-04 13:24:57 -07:00
|
|
|
OPTION(ENABLE_XPM "Enable XPM support" 0)
|
|
|
|
OPTION(ENABLE_FREETYPE "Enable Freetype2 support" 0)
|
|
|
|
OPTION(ENABLE_FONTCONFIG "Enable FontConfig support" 0)
|
|
|
|
OPTION(ENABLE_WEBP "Enable WebP support" 0)
|
2021-03-02 09:32:03 -08:00
|
|
|
OPTION(ENABLE_HEIF "Enable HEIF support" 0)
|
2021-03-03 18:35:56 -08:00
|
|
|
OPTION(ENABLE_AVIF "Enable AVIF support" 0)
|
2019-11-01 06:26:53 -07:00
|
|
|
OPTION(ENABLE_RAQM "Enable RAQM support" 0)
|
2021-08-21 03:36:52 -07:00
|
|
|
OPTION(ENABLE_ASAN "Enable (gcc) ASAN support" 0)
|
2021-08-21 21:50:59 -07:00
|
|
|
OPTION(ENABLE_CPP "Enable CPP GD API" 1)
|
2021-08-25 05:32:55 -07:00
|
|
|
OPTION(VERBOSE_MAKEFILE "Enable CMAKE_VERBOSE_MAKEFILE" 0)
|
|
|
|
|
|
|
|
if (VERBOSE_MAKEFILE)
|
|
|
|
set(CMAKE_VERBOSE_MAKEFILE ON)
|
|
|
|
endif (VERBOSE_MAKEFILE)
|
2008-02-27 05:27:49 -08:00
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
if (BUILD_TEST)
|
|
|
|
ENABLE_TESTING()
|
|
|
|
endif(BUILD_TEST)
|
|
|
|
|
2013-02-10 02:20:03 -08:00
|
|
|
# if you would like to pass C flags to the compiler, then just
|
|
|
|
# - specify -DCMAKE_C_FLAGS=... on invocation of cmake, or
|
|
|
|
# - specify CFLAGS=... on invocation of make
|
|
|
|
IF(CMAKE_COMPILER_IS_GNUCC)
|
2021-08-21 00:07:41 -07:00
|
|
|
# Re-enable sanitize once we find a way to filter out errors in external libraries (like HEIF)
|
2021-08-21 03:36:52 -07:00
|
|
|
if (ENABLE_ASAN)
|
2021-08-21 03:52:54 -07:00
|
|
|
SET(CMAKE_C_FLAGS_DEBUG "-g -Wall -Wextra -O0 -fsanitize=address") # will be added to CMAKE_C_FLAGS when CMAKE_BUILD_TYPE is Debug
|
|
|
|
else (ENABLE_ASAN)
|
|
|
|
SET(CMAKE_C_FLAGS_DEBUG "-g -Wall -Wextra -O0 ") # will be added to CMAKE_C_FLAGS when CMAKE_BUILD_TYPE is Debug
|
2021-08-21 03:36:52 -07:00
|
|
|
endif (ENABLE_ASAN)
|
2013-02-10 02:20:03 -08:00
|
|
|
ENDIF(CMAKE_COMPILER_IS_GNUCC)
|
2018-06-21 19:47:42 -07:00
|
|
|
SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY
|
|
|
|
${PROJECT_BINARY_DIR}/Bin
|
|
|
|
CACHE PATH
|
|
|
|
"Single Directory for all Libraries"
|
2013-04-23 23:35:51 -07:00
|
|
|
)
|
|
|
|
|
2018-06-21 19:47:42 -07:00
|
|
|
# --------- Setup the Executable output Directory -------------
|
|
|
|
SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
|
|
|
${PROJECT_BINARY_DIR}/Bin
|
|
|
|
CACHE PATH
|
|
|
|
"Single Directory for all Executables."
|
2013-04-23 23:35:51 -07:00
|
|
|
)
|
|
|
|
|
2018-06-21 19:47:42 -07:00
|
|
|
# --------- Setup the Executable output Directory -------------
|
|
|
|
SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY
|
|
|
|
${PROJECT_BINARY_DIR}/Bin
|
|
|
|
CACHE PATH
|
|
|
|
"Single Directory for all static libraries."
|
2013-04-23 23:35:51 -07:00
|
|
|
)
|
2007-12-28 08:47:52 -08:00
|
|
|
|
2020-06-17 23:55:32 -07:00
|
|
|
SET(PKG_REQUIRES_PRIVATES "")
|
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
if (USE_EXT_GD)
|
|
|
|
message("Using GD at: ${USE_EXT_GD}")
|
|
|
|
INCLUDE_DIRECTORIES(BEFORE ${GD_INCLUDE_DIR})
|
|
|
|
FIND_PACKAGE(GD)
|
|
|
|
if (GD_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(BEFORE ${GD_INCLUDE_DIR})
|
2013-02-19 22:05:22 -08:00
|
|
|
LINK_DIRECTORIES(${GD_LIBRARIES})
|
2007-01-23 15:54:15 -08:00
|
|
|
SET(GD_LIB ${GD_LIBRARIES})
|
|
|
|
SET(GD_LIBS_DIR ${GD_LIBRARY})
|
|
|
|
|
|
|
|
message("GD libs #: ${GD_LIBRARIES}")
|
|
|
|
message("GD lib #: ${GD_LIBRARY}")
|
|
|
|
message("GD include: ${GD_INCLUDE_DIR}")
|
|
|
|
else (GD_FOUND)
|
|
|
|
message("No gd found")
|
|
|
|
endif (GD_FOUND)
|
|
|
|
else (USE_EXT_GD)
|
2008-01-13 13:11:35 -08:00
|
|
|
|
2016-07-23 11:30:26 -07:00
|
|
|
MACRO(GV VER VAR)
|
2022-04-15 01:34:24 -07:00
|
|
|
file (STRINGS "src/gd.h" _VERSION_LINE REGEX "define[ ]+GD_${VER}_VERSION")
|
|
|
|
if ( _VERSION_LINE )
|
|
|
|
string ( REGEX REPLACE ".*define[ ]+GD_${VER}_VERSION[ ]+\"?([^ \"]*)\"?[ ]+.*" "\\1" ${VAR} "${_VERSION_LINE}" )
|
|
|
|
endif ()
|
2016-07-23 11:30:26 -07:00
|
|
|
ENDMACRO(GV)
|
2007-01-23 15:54:15 -08:00
|
|
|
|
2016-07-23 11:30:26 -07:00
|
|
|
GV(MAJOR GDLIB_MAJOR)
|
|
|
|
GV(MINOR GDLIB_MINOR)
|
|
|
|
GV(RELEASE GDLIB_REVISION)
|
|
|
|
GV(EXTRA GDLIB_EXTRA)
|
|
|
|
SET(GDLIB_VERSION "${GDLIB_MAJOR}.${GDLIB_MINOR}.${GDLIB_REVISION}${GDLIB_EXTRA}")
|
|
|
|
MESSAGE(STATUS "gd version ${GDLIB_VERSION}")
|
2007-01-23 15:54:15 -08:00
|
|
|
|
2016-07-23 11:44:20 -07:00
|
|
|
MACRO(GV_LT VER VAR)
|
|
|
|
execute_process(
|
|
|
|
COMMAND sh ${CMAKE_CURRENT_SOURCE_DIR}/config/getlib.sh ${VER}
|
|
|
|
OUTPUT_VARIABLE ${VAR}
|
|
|
|
)
|
|
|
|
ENDMACRO(GV_LT)
|
|
|
|
|
|
|
|
GV_LT(SONAME GDLIB_LIB_SOVERSION)
|
|
|
|
GV_LT(VERSION GDLIB_LIB_VERSION)
|
|
|
|
MESSAGE(STATUS "gd shared lib version ${GDLIB_LIB_SOVERSION} (${GDLIB_LIB_VERSION})")
|
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
include(CheckIncludeFiles)
|
|
|
|
include(CheckIncludeFile)
|
|
|
|
|
|
|
|
include(AC_HEADER_STDC)
|
|
|
|
include(CheckPrototypeExists)
|
|
|
|
|
2021-08-21 21:50:59 -07:00
|
|
|
if (ENABLE_CPP)
|
|
|
|
SET(ENABLE_CPP_API 1)
|
|
|
|
endif (ENABLE_CPP)
|
|
|
|
|
2020-05-06 02:17:33 -07:00
|
|
|
if (ENABLE_GD_FORMATS)
|
2020-05-07 20:39:42 -07:00
|
|
|
FIND_PACKAGE(ZLIB REQUIRED)
|
2020-05-06 02:17:33 -07:00
|
|
|
endif (ENABLE_GD_FORMATS)
|
|
|
|
|
2008-01-13 13:11:35 -08:00
|
|
|
if (ENABLE_PNG)
|
2020-05-07 20:39:42 -07:00
|
|
|
FIND_PACKAGE(ZLIB REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
FIND_PACKAGE(PNG REQUIRED)
|
|
|
|
endif (ENABLE_PNG)
|
2018-06-21 19:47:42 -07:00
|
|
|
|
2014-10-02 11:59:29 -07:00
|
|
|
if (ENABLE_ICONV)
|
|
|
|
FIND_PACKAGE(ICONV REQUIRED)
|
|
|
|
endif (ENABLE_ICONV)
|
2008-01-13 13:11:35 -08:00
|
|
|
|
2013-04-04 13:24:57 -07:00
|
|
|
IF (ENABLE_WEBP)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(WEBP REQUIRED)
|
2013-04-04 13:24:57 -07:00
|
|
|
ENDIF (ENABLE_WEBP)
|
|
|
|
|
2021-03-02 09:32:03 -08:00
|
|
|
IF (ENABLE_HEIF)
|
|
|
|
FIND_PACKAGE(HEIF REQUIRED)
|
|
|
|
ENDIF (ENABLE_HEIF)
|
|
|
|
|
2021-03-03 18:35:56 -08:00
|
|
|
IF (ENABLE_AVIF)
|
|
|
|
FIND_PACKAGE(libavif 0.8.2 REQUIRED CONFIG)
|
|
|
|
SET(HAVE_LIBAVIF 1)
|
|
|
|
SET(AVIF_LIBRARIES avif)
|
|
|
|
SET(AVIF_FOUND 1)
|
|
|
|
ENDIF (ENABLE_AVIF)
|
|
|
|
|
2013-03-25 16:46:54 -07:00
|
|
|
IF (ENABLE_LIQ)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(LIQ REQUIRED)
|
2013-03-25 16:46:54 -07:00
|
|
|
ENDIF (ENABLE_LIQ)
|
|
|
|
|
2008-02-08 17:59:27 -08:00
|
|
|
IF (NOT WIN32)
|
|
|
|
FIND_PACKAGE(PTHREAD)
|
|
|
|
ENDIF (NOT WIN32)
|
|
|
|
|
2008-01-13 13:11:35 -08:00
|
|
|
if (ENABLE_JPEG)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(JPEG REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
endif (ENABLE_JPEG)
|
|
|
|
|
|
|
|
if (ENABLE_TIFF)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(TIFF REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
endif (ENABLE_TIFF)
|
|
|
|
|
|
|
|
if (ENABLE_FREETYPE)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(Freetype REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
endif (ENABLE_FREETYPE)
|
2007-10-04 11:53:57 -07:00
|
|
|
|
2008-01-13 13:11:35 -08:00
|
|
|
if (ENABLE_XPM)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(XPM REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
endif (ENABLE_XPM)
|
2008-01-01 07:32:42 -08:00
|
|
|
|
2008-01-13 13:11:35 -08:00
|
|
|
if (ENABLE_FONTCONFIG)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(FontConfig REQUIRED)
|
2008-01-13 13:11:35 -08:00
|
|
|
endif (ENABLE_FONTCONFIG)
|
2007-01-23 15:54:15 -08:00
|
|
|
|
2019-11-01 06:26:53 -07:00
|
|
|
if (ENABLE_RAQM)
|
2020-05-10 07:41:14 -07:00
|
|
|
FIND_PACKAGE(RAQM REQUIRED)
|
2019-11-01 06:26:53 -07:00
|
|
|
endif (ENABLE_RAQM)
|
|
|
|
|
2018-01-29 15:07:44 -08:00
|
|
|
SET(ENABLE_GD_FORMATS ${ENABLE_GD_FORMATS})
|
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
if (FREETYPE_FOUND)
|
2013-04-19 16:14:37 -07:00
|
|
|
INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS})
|
2007-03-07 11:30:17 -08:00
|
|
|
SET(HAVE_FT2BUILD_H 1)
|
2007-05-06 12:53:05 -07:00
|
|
|
SET(HAVE_LIBFREETYPE 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES freetype2)
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(FREETYPE_FOUND)
|
|
|
|
|
|
|
|
IF(ZLIB_FOUND)
|
2013-04-05 11:25:31 -07:00
|
|
|
INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
|
2007-01-23 15:54:15 -08:00
|
|
|
SET(HAVE_LIBZ 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES zlib)
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(ZLIB_FOUND)
|
2013-04-04 13:24:57 -07:00
|
|
|
|
2015-05-07 00:35:03 -07:00
|
|
|
IF(WEBP_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${WEBP_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBWEBP 1)
|
|
|
|
ENDIF(WEBP_FOUND)
|
2007-01-23 15:54:15 -08:00
|
|
|
|
2021-03-02 09:32:03 -08:00
|
|
|
IF(HEIF_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${HEIF_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBHEIF 1)
|
|
|
|
ENDIF(HEIF_FOUND)
|
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
IF(PNG_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBPNG 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES libpng)
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(PNG_FOUND)
|
2018-06-21 19:47:42 -07:00
|
|
|
|
2014-10-02 11:59:29 -07:00
|
|
|
IF(ICONV_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${ICONV_INCLUDE_DIR})
|
|
|
|
SET(HAVE_ICONV 1)
|
|
|
|
SET(HAVE_ICONV_H 1)
|
|
|
|
ENDIF(ICONV_FOUND)
|
2007-01-23 15:54:15 -08:00
|
|
|
|
2013-03-25 16:46:54 -07:00
|
|
|
IF(LIQ_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${LIQ_INCLUDE_DIR})
|
2016-05-18 00:03:50 -07:00
|
|
|
SET(HAVE_LIBIMAGEQUANT 1)
|
2013-03-25 16:46:54 -07:00
|
|
|
ENDIF(LIQ_FOUND)
|
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
IF(XPM_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${XPM_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBXPM 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES xpm)
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(XPM_FOUND)
|
|
|
|
|
|
|
|
IF(JPEG_FOUND)
|
2008-05-05 01:46:54 -07:00
|
|
|
INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
|
2007-01-23 15:54:15 -08:00
|
|
|
SET(HAVE_LIBJPEG 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES libjpeg)
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(JPEG_FOUND)
|
|
|
|
|
2007-10-04 11:53:57 -07:00
|
|
|
IF(TIFF_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${TIFF_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBTIFF 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES libtiff-4)
|
2007-10-04 22:35:58 -07:00
|
|
|
ENDIF(TIFF_FOUND)
|
2007-10-04 11:53:57 -07:00
|
|
|
|
2007-01-23 15:54:15 -08:00
|
|
|
IF(FONTCONFIG_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${FONTCONFIG_INCLUDE_DIR})
|
|
|
|
SET(HAVE_LIBFONTCONFIG 1)
|
2020-06-17 23:55:32 -07:00
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVATES fontconfig)
|
2007-05-06 12:53:05 -07:00
|
|
|
ELSE (FONTCONFIG_FOUND)
|
2013-02-21 17:44:28 -08:00
|
|
|
SET(FONTCONFIG_LIBRARY "")
|
2008-01-01 07:32:42 -08:00
|
|
|
SET(FONTCONFIG_INCLUDE_DIR "")
|
|
|
|
SET(FONTCONFIG_LIB_DIR "")
|
2007-01-23 15:54:15 -08:00
|
|
|
ENDIF(FONTCONFIG_FOUND)
|
|
|
|
|
2019-11-01 06:26:53 -07:00
|
|
|
IF(RAQM_FOUND)
|
|
|
|
INCLUDE_DIRECTORIES(${RAQM_INCLUDE_DIR})
|
2020-06-17 23:55:32 -07:00
|
|
|
SET(HAVE_RAQM 1)
|
|
|
|
LIST(APPEND PKG_REQUIRES_PRIVAES raqm)
|
2019-11-01 06:26:53 -07:00
|
|
|
ENDIF(RAQM_FOUND)
|
|
|
|
|
2020-06-17 23:55:32 -07:00
|
|
|
string(REPLACE ";" ", " PKG_REQUIRES_PRIVATES "${PKG_REQUIRES_PRIVATES}")
|
2007-01-23 15:54:15 -08:00
|
|
|
SET(HAVE_CONFIG_H 1)
|
|
|
|
|
|
|
|
ADD_DEFINITIONS(-DHAVE_CONFIG_H)
|
2007-11-28 12:19:24 -08:00
|
|
|
|
2013-04-30 00:36:17 -07:00
|
|
|
CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
|
|
|
|
CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
|
|
|
|
|
2021-09-09 15:08:53 -07:00
|
|
|
CONFIGURE_FILE(${GD_SOURCE_DIR}/src/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/src/config.h ESCAPE_QUOTES)
|
|
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR}/src)
|
2013-04-20 15:14:06 -07:00
|
|
|
|
2016-07-22 02:39:04 -07:00
|
|
|
option(BUILD_SHARED_LIBS "Build shared libs" ON)
|
|
|
|
option(BUILD_STATIC_LIBS "Build static libs" OFF)
|
2007-10-04 05:14:56 -07:00
|
|
|
|
|
|
|
if (WIN32)
|
2013-04-23 23:35:51 -07:00
|
|
|
SET(GD_LIB libgd)
|
2013-04-22 20:35:52 -07:00
|
|
|
ADD_DEFINITIONS( -DWIN32 -D_WIN32 -DMSWIN32 -DBGDWIN32 -DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0600)
|
2008-04-19 03:34:45 -07:00
|
|
|
|
|
|
|
if(NOT MINGW AND MSVC_VERSION GREATER 1399)
|
|
|
|
ADD_DEFINITIONS("/D_CRT_SECURE_NO_DEPRECATE")
|
|
|
|
endif(NOT MINGW AND MSVC_VERSION GREATER 1399)
|
2008-05-05 01:46:54 -07:00
|
|
|
if (MINGW OR MSYS)
|
2021-07-15 12:39:15 -07:00
|
|
|
SET(GD_LIB gd)
|
2014-10-17 09:47:04 -07:00
|
|
|
ADD_DEFINITIONS("-mms-bitfields") # -m32
|
2008-05-05 01:46:54 -07:00
|
|
|
endif (MINGW OR MSYS)
|
2008-01-13 13:23:45 -08:00
|
|
|
else (WIN32)
|
2007-10-04 05:14:56 -07:00
|
|
|
SET(GD_LIB gd)
|
2008-01-13 13:23:45 -08:00
|
|
|
endif (WIN32)
|
2007-10-04 05:14:56 -07:00
|
|
|
|
2014-10-17 09:56:54 -07:00
|
|
|
SET(GD_LIB_STATIC "${GD_LIB}_static")
|
2008-04-19 03:34:45 -07:00
|
|
|
|
2008-02-08 17:59:27 -08:00
|
|
|
IF(PROFILE)
|
|
|
|
add_definitions("-pg")
|
|
|
|
set(CMAKE_EXE_LINKER_FLAGS ${LINK_FLAGS} "-pg")
|
|
|
|
ENDIF(PROFILE)
|
|
|
|
|
2007-11-20 16:33:58 -08:00
|
|
|
SET(GD_INCLUDE_DIR "${GD_SOURCE_DIR}/src" "${GD_SOURCE_DIR}")
|
|
|
|
INCLUDE_DIRECTORIES(before ${FONTCONFIG_INCLUDE_DIR})
|
|
|
|
|
2007-10-04 05:14:56 -07:00
|
|
|
add_subdirectory(src)
|
2007-01-23 15:54:15 -08:00
|
|
|
endif (USE_EXT_GD)
|
2008-01-13 13:23:45 -08:00
|
|
|
|
2007-03-12 09:05:29 -07:00
|
|
|
add_subdirectory(tests)
|
2007-10-04 22:35:58 -07:00
|
|
|
add_subdirectory(examples)
|
2021-08-19 21:22:24 -07:00
|
|
|
add_subdirectory(docs)
|
2007-10-04 04:46:36 -07:00
|
|
|
|
2016-07-21 09:10:56 -07:00
|
|
|
add_custom_target(distclean ${GD_SOURCE_DIR}/cmake/distclean.sh)
|
|
|
|
|
2008-04-19 03:34:45 -07:00
|
|
|
SET(CPACK_PACKAGE_NAME "libgd")
|
|
|
|
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "libGD, powerful and easy to use graphic library")
|
2019-10-26 22:36:51 -07:00
|
|
|
SET(CPACK_PACKAGE_VENDOR "https://www.libgd.org")
|
|
|
|
SET(CPACK_PACKAGE_VERSION_MAJOR ${GDLIB_MAJOR})
|
|
|
|
SET(CPACK_PACKAGE_VERSION_MINOR ${GDLIB_MINOR})
|
|
|
|
SET(CPACK_PACKAGE_VERSION_PATCH ${GDLIB_REVISION}${GDLIB_EXTRA})
|
2008-04-19 03:34:45 -07:00
|
|
|
|
|
|
|
if(WIN32)
|
|
|
|
set(CPACK_GENERATOR ZIP)
|
|
|
|
else(WIN32)
|
|
|
|
set(CPACK_GENERATOR TGZ)
|
|
|
|
endif(WIN32)
|
|
|
|
|
2013-04-11 15:35:41 -07:00
|
|
|
|
2019-11-13 23:25:49 -08:00
|
|
|
INSTALL(FILES docs/INSTALL DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES docs/README.JPN DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES docs/README.CMAKE DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES docs/README.TESTING DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES docs/README.TXT DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
|
|
|
|
|
|
|
|
INSTALL(FILES examples/arc.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/copyrotated.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/crop.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/flip.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/gif.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/nnquant.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/noIcon.pic DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/noIcon.sgi DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/noIcon.tga DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/noIconAlpha.tga DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/test_crop_threshold.png DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/tgaread.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/tiffread.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
|
|
|
INSTALL(FILES examples/windows.c DESTINATION share/doc/gd-${GDLIB_MAJOR}.${GDLIB_MINOR})
|
2013-06-11 05:01:01 -07:00
|
|
|
|
|
|
|
|
2013-04-11 15:35:41 -07:00
|
|
|
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
|
|
|
|
|
2008-04-19 03:34:45 -07:00
|
|
|
set(CPACK_SOURCE_GENERATOR TGZ)
|
|
|
|
set(CPACK_SOURCE_IGNORE_FILES
|
|
|
|
"~$"
|
|
|
|
"\\\\.swp$"
|
2013-04-11 15:35:41 -07:00
|
|
|
"\\\\.gitignore$"
|
2008-04-19 03:34:45 -07:00
|
|
|
"^${PROJECT_SOURCE_DIR}/debian/"
|
|
|
|
"^${PROJECT_SOURCE_DIR}/old/"
|
|
|
|
"^${PROJECT_SOURCE_DIR}/bld/"
|
|
|
|
)
|
|
|
|
install(FILES ${top_level_DOCFILES} DESTINATION ${DOC_DIR})
|
|
|
|
INCLUDE(CPack)
|