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
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
cd src && $(MAKE) $(MAKECMDGOALS)
@ -156,6 +156,7 @@ distclean: clean
rm -f *~ *.bak
if [ -e bin ]; then rm -rf bin ; 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!
maintainer-clean: distclean

@ -135,7 +135,7 @@ config:
xmpsdk: config/config.mk
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
cd src && $(MAKE) $(MAKECMDGOALS)
@ -156,6 +156,7 @@ distclean: clean
rm -f *~ *.bak
if [ -e bin ]; then rm -rf bin ; 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!
maintainer-clean: distclean

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

@ -173,6 +173,8 @@ if test "$enable_webready" = "yes"; then
AC_DEFINE(ENABLE_WEBREADY)
fi
echo "CPPFLAGS = $CPPFLAGS"
if test "$enable_webready" = "yes"; then
# libcurl option might change flags, so we save them initially
_cppflags="${CPPFLAGS}"
@ -388,22 +390,24 @@ else
fi
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=xmpsdk/src)
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
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
XMPSDK_CPPFLAGS="-Ixmpsdk/Adobe/$ADOBE_SDK/public/include"
XMPSDK_LDFLAGS="-Lxmpsdk/Adobe/$ADOBE_SDK"
case "$host_os" in
*arwin*)
CPPFLAGS="${CPPFLAGS} -stdlib=libstdc++ -Wno-deprecated -fvisibility=hidden -fvisibility-inlines-hidden"
LDFLAGS="${LDFLAGS} -stdlib=libstdc++ -Wno-deprecated"
EXV_LIB_STATIC="-stdlib=libstdc++ -Wno-deprecated"
EXV_DARWIN_FLAGS="-stdlib=libstdc++ -Wno-deprecated"
CPPFLAGS="${CPPFLAGS} -fvisibility=hidden -fvisibility-inlines-hidden ${EXV_DARWIN_FLAGS} "
LDFLAGS="${LDFLAGS} ${EXV_DARWIN_FLAGS}"
AC_SUBST(EXV_DARWIN_FLAGS)
;;
esac
fi
@ -509,8 +513,8 @@ esac
fi
echo "CPPFLAGS =" "$CPPFLAGS $SSH_CPPFLAGS $CURL_CPPFLAGS $XMPSDK_CPPFLAGS"
echo "LDFLAGS =" "$LDFLAGS $SSH_LDFLAGS $CURL_LDFLAGS $EXPAT_LDFLAGS $XMPSDK_LDFLAGS"
echo "LIBS =" "$LIBS $SSH_LIBS $CURL_LIBS $EXPAT_LIBS $XMPSDK_LIBS"
echo "LDFLAGS =" "$LDFLAGS $SSH_LDFLAGS $CURL_LDFLAGS $XMPSDK_LDFLAGS"
echo "LIBS =" "$LIBS $SSH_LIBS $CURL_LIBS $XMPSDK_LIBS"
echo "CXX =" "$CXX"
echo "------------------------------------------------------------------"
echo ""

@ -6,6 +6,6 @@ includedir=@includedir@
Name: exiv2
Description: Image metadata library and tools
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@
Cflags: -I${includedir}
Cflags: -I${includedir} @EXV_DARWIN_FLAGS@

@ -36,8 +36,8 @@
# History: 08-Oct-07, ahu: created
#
# Description:
# Simple Makefile to build sample programs. Requires installed exiv2 library
# and headers. Adapted from the main Exiv2 src/Makefile.
# Makefile to build sample programs.
# Requires installed exiv2 library
#
# Restrictions:
# Requires GNU make.
@ -46,10 +46,6 @@
# Default make target
all: samples
# Include system configuration
top_srcdir = ..
include $(top_srcdir)/config/config.mk
# ******************************************************************************
# Source files
@ -120,12 +116,6 @@ endif
PREFIX = /usr/local/lib
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
samples: $(BINARY) $(OTHERBIN)
@ -167,7 +157,7 @@ geotag: %: %.cpp
@$(POSTDEPEND)
$(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
$(COMPILE.cc) -I../src -o $@.o $<
@$(MAKEDEPEND)

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

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

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

Loading…
Cancel
Save