Date: Monday, July 10, 2017 @ 13:13:40 Author: eworm Revision: 300020
archrelease: copy trunk to testing-i686, testing-x86_64 Added: iproute2/repos/testing-i686/ iproute2/repos/testing-i686/0001-make-iproute2-fhs-compliant.patch (from rev 300019, iproute2/trunk/0001-make-iproute2-fhs-compliant.patch) iproute2/repos/testing-i686/PKGBUILD (from rev 300019, iproute2/trunk/PKGBUILD) iproute2/repos/testing-x86_64/ iproute2/repos/testing-x86_64/0001-make-iproute2-fhs-compliant.patch (from rev 300019, iproute2/trunk/0001-make-iproute2-fhs-compliant.patch) iproute2/repos/testing-x86_64/PKGBUILD (from rev 300019, iproute2/trunk/PKGBUILD) -------------------------------------------------------+ testing-i686/0001-make-iproute2-fhs-compliant.patch | 101 ++++++++++++++++ testing-i686/PKGBUILD | 82 ++++++++++++ testing-x86_64/0001-make-iproute2-fhs-compliant.patch | 101 ++++++++++++++++ testing-x86_64/PKGBUILD | 82 ++++++++++++ 4 files changed, 366 insertions(+) Copied: iproute2/repos/testing-i686/0001-make-iproute2-fhs-compliant.patch (from rev 300019, iproute2/trunk/0001-make-iproute2-fhs-compliant.patch) =================================================================== --- testing-i686/0001-make-iproute2-fhs-compliant.patch (rev 0) +++ testing-i686/0001-make-iproute2-fhs-compliant.patch 2017-07-10 13:13:40 UTC (rev 300020) @@ -0,0 +1,101 @@ +From f0624f6cc656cb177b64e2664f2a806221bfab58 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <m...@eworm.de> +Date: Thu, 28 Jul 2016 08:49:20 +0200 +Subject: [PATCH 1/1] make iproute2 fhs compliant + +Signed-off-by: Christian Hesse <m...@eworm.de> +--- + Makefile | 2 +- + netem/Makefile | 4 ++-- + tc/q_netem.c | 2 +- + tc/tc_util.c | 15 +++++++++++++++ + tc/tc_util.h | 1 + + 5 files changed, 20 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index eb571a5..db0a04c 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ DBM_INCLUDE:=$(DESTDIR)/usr/include + + SHARED_LIBS = y + +-DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" ++DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" -DDATADIR=\"$(DATADIR)\" + ifneq ($(SHARED_LIBS),y) + DEFINES+= -DNO_SHARED_LIBS + endif +diff --git a/netem/Makefile b/netem/Makefile +index e52e125..5b4d283 100644 +--- a/netem/Makefile ++++ b/netem/Makefile +@@ -20,9 +20,9 @@ stats: stats.c + $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm + + install: all +- mkdir -p $(DESTDIR)$(LIBDIR)/tc ++ mkdir -p $(DESTDIR)$(DATADIR)/tc + for i in $(DISTDATA); \ +- do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \ ++ do install -m 644 $$i $(DESTDIR)$(DATADIR)/tc; \ + done + + clean: +diff --git a/tc/q_netem.c b/tc/q_netem.c +index 8fe2204..a15a5c7 100644 +--- a/tc/q_netem.c ++++ b/tc/q_netem.c +@@ -113,7 +113,7 @@ static int get_distribution(const char *type, __s16 *data, int maxdata) + char *line = NULL; + char name[128]; + +- snprintf(name, sizeof(name), "%s/%s.dist", get_tc_lib(), type); ++ snprintf(name, sizeof(name), "%s/%s.dist", get_tc_datadir(), type); + if ((f = fopen(name, "r")) == NULL) { + fprintf(stderr, "No distribution data for %s (%s: %s)\n", + type, name, strerror(errno)); +diff --git a/tc/tc_util.c b/tc/tc_util.c +index afc4cf5..728b854 100644 +--- a/tc/tc_util.c ++++ b/tc/tc_util.c +@@ -32,6 +32,10 @@ + #define LIBDIR "/usr/lib" + #endif + ++#ifndef DATADIR ++#define DATADIR "/usr/share" ++#endif ++ + static struct db_names *cls_names; + + #define NAMES_DB "/etc/iproute2/tc_cls" +@@ -73,6 +77,17 @@ const char *get_tc_lib(void) + return lib_dir; + } + ++const char *get_tc_datadir(void) ++{ ++ const char *data_dir; ++ ++ data_dir = getenv("TC_DATA_DIR"); ++ if (!data_dir) ++ data_dir = DATADIR "/tc/"; ++ ++ return data_dir; ++} ++ + int get_qdisc_handle(__u32 *h, const char *str) + { + __u32 maj; +diff --git a/tc/tc_util.h b/tc/tc_util.h +index 61e60b1..6d448de 100644 +--- a/tc/tc_util.h ++++ b/tc/tc_util.h +@@ -55,6 +55,7 @@ struct exec_util { + }; + + const char *get_tc_lib(void); ++const char *get_tc_datadir(void); + + struct qdisc_util *get_qdisc_kind(const char *str); + struct filter_util *get_filter_kind(const char *str); Copied: iproute2/repos/testing-i686/PKGBUILD (from rev 300019, iproute2/trunk/PKGBUILD) =================================================================== --- testing-i686/PKGBUILD (rev 0) +++ testing-i686/PKGBUILD 2017-07-10 13:13:40 UTC (rev 300020) @@ -0,0 +1,82 @@ +# $Id$ +# Maintainer: Christian Hesse <m...@eworm.de> +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Contributor: Judd Vinet <jvi...@zeroflux.org> + +pkgbase=iproute2 +pkgname=(iproute2 iproute2-doc) +pkgver=4.12.0 +pkgrel=2 +pkgdesc='IP Routing Utilities' +arch=('i686' 'x86_64') +license=('GPL2') +url='http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2' +makedepends=('iptables' 'linux-atm' 'linuxdoc-tools' 'texlive-bin' 'texlive-core' 'texlive-latexextra') +options=('staticlibs' '!makeflags') +validpgpkeys=('9F6FC345B05BE7E766B83C8F80A77F6095CDE47E') # Stephen Hemminger +source=("https://www.kernel.org/pub/linux/utils/net/${pkgbase}/${pkgbase}-${pkgver}.tar."{xz,sign} + '0001-make-iproute2-fhs-compliant.patch') +sha256sums=('2e0a4c4262d9f6c169885a6e16c4c5c5f1ef6fd57b6a0e7b41f42be5bb6ebd7d' + 'SKIP' + 'f60fefe4c17d3b768824bb50ae6416292bcebba06d73452e23f4147b46b827d3') + +prepare() { + cd "${srcdir}/${pkgbase}-${pkgver}" + + # set correct fhs structure + patch -Np1 -i "${srcdir}/0001-make-iproute2-fhs-compliant.patch" + + # do not treat warnings as errors + sed -i 's/-Werror//' Makefile + +} + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + + ./configure + make + + cd "${srcdir}/${pkgbase}-${pkgver}/doc/" + + make html pdf +} + +package_iproute2() { + depends=('glibc' 'iptables' 'libelf') + optdepends=('linux-atm: ATM support') + groups=('base') + provides=('iproute') + conflicts=('iproute') + replaces=('iproute') + backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \ + 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + make DESTDIR="${pkgdir}" SBINDIR="/usr/bin" install + + # remove documentation + rm -rf "${pkgdir}/usr/share/doc/" + + # libnetlink isn't installed, install it FS#19385 + install -Dm0644 include/libnetlink.h "${pkgdir}/usr/include/libnetlink.h" + install -Dm0644 lib/libnetlink.a "${pkgdir}/usr/lib/libnetlink.a" +} + +package_iproute2-doc() { + pkgdesc='IP Routing Utilities documentation' + + cd "${srcdir}/${pkgbase}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + # documentation is included in default install target... So clean up here. + find "${pkgdir}/" ! -type d ! -regex '.*examples.*' -delete + find "${pkgdir}/" -empty -delete + find "${pkgdir}/" -name '*.sgml' -delete + find "${pkgdir}/" -name '*.tex' -delete + + install -m0644 doc/*.html doc/*.pdf "${pkgdir}/usr/share/doc/iproute2/" +} + Copied: iproute2/repos/testing-x86_64/0001-make-iproute2-fhs-compliant.patch (from rev 300019, iproute2/trunk/0001-make-iproute2-fhs-compliant.patch) =================================================================== --- testing-x86_64/0001-make-iproute2-fhs-compliant.patch (rev 0) +++ testing-x86_64/0001-make-iproute2-fhs-compliant.patch 2017-07-10 13:13:40 UTC (rev 300020) @@ -0,0 +1,101 @@ +From f0624f6cc656cb177b64e2664f2a806221bfab58 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <m...@eworm.de> +Date: Thu, 28 Jul 2016 08:49:20 +0200 +Subject: [PATCH 1/1] make iproute2 fhs compliant + +Signed-off-by: Christian Hesse <m...@eworm.de> +--- + Makefile | 2 +- + netem/Makefile | 4 ++-- + tc/q_netem.c | 2 +- + tc/tc_util.c | 15 +++++++++++++++ + tc/tc_util.h | 1 + + 5 files changed, 20 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index eb571a5..db0a04c 100644 +--- a/Makefile ++++ b/Makefile +@@ -14,7 +14,7 @@ DBM_INCLUDE:=$(DESTDIR)/usr/include + + SHARED_LIBS = y + +-DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" ++DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" -DDATADIR=\"$(DATADIR)\" + ifneq ($(SHARED_LIBS),y) + DEFINES+= -DNO_SHARED_LIBS + endif +diff --git a/netem/Makefile b/netem/Makefile +index e52e125..5b4d283 100644 +--- a/netem/Makefile ++++ b/netem/Makefile +@@ -20,9 +20,9 @@ stats: stats.c + $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm + + install: all +- mkdir -p $(DESTDIR)$(LIBDIR)/tc ++ mkdir -p $(DESTDIR)$(DATADIR)/tc + for i in $(DISTDATA); \ +- do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \ ++ do install -m 644 $$i $(DESTDIR)$(DATADIR)/tc; \ + done + + clean: +diff --git a/tc/q_netem.c b/tc/q_netem.c +index 8fe2204..a15a5c7 100644 +--- a/tc/q_netem.c ++++ b/tc/q_netem.c +@@ -113,7 +113,7 @@ static int get_distribution(const char *type, __s16 *data, int maxdata) + char *line = NULL; + char name[128]; + +- snprintf(name, sizeof(name), "%s/%s.dist", get_tc_lib(), type); ++ snprintf(name, sizeof(name), "%s/%s.dist", get_tc_datadir(), type); + if ((f = fopen(name, "r")) == NULL) { + fprintf(stderr, "No distribution data for %s (%s: %s)\n", + type, name, strerror(errno)); +diff --git a/tc/tc_util.c b/tc/tc_util.c +index afc4cf5..728b854 100644 +--- a/tc/tc_util.c ++++ b/tc/tc_util.c +@@ -32,6 +32,10 @@ + #define LIBDIR "/usr/lib" + #endif + ++#ifndef DATADIR ++#define DATADIR "/usr/share" ++#endif ++ + static struct db_names *cls_names; + + #define NAMES_DB "/etc/iproute2/tc_cls" +@@ -73,6 +77,17 @@ const char *get_tc_lib(void) + return lib_dir; + } + ++const char *get_tc_datadir(void) ++{ ++ const char *data_dir; ++ ++ data_dir = getenv("TC_DATA_DIR"); ++ if (!data_dir) ++ data_dir = DATADIR "/tc/"; ++ ++ return data_dir; ++} ++ + int get_qdisc_handle(__u32 *h, const char *str) + { + __u32 maj; +diff --git a/tc/tc_util.h b/tc/tc_util.h +index 61e60b1..6d448de 100644 +--- a/tc/tc_util.h ++++ b/tc/tc_util.h +@@ -55,6 +55,7 @@ struct exec_util { + }; + + const char *get_tc_lib(void); ++const char *get_tc_datadir(void); + + struct qdisc_util *get_qdisc_kind(const char *str); + struct filter_util *get_filter_kind(const char *str); Copied: iproute2/repos/testing-x86_64/PKGBUILD (from rev 300019, iproute2/trunk/PKGBUILD) =================================================================== --- testing-x86_64/PKGBUILD (rev 0) +++ testing-x86_64/PKGBUILD 2017-07-10 13:13:40 UTC (rev 300020) @@ -0,0 +1,82 @@ +# $Id$ +# Maintainer: Christian Hesse <m...@eworm.de> +# Maintainer: Ronald van Haren <ronald.archlinux.org> +# Contributor: Judd Vinet <jvi...@zeroflux.org> + +pkgbase=iproute2 +pkgname=(iproute2 iproute2-doc) +pkgver=4.12.0 +pkgrel=2 +pkgdesc='IP Routing Utilities' +arch=('i686' 'x86_64') +license=('GPL2') +url='http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2' +makedepends=('iptables' 'linux-atm' 'linuxdoc-tools' 'texlive-bin' 'texlive-core' 'texlive-latexextra') +options=('staticlibs' '!makeflags') +validpgpkeys=('9F6FC345B05BE7E766B83C8F80A77F6095CDE47E') # Stephen Hemminger +source=("https://www.kernel.org/pub/linux/utils/net/${pkgbase}/${pkgbase}-${pkgver}.tar."{xz,sign} + '0001-make-iproute2-fhs-compliant.patch') +sha256sums=('2e0a4c4262d9f6c169885a6e16c4c5c5f1ef6fd57b6a0e7b41f42be5bb6ebd7d' + 'SKIP' + 'f60fefe4c17d3b768824bb50ae6416292bcebba06d73452e23f4147b46b827d3') + +prepare() { + cd "${srcdir}/${pkgbase}-${pkgver}" + + # set correct fhs structure + patch -Np1 -i "${srcdir}/0001-make-iproute2-fhs-compliant.patch" + + # do not treat warnings as errors + sed -i 's/-Werror//' Makefile + +} + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + + ./configure + make + + cd "${srcdir}/${pkgbase}-${pkgver}/doc/" + + make html pdf +} + +package_iproute2() { + depends=('glibc' 'iptables' 'libelf') + optdepends=('linux-atm: ATM support') + groups=('base') + provides=('iproute') + conflicts=('iproute') + replaces=('iproute') + backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \ + 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') + + cd "${srcdir}/${pkgbase}-${pkgver}" + + make DESTDIR="${pkgdir}" SBINDIR="/usr/bin" install + + # remove documentation + rm -rf "${pkgdir}/usr/share/doc/" + + # libnetlink isn't installed, install it FS#19385 + install -Dm0644 include/libnetlink.h "${pkgdir}/usr/include/libnetlink.h" + install -Dm0644 lib/libnetlink.a "${pkgdir}/usr/lib/libnetlink.a" +} + +package_iproute2-doc() { + pkgdesc='IP Routing Utilities documentation' + + cd "${srcdir}/${pkgbase}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + # documentation is included in default install target... So clean up here. + find "${pkgdir}/" ! -type d ! -regex '.*examples.*' -delete + find "${pkgdir}/" -empty -delete + find "${pkgdir}/" -name '*.sgml' -delete + find "${pkgdir}/" -name '*.tex' -delete + + install -m0644 doc/*.html doc/*.pdf "${pkgdir}/usr/share/doc/iproute2/" +} +