summaryrefslogtreecommitdiff
path: root/Build/source/libs/gd/libgd-src/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/gd/libgd-src/CMakeLists.txt')
-rw-r--r--Build/source/libs/gd/libgd-src/CMakeLists.txt283
1 files changed, 283 insertions, 0 deletions
diff --git a/Build/source/libs/gd/libgd-src/CMakeLists.txt b/Build/source/libs/gd/libgd-src/CMakeLists.txt
new file mode 100644
index 00000000000..5bec7043208
--- /dev/null
+++ b/Build/source/libs/gd/libgd-src/CMakeLists.txt
@@ -0,0 +1,283 @@
+# $Id$
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6 FATAL_ERROR)
+
+SET(PACKAGE GD)
+SET(PACKAGE_NAME GD)
+
+CMAKE_POLICY(SET CMP0017 OLD)
+PROJECT(GD)
+
+SET(CMAKE_MODULE_PATH "${GD_SOURCE_DIR}/cmake/modules")
+
+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)
+OPTION(ENABLE_ICONV "Enable ICONV support" 0)
+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)
+
+if (BUILD_TEST)
+ ENABLE_TESTING()
+endif(BUILD_TEST)
+
+# 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)
+ SET(CMAKE_C_FLAGS_DEBUG "-g -Wall -Wextra -O0") # will be added to CMAKE_C_FLAGS when CMAKE_BUILD_TYPE is "Debug"
+ENDIF(CMAKE_COMPILER_IS_GNUCC)
+SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY
+ ${PROJECT_BINARY_DIR}/Bin
+ CACHE PATH
+ "Single Directory for all Libraries"
+ )
+
+# --------- Setup the Executable output Directory -------------
+SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY
+ ${PROJECT_BINARY_DIR}/Bin
+ CACHE PATH
+ "Single Directory for all Executables."
+ )
+
+# --------- Setup the Executable output Directory -------------
+SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY
+ ${PROJECT_BINARY_DIR}/Bin
+ CACHE PATH
+ "Single Directory for all static libraries."
+ )
+
+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})
+ LINK_DIRECTORIES(${GD_LIBRARIES})
+ 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)
+
+ SET(GD_VERSION_MAJOR "2")
+ SET(GD_VERSION_MINOR "1")
+ SET(GD_VERSION_PATCH "1")
+ SET(GD_VERSION_EXTRA "")
+ SET(GD_VERSION "${GD_VERSION_MAJOR}.${GD_VERSION_MINOR}.${GD_VERSION_PATCH}${GD_VERSION_EXTRA}")
+ SET(GD_VERSION_STRING "${GD_VERSION}")
+
+ SET(GD_VERSION_INT "20101")
+
+ SET(CMAKE_REQUIRED_INCLUDES "/usr/include" "/usr/local/include")
+
+ include(CheckIncludeFiles)
+ include(CheckIncludeFile)
+
+ include(AC_HEADER_STDC)
+ include(CheckPrototypeExists)
+
+ if (ENABLE_PNG)
+ FIND_PACKAGE(PNG REQUIRED)
+ endif (ENABLE_PNG)
+
+ if (ENABLE_ICONV)
+ FIND_PACKAGE(ICONV REQUIRED)
+ endif (ENABLE_ICONV)
+
+ FIND_PACKAGE(ZLIB)
+
+ IF (ENABLE_WEBP)
+ FIND_PACKAGE(VPX)
+ ENDIF (ENABLE_WEBP)
+
+ IF (ENABLE_LIQ)
+ FIND_PACKAGE(LIQ)
+ ENDIF (ENABLE_LIQ)
+
+ IF (NOT WIN32)
+ FIND_PACKAGE(PTHREAD)
+ ENDIF (NOT WIN32)
+
+ if (ENABLE_JPEG)
+ FIND_PACKAGE(JPEG)
+ endif (ENABLE_JPEG)
+
+ if (ENABLE_TIFF)
+ FIND_PACKAGE(TIFF)
+ endif (ENABLE_TIFF)
+
+ if (ENABLE_FREETYPE)
+ FIND_PACKAGE(Freetype)
+ endif (ENABLE_FREETYPE)
+
+ if (ENABLE_XPM)
+ FIND_PACKAGE(XPM)
+ endif (ENABLE_XPM)
+
+ if (ENABLE_FONTCONFIG)
+ FIND_PACKAGE(FontConfig)
+ endif (ENABLE_FONTCONFIG)
+
+ if (FREETYPE_FOUND)
+ INCLUDE_DIRECTORIES(${FREETYPE_INCLUDE_DIRS})
+ SET(HAVE_FT2BUILD_H 1)
+ SET(HAVE_LIBFREETYPE 1)
+ ENDIF(FREETYPE_FOUND)
+
+ IF(ZLIB_FOUND)
+ INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR})
+ SET(HAVE_LIBZ 1)
+ ENDIF(ZLIB_FOUND)
+
+ IF(VPX_FOUND)
+ INCLUDE_DIRECTORIES(${VPX_INCLUDE_DIR})
+ SET(HAVE_LIBVPX 1)
+ ENDIF(VPX_FOUND)
+
+ IF(PNG_FOUND)
+ INCLUDE_DIRECTORIES(${PNG_INCLUDE_DIR})
+ SET(HAVE_LIBPNG 1)
+ ENDIF(PNG_FOUND)
+
+ IF(ICONV_FOUND)
+ INCLUDE_DIRECTORIES(${ICONV_INCLUDE_DIR})
+ SET(HAVE_ICONV 1)
+ SET(HAVE_ICONV_H 1)
+ ENDIF(ICONV_FOUND)
+
+ IF(LIQ_FOUND)
+ INCLUDE_DIRECTORIES(${LIQ_INCLUDE_DIR})
+ SET(HAVE_LIBIMAGEQUANT_H 1)
+ ENDIF(LIQ_FOUND)
+
+ IF(XPM_FOUND)
+ INCLUDE_DIRECTORIES(${XPM_INCLUDE_DIR})
+ SET(HAVE_LIBXPM 1)
+ ENDIF(XPM_FOUND)
+
+ IF(JPEG_FOUND)
+ INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
+ SET(HAVE_LIBJPEG 1)
+ ENDIF(JPEG_FOUND)
+
+ IF(TIFF_FOUND)
+ INCLUDE_DIRECTORIES(${TIFF_INCLUDE_DIR})
+ SET(HAVE_LIBTIFF 1)
+ ENDIF(TIFF_FOUND)
+
+ IF(FONTCONFIG_FOUND)
+ INCLUDE_DIRECTORIES(${FONTCONFIG_INCLUDE_DIR})
+ SET(HAVE_LIBFONTCONFIG 1)
+ ELSE (FONTCONFIG_FOUND)
+ SET(FONTCONFIG_LIBRARY "")
+ SET(FONTCONFIG_INCLUDE_DIR "")
+ SET(FONTCONFIG_LIB_DIR "")
+ ENDIF(FONTCONFIG_FOUND)
+
+ SET(HAVE_CONFIG_H 1)
+
+ ADD_DEFINITIONS(-DHAVE_CONFIG_H)
+
+ CHECK_INCLUDE_FILE("stdint.h" HAVE_STDINT_H)
+ CHECK_INCLUDE_FILE("inttypes.h" HAVE_INTTYPES_H)
+
+ CONFIGURE_FILE(${GD_SOURCE_DIR}/src/config.h.cmake ${GD_SOURCE_DIR}/src/config.h ESCAPE_QUOTES)
+
+
+ set(BUILD_SHARED_LIBS On)
+
+ if (WIN32)
+ SET(GD_LIB libgd)
+ ADD_DEFINITIONS( -DWIN32 -D_WIN32 -DMSWIN32 -DBGDWIN32 -DWINVER=0x0500 -D_WIN32_WINNT=0x0500 -D_WIN32_IE=0x0600)
+
+ if(NOT MINGW AND MSVC_VERSION GREATER 1399)
+ ADD_DEFINITIONS("/D_CRT_SECURE_NO_DEPRECATE")
+ endif(NOT MINGW AND MSVC_VERSION GREATER 1399)
+ if (MINGW OR MSYS)
+ ADD_DEFINITIONS("-mms-bitfields") # -m32
+ endif (MINGW OR MSYS)
+ else (WIN32)
+ SET(GD_LIB gd)
+ endif (WIN32)
+
+ SET(GD_LIB_STATIC "${GD_LIB}_static")
+
+ IF(PROFILE)
+ add_definitions("-pg")
+ set(CMAKE_EXE_LINKER_FLAGS ${LINK_FLAGS} "-pg")
+ ENDIF(PROFILE)
+
+ SET(GD_INCLUDE_DIR "${GD_SOURCE_DIR}/src" "${GD_SOURCE_DIR}")
+ INCLUDE_DIRECTORIES(before ${FONTCONFIG_INCLUDE_DIR})
+
+ add_subdirectory(src)
+endif (USE_EXT_GD)
+
+add_subdirectory(tests)
+add_subdirectory(examples)
+add_subdirectory(docs)
+
+SET(CPACK_PACKAGE_NAME "libgd")
+SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "libGD, powerful and easy to use graphic library")
+SET(CPACK_PACKAGE_VENDOR "http://www.libgd.org")
+SET(CPACK_PACKAGE_VERSION_MAJOR "2")
+SET(CPACK_PACKAGE_VERSION_MINOR "1")
+SET(CPACK_PACKAGE_VERSION_PATCH "0")
+
+if(WIN32)
+ set(CPACK_GENERATOR ZIP)
+else(WIN32)
+ set(CPACK_GENERATOR TGZ)
+endif(WIN32)
+
+IF (ENABLE_LIQ AND LIQ_BUILD)
+ ADD_DEPENDENCIES(${GD_LIB} libimagequant)
+ ADD_DEPENDENCIES(${GD_LIB_STATIC} libimagequant)
+ENDIF(ENABLE_LIQ AND LIQ_BUILD)
+
+
+INSTALL(FILES docs/INSTALL DESTINATION share/docs)
+INSTALL(FILES docs/README.JPN DESTINATION share/docs)
+INSTALL(FILES docs/README.CMAKE DESTINATION share/docs)
+INSTALL(FILES docs/README.TESTING DESTINATION share/docs)
+INSTALL(FILES docs/README.TXT DESTINATION share/docs)
+
+
+INSTALL(FILES examples/arc.c DESTINATION share/docs)
+INSTALL(FILES examples/copyrotated.c DESTINATION share/docs)
+INSTALL(FILES examples/crop.c DESTINATION share/docs)
+INSTALL(FILES examples/flip.c DESTINATION share/docs)
+INSTALL(FILES examples/gif.c DESTINATION share/docs)
+INSTALL(FILES examples/nnquant.c DESTINATION share/docs)
+INSTALL(FILES examples/noIcon.pic DESTINATION share/docs)
+INSTALL(FILES examples/noIcon.sgi DESTINATION share/docs)
+INSTALL(FILES examples/noIcon.tga DESTINATION share/docs)
+INSTALL(FILES examples/noIconAlpha.tga DESTINATION share/docs)
+INSTALL(FILES examples/test_crop_threshold.png DESTINATION share/docs)
+INSTALL(FILES examples/tgaread.c DESTINATION share/docs)
+INSTALL(FILES examples/tiffread.c DESTINATION share/docs)
+INSTALL(FILES examples/windows.c DESTINATION share/docs)
+
+
+set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/COPYING")
+
+set(CPACK_SOURCE_GENERATOR TGZ)
+set(CPACK_SOURCE_IGNORE_FILES
+"~$"
+"\\\\.swp$"
+"\\\\.gitignore$"
+"^${PROJECT_SOURCE_DIR}/debian/"
+"^${PROJECT_SOURCE_DIR}/old/"
+"^${PROJECT_SOURCE_DIR}/bld/"
+)
+install(FILES ${top_level_DOCFILES} DESTINATION ${DOC_DIR})
+INCLUDE(CPack)
+