Merge pull request #1897 from Mixaill/libexif-0621

[libexif] add version 0.6.21
This commit is contained in:
Alexander Karatarakis 2017-10-01 23:06:23 -07:00 committed by GitHub
commit f439bea878
5 changed files with 402 additions and 0 deletions

View File

@ -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)

3
ports/libexif/CONTROL Normal file
View File

@ -0,0 +1,3 @@
Source: libexif
Version: 0.6.21-1
Description: a library for parsing, editing, and saving EXIF data

View File

@ -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

130
ports/libexif/libexif.def Normal file
View File

@ -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

View File

@ -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)