aboutsummaryrefslogtreecommitdiff
path: root/office/fop
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2022-03-05 15:58:30 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2022-03-07 08:45:23 +0700
commit0c1c50fb27cfa1251e6630b0015fd1966f9aa9da (patch)
tree02ac3fb24e6efbe0a5a1e3865a22cba49ff6e58e /office/fop
parent665d36fb025bcdbd2fa766da587026e3ffca5a74 (diff)
office/fop: Updated for version 2.7, noarch, binary repack.
Signed-off-by: B. Watson <yalhcru@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'office/fop')
-rw-r--r--office/fop/README11
-rw-r--r--office/fop/fop.SlackBuild111
-rw-r--r--office/fop/fop.info16
3 files changed, 45 insertions, 93 deletions
diff --git a/office/fop/README b/office/fop/README
index 6d323c7135a4..40b24f426992 100644
--- a/office/fop/README
+++ b/office/fop/README
@@ -19,14 +19,7 @@ Other relevant documents, such as the XPath and XLink Working Drafts,
are referenced as necessary. The FOP Project will attempt to use the
latest version of evolving specifications.
-The default build is for jdk 7 and 8 (including openjdk). To build
-on jdk11 and newer, pass JDK11=yes to the build script. If you are
-still running the (incredibly ancient) jdk 6, please use fop2.0, also
-available on SBo.
-
-Requires apache-ant and apache-maven.
+The SlackBuild just repackages the official FOP binary release, plus
+the binary release of the OFFO hyphenation package.
jai and jai-imageio are optional but recommended dependencies.
-
-WARNING: The SlackBuild requires network access, as the build process
-downloads files from the internet.
diff --git a/office/fop/fop.SlackBuild b/office/fop/fop.SlackBuild
index e3c72e153f1d..411603033c47 100644
--- a/office/fop/fop.SlackBuild
+++ b/office/fop/fop.SlackBuild
@@ -23,25 +23,28 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220305 bkw: Modified by SlackBuilds.org:
+# The fop-2.6 SlackBuild downloaded 230 prebuilt .jar files during its
+# build process. Since we're trusting prebuilt code anyway, and since
+# we prefer not to do network access from a SlackBuild, I've made this
+# a binary repack: this script no longer builds fop, it just packages
+# the official binary release.
+# Also updated for version 2.7, and made this a noarch package since
+# there's no native code.
+# The offo-hyphenation stuff had to change: we have to use the precompiled
+# zip file, not the source. See:
+# https://xmlgraphics.apache.org/fop/2.7/hyphenation.html
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fop
-VERSION=${VERSION:-2.6}
+VERSION=${VERSION:-2.7}
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
+ARCH=noarch
-# 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 "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -51,86 +54,46 @@ 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
+mkdir -p $TMP $PKG/opt/$PRGNAM-$VERSION $OUTPUT
+cd $PKG/opt
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION-bin.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-if [ "${JDK11:-no}" = "yes" ]; then
-# Fix an Issue with Java 11 and newer:
- sed -i '\@</javad@i\
- <arg value="-Xdoclint:none"/>\
- <arg value="--allow-script-in-comments"/>\
- <arg value="--ignore-source-errors"/>' \
- fop/build.xml
-# With jdk11 and newer, the minimum source version is 1.7, while
-# the fop build system has 1.6. Change it here:
- sed -e 's/1\.6/1.7/' \
- -i fop/build.xml
-else
- # Fix an Issue with Java 8 and older:
- sed -i '\@</javad@i\
- <arg value="--allow-script-in-comments"/>' fop/build.xml
-fi
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Increase hyphenation stacksize from 512k to 1M:
-sed -e '/hyph\.stack/s/512k/1M/' -i fop/build.xml
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+mv KEYS LICENSE NOTICE README $PKGDOC
-# Copy updated {pdf,font}box files:
-rm fop/lib/fontbox-2.0.*.jar || true
-cp $CWD/{font,pdf}box-2.0.*.jar fop/lib
+mv $PRGNAM $PRGNAM.old
+mv $PRGNAM.old/* .
+rmdir $PRGNAM.old
-# Copy hyphenation tables:
-unzip $CWD/offo-hyphenation.zip
-cp offo-hyphenation/hyph/* fop/hyph
-rm -rf offo-hyphenation
+# 20220305 bkw: don't need windows stuff
+rm -f $PRGNAM.{bat,cmd}
-# Compiles with apache-ant:
-( cd fop
-ant all javadocs
-mkdir -p $PKG/opt/$PRGNAM-$VERSION
-install -v -d -m755 $PKG/opt/$PRGNAM-$VERSION/
-mv build/javadocs .
-cp -va build conf examples javadocs fop* lib \
- $PKG/opt/$PRGNAM-$VERSION )
+# 20220305 bkw: OFFO hyphenation can't be distributed with FOP, due
+# to licensing issues. Here it's a separate .jar file:
+unzip -p $CWD/offo-hyphenation-compiled.zip \
+ offo-hyphenation-compiled/fop-hyph.jar \
+ > lib/fop-hyph.jar
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# Symlink it all to /opt/fop so the .foprc won't need edited every update:
+cd $PKG/opt
+ln -s $PRGNAM-$VERSION $PRGNAM
-# Create fop symlink to /usr/bin:
mkdir -p $PKG/usr/bin
-( ln -sf /opt/${PRGNAM}-${VERSION}/${PRGNAM} $PKG/usr/bin/ )
-
-# Symlink it all to /opt/fop so the .foprc won't need edited every update:
-( cd $PKG/opt ; ln -sf ${PRGNAM}-${VERSION} ${PRGNAM} )
+ln -s /opt/$PRGNAM-$VERSION/$PRGNAM $PKG/usr/bin/$PRGNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README NOTICE LICENSE KEYS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/office/fop/fop.info b/office/fop/fop.info
index 2faf58b7463b..4f56325d421f 100644
--- a/office/fop/fop.info
+++ b/office/fop/fop.info
@@ -1,16 +1,12 @@
PRGNAM="fop"
-VERSION="2.6"
+VERSION="2.7"
HOMEPAGE="https://xmlgraphics.apache.org/fop/"
-DOWNLOAD="https://archive.apache.org/dist/xmlgraphics/fop/source/fop-2.6-src.tar.gz \
- https://slackware.uk/~urchlay/src/fontbox-2.0.23.jar \
- https://slackware.uk/~urchlay/src/pdfbox-2.0.23.jar \
- https://downloads.sourceforge.net/offo/2.2/offo-hyphenation.zip"
-MD5SUM="1d6bc84d2ab7f971bbc628080e3c307f \
- f9aa90c666c88ff29e3cd34c15d538ca \
- 6b71c42c567d419f068f46f410dcc3a5 \
- bf9c09bf05108ef9661b8f08d91c2336"
+DOWNLOAD="https://archive.apache.org/dist/xmlgraphics/fop/binaries/fop-2.7-bin.tar.gz \
+ https://downloads.sourceforge.net/offo/2.2/offo-hyphenation-compiled.zip"
+MD5SUM="97fdb716759c2d1c525f1ea8191f51b3 \
+ 5ec09cce6d8a09bc53a6441790021ecf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="apache-ant apache-maven"
+REQUIRES="zulu-openjdk8"
MAINTAINER="Lenard Spencer"
EMAIL="lenardrspencer@gmail.com"