summaryrefslogtreecommitdiff
path: root/core/iptables/PKGBUILD
blob: f7fc86bbf50ba98a3ba9d48e17ee6416d3407ea7 (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
# $Id: PKGBUILD 180028 2013-03-14 20:45:48Z foutrelis $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>

pkgname=iptables
pkgver=1.4.18
pkgrel=1
pkgdesc='Linux kernel packet control tool'
arch=('i686' 'x86_64')
license=('GPL2')
url='http://www.netfilter.org/projects/iptables/index.html'
depends=('glibc' 'bash')
makedepends=('linux-api-headers' 'chrpath')
options=('!libtool')
source=("http://www.netfilter.org/projects/iptables/files/${pkgname}-${pkgver}.tar.bz2"
        iptables
        ip6tables
        empty.rules
        simple_firewall.rules
        iptables.conf.d
        empty-filter.rules
        empty-mangle.rules
        empty-nat.rules
        empty-raw.rules
        empty-security.rules
        0503-extension_cppflags.patch
        iptables.service
        ip6tables.service
        iptables-flush)
backup=(etc/conf.d/iptables)
sha1sums=('34bf627c8755a61caf3635a998d2a5279f664f9e'
          '5bb6fa526665cdd728c26f0f282f5a51f220cf88'
          '2db68906b603e5268736f48c8e251f3a49da1d75'
          '83b3363878e3660ce23b2ad325b53cbd6c796ecf'
          'f085a71f467e4d7cb2cf094d9369b0bcc4bab6ec'
          'cdb830137192bbe002c6d01058656bd053ed0ddd'
          'd9f9f06b46b4187648e860afa0552335aafe3ce4'
          'c45b738b5ec4cfb11611b984c21a83b91a2d58f3'
          '1694d79b3e6e9d9d543f6a6e75fed06066c9a6c6'
          '7db53bb882f62f6c677cc8559cff83d8bae2ef73'
          'ebbd1424a1564fd45f455a81c61ce348f0a14c2e'
          '44626980a52e49f345a0b1e1ca03060f3a35763c'
          '5f2e76985a751f635a45612565a6e1bc9547398a'
          'fe6bbe214b3a13bd084f62a8ee9631fd8326c464'
          'e7abda09c61142121b6695928d3b71ccd8fdf73a')

build() {
  cd "${srcdir}/${pkgname}-${pkgver}"

  # use system one
  rm include/linux/types.h

  patch -Np1 -i ${srcdir}/0503-extension_cppflags.patch

 ./configure --prefix=/usr \
     --libexecdir=/usr/lib/iptables --sysconfdir=/etc \
     --with-xtlibdir=/usr/lib/iptables \
     --enable-devel --enable-shared
  make
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}"

  make DESTDIR="${pkgdir}" install

  # Remove RPATH from iptables libraries
  # http://www.spinics.net/lists/netfilter-devel/msg24969.html
  chrpath --delete "${pkgdir}"/usr/lib/iptables/*.so

  cd "${srcdir}"
  install -D -m755 iptables "${pkgdir}"/etc/rc.d/iptables
  install -D -m755 ip6tables "${pkgdir}"/etc/rc.d/ip6tables
  install -D -m644 empty.rules "${pkgdir}"/etc/iptables/empty.rules
  install -D -m644 simple_firewall.rules "${pkgdir}"/etc/iptables/simple_firewall.rules
  install -D -m644 iptables.conf.d "${pkgdir}"/etc/conf.d/iptables

  mkdir -p "${pkgdir}"/var/lib/{iptables,ip6tables}
  install -m644 empty-{filter,mangle,nat,raw,security}.rules "${pkgdir}"/var/lib/iptables
  install -m644 empty-{filter,mangle,nat,raw,security}.rules "${pkgdir}"/var/lib/ip6tables

  # install systemd files
  install -Dm644 ${srcdir}/iptables.service ${pkgdir}/usr/lib/systemd/system/iptables.service
  install -Dm644 ${srcdir}/ip6tables.service ${pkgdir}/usr/lib/systemd/system/ip6tables.service
  install -Dm755 ${srcdir}/iptables-flush ${pkgdir}/usr/lib/systemd/scripts/iptables-flush  
}