XMPsdk fixes. 2013 and 2016 build and (mostly) pass the test suite.

v0.27.3
clanmills 8 years ago
parent 95c5e92365
commit 573b2cfcd2

@ -135,7 +135,7 @@ config:
xmpsdk: config/config.mk xmpsdk: config/config.mk
if test "x$(ENABLE_XMP)" = "x1"; then cd xmpsdk/src && $(MAKE) $@; fi; if test "x$(ENABLE_XMP)" = "x1"; then cd xmpsdk/src && $(MAKE) $@; fi;
if test "x$(ENABLE_XMP)" = "x2016" -o "x$(ENABLE_XMP)" = "x2014" -o "x$(ENABLE_XMP)" = "x2014"; then xmpsdk/buildXMPsdk.sh $(ENABLE_XMP) $(MAKECMDGOALS); fi; if test "x$(ENABLE_XMP)" = "x2016" -o "x$(ENABLE_XMP)" = "x2014" -o "x$(ENABLE_XMP)" = "x2013"; then xmpsdk/buildXMPsdk.sh $(ENABLE_XMP) $(MAKECMDGOALS); fi;
mostlyclean clean: config/config.mk mostlyclean clean: config/config.mk
cd src && $(MAKE) $(MAKECMDGOALS) cd src && $(MAKE) $(MAKECMDGOALS)
@ -156,6 +156,7 @@ distclean: clean
rm -f *~ *.bak rm -f *~ *.bak
if [ -e bin ]; then rm -rf bin ; fi if [ -e bin ]; then rm -rf bin ; fi
if [ -e xmpsdk/Adobe ]; then rm -rf xmpsdk/Adobe ; fi if [ -e xmpsdk/Adobe ]; then rm -rf xmpsdk/Adobe ; fi
if [ -e /usr/local/include/exiv2 ]; then rm -rf /usr/local/include/exiv2 ; fi
# This removes almost everything, including the configure script! # This removes almost everything, including the configure script!
maintainer-clean: distclean maintainer-clean: distclean

@ -135,7 +135,7 @@ config:
xmpsdk: config/config.mk xmpsdk: config/config.mk
if test "x$(ENABLE_XMP)" = "x1"; then cd xmpsdk/src && $(MAKE) $@; fi; if test "x$(ENABLE_XMP)" = "x1"; then cd xmpsdk/src && $(MAKE) $@; fi;
if test "x$(ENABLE_XMP)" = "x2016" -o "x$(ENABLE_XMP)" = "x2014" -o "x$(ENABLE_XMP)" = "x2014"; then xmpsdk/buildXMPsdk.sh $(ENABLE_XMP) $(MAKECMDGOALS); fi; if test "x$(ENABLE_XMP)" = "x2016" -o "x$(ENABLE_XMP)" = "x2014" -o "x$(ENABLE_XMP)" = "x2013"; then xmpsdk/buildXMPsdk.sh $(ENABLE_XMP) $(MAKECMDGOALS); fi;
mostlyclean clean: config/config.mk mostlyclean clean: config/config.mk
cd src && $(MAKE) $(MAKECMDGOALS) cd src && $(MAKE) $(MAKECMDGOALS)
@ -156,6 +156,7 @@ distclean: clean
rm -f *~ *.bak rm -f *~ *.bak
if [ -e bin ]; then rm -rf bin ; fi if [ -e bin ]; then rm -rf bin ; fi
if [ -e xmpsdk/Adobe ]; then rm -rf xmpsdk/Adobe ; fi if [ -e xmpsdk/Adobe ]; then rm -rf xmpsdk/Adobe ; fi
if [ -e /usr/local/include/exiv2 ]; then rm -rf /usr/local/include/exiv2 ; fi
# This removes almost everything, including the configure script! # This removes almost everything, including the configure script!
maintainer-clean: distclean maintainer-clean: distclean

@ -54,6 +54,7 @@ LIBTOOL_DEPS = $(top_srcdir)/@LIBTOOL_DEPS@
# C++ Compiler and precompiler # C++ Compiler and precompiler
CXX = @CXX@ CXX = @CXX@
GXX = @GXX@ GXX = @GXX@
PREFIX = @PREFIX@
# Common compiler flags (warnings, symbols [-ggdb], optimization [-O2], etc) # Common compiler flags (warnings, symbols [-ggdb], optimization [-O2], etc)
CXXFLAGS = @CXXFLAGS@ CXXFLAGS = @CXXFLAGS@

