aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/giflib/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/giflib/CMakeLists.txt')
-rw-r--r--vcpkg/ports/giflib/CMakeLists.txt44
1 files changed, 44 insertions, 0 deletions
diff --git a/vcpkg/ports/giflib/CMakeLists.txt b/vcpkg/ports/giflib/CMakeLists.txt
new file mode 100644
index 0000000..aa1fe7c
--- /dev/null
+++ b/vcpkg/ports/giflib/CMakeLists.txt
@@ -0,0 +1,44 @@
+cmake_minimum_required(VERSION 3.5)
+
+project(giflib C)
+
+set(GIFLIB_EXPORTS "NOTFOUND" CACHE FILEPATH "The path of the DEF file listing the DLL exports.")
+
+set(GIFLIB_HEADERS
+ gif_lib.h
+)
+
+set(GIFLIB_SOURCES
+ dgif_lib.c
+ egif_lib.c
+ gifalloc.c
+ gif_err.c
+ gif_font.c
+ gif_hash.c
+ openbsd-reallocarray.c
+)
+
+add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+
+include(CheckSymbolExists)
+check_symbol_exists(reallocarray "stdlib.h" HAVE_REALLOCARRAY)
+if(HAVE_REALLOCARRAY)
+ add_definitions(-DHAVE_REALLOCARRAY)
+endif()
+
+add_library(gif ${GIFLIB_SOURCES})
+if(BUILD_SHARED_LIBS AND WIN32)
+ target_sources(gif PRIVATE "${GIFLIB_EXPORTS}")
+else()
+ set(UNUSED "${GIFLIB_EXPORTS}")
+endif()
+
+if (NOT GIFLIB_SKIP_HEADERS)
+ install(FILES ${GIFLIB_HEADERS} DESTINATION include)
+endif ()
+
+install(TARGETS gif
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)