#!/bin/bash

# Slackware build script for cpdf

# Original author: Alexander Verbovetsky, Moscow, Russia
# Modified & now maintained by B. Watson <urchlay@slackware.uk>.

# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.

# 20260718 bkw:
# - update for v2.9.1.
# - stop modifying /usr/lib64/ocaml/ld.conf during the build.

# 20250925 bkw:
# - take over maintenance.
# - update for v2.8.1.
# - don't include cpdfmanual.tex in doc dir; it's the source for
#   the PDF that we do include.

# Note: if you're updating this, you have to also update camlpdf. Looks
# like upstream keeps their version numbers in sync.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=cpdf
VERSION=${VERSION:-2.9.1}
BUILD=${BUILD:-1}
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

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}

set -e

rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-source-$VERSION
tar xvf $CWD/$PRGNAM-source-$VERSION.tar.gz
cd $PRGNAM-source-$VERSION
chown -R root:root .
find . ! -type l    -a \
  \(     -perm /111 -a ! -perm 755 -a -exec chmod -f 755 {} + \) -o \
  \(   ! -perm /111 -a ! -perm 644 -a -exec chmod -f 644 {} + \)

make -j1
OCAMLFIND_DESTDIR="$PKG/$(ocamlfind printconf destdir)"
strip *.so || true
mkdir -p $OCAMLFIND_DESTDIR
make install \
  OCAMLFIND_DESTDIR=$OCAMLFIND_DESTDIR \
  OCAMLFIND_INSTFLAGS="-ldconf ignore"

install -sDm 0755 cpdf -t $PKG/usr/bin/

sed -i -e "s|cpdfmanual.pdf|/usr/doc/$PRGNAM-$VERSION/&|" cpdf.1
mkdir -p $PKG/usr/man/man1
gzip -9 -c cpdf.1 > $PKG/usr/man/man1/cpdf.1.gz

PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
cp -a Changes* LICENSE* README* cpdfmanual.pdf $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