@ -173,6 +173,8 @@ if test "$enable_webready" = "yes"; then
AC_DEFINE(ENABLE_WEBREADY) AC_DEFINE(ENABLE_WEBREADY)
fi fi
echo "CPPFLAGS = $CPPFLAGS"
if test "$enable_webready" = "yes"; then if test "$enable_webready" = "yes"; then
# libcurl option might change flags, so we save them initially # libcurl option might change flags, so we save them initially
_cppflags="${CPPFLAGS}" _cppflags="${CPPFLAGS}"
@ -388,22 +390,24 @@ else
fi fi
AC_ARG_WITH(adobe, AC_ARG_WITH(adobe,
[ --with-adobe[[=OPT]] use --with-adobe for Adobe XMPsdk. OPT: 2016|2014 default/--without-adobe is xmpsdk/src], [ --with-adobe[[=OPT]] use --with-adobe for Adobe XMPsdk. OPT: 2016|2014|2013 default/--without-adobe is xmpsdk/src],
ADOBE=$withval, ADOBE=$withval,
ADOBE=xmpsdk/src) ADOBE=xmpsdk/src)
if test "$ADOBE" == "yes"; then ADOBE=2016; fi if test "$ADOBE" == "yes"; then ADOBE=2016; fi
if test "$ADOBE" = "2016" -o "$ADOBE" = "2014" ; then if test "$ADOBE" = "2016" -o "$ADOBE" = "2014" -o "$ADOBE" = "2013" ; then
ADOBE_SDK=XMP-Toolkit-SDK-CC201607 ADOBE_SDK=XMP-Toolkit-SDK-CC201607
if test "$ADOBE" == "2014" ; then ADOBE_SDK=XMP-Toolkit-SDK-CC201412; fi if test "$ADOBE" == "2014" ; then ADOBE_SDK=XMP-Toolkit-SDK-CC201412; fi
if test "$ADOBE" == "2013" ; then ADOBE_SDK=XMP-Toolkit-SDK-CC201306; fi
ENABLE_XMP=$ADOBE ENABLE_XMP=$ADOBE
XMPSDK_CPPFLAGS="-Ixmpsdk/Adobe/$ADOBE_SDK/public/include" XMPSDK_CPPFLAGS="-Ixmpsdk/Adobe/$ADOBE_SDK/public/include"
XMPSDK_LDFLAGS="-Lxmpsdk/Adobe/$ADOBE_SDK" XMPSDK_LDFLAGS="-Lxmpsdk/Adobe/$ADOBE_SDK"
case "$host_os" in case "$host_os" in
*arwin*) *arwin*)
CPPFLAGS="${CPPFLAGS} -stdlib=libstdc++ -Wno-deprecated -fvisibility=hidden -fvisibility-inlines-hidden" EXV_DARWIN_FLAGS="-stdlib=libstdc++ -Wno-deprecated"
LDFLAGS="${LDFLAGS} -stdlib=libstdc++ -Wno-deprecated" CPPFLAGS="${CPPFLAGS} -fvisibility=hidden -fvisibility-inlines-hidden ${EXV_DARWIN_FLAGS} "
EXV_LIB_STATIC="-stdlib=libstdc++ -Wno-deprecated" LDFLAGS="${LDFLAGS} ${EXV_DARWIN_FLAGS}"
AC_SUBST(EXV_DARWIN_FLAGS)
;; ;;
esac esac
fi fi
@ -509,8 +513,8 @@ esac
fi fi
echo "CPPFLAGS =" "$CPPFLAGS $SSH_CPPFLAGS $CURL_CPPFLAGS $XMPSDK_CPPFLAGS" echo "CPPFLAGS =" "$CPPFLAGS $SSH_CPPFLAGS $CURL_CPPFLAGS $XMPSDK_CPPFLAGS"
echo "LDFLAGS =" "$LDFLAGS $SSH_LDFLAGS $CURL_LDFLAGS $EXPAT_LDFLAGS $XMPSDK_LDFLAGS" echo "LDFLAGS =" "$LDFLAGS $SSH_LDFLAGS $CURL_LDFLAGS $XMPSDK_LDFLAGS"
echo "LIBS =" "$LIBS $SSH_LIBS $CURL_LIBS $EXPAT_LIBS $XMPSDK_LIBS" echo "LIBS =" "$LIBS $SSH_LIBS $CURL_LIBS $XMPSDK_LIBS"
echo "CXX =" "$CXX" echo "CXX =" "$CXX"
echo "------------------------------------------------------------------" echo "------------------------------------------------------------------"
echo "" echo ""

