summaryrefslogtreecommitdiffstats
path: root/network/irssi-python/irssi-python.SlackBuild
blob: 18736ede84b282a3a923e3359f91ab97bd6cc2b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#!/bin/bash

# Slackware build script for irssi-python

# Written by B. Watson (urchlay@slackware.uk)

# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.

# A note about the download URL: I'm stuck using the github
# auto-generated one, even though upstream created a static release
# tarball. Unfortunately, the release tarball is un-buildable because it's
# missing various files. Also it's missing the entire doc/ directory.

# VERSION is the irssi-python version, an underscore, and the irssi
# version we're building it for.
# Unfortunately we have to pick an irssi version to be the default,
# because the DOWNLOAD links are static (can't have $VERSION or such in
# them). This build will have to be updated any time Pat does an irssi
# version update.

# 20211208 bkw: update for vtest4_1.2.3.

cd $(dirname $0) ; CWD=$(pwd)

PRGNAM=irssi-python
VERSION=${VERSION:-test4_1.2.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}

PYIRSSI_VER="$( echo $VERSION | cut -d_ -f1 )"
IRSSI_VER="$(   echo $VERSION | cut -d_ -f2 )"

# Alert the user (but don't stop the build) if $IRSSI_VER doesn't match
# the installed version of irssi.
SYS_IRSSI="$( irssi --version | cut -d' ' -f2 )"
if [ "$IRSSI_VER" != "$SYS_IRSSI" ]; then
  cat <<EOF
***
*** WARNING: building for irssi $IRSSI_VER, but installed version is $SYS_IRSSI!
*** Continuing build in 5 seconds, or press ^C to abort.
***
EOF
  sleep 5
fi

if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i586 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

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" = "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
rm -rf $PRGNAM
mkdir -p $PRGNAM
cd $PRGNAM
tar xvf $CWD/$PRGNAM-$PYIRSSI_VER.tar.gz
tar xvf $CWD/irssi-$IRSSI_VER.tar.xz
chown -R root:root .
find -L .  -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
        \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+

# According to its INSTALL doc, irssi-python is supposed to need
# "the configured Irssi sources". But test4 builds fine without
# running ./configure in the irssi source dir. Leaving this here,
# commented out, for reference.
## cd irssi-$IRSSI_VER
## CFLAGS="$SLKCFLAGS" \
## ./configure \
##   --prefix=/usr \
##   --libdir=/usr/lib${LIBDIRSUFFIX} \
##   --mandir=/usr/man \
##   --sysconfdir=/etc \
##   --docdir=/usr/doc/irssi-$VERSION \
##   --enable-ipv6 \
##   --with-textui \
##   --with-proxy \
##   --with-perl-lib=vendor \
##   --build=$ARCH-slackware-linux
## cd $TMP/$PRGNAM

cd $PRGNAM-$PYIRSSI_VER

# patch comes from upstream git, commit 84e90f7d.
patch -p1 < $CWD/abi18.diff

autoreconf -ivf -I.

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --with-irssi=$TMP/$PRGNAM/irssi-$IRSSI_VER \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make -C src constants
make
make install-strip DESTDIR=$PKG

rm -f $PKG/usr/lib*/irssi/modules/*.la

mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog NEWS README TODO classes.txt docs/*html \
      $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

# 20211208 bkw: it might be redundant to include the irssi version
# in the slack-desc, since it's now in the actual version number, but
# belt and suspenders...
mkdir -p $PKG/install
sed "s/@IRSSI_VER@/$IRSSI_VER/" $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE