slackbuilds_ponce/office/evince-gtk2/evince-gtk2.SlackBuild
B. Watson 1ae74a6dcc
office/evince-gtk2: New maintainer, fix comic book support.
Signed-off-by: B. Watson <urchlay@slackware.uk>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
2024-08-24 11:55:25 +07:00

143 lines
3.5 KiB
Bash

#!/bin/bash
# Slackware build script for evince-gtk2
# Originally written by Petar Petrov.
# Modified and now maintained by B. Watson <urchlay@slackware.uk>
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20240819 bkw, BUILD=2:
# - new maintainer.
# - relicense as WTFPL.
# - disable NLS by default, mention NLS=yes in the README.
# - enable DVI backend, since Slackware 15.0 has texlive.
# - remove mention of XPS from README, since this older version
# of evince doesn't actually support it.
# - make comic book support (CBZ/CBR/CB7/CBT) actually *work*.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=evince-gtk2
SRCNAM=evince
VERSION=${VERSION:-2.32.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
NLS=${NLS:-no}
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
NLSOPT="--disable-nls"
if [ "$NLS" != "yes" ]; then
# disable NLS - we're going for a small package here.
# 20240819 bkw: --disable-nls by itself *should* be enough, but this
# stuff really is necessary.
rm po/*.po
sed -i -e 's/USE_NLS=yes/USE_NLS=no/g' \
-e 's/ENABLE_NLS 1/ENABLE_NLS 0/g' \
configure
NLSOPT="--enable-nls"
fi
# 20240819 bkw: add the correct MIME types for CBZ/CBR/CB7/CBT to actually
# work. This patch might not be needed when Slackware 15.1/16.0 comes out,
# if shared-mime-info and friends detect e.g. a .cbr file as application/x-cbr
# instead of application/vnd.rar as 15.0's does.
patch -p1 < $CWD/comicbookfix.diff
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--without-keyring \
--without-gconf \
--disable-dbus \
--enable-pdf \
--enable-tiff \
--enable-djvu \
--enable-t1lib \
--enable-pixbuf \
--enable-comics \
--enable-impress \
--disable-static \
--disable-schemas-install \
--disable-scrollkeeper \
--disable-nautilus \
--disable-introspection \
--disable-maintainer-mode \
$NLSOPT \
--build=$ARCH-slackware-linux
make LDFLAGS=-lICE
make install-strip DESTDIR=$PKG
gzip -9 $PKG/usr/man/man*/*
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
# Fix desktop entry
sed -i "/NoDisplay=true/d" $PKG/usr/share/applications/evince.desktop
# Remove these
rm -rf $PKG/*.schemas
rm -rf $PKG/{usr/share/gtk-doc,etc}
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
cp -a AUTHORS COPYING NEWS README $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE