aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcodicodi <rob.ceglinski@gmail.com>2017-02-13 23:48:48 +0100
committercodicodi <rob.ceglinski@gmail.com>2017-02-13 23:48:48 +0100
commit0c03dc563191b5bb8a843e7517a0a24427f0ddde (patch)
treed370a7dd722bab20b720b6331bcd1a28833ae5fc
parent5f46d896d562f2f2d2aa2e1eedf629969d5e5a7d (diff)
downloadvcpkg-0c03dc563191b5bb8a843e7517a0a24427f0ddde.tar.gz
vcpkg-0c03dc563191b5bb8a843e7517a0a24427f0ddde.zip
add-gdk-pixbuf
-rw-r--r--ports/gdk-pixbuf/CMakeLists.txt128
-rw-r--r--ports/gdk-pixbuf/CONTROL4
-rw-r--r--ports/gdk-pixbuf/portfile.cmake24
3 files changed, 156 insertions, 0 deletions
diff --git a/ports/gdk-pixbuf/CMakeLists.txt b/ports/gdk-pixbuf/CMakeLists.txt
new file mode 100644
index 000000000..a26e59fb4
--- /dev/null
+++ b/ports/gdk-pixbuf/CMakeLists.txt
@@ -0,0 +1,128 @@
+cmake_minimum_required(VERSION 3.0)
+project(gdk-pixbuf)
+
+set(GDK_PIXBUF_LIB_SUFFIX 2.0)
+set(GDK_PIXBUF_DLL_SUFFIX 2)
+set(GDK_PIXBUF_BINARY_VERSION 2.10.0)
+set(GLIB_LIB_VERSION 2.0)
+
+find_package(ZLIB REQUIRED)
+find_package(PNG REQUIRED)
+
+find_path(GLIB_INCLUDE_DIR glib.h)
+find_library(GLIB_GLIB_LIBRARY glib-${GLIB_LIB_VERSION})
+find_library(GLIB_GIO_LIBRARY gio-${GLIB_LIB_VERSION})
+find_library(GLIB_GOBJECT_LIBRARY gobject-${GLIB_LIB_VERSION})
+find_library(GLIB_GMODULE_LIBRARY gmodule-${GLIB_LIB_VERSION})
+set(GLIB_LIBRARIES ${GLIB_GLIB_LIBRARY} ${GLIB_GOBJECT_LIBRARY} ${GLIB_GMODULE_LIBRARY} ${GLIB_GIO_LIBRARY})
+
+find_path(LIBINTL_INCLUDE_DIR libintl.h)
+find_library(LIBINTL_LIBRARY NAMES libintl intl)
+
+configure_file(./config.h.win32 ${CMAKE_SOURCE_DIR}/config.h COPYONLY)
+include_directories(. ./gdk-pixbuf)
+
+add_library(gdk-pixbuf
+ gdk-pixbuf/gdk-pixbuf.c
+ gdk-pixbuf/gdk-pixbuf-animation.c
+ gdk-pixbuf/gdk-pixbuf-data.c
+ gdk-pixbuf/gdk-pixbuf-io.c
+ gdk-pixbuf/gdk-pixbuf-loader.c
+ gdk-pixbuf/gdk-pixbuf-scale.c
+ gdk-pixbuf/gdk-pixbuf-simple-anim.c
+ gdk-pixbuf/gdk-pixbuf-scaled-anim.c
+ gdk-pixbuf/gdk-pixbuf-util.c
+ gdk-pixbuf/gdk-pixdata.c
+ gdk-pixbuf/gdk-pixbuf-enum-types.c
+ gdk-pixbuf/io-ani.c
+ gdk-pixbuf/io-ani-animation.c
+ gdk-pixbuf/io-icns.c
+ gdk-pixbuf/io-pnm.c
+ gdk-pixbuf/io-png.c
+ gdk-pixbuf/io-qtif.c
+ gdk-pixbuf/io-tga.c
+ gdk-pixbuf/gdk-pixbuf-buffer-queue.c
+ gdk-pixbuf/io-xpm.c
+ gdk-pixbuf/io-xbm.c
+ gdk-pixbuf/pixops/pixops.c
+ gdk-pixbuf/io-gdip-animation.c
+ gdk-pixbuf/io-gdip-bmp.c
+ gdk-pixbuf/io-gdip-emf.c
+ gdk-pixbuf/io-gdip-gif.c
+ gdk-pixbuf/io-gdip-ico.c
+ gdk-pixbuf/io-gdip-jpeg.c
+ gdk-pixbuf/io-gdip-tiff.c
+ gdk-pixbuf/io-gdip-utils.c
+ gdk-pixbuf/io-gdip-wmf.c)
+
+target_include_directories(gdk-pixbuf PRIVATE
+ ${GLIB_INCLUDE_DIR}
+ ${PNG_INCLUDE_DIRS}
+ ${ZLIB_INCLUDE_DIRS}
+ ${LIBINTL_INCLUDE_DIR})
+
+target_link_libraries(gdk-pixbuf
+ ${GLIB_LIBRARIES}
+ ${ZLIB_LIBRARIES}
+ ${PNG_LIBRARIES}
+ ${LIBINTL_LIBRARY}
+ Gdiplus)
+
+target_compile_definitions(gdk-pixbuf PRIVATE
+ HAVE_CONFIG_H
+ GDK_PIXBUF_COMPILATION
+ GDK_PIXBUF_ENABLE_BACKEND
+ DLL_EXPORT
+ GDK_PIXBUF_RELOCATABLE
+ GDK_PIXBUF_PREFIX="/dummy"
+ GDK_PIXBUF_BINARY_VERSION="${GDK_PIXBUF_BINARY_VERSION}"
+ INCLUDE_ani
+ INCLUDE_tga
+ INCLUDE_xbm
+ INCLUDE_png
+ INCLUDE_qtif
+ INCLUDE_pnm
+ INCLUDE_icns
+ INCLUDE_xpm
+ INCLUDE_gdiplus
+ G_DISABLE_SINGLE_INCLUDES
+ GDK_PIXBUF_DISABLE_SINGLE_INCLUDES)
+
+set_target_properties(gdk-pixbuf PROPERTIES
+ OUTPUT_NAME gdk_pixbuf-${GDK_PIXBUF_DLL_SUFFIX}
+ ARCHIVE_OUTPUT_NAME gdk_pixbuf-${GDK_PIXBUF_LIB_SUFFIX})
+
+install(TARGETS gdk-pixbuf
+ RUNTIME DESTINATION bin
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib)
+
+macro(gdk_add_tool TOOL_NAME)
+ add_executable(${TOOL_NAME} ${ARGN})
+ target_include_directories(${TOOL_NAME} PRIVATE ${GLIB_INCLUDE_DIR})
+ target_link_libraries(${TOOL_NAME} gdk-pixbuf ${GLIB_LIBRARIES})
+ install(TARGETS ${TOOL_NAME} RUNTIME DESTINATION tools/gdk-pixbuf)
+endmacro()
+
+if(NOT GDK_SKIP_TOOLS)
+ gdk_add_tool(gdk-pixbuf-csource gdk-pixbuf/gdk-pixbuf-csource.c)
+ gdk_add_tool(gdk-pixbuf-pixdata gdk-pixbuf/gdk-pixbuf-pixdata.c)
+endif()
+
+if(NOT GDK_SKIP_HEADERS)
+ INSTALL(FILES
+ gdk-pixbuf/gdk-pixbuf.h
+ gdk-pixbuf/gdk-pixbuf-autocleanups.h
+ gdk-pixbuf/gdk-pixbuf-core.h
+ gdk-pixbuf/gdk-pixbuf-transform.h
+ gdk-pixbuf/gdk-pixbuf-io.h
+ gdk-pixbuf/gdk-pixbuf-animation.h
+ gdk-pixbuf/gdk-pixbuf-simple-anim.h
+ gdk-pixbuf/gdk-pixbuf-loader.h
+ gdk-pixbuf/gdk-pixbuf-enum-types.h
+ gdk-pixbuf/gdk-pixbuf-marshal.h
+ gdk-pixbuf/gdk-pixbuf-features.h
+ gdk-pixbuf/gdk-pixdata.h
+ gdk-pixbuf/gdk-pixbuf-macros.h
+ DESTINATION include/gdk-pixbuf)
+endif()
diff --git a/ports/gdk-pixbuf/CONTROL b/ports/gdk-pixbuf/CONTROL
new file mode 100644
index 000000000..1a8a208db
--- /dev/null
+++ b/ports/gdk-pixbuf/CONTROL
@@ -0,0 +1,4 @@
+Source: gdk-pixbuf
+Version: 2.36.3
+Description: Image loading library.
+Build-Depends: gettext, zlib, libpng, glib
diff --git a/ports/gdk-pixbuf/portfile.cmake b/ports/gdk-pixbuf/portfile.cmake
new file mode 100644
index 000000000..d10338d4c
--- /dev/null
+++ b/ports/gdk-pixbuf/portfile.cmake
@@ -0,0 +1,24 @@
+
+include(vcpkg_common_functions)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/gdk-pixbuf-2.36.3)
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://ftp.gnome.org/pub/GNOME/sources/gdk-pixbuf/2.36/gdk-pixbuf-2.36.3.tar.xz"
+ FILENAME "gdk-pixbuf-2.36.3.tar.xz"
+ SHA512 b9c9fdf45445ceeb7f5039e73cfc803756c5b34574eae4958cdfb525036e1722ab996c1b439fdaa85e73b11069762aeec43e11cadce514d1701d0e43626f20de)
+
+vcpkg_extract_source_archive(${ARCHIVE})
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS_DEBUG
+ -DGDK_SKIP_HEADERS=ON
+ -DGDK_SKIP_TOOLS=ON)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/gdk-pixbuf)
+
+file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/gdk-pixbuf)
+file(RENAME ${CURRENT_PACKAGES_DIR}/share/gdk-pixbuf/COPYING ${CURRENT_PACKAGES_DIR}/share/gdk-pixbuf/copyright)