summaryrefslogtreecommitdiffstats
path: root/network/sic
diff options
context:
space:
mode:
Diffstat (limited to 'network/sic')
-rw-r--r--network/sic/README19
-rw-r--r--network/sic/git2tarxz.sh44
-rw-r--r--network/sic/patches/README10
-rw-r--r--network/sic/sic.SlackBuild99
-rw-r--r--network/sic/sic.info10
-rw-r--r--network/sic/slack-desc4
6 files changed, 156 insertions, 30 deletions
diff --git a/network/sic/README b/network/sic/README
index e721f1205d..842025a1bf 100644
--- a/network/sic/README
+++ b/network/sic/README
@@ -1 +1,18 @@
-sic is an extremely simple IRC client.
+sic (simple irc client from suckless.org)
+
+sic is an extremely simple IRC client. It consists of less than 250
+lines of code.
+
+You can control the build via environment variables:
+
+IRCHOST - sets the default IRC server (default: irc.oftc.net).
+IRCPORT - sets the default port (default: 6667).
+SLASH - set SLASH=yes to change the command prefix from a colon (:) to
+ a slash (/), to make sic work more like other IRC clients.
+
+For even finer-grained control, you can copy config.def.h from the
+sic source to config.h in the SlackBuild directory, and edit it before
+building.
+
+If you want to apply any patches to the sic source, see patches/README
+for instructions.
diff --git a/network/sic/git2tarxz.sh b/network/sic/git2tarxz.sh
new file mode 100644
index 0000000000..c169301276
--- /dev/null
+++ b/network/sic/git2tarxz.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version
+# number.
+
+# Note that this script doesn't need to be run as root. It does
+# need to be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create
+# a tarball of. With no arg, HEAD is used.
+
+PRGNAM=sic
+CLONE_URL=https://git.suckless.org/sic
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+TAG=$( git tag | tail -1 )
+
+VERSION=$TAG+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/network/sic/patches/README b/network/sic/patches/README
new file mode 100644
index 0000000000..a9c9ce960d
--- /dev/null
+++ b/network/sic/patches/README
@@ -0,0 +1,10 @@
+This directory is for optional patches. Any *.diff files found here
+will be applied to the sic source in ASCIIbetical order, when the
+SlackBuild is run.
+
+If the order of patches matters (if later ones depend on earlier
+ones), name them e.g. 001-foo.diff, 002-bar.diff, etc.
+
+Upstream provides a few patches here:
+
+http://tools.suckless.org/sic/patches/
diff --git a/network/sic/sic.SlackBuild b/network/sic/sic.SlackBuild
index 33638e6832..cc4b1bf885 100644
--- a/network/sic/sic.SlackBuild
+++ b/network/sic/sic.SlackBuild
@@ -1,7 +1,8 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for sic
-# Copyright 2011 Haroldo F. Jardim <hfjardim@gmail.com>
+# Copyright 2011 Haroldo F. Jardim <email removed>
+# Now maintained by B. Watson <urchlay@slackware.uk>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,26 +22,52 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230103 bkw: update for v1.3, strip binary.
+
+# 20210924 bkw:
+# - update for latest git.
+# - add support for SLASH=yes.
+# - add support for user config.h.
+# - add support for patches.
+# - update README to reflect the above.
+
+# 20201113 bkw: The original author of this script hasn't been heard
+# from since 2011, and it needs some attention (still mentions i486)
+# so I'm taking it.
+# - new maintainer
+# - i486 => i586
+# - fix that => than typo in slack-desc
+# - expand README a bit
+# - add env vars for default host and port
+# - simplify script
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sic
-VERSION=${VERSION:-1.1}
+VERSION=${VERSION:-1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
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}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,37 +86,65 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvzf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.[xg]z
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 \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+chmod 644 *
+
+# this is more complex than it has to be: upstream released a a mix
+# of -p0 and -p1 patches.
+for i in $CWD/patches/*.diff; do
+ if [ -e "$i" ]; then
+ P=1
+ patch --dry-run -p0 < $i &>/dev/null && P=0
+ echo "=== Applying $( basename $i ) with -p$P"
+ patch -p$P < $i
+ fi
+done
+
+if [ -e "$CWD/config.h" ]; then
+ # if the user's got his own config.h, use it
+ cat "$CWD/config.h" > config.h
+else
+ # if not, use the upstream default
+ cat config.def.h > config.h
+fi
+
+# IRCHOST IRCPORT SLASH modify the config.h, even overriding what's
+# in the user's custom one. Also fixup the man page.
+if [ -n "$IRCHOST" ]; then
+ sed -i "/DEFAULT_HOST/s,\".*\"\$,\"$IRCHOST\"," config.h
+ sed -i "/default host/s,(.*) *$,($IRCHOST)," $PRGNAM.1
+fi
-sed -i "s/CFLAGS =/CFLAGS +=/" config.mk
+if [ -n "$IRCPORT" ]; then
+ sed -i "/DEFAULT_PORT/s,\".*\"\$,\"$IRCPORT\"," config.h
+ sed -i "/default port/s,(.*) *$,($IRCPORT)," $PRGNAM.1
+fi
+
+if [ "${SLASH:-no}" = "yes" ]; then
+ sed -i "s|':'|'/'|" config.h
+ sed -i '/^\.BI :/s,:,/,' $PRGNAM.1
+fi
CFLAGS="$SLKCFLAGS" \
DESTDIR=$PKG \
make \
+ VERSION="$VERSION" \
+ CFLAGS="$SLKCFLAGS" \
PREFIX=/usr \
MANPREFIX=/usr/man \
install
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-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
+strip $PKG/usr/bin/$PRGNAM
+gzip -9 $PKG/usr/man/man1/$PRGNAM.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README config.h $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/usr/doc -type f -exec chmod 0644 {} \;
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/network/sic/sic.info b/network/sic/sic.info
index 1aeede0c85..d48f3c4b93 100644
--- a/network/sic/sic.info
+++ b/network/sic/sic.info
@@ -1,10 +1,10 @@
PRGNAM="sic"
-VERSION="1.1"
+VERSION="1.3"
HOMEPAGE="http://tools.suckless.org/sic"
-DOWNLOAD="http://dl.suckless.org/tools/sic-1.1.tar.gz"
-MD5SUM="856d0e5faa151ae9602713ee7d34a2d5"
+DOWNLOAD="http://dl.suckless.org/tools/sic-1.3.tar.gz"
+MD5SUM="be0a6fd28738d3c626d70f1b1f33adb5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Haroldo F. Jardim"
-EMAIL="hfjardim@gmail.com"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/sic/slack-desc b/network/sic/slack-desc
index a5f706b903..bc34e76761 100644
--- a/network/sic/slack-desc
+++ b/network/sic/slack-desc
@@ -6,9 +6,9 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-sic: sic (simple irc client)
+sic: sic (simple irc client from suckless.org)
sic:
-sic: sic is an extremely simple IRC client. It consists of less that 250
+sic: sic is an extremely simple IRC client. It consists of less than 250
sic: lines of code.
sic:
sic: http://tools.suckless.org/sic