aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Karatarakis <alex@karatarakis.com>2017-10-01 23:06:23 -0700
committerGitHub <noreply@github.com>2017-10-01 23:06:23 -0700
commitf439bea8783826a48b2deec3703e0856e5395dac (patch)
tree91fbfb558851d48b301005497fe36af292f86ff2
parent2de9f83ff22774d0f70e3ee8158b26c494f5ea30 (diff)
parentf7a437a66243aca2800928d432d611ae0c290304 (diff)
downloadvcpkg-f439bea8783826a48b2deec3703e0856e5395dac.tar.gz
vcpkg-f439bea8783826a48b2deec3703e0856e5395dac.zip
Merge pull request #1897 from Mixaill/libexif-0621
[libexif] add version 0.6.21
-rw-r--r--ports/libexif/CMakeLists.txt142
-rw-r--r--ports/libexif/CONTROL3
-rw-r--r--ports/libexif/config.h.cmake96
-rw-r--r--ports/libexif/libexif.def130
-rw-r--r--ports/libexif/portfile.cmake31
5 files changed, 402 insertions, 0 deletions
diff --git a/ports/libexif/CMakeLists.txt b/ports/libexif/CMakeLists.txt
new file mode 100644
index 000000000..ac32e82eb
--- /dev/null
+++ b/ports/libexif/CMakeLists.txt
@@ -0,0 +1,142 @@
+cmake_minimum_required(VERSION 3.0)
+project(libexif LANGUAGES C)
+
+set(PACKAGE "libexif")
+
+option(ENABLE_NLS "Enable NLS" OFF)
+
+set(HEADERS
+ libexif/_stdint.h
+ libexif/exif.h
+ libexif/exif-byte-order.h
+ libexif/exif-content.h
+ libexif/exif-data.h
+ libexif/exif-data-type.h
+ libexif/exif-entry.h
+ libexif/exif-format.h
+ libexif/exif-ifd.h
+ libexif/exif-loader.h
+ libexif/exif-log.h
+ libexif/exif-mem.h
+ libexif/exif-mnote-data.h
+ libexif/exif-mnote-data-priv.h
+ libexif/exif-system.h
+ libexif/exif-tag.h
+ libexif/exif-utils.h
+)
+
+set(SOURCES
+ libexif/exif-byte-order.c
+ libexif/exif-content.c
+ libexif/exif-data.c
+ libexif/exif-entry.c
+ libexif/exif-format.c
+ libexif/exif-ifd.c
+ libexif/exif-loader.c
+ libexif/exif-log.c
+ libexif/exif-mem.c
+ libexif/exif-mnote-data.c
+ libexif/exif-tag.c
+ libexif/exif-utils.c
+)
+
+set(HEADERS_CANON
+ libexif/canon/exif-mnote-data-canon.h
+ libexif/canon/mnote-canon-entry.h
+ libexif/canon/mnote-canon-tag.h
+)
+
+set(SOURCES_CANON
+ libexif/canon/exif-mnote-data-canon.c
+ libexif/canon/mnote-canon-entry.c
+ libexif/canon/mnote-canon-tag.c
+)
+
+set(HEADERS_FUJI
+ libexif/fuji/exif-mnote-data-fuji.h
+ libexif/fuji/mnote-fuji-entry.h
+ libexif/fuji/mnote-fuji-tag.h
+)
+
+set(SOURCES_FUJI
+ libexif/fuji/exif-mnote-data-fuji.c
+ libexif/fuji/mnote-fuji-entry.c
+ libexif/fuji/mnote-fuji-tag.c
+)
+
+set(HEADERS_OLYMPUS
+ libexif/olympus/exif-mnote-data-olympus.h
+ libexif/olympus/mnote-olympus-entry.h
+ libexif/olympus/mnote-olympus-tag.h
+)
+
+set(SOURCES_OLYMPUS
+ libexif/olympus/exif-mnote-data-olympus.c
+ libexif/olympus/mnote-olympus-entry.c
+ libexif/olympus/mnote-olympus-tag.c
+)
+
+set(HEADERS_PENTAX
+ libexif/pentax/exif-mnote-data-pentax.h
+ libexif/pentax/mnote-pentax-entry.h
+ libexif/pentax/mnote-pentax-tag.h
+)
+
+set(SOURCES_PENTAX
+ libexif/pentax/exif-mnote-data-pentax.c
+ libexif/pentax/mnote-pentax-entry.c
+ libexif/pentax/mnote-pentax-tag.c
+)
+
+if(MSVC)
+ set(SOURCES_MSVC "libexif.def")
+endif()
+
+add_library(libexif
+ ${SOURCES}
+ ${SOURCES_CANON}
+ ${SOURCES_FUJI}
+ ${SOURCES_OLYMPUS}
+ ${SOURCES_PENTAX}
+ ${SOURCES_MSVC}
+)
+
+target_include_directories(libexif PRIVATE .)
+target_include_directories(libexif PRIVATE ${CMAKE_BINARY_DIR})
+target_compile_definitions(libexif PRIVATE -D_CRT_SECURE_NO_WARNINGS)
+target_compile_definitions(libexif PRIVATE -DGETTEXT_PACKAGE="${PACKAGE}")
+
+include(CheckFunctionExists)
+include(CheckIncludeFile)
+
+check_function_exists(dcgettext HAVE_DCGETTEXT)
+check_function_exists(gettext HAVE_DCGETTEXT)
+check_function_exists(iconv HAVE_DCGETTEXT)
+check_function_exists(localtime_r HAVE_DCGETTEXT)
+
+check_include_file(dlfcn.h HAVE_DLFCN_H)
+check_include_file(inttypes.h HAVE_INTTYPES_H)
+check_include_file(memory.h HAVE_MEMORY_H)
+check_include_file(stdint.h HAVE_STDINT_H)
+check_include_file(stdlib.h HAVE_STDLIB_H)
+check_include_file(strings.h HAVE_STRINGS_H)
+check_include_file(string.h HAVE_STRING_H)
+check_include_file(sys/stat.h HAVE_SYS_STAT_H)
+check_include_file(sys/stat.h HAVE_SYS_STAT_H)
+check_include_file(sys/types.h HAVE_SYS_TYPES_H)
+check_include_file(unistd.h HAVE_UNISTD_H)
+
+configure_file(config.h.cmake config.h)
+
+install(
+ TARGETS libexif
+ RUNTIME DESTINATION bin
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib
+)
+
+install(FILES ${HEADERS} DESTINATION include/libexif)
+install(FILES ${HEADERS_CANON} DESTINATION include/libexif/canon)
+install(FILES ${HEADERS_FUJI} DESTINATION include/libexif/fuji)
+install(FILES ${HEADERS_OLYMPUS} DESTINATION include/libexif/olympus)
+install(FILES ${HEADERS_PENTAX} DESTINATION include/libexif/pentax)
diff --git a/ports/libexif/CONTROL b/ports/libexif/CONTROL
new file mode 100644
index 000000000..427d907f2
--- /dev/null
+++ b/ports/libexif/CONTROL
@@ -0,0 +1,3 @@
+Source: libexif
+Version: 0.6.21-1
+Description: a library for parsing, editing, and saving EXIF data
diff --git a/ports/libexif/config.h.cmake b/ports/libexif/config.h.cmake
new file mode 100644
index 000000000..4dfbdb1b0
--- /dev/null
+++ b/ports/libexif/config.h.cmake
@@ -0,0 +1,96 @@
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* Define to 1 if translation of program messages to the user's native
+ language is requested. */
+#cmakedefine ENABLE_NLS
+
+/* Define if the GNU dcgettext() function is already present or preinstalled.
+ */
+#cmakedefine HAVE_DCGETTEXT
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#cmakedefine HAVE_DLFCN_H
+
+/* Define if the GNU gettext() function is already present or preinstalled. */
+#cmakedefine HAVE_GETTEXT
+
+/* Define if you have the iconv() function. */
+#cmakedefine HAVE_ICONV
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#cmakedefine HAVE_INTTYPES_H
+
+/* Define to 1 if you have the `localtime_r' function. */
+#cmakedefine HAVE_LOCALTIME_R
+
+/* Define to 1 if you have the <memory.h> header file. */
+#cmakedefine HAVE_MEMORY_H
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#cmakedefine HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#cmakedefine HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#cmakedefine HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#cmakedefine HAVE_STRING_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#cmakedefine HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#cmakedefine HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#cmakedefine HAVE_UNISTD_H
+
+/* Define as const if the declaration of iconv() needs const. */
+#cmakedefine ICONV_CONST
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#cmakedefine LT_OBJDIR
+
+/* Name of package */
+#cmakedefine PACKAGE
+
+/* Define to the address where bug reports for this package should be sent. */
+#cmakedefine PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#cmakedefine PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#cmakedefine PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#cmakedefine PACKAGE_TARNAME
+
+/* Define to the home page for this package. */
+#cmakedefine PACKAGE_URL
+
+/* Define to the version of this package. */
+#cmakedefine PACKAGE_VERSION
+
+/* Define to 1 if you have the ANSI C header files. */
+#cmakedefine STDC_HEADERS
+
+/* Version number of package */
+#cmakedefine VERSION
+
+/* Define to empty if `const' does not conform to ANSI C. */
+#cmakedefine const
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+ calls it, or to nothing if 'inline' is not supported under any name. */
+#ifndef __cplusplus
+#cmakedefine inline
+#endif
+
+#ifdef _MSC_VER
+#include <BaseTsd.h>
+typedef SSIZE_T ssize_t;
+#endif \ No newline at end of file
diff --git a/ports/libexif/libexif.def b/ports/libexif/libexif.def
new file mode 100644
index 000000000..6bd0ca424
--- /dev/null
+++ b/ports/libexif/libexif.def
@@ -0,0 +1,130 @@
+EXPORTS
+ exif_array_set_byte_order
+ exif_byte_order_get_name
+ exif_content_add_entry
+ exif_content_dump
+ exif_content_fix
+ exif_content_foreach_entry
+ exif_content_free
+ exif_content_get_entry
+ exif_content_get_ifd
+ exif_content_log
+ exif_content_new
+ exif_content_new_mem
+ exif_content_ref
+ exif_content_remove_entry
+ exif_content_unref
+ exif_data_dump
+ exif_data_fix
+ exif_data_foreach_content
+ exif_data_free
+ exif_data_get_byte_order
+ exif_data_get_data_type
+ exif_data_get_log
+ exif_data_get_mnote_data
+ exif_data_load_data
+ exif_data_log
+ exif_data_new
+ exif_data_new_from_data
+ exif_data_new_from_file
+ exif_data_new_mem
+ exif_data_option_get_description
+ exif_data_option_get_name
+ exif_data_ref
+ exif_data_save_data
+ exif_data_set_byte_order
+ exif_data_set_data_type
+ exif_data_set_option
+ exif_data_unref
+ exif_data_unset_option
+ exif_entry_dump
+ exif_entry_fix
+ exif_entry_free
+ exif_entry_get_value
+ exif_entry_initialize
+ exif_entry_new
+ exif_entry_new_mem
+ exif_entry_ref
+ exif_entry_unref
+ exif_format_get_name
+ exif_format_get_size
+ exif_get_long
+ exif_get_rational
+ exif_get_short
+ exif_get_slong
+ exif_get_srational
+ exif_get_sshort
+ exif_ifd_get_name
+ exif_loader_get_buf
+ exif_loader_get_data
+ exif_loader_log
+ exif_loader_new
+ exif_loader_new_mem
+ exif_loader_ref
+ exif_loader_reset
+ exif_loader_unref
+ exif_loader_write
+ exif_loader_write_file
+ exif_log
+ exif_log_code_get_message
+ exif_log_code_get_title
+ exif_log_free
+ exif_log_new
+ exif_log_new_mem
+ exif_log_ref
+ exif_log_set_func
+ exif_log_unref
+ exif_logv
+ exif_mem_alloc
+ exif_mem_free
+ exif_mem_new
+ exif_mem_new_default
+ exif_mem_realloc
+ exif_mem_ref
+ exif_mem_unref
+ exif_mnote_data_canon_new
+ exif_mnote_data_construct
+ exif_mnote_data_count
+ exif_mnote_data_get_description
+ exif_mnote_data_get_id
+ exif_mnote_data_get_name
+ exif_mnote_data_get_title
+ exif_mnote_data_get_value
+ exif_mnote_data_load
+ exif_mnote_data_log
+ exif_mnote_data_olympus_new
+ exif_mnote_data_pentax_new
+ exif_mnote_data_ref
+ exif_mnote_data_save
+ exif_mnote_data_set_byte_order
+ exif_mnote_data_set_offset
+ exif_mnote_data_unref
+ exif_set_long
+ exif_set_rational
+ exif_set_short
+ exif_set_slong
+ exif_set_srational
+ exif_set_sshort
+ exif_tag_from_name
+ exif_tag_get_description
+ exif_tag_get_description_in_ifd
+ exif_tag_get_name
+ exif_tag_get_name_in_ifd
+ exif_tag_get_support_level_in_ifd
+ exif_tag_get_title
+ exif_tag_get_title_in_ifd
+ exif_tag_table_count
+ exif_tag_table_get_name
+ exif_tag_table_get_tag
+ mnote_canon_entry_get_value
+ mnote_canon_tag_get_description
+ mnote_canon_tag_get_name
+ mnote_canon_tag_get_title
+ mnote_olympus_entry_get_value
+ mnote_olympus_tag_get_description
+ mnote_olympus_tag_get_name
+ mnote_olympus_tag_get_title
+ mnote_pentax_entry_get_value
+ mnote_pentax_tag_get_description
+ mnote_pentax_tag_get_name
+ mnote_pentax_tag_get_title \ No newline at end of file
diff --git a/ports/libexif/portfile.cmake b/ports/libexif/portfile.cmake
new file mode 100644
index 000000000..0442d8c15
--- /dev/null
+++ b/ports/libexif/portfile.cmake
@@ -0,0 +1,31 @@
+include(vcpkg_common_functions)
+
+if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
+ message(FATAL_ERROR "libexif currently only supports being built for desktop")
+endif()
+
+set(LIBEXIF_VERSION 0.6.21)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libexif-${LIBEXIF_VERSION})
+
+vcpkg_download_distfile(ARCHIVE
+ URLS "https://freefr.dl.sourceforge.net/project/libexif/libexif/${LIBEXIF_VERSION}/libexif-${LIBEXIF_VERSION}.tar.bz2"
+ FILENAME "libexif-${LIBEXIF_VERSION}.tar.bz2"
+ SHA512 4e0fe2abe85d1c95b41cb3abe1f6333dc3a9eb69dba106a674a78d74a4d5b9c5a19647118fa1cc2d72b98a29853394f1519eda9e2889eb28d3be26b21c7cfc35
+)
+vcpkg_extract_source_archive(${ARCHIVE})
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h.cmake DESTINATION ${SOURCE_PATH})
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/libexif.def DESTINATION ${SOURCE_PATH})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libexif RENAME copyright)