summaryrefslogtreecommitdiff
path: root/community/inn/PKGBUILD
blob: e94913fa2f88c46939051d9e50d82941cf96d51e (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
# $Id: PKGBUILD 44059 2011-04-01 20:32:01Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Edward Tjörnhammar <xhemi@cube2.se>
# Contributor: Edward Tjörnhammar <xhemi@cube2.se>

pkgname=inn
pkgver=2.5.2
pkgrel=5
pkgdesc="Complete open source Usenet system. De facto standard for handling news routing, news spool and serving the spool to customers."
url="http://www.isc.org/software/inn/"
arch=('i686' 'x86_64' 'mips64el')
license=("custom:INN")
depends=('openssl' 'dovecot')
makedepends=('make' 'bison' 'python2' 'gcc' 'smtp-forwarder' 'libsasl')
optdepends=('perl' 'python2' 'libsasl')
options=(emptydirs docs zipman)
install=inn.install
backup=(etc/inn/newsfeeds
	etc/inn/incoming.conf
	etc/inn/nnrpd.track
	etc/inn/passwd.nntp
	etc/inn/inn.conf
	etc/inn/moderators
	etc/inn/control.ctl
	etc/inn/expire.ctl
	etc/inn/nntpsend.ctl
	etc/inn/innreport.conf
	etc/inn/innwatch.ctl
	etc/inn/distrib.pats
	etc/inn/actsync.cfg
	etc/inn/actsync.ign
	etc/inn/motd.news
	etc/inn/storage.conf
	etc/inn/cycbuff.conf
	etc/inn/buffindexed.conf
	etc/inn/innfeed.conf
	etc/inn/news2mail.cf
	etc/inn/readers.conf
	etc/inn/radius.conf
	etc/inn/ovdb.conf
	etc/inn/subscriptions
	var/db/inn/active
	var/db/inn/active.times
	var/db/inn/history
	var/db/inn/history.dir
	var/db/inn/history.hash
	var/db/inn/history.index
	var/db/inn/newsgroups)
source=(http://ftp.isc.org/isc/inn/inn-$pkgver.tar.gz
	innd.rc
	nnrpd.rc
	innd.conf
	nnrpd.conf
	site.make.patch)
md5sums=('a6e577dceb90d07501b96149508b974b'
         '2ad5138dac7c7535278f73f30020d656'
         'a0b1ff8501ac8a31ce81a2f9c9b4bac9'
         'fbf1d2c5b3c5a08ae3e515c71c2e2e4a'
         'bb4bbe86ae52fbbf08b0f6f370dea052'
         '960c800026ed6e03901cf0bafdfd53d8')

build() {
  cd $srcdir/inn-$pkgver

  [ $NOEXTRACT -eq 1 ] || PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
	--includedir=/usr/include/inn \
	--sbindir=/usr/sbin \
	--with-libtool \
	--with-gnu-id \
	--with-db-dir=/var/db/inn \
	--sysconfdir=/etc/inn \
	--with-spool-dir=/var/spool/news \
	--with-log-dir=/var/log/inn \
	--with-run-dir=/var/run/inn \
	--with-tmp-dir=/var/spool/inn/tmp \
	--enable-largefiles \
	--with-openssl=/usr \
	--with-perl \
	--with-python \
	--with-sendmail=/usr/bin/msmtp \
	--with-sasl=/usr
    # build in chroot fails with default news:news since they don't exist.
    # uncomment following lines for working build. not sure if this is the correct solution though.
    # --with-news-user=root \
    # --with-news-group=root \

  sed -i 's|-export-dynamic gnu|-export-dynamic|' Makefile.global

  [ $NOEXTRACT -eq 1 ] || patch -p3 < $srcdir/site.make.patch
  export LD_LIBRARY_PATH=.:$pkgdir/usr/lib:$LD_LIBRARY_PATH

  make
  make DESTDIR=$pkgdir install

  mkdir -p $pkgdir/etc/{conf,rc}.d && \
  install -m0755 $srcdir/innd.rc $pkgdir/etc/rc.d/innd
  install -m0644 $srcdir/innd.conf $pkgdir/etc/conf.d/innd

  install -m0755 $srcdir/nnrpd.rc $pkgdir/etc/rc.d/nnrpd
  install -m0644 $srcdir/nnrpd.conf $pkgdir/etc/conf.d/nnrpd

  cd $pkgdir/usr/lib
  for i in lib*.a; do
	gcc -shared -o ${i%%.a}.so.2.0.0 $i
	for j in 2.0 2; do
	    ln -s ${i%%a}so.2.0.0 ${i%%a}so.$j
	done
  done

  touch $pkgdir/var/db/inn/history{.dir,.hash,.index,}

  mkdir -p $pkgdir/usr/share/doc/inn $pkgdir/usr/share/inn/
  mv $pkgdir/usr/share/man/man3/list.3 $pkgdir/usr/share/man/man3/list-inn.3
  mv $pkgdir/usr/doc/* $pkgdir/usr/share/doc/inn/
  mv $pkgdir/usr/http/* $pkgdir/usr/share/inn/
  mv $pkgdir/usr/bin/archive $pkgdir/usr/bin/archive.inn
  rm -rf $pkgdir/usr/doc $pkgdir/usr/http $pkgdir/var/run
  install -D -m0644 $srcdir/inn-$pkgver/LICENSE $pkgdir/usr/share/licenses/inn/LICENSE
  chown root:root $pkgdir/usr/bin/innbind
  chmod 05555 $pkgdir/usr/bin/innbind
}