diff options
Diffstat (limited to 'system/mandoc')
-rw-r--r-- | system/mandoc/README | 28 | ||||
-rw-r--r-- | system/mandoc/mandoc.SlackBuild | 55 | ||||
-rw-r--r-- | system/mandoc/slack-desc | 4 |
3 files changed, 59 insertions, 28 deletions
diff --git a/system/mandoc/README b/system/mandoc/README index 4d7be3acbc..8b53f4b2db 100644 --- a/system/mandoc/README +++ b/system/mandoc/README @@ -1,17 +1,21 @@ -mandoc is a suite of tools compiling mandoc, the roff macro package of choice for -BSD manual pages, and man, the predominant historical package for UNIX manuals. -It is small, ISO C, ISC-licensed, and quite fast. +mandoc (UNIX manpage viewer) -The tool set features mandoc, based on the libmandoc validating compiler, to -format output for UNIX terminals (with support for wide-character locales), -XHTML, HTML, PostScript, and PDF. It also includes preconv, for recoding -multibyte manuals; demandoc, for emitting only text parts of manuals; mandocdb, -for indexing manuals; and apropos, whatis, and man.cgi (via catman) for -semantic search of manual content. +mandoc is a suite of tools containing mandoc, the roff macro package +of choice for BSD manual pages, and man, the predominant historical +package for UNIX manuals. It is small, ISO C, ISC-licensed, and quite +fast. -There is an environment variable called REPLACE_MAN, that if set to a non-empty -string, will instruct the slackbuild script to replace the stock man package -(you should remove(pkg) it first, though). +The tool set features mandoc, based on the libmandoc validating +compiler, to format output for UNIX terminals (with support for +wide-character locales), XHTML, HTML, PostScript, and PDF. It also +includes preconv, for recoding multibyte manuals; demandoc, for +emitting only text parts of manuals; mandocdb, for indexing manuals; +and apropos, whatis, and man.cgi (via catman) for semantic search of +manual content. + +There is an environment variable called REPLACE_MAN, that if set to a +non-empty string, will instruct the slackbuild script to replace the +stock man package (you should remove(pkg) it first, though). After installing, make sure to (re)create the mandoc specific "whatis" database(s) in your manpath(s), eg.: diff --git a/system/mandoc/mandoc.SlackBuild b/system/mandoc/mandoc.SlackBuild index 89cd662b21..2f1dc3bbe1 100644 --- a/system/mandoc/mandoc.SlackBuild +++ b/system/mandoc/mandoc.SlackBuild @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # Copyright (c) 2014-2019 LEVAI Daniel # All rights reserved. @@ -23,10 +23,18 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# 20220209 bkw: Modified by SlackBuilds.org, BUILD=2: +# - fix build for 15.0. +# - actually use SLKCFLAGS. +# - remove conflicting files when REPLACE_MAN isn't set. + +cd $(dirname $0) ; CWD=$(pwd) + PRGNAM=mandoc VERSION=${VERSION:-1.14.4} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} if [ -z "$ARCH" ]; then case "$( uname -m )" in @@ -36,7 +44,11 @@ if [ -z "$ARCH" ]; then esac fi -CWD=$(pwd) +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} @@ -70,22 +82,37 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -if [ -z "${REPLACE_MAN}" ];then - gzip -dc "${CWD}"/configure-noconflict.local.gz >./configure.local +if [ -z "${REPLACE_MAN}" ]; then + gzip -dc "${CWD}"/configure-noconflict.local.gz >./configure.local else - gzip -dc "${CWD}"/configure-replace.local.gz >./configure.local + gzip -dc "${CWD}"/configure-replace.local.gz >./configure.local fi + +# 20220209 bkw: the *extremely* stupid way it tries to extract +# the default value of CC from make, does not work... and is +# hardcoded (can't override with environment). +sed -i '/^CC/s,=.*,=gcc,' configure + ./configure -CFLAGS=$SLKCFLAGS \ - make +make CFLAGS="-Wl,-s -fcommon $SLKCFLAGS" + make install \ - DESTDIR=$PKG \ - PREFIX=/usr \ - LIBDIR=/usr/lib${LIBDIRSUFFIX} + DESTDIR=$PKG \ + PREFIX=/usr \ + LIBDIR=/usr/lib${LIBDIRSUFFIX} -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 +# 20220209 bkw: these would conflict with Slackware's man-db +# and groff packages. +if [ -z "${REPLACE_MAN}" ]; then + rm -f \ + $PKG/usr/bin/soelim \ + $PKG/usr/man/man1/soelim.1 \ + $PKG/usr/man/man7/tbl.7 \ + $PKG/usr/man/man7/eqn.7 \ + $PKG/usr/man/man7/man.7 \ + $PKG/usr/man/man7/roff.7 +fi 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 @@ -99,4 +126,4 @@ 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:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/system/mandoc/slack-desc b/system/mandoc/slack-desc index 1f7b5d6c7b..5e8196df52 100644 --- a/system/mandoc/slack-desc +++ b/system/mandoc/slack-desc @@ -6,9 +6,9 @@ # customary to leave one space after the ':' except on otherwise blank lines. |-----handy-ruler------------------------------------------------------| -mandoc: mandoc (UNIX manpage compiler) +mandoc: mandoc (UNIX manpage viewer) mandoc: -mandoc: mandoc is a suite of tools compiling mdoc, the roff macro package of +mandoc: mandoc is a suite of tools containing mdoc, the roff macro package of mandoc: choice for BSD manual pages, and man, the predominant historical mandoc: package for UNIX manuals. mandoc: It is small, ISO C, ISC-licensed, and quite fast. |