pantry/projects/man-db.gitlab.io/man-db/package.yml

73 lines
2 KiB
YAML
Raw Normal View History

distributable:
url: https://download.savannah.nongnu.org/releases/man-db/man-db-{{version}}.tar.xz
strip-components: 1
display-name: man-db
versions:
gitlab: man-db/man-db
dependencies:
libpipeline.gitlab.io/libpipeline: '*'
gnu.org/groff: '*'
linux:
gnu.org/gdbm: '*'
build:
dependencies:
gnu.org/make: '*'
freedesktop.org/pkg-config: '*'
script:
- ./configure $CONFIGURE_ARGS
- make --jobs {{hw.concurrency}} install
- sed -i.bak "s|$PKGX_DIR|\$PKGX_DIR|g" {{prefix}}/etc/systemd/system/man-db.service
- rm {{prefix}}/etc/systemd/system/man-db.service.bak
- run: |
# Creating stubs
for name in $(ls {{prefix}}/libexec/bin)
do
cat <<EOF >$name
#!/bin/bash
config_file="\$(dirname \$0)/../../etc/man_db.conf"
\$(dirname \$0)/../libexec/bin/$name --config-file="\$config_file" "\$@"
EOF
chmod +x $name
done
# These binaries do not require a config file
rm lexgrog man-recode
ln -s ../libexec/bin/lexgrog lexgrog
ln -s ../libexec/bin/man-recode man-recode
working-directory: '{{prefix}}/bin'
env:
CONFIGURE_ARGS:
- --disable-debug
- --disable-dependency-tracking
- --prefix="{{prefix}}"
- --libdir="{{prefix}}/lib"
- --bindir="{{prefix}}/libexec/bin"
- --disable-silent-rules
- --disable-cache-owner
- --disable-setuid
- --disable-nls
- --localstatedir="{{prefix}}/var"
- --with-config-file="{{prefix}}/etc/man_db.conf"
- --with-systemdsystemunitdir="{{prefix}}/etc/systemd/system"
- --with-systemdtmpfilesdir="{{prefix}}/lib/tmpfiles.d"
provides:
- bin/apropos
- bin/catman
- bin/lexgrog
- bin/man
- bin/mandb
- bin/manpath
- bin/man-recode
- bin/whatis
test:
env:
PAGER: cat
script:
# This check is specific to Linux because on darwin (macOS), the 'man' command does not display version information.
- run: man --version | grep {{version}}
if: linux
- which man | grep {{prefix}}
- man man