@ -6,6 +6,6 @@ includedir=@includedir@
Name: exiv2 Name: exiv2
Description: Image metadata library and tools Description: Image metadata library and tools
Version: @PACKAGE_VERSION@ Version: @PACKAGE_VERSION@
Libs: -L${libdir} -lexiv2 @EXV_LIB_STATIC@ Libs: -L${libdir} -lexiv2 @EXV_LIB_STATIC@ @EXV_DARWIN_FLAGS@
Libs.private: @EXPAT_LDFLAGS@ @SSH_LDFLAGS@ @CURL_LDFLAGS@ @LTLIBINTL@ @LTLIBICONV@ @LIBS@ @EXPAT_LIBS@ @SSH_LIBS@ @CURL_LIBS@ Libs.private: @EXPAT_LDFLAGS@ @SSH_LDFLAGS@ @CURL_LDFLAGS@ @LTLIBINTL@ @LTLIBICONV@ @LIBS@ @EXPAT_LIBS@ @SSH_LIBS@ @CURL_LIBS@
Cflags: -I${includedir} Cflags: -I${includedir} @EXV_DARWIN_FLAGS@

@ -36,8 +36,8 @@
# History: 08-Oct-07, ahu: created # History: 08-Oct-07, ahu: created
# #
# Description: # Description:
# Simple Makefile to build sample programs. Requires installed exiv2 library # Makefile to build sample programs.
# and headers. Adapted from the main Exiv2 src/Makefile. # Requires installed exiv2 library
# #
# Restrictions: # Restrictions:
# Requires GNU make. # Requires GNU make.
@ -46,10 +46,6 @@
# Default make target # Default make target
all: samples all: samples
# Include system configuration
top_srcdir = ..
include $(top_srcdir)/config/config.mk
# ****************************************************************************** # ******************************************************************************
# Source files # Source files
@ -120,12 +116,6 @@ endif
PREFIX = /usr/local/lib PREFIX = /usr/local/lib
LINK.cc += -rpath $(PREFIX) -L$(PREFIX) LINK.cc += -rpath $(PREFIX) -L$(PREFIX)
# TODO: This should really not be here. We should use the installed headers
# to build the samples. Some errors only show up in this scenario, e.g., errors
# due to missing headers which are not installed (depending on compile-time
# settings) but may be wrongly included from other headers.
COMPILE.cc += -I$(top_srcdir)/include -I$(top_srcdir)/include/exiv2 # -std=gnu++98
# ****************************************************************************** # ******************************************************************************
# Rules # Rules
samples: $(BINARY) $(OTHERBIN) samples: $(BINARY) $(OTHERBIN)
@ -167,7 +157,7 @@ geotag: %: %.cpp
@$(POSTDEPEND) @$(POSTDEPEND)
$(LIBTOOL) --mode=link $(LINK.cc) -lexpat $@.o -o ../bin/$@ $(LIBTOOL) --mode=link $(LINK.cc) -lexpat $@.o -o ../bin/$@
# link applications which require utils.cpp support # link applications which require src/utils.cpp support
metacopy path-test toexv: %: %.cpp ../src/utils.o metacopy path-test toexv: %: %.cpp ../src/utils.o
$(COMPILE.cc) -I../src -o $@.o $< $(COMPILE.cc) -I../src -o $@.o $<
@$(MAKEDEPEND) @$(MAKEDEPEND)

@ -62,7 +62,7 @@ include $(top_srcdir)/config/config.mk
CCHDR = exiv2.hpp \ CCHDR = exiv2.hpp \
config.h \ config.h \
exv_conf.h \ exv_conf.h \
exv_msvc.h \ xmp_exiv2.hpp \
version.hpp version.hpp
# Add library C++ source files to this list # Add library C++ source files to this list

@ -64,10 +64,10 @@ EXIV2_RCSID("@(#) $Id$")
// Adobe XMP Toolkit // Adobe XMP Toolkit
#ifdef EXV_HAVE_XMP_TOOLKIT #ifdef EXV_HAVE_XMP_TOOLKIT
# define TXMP_STRING_TYPE std::string # define TXMP_STRING_TYPE std::string
# if EXV_ADOBE_XMPSDK == 2016 || EXV_ADOBE_XMPSDK == 2013 # ifdef EXV_ADOBE_XMPSDK
# include <XMP.hpp> # include <XMP.hpp>
# else # else
# include <XMPSDK.hpp> # include <XMPSDK.hpp>
# endif # endif
# include <MD5.h> # include <MD5.h>
#endif // EXV_HAVE_XMP_TOOLKIT #endif // EXV_HAVE_XMP_TOOLKIT

@ -31,7 +31,6 @@
// ********************************************************************* // *********************************************************************
// included header files // included header files
#include "futils.hpp"
// + standard includes // + standard includes
#include <string> #include <string>

Loading…
Cancel
Save