updated on Thu Jan 26 00:18:00 UTC 2012
[aur-mirror.git] / eggdrop / PKGBUILD
blobc83ffc1d3fbd91d0034626fbb5d5a14f3188c2f7
1 # Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
2 # Contributor: Mantas Mikulėnas <grawity@gmail.com>
4 pkgname=eggdrop
5 _pkgname=eggdrop
6 pkgver=1.6.21
7 _pkgver=${pkgver%.*}
8 pkgrel=4
9 pkgdesc="The world's most popular Open Source IRC bot."
10 arch=('i686' 'x86_64')
11 url="http://www.eggheads.org/"
12 license=('GPL2')
13 depends=('sh' 'tcl>=8.3' 'zlib')
14 makedepends=('hardened-cc')
15 source=("http://ftp.eggheads.org/pub/$_pkgname/source/$_pkgver/$_pkgname$pkgver.tar.bz2"{,.asc}
16         'dlopen.c')
17 backup=("etc/$pkgname.conf")
18 options=('!makeflags')
19 sha256sums=('75bd5573a609eac3940c0b6ca8251c3f38ea5d54b520e1cad93c650b4bc21754'
20             '37729631794111496d0843e2f64f0dc2fc1744924fce41cdf1a55a3680399c21'
21             'd1758f84a69173a852e598fa55e69df0d73b8b62c6993b0ba04aa21d539213e6')
23 # Want multiple *unique* installations? Change the pkgname, it will just work.
24 _usrdir="/usr"
25 _sharedir="$_usrdir/share"
26 _modulesdir="$_usrdir/lib/$pkgname"
27 _scriptsdir="$_sharedir/$pkgname/scripts"
28 _helpdir="$_sharedir/$pkgname/help"
29 _bin="$_usrdir/bin/$pkgname"
30 _mandir="$_sharedir/man/man1"
31 readonly -a _usrdir _sharedir _modulesdir _scriptsdir _helpdir _bin _mandir
33 build() {
34   cd "$srcdir/$_pkgname$pkgver"
36   # Force hardened build unless CC is already set.
37   if [[ ! $CC ]]; then
38     export CC="/usr/bin/hgcc"
39   fi
41   # Don't complain about language files on startup.
42   sed -i "s|\"./language\"|\"/$_usrdir/$pkgname/language\"|g" src/eggdrop.h
44   ./configure
45   make config
47   # Include LDFLAGS.
48   sed -i "s|-L/usr/lib|${LDFLAGS}|g" Makefile
49   make
52 check() {
53   cd "$srcdir/$_pkgname$pkgver"
55   # If this fails, theres a good change something is broken.
57   gcc "$srcdir/dlopen.c" -o dlopen -ldl
59   for module in *.so ; do
60     if ! env LD_PRELOAD='' ./dlopen "${module}" ; then
61       error "Sanity check failed: "${module}" cannot be loaded. Proceeding anyway.."
62     fi
63   done
65   rm dlopen
69 package() {
70   readonly eggtmp="$pkgdir/tmp"
72   # This is ugly..
74   cd "$srcdir/$_pkgname$pkgver"
75   make DEST="$eggtmp" install
77   find "$eggtmp" -name 'CONTENTS' -exec rm {} +
79   mkdir -p -m 0755 "$pkgdir/etc" \
80     "$pkgdir/$_usrdir/"{bin,lib} \
81     "$pkgdir/$_sharedir/"{$pkgname,doc,man/man1}
83   mv "$eggtmp/modules-$pkgver" "$pkgdir/$_modulesdir"
84   mv "$eggtmp/eggdrop-$pkgver" "$pkgdir/$_bin"
85   mv "$eggtmp/doc/man1/$_pkgname.1" "$pkgdir/$_mandir/$pkgname.1"
86   rm -r "$eggtmp/doc/man1"
87   mv "$eggtmp/doc" "$pkgdir/$_sharedir/doc/$pkgname-$pkgver"
89   for d in language scripts help text; do
90     mv "$eggtmp/${d}" "$pkgdir/$_sharedir/$pkgname"
91   done
93   sed -e '2d' \
94     -e "1s@^.*@#!$_bin@" \
95     -e "s@scripts/@$_scriptsdir/@g" \
96     -e "s@help/@$_helpdir@g" \
97     -e "s@modules/@$_modulesdir/@g" \
98     eggdrop.conf > "$pkgdir/etc/$pkgname.conf"
100   rm -r "$eggtmp"
101   find "$pkgdir/$_sharedir" -type f -exec chmod 0444 {} +
105 # vim:set ts=2 sw=2 et: