diff options
-rw-r--r-- | abs/core/iana-etc/Makefile.patch | 11 | ||||
-rw-r--r-- | abs/core/iana-etc/PKGBUILD | 47 | ||||
-rw-r--r-- | abs/core/iana-etc/newer.patch | 133 |
3 files changed, 156 insertions, 35 deletions
diff --git a/abs/core/iana-etc/Makefile.patch b/abs/core/iana-etc/Makefile.patch deleted file mode 100644 index b25bc26..0000000 --- a/abs/core/iana-etc/Makefile.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.old 2010-07-23 04:16:11.000000000 -0300 -+++ Makefile 2010-07-23 04:16:11.000000000 -0300 -@@ -42,7 +42,7 @@ - protocol-numbers.iana port-numbers.iana - - protocol-numbers.iana: -- $(AWK) -f get.gawk -v file=protocol-numbers >protocol-numbers.iana -+ $(AWK) -f get.gawk -v file=protocol-numbers/protocol-numbers.txt >protocol-numbers.iana - rm -f protocol-numbers - - port-numbers.iana: diff --git a/abs/core/iana-etc/PKGBUILD b/abs/core/iana-etc/PKGBUILD index ef85afb..57849f0 100644 --- a/abs/core/iana-etc/PKGBUILD +++ b/abs/core/iana-etc/PKGBUILD @@ -1,37 +1,36 @@ -# $Id: PKGBUILD 129440 2011-06-27 17:40:46Z dan $ -# Maintainer: Thomas Bächler <thomas@archlinux.org> +# $Id: PKGBUILD 164065 2012-07-26 15:21:18Z bisson $ +# Contributor: Thomas Bächler <thomas@archlinux.org> +# Maintainer: Gaetan Bisson <bisson@archlinux.org> + pkgname=iana-etc pkgver=2.30 -pkgrel=2 -pkgdesc="/etc/protocols and /etc/services provided by IANA" +pkgrel=3 +pkgdesc='/etc/protocols and /etc/services provided by IANA' +url='http://sethwklein.net/iana-etc.html' arch=('any') -url="http://sethwklein.net/iana-etc" license=('custom') -makedepends=('awk') -source=(http://sethwklein.net/iana-etc-2.30.tar.bz2 - Makefile.patch) -sha256sums=('b9a6874fb20012836efef75452ef2acae624022d680feeb1994d73facba3f20d' - '3e6db7adb8a67b765b8be65825f2a0e6c525eb42367385193c678af6b75d0321') +backup=('etc/'{protocols,services}) +source=("http://sethwklein.net/${pkgname}-${pkgver}.tar.bz2" + 'newer.patch') +sha1sums=('218593bcb9264014c4e397d838b2c218eac9df06' + '1e306cf77bc4e97cc020d6c53cb9de81c186a483') build() { - cd "$srcdir/$pkgname-$pkgver" - - patch -p0 -i "$srcdir/Makefile.patch" - make get - make + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 -i ../newer.patch + make get + make } check() { - cd "$srcdir/$pkgname-$pkgver" - - make test + cd "${srcdir}/${pkgname}-${pkgver}" + make test } package() { - cd "$srcdir/$pkgname-$pkgver" - - make DESTDIR="$pkgdir" install - install -D -m644 COPYING "$pkgdir/usr/share/licenses/iana-etc/LICENSE" + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/iana-etc/LICENSE" + install -Dm644 port-numbers.iana "${pkgdir}/usr/share/iana-etc/port-numbers.iana" + install -Dm644 protocol-numbers.iana "${pkgdir}/usr/share/iana-etc/protocol-numbers.iana" } - -# vim:set ts=2 sw=2 et: diff --git a/abs/core/iana-etc/newer.patch b/abs/core/iana-etc/newer.patch new file mode 100644 index 0000000..6b623dc --- /dev/null +++ b/abs/core/iana-etc/newer.patch @@ -0,0 +1,133 @@ +diff -Naur old/Makefile new/Makefile +--- old/Makefile 2008-03-06 05:02:40.000000000 +1100 ++++ new/Makefile 2012-07-23 03:20:19.009174483 +1000 +@@ -42,11 +42,11 @@ + protocol-numbers.iana port-numbers.iana + + protocol-numbers.iana: +- $(AWK) -f get.gawk -v file=protocol-numbers >protocol-numbers.iana ++ $(AWK) -f get.gawk -v file=protocol-numbers/protocol-numbers.xml >protocol-numbers.iana + rm -f protocol-numbers + + port-numbers.iana: +- $(AWK) -f get.gawk -v file=port-numbers >port-numbers.iana ++ $(AWK) -f get.gawk -v file=service-names-port-numbers/service-names-port-numbers.xml >port-numbers.iana + rm -f port-numbers + + protocol-numbers: +diff -Naur old/get.gawk new/get.gawk +--- old/get.gawk 2008-03-06 05:04:18.000000000 +1100 ++++ new/get.gawk 2012-07-23 03:20:19.009174483 +1000 +@@ -26,7 +26,7 @@ + NR++ + + if (in_content) { print } +- if (/^$/) { in_content=1 } ++ if (/^\r?$/) { in_content=1 } + } + + printf "\n" >"/dev/stderr" +diff -Naur old/protocols.gawk new/protocols.gawk +--- old/protocols.gawk 2006-11-15 05:20:26.000000000 +1100 ++++ new/protocols.gawk 2012-07-23 03:22:13.479330458 +1000 +@@ -1,32 +1,13 @@ +-#!/usr/bin/gawk --re-interval -f +-# the above doesn't work (stupid kernel) but serves as documentation +- +-# Copyright (c) 2003-2004, 2006 Seth W. Klein <sk@sethwklein.net> +-# Licensed under the Open Software License version 3.0 +-# See the file COPYING in the distribution tarball or +-# http://www.opensource.org/licenses/osl-3.0.txt ++#!/usr/bin/awk -f + + BEGIN { +- if (strip == "yes") { +- strip = 1 +- format = "%s\t%s\t%s\n" +- header_printed = 1 +- } else { +- strip = 0 +- print "# See also: protocols(5)" \ +- ", http://www.sethwklein.net/projects/iana-etc/\n#" +- format = "%-12s %3s %-12s # %s\n" +- header_printed = 0 +- } ++ print "# See the full IANA XML file at: /usr/share/iana-etc/protocol-numbers.iana\n" ++ FS="[<>]" + } +-{ sub(/\r/, "") } +-match($0, /^[ \t]+([0-9]+)[ \t]{1,5}([^ \t]+)(.*)/, f) { +- if ( ! header_printed) { +- printf format, "# protocol", "num", "aliases", "comments" +- header_printed = 1; +- } +- sub(/^[ \t]*/, "", f[3]) +- printf format, tolower(f[2]), f[1], f[2], f[3] +- next ++ ++{ ++ if (/<record/) { v=n=0 } ++ if (/<value/) v=$3 ++ if (/<name/ && !($3~/ /)) n=$3 ++ if (/<\/record/ && (v || n=="HOPOPT") && n) printf "%-12s %3i %s\n", tolower(n),v,n + } +-!strip { print "# " $0 } +diff -Naur old/services.gawk new/services.gawk +--- old/services.gawk 2008-03-06 04:51:45.000000000 +1100 ++++ new/services.gawk 2012-07-23 03:22:32.272685489 +1000 +@@ -1,44 +1,15 @@ +-#!/usr/bin/gawk -f +- +-# Copyright (c) 2003-2004, 2006, 2008 Seth W. Klein <sk@sethwklein.net> +-# Licensed under the Open Software License version 3.0 +-# See the file COPYING in the distribution tarball or +-# http://www.opensource.org/licenses/osl-3.0.txt ++#!/usr/bin/awk -f + + BEGIN { +- if (strip == "yes") { +- strip = 1 +- } else { +- strip = 0 +- print "# See also: services(5)" \ +- ", http://www.sethwklein.net/projects/iana-etc/\n#" +- } +- while (getline <"port-aliases") { +- sub(/#.*/, "") +- if (/^[ \t]*$/) { continue } +- # 1:name 2:protocol 3:aliases +- match($0, /^[ \t]*([^ \t]+)[ \t]+([^ \t]+)[ \t]+(.*)$/, f) +- aliases[f[1] " " f[2]] = " " f[3] +- } ++ print "# See the full IANA XML file at: /usr/share/iana-etc/port-numbers.iana\n" ++ FS="[<>]" + } +-{ sub(/\r/, "") } +-# 1:name 2:ws 3:port 4:range 5:proto 6:comment +-match($0, /(^[[:alnum:]][^ \t]+)([ \t]+)([0-9]+)(-[0-9]+)?\/([^ \t]+)(.*)/, f) \ +-&& f[3] != "0" { +-# port 0 means unallocated, per port-numbers +- name = f[1] +- whitespace = f[2] +- port = f[3] +- protocol = f[5] +- comment = f[6] +- if (strip) { +- whitespace = "\t" +- comment = "" +- } else if (length(comment) > 0) +- sub(/^[ \t]*/, "&# ", comment) +- print name whitespace port "/" protocol aliases[name " " protocol] comment +- next ++ ++{ ++ if (/<record/) { n=u=p=c=0 } ++ if (/<name/ && !/\(/) n=$3 ++ if (/<number/) u=$3 ++ if (/<protocol/) p=$3 ++ if (/Unassigned/ || /Reserved/ || /historic/) c=1 ++ if (/<\/record/ && n && u && p && !c) printf "%-15s %5i/%s\n", n,u,p # services + } +-# comment out, prettily +-!/^#/ { sub(/^ /, "#") || sub(/^/, "# ") } +-!strip { print } |