diff options
Diffstat (limited to 'office/fop/fop.SlackBuild')
-rw-r--r-- | office/fop/fop.SlackBuild | 111 |
1 files changed, 37 insertions, 74 deletions
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 |