#!/bin/bash # Slackware Package Build Script for munin-node (http://munin-monitoring.org) # SlackBuild source at https://github.com/chapmajs/munin-node-slackbuild # See LICENSE included in the project root for licensing information. # Copyright (c) 2015 Jonathan Chapman # glitch@glitchwrks.com # All rights reserved. # 20220212 bkw: Modified by SlackBuilds.org, BUILD=2: # - add a documentation directory (/usr/doc/$PRGNAM-$VERSION). # - add the SlackBuild to the doc dir. # 20220212 bkw: Modified by SlackBuilds.org: # - fix download URL. # - add missing dependencies to REQUIRES. # - fix build (PERL5LIB). # - add -j1 to make commands, since parallel builds don't work. # - install plugins to $PKG, not the real root fs! cd $(dirname $0) ; CWD=$(pwd) PRGNAM=munin-node VERSION=${VERSION:-2.0.25} BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} ARCH="noarch" 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} ARCHIVE_NAME=munin set -e # Clean up old builds rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $ARCHIVE_NAME-$VERSION tar zxvf $CWD/"$ARCHIVE_NAME"_"$VERSION".orig.tar.gz cd $ARCHIVE_NAME-$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 \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ # Fix a bug in Perldoc extension detection patch Makefile < $CWD/patches/Makefile.patch # Patch Makefile.config for Slackware-esque install locations patch Makefile.config < $CWD/patches/Makefile.config.patch # 20220212 bkw: Note: plugins are in /usr/lib/plugins, regardless of # build architecture, because this is noarch. export PERL5LIB=. make -j1 LIBDIR=/usr/lib make -j1 install-common-prime install-node-prime \ install-plugins-prime LIBDIR=$PKG/usr/lib DESTDIR=$PKG 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 mv $PKG/usr/local/share/ $PKG/usr/ rm -rf $PKG/usr/local # 20220426 bkw: docs, please. # TODO: maintainer, you should figure out to build the HTML docs using # the RST source in the doc/ dir, and include those in the package. PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION mkdir -p $PKGDOC cp -a COPYING ChangeLog HACKING.pod README UPGRADING* authors $PKGDOC cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild # move config files to .new cd $PKG/etc/munin for file in $(find . -type f); do mv $file "$file.new" done install -D -m 0644 $CWD/rc.munin-node $PKG/etc/rc.d/rc.munin-node.new install -D -m 0644 $CWD/munin-node.logrotate $PKG/etc/logrotate.d/munin-node.new # Finish up the package mkdir -p $PKG/install cat $CWD/doinst.sh > $PKG/install/doinst.sh cat $CWD/slack-desc > $PKG/install/slack-desc cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE