summaryrefslogtreecommitdiffstats
path: root/deps/exiv2
diff options
context:
space:
mode:
author Eric Hameleers <alien@slackware.com>2019-11-11 21:32:21 +0100
committer Eric Hameleers <alien@slackware.com>2019-11-11 21:32:21 +0100
commit25e06aadbdec1fa4113960acb355a4183cb0c552 (patch)
treeb4b4f415a470a636e7faab818059cb49849b68e9 /deps/exiv2
parent02b703f088bb2ea4e34869d515e26a62a8aa5c5d (diff)
downloadktown-25e06aadbdec1fa4113960acb355a4183cb0c552.tar.gz
ktown-25e06aadbdec1fa4113960acb355a4183cb0c552.tar.xz
Deps: add exiv2 and LibRaw updates to the official packages
Newer exiv2 is required to compile the latest Digikam 6.4.0. Pat threw LibRaw in the mix for good measure. Then he added the shared libraries of the official Slackware versions of these packages to aaa_elflibs so that no breakage to official packages will occur when you upgrade to their updated ktown versions.
Diffstat (limited to 'deps/exiv2')
-rwxr-xr-xdeps/exiv2/exiv2.SlackBuild139
-rwxr-xr-xdeps/exiv2/paredown.sh52
-rw-r--r--deps/exiv2/slack-desc19
3 files changed, 210 insertions, 0 deletions
diff --git a/deps/exiv2/exiv2.SlackBuild b/deps/exiv2/exiv2.SlackBuild
new file mode 100755
index 0000000..28fc6c7
--- /dev/null
+++ b/deps/exiv2/exiv2.SlackBuild
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+# Copyright 2007 Frank Caraballo <fecaraballo{at}gmail{dot}com>
+# Copyright 2008, 2009, 2011, 2015, 2017, 2018, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Modified by Robby Workman <rworkman at slackware.com>
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PKGNAM=exiv2
+VERSION=${VERSION:-$(echo $PKGNAM-*-Source.tar.?z | rev | cut -f 3- -d . | cut -f 2 -d - | rev)}
+BUILD=${BUILD:-1}
+
+# Automatically determine the architecture we're building on:
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ # Unless $ARCH is already set, use uname -m for all other archs:
+ *) export ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp}
+PKG=$TMP/package-$PKGNAM
+NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG
+cd $TMP
+rm -rf $PKGNAM-$VERSION-Source
+
+tar xvf $CWD/$PKGNAM-$VERSION-Source.tar.?z || exit 1
+cd $PKGNAM-$VERSION-Source || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+# Configure, build, and install:
+mkdir cmake-build
+cd cmake-build
+ cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX="$LIBDIRSUFFIX" \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DBUILD_SHARED_LIBS=ON \
+ -DEXIV2_ENABLE_CURL=ON \
+ -DEXIV2_ENABLE_VIDEO=ON \
+ -DEXIV2_ENABLE_WEBREADY==ON \
+ -DEXIV2_ENABLE_XMP=ON \
+ -DEXIV2_BUILD_SAMPLES=OFF \
+ -DEXIV2_ENABLE_NLS=ON \
+ .. || exit 1
+ make $NUMJOBS || make || exit 1
+ make install DESTDIR=$PKG || exit 1
+cd ..
+
+# Make sure shared libraries are executable:
+chmod 755 $PKG/usr/lib${LIBDIRSUFFIX}/lib*.so.*
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" \
+ | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+# Move manpage directory:
+mv $PKG/usr/share/man $PKG/usr
+
+# Compress manual pages:
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+for i in $( find $PKG/usr/man -type l ) ; do
+ ln -s $( readlink $i ).gz $i.gz
+ rm $i
+done
+
+mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
+cp -a \
+ AUTHORS CODING_GUIDELINES* CONTRIBUTING* COPYING* README* \
+ doc/{COPYING-XMPSDK,README-XMP,cmd.txt,cmdxmp.txt} \
+ $PKG/usr/doc/$PKGNAM-$VERSION
+
+# If there's a ChangeLog, installing at least part of the recent history
+# is useful, but don't let it get totally out of control:
+if [ -r doc/ChangeLog ]; then
+ DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
+ cat doc/ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
+ touch -r doc/ChangeLog $DOCSDIR/ChangeLog
+fi
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
+
diff --git a/deps/exiv2/paredown.sh b/deps/exiv2/paredown.sh
new file mode 100755
index 0000000..bd2685e
--- /dev/null
+++ b/deps/exiv2/paredown.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# Copyright 2013, 2019 Patrick J. Volkerding, Sebeka, MN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Remove the reference PNG files from the cairo source tarball.
+# These are used only for build time testing, and cairo always fails
+# a large number of tests, making these files more or less useless to
+# the average end user. If you really need them for some reason, you
+# can fetch the original tarball from cairographics.org.
+#
+# Removing these files reduces the size of the source tarball by 93%.
+
+PKGNAM=exiv2
+VERSION=${VERSION:-$(echo $PKGNAM-*.tar.gz | rev | cut -f 3- -d . | cut -f 2 -d - | rev)}
+
+if [ ! -r $PKGNAM-${VERSION}-Source.tar.gz ]; then
+ echo "$PKGNAM-${VERSION}-Source.tar.gz does not exist. Exiting."
+ exit 1
+fi
+
+touch -r $PKGNAM-${VERSION}-Source.tar.gz tmp-timestamp || exit 1
+
+rm -rf $PKGNAM-${VERSION}-Source
+tar xf $PKGNAM-${VERSION}-Source.tar.gz || exit 1
+rm -rf $PKGNAM-${VERSION}-Source/test/data/*
+rm -rf $PKGNAM-${VERSION}-Source/tests/bugfixes/*
+rm -f $PKGNAM-${VERSION}-Source.tar.lz
+tar cf $PKGNAM-${VERSION}-Source.tar $PKGNAM-${VERSION}-Source
+touch -r tmp-timestamp $PKGNAM-${VERSION}-Source.tar
+plzip -9 -v $PKGNAM-${VERSION}-Source.tar
+rm -rf $PKGNAM-${VERSION}-Source tmp-timestamp
+
+echo "Repacking of $PKGNAM-${VERSION}-Source.tar.lz complete."
+
diff --git a/deps/exiv2/slack-desc b/deps/exiv2/slack-desc
new file mode 100644
index 0000000..b2b3145
--- /dev/null
+++ b/deps/exiv2/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+exiv2: exiv2 (Exif and IPTC Metadata Library and Tools)
+exiv2:
+exiv2: Exiv2 is a C++ library and a command line utility to read and write
+exiv2: Exif and IPTC image metadata.
+exiv2:
+exiv2: Homepage: https://www.exiv2.org/
+exiv2:
+exiv2:
+exiv2:
+exiv2:
+exiv2: