Go to file
Daniel Borkmann 4710e46ec3 tc, ipt: don't enforce iproute2 dependency on iptables-devel
Since 5cd1adba79 ("Update to current iptables headers") compilation
of iproute2 broke for systems without iptables-devel package [1].
Reason is that even though we fall back to build m_ipt.c, the include
depends on a xtables-version.h header, which only ships with
iptables-devel. Machines not having this package fail compilation with:

    [...]
    CC       m_ipt.o
In file included from ../include/iptables.h:5:0,
                 from m_ipt.c:17:
../include/xtables.h:34:29: fatal error: xtables-version.h: No such file or directory
compilation terminated.
../Config:31: recipe for target 'm_ipt.o' failed
make[1]: *** [m_ipt.o] Error 1

The configure script only barks that package xtables was not found in
the pkg-config search path. The generated Config then only contains f.e.
TC_CONFIG_IPSET. In tc's Makefile we thus fall back to adding m_ipt.o
to TCMODULES. m_ipt.c then includes the local include/iptables.h header
copy, which includes the include/xtables.h copy. Latter then includes
xtables-version.h, which only ships with iptables-devel.

One way to resolve this is to skip this whole mess when pkg-config has
no xtables config available. I've carried something along these lines
locally for a while now, but it's just too annyoing. :/ Build works fine
now also when xtables.pc is not available.

  [1] http://www.spinics.net/lists/netdev/msg366162.html

Fixes: 5cd1adba79 ("Update to current iptables headers")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2016-10-26 10:58:22 -07:00
bash-completion tc: add bash-completion function 2016-05-03 09:53:26 -07:00
bridge bridge: add support for the multicast flood flag 2016-10-17 05:29:24 -07:00
devlink devlink: Convert conditional in dl_argv_handle_port() to switch() 2016-10-17 05:30:45 -07:00
doc doc/tc-filters.tex: Drop overly subjective paragraphs 2016-03-27 10:34:40 -07:00
etc/iproute2 {f, m}_bpf: allow for user-defined object pinnings 2015-11-29 11:55:16 -08:00
examples tc, bpf: add support for map pre/allocation 2016-04-11 21:54:47 +00:00
genl Replace malloc && memset by calloc 2016-07-20 12:05:24 -07:00
include iproute2: macvlan: add "source" mode 2016-10-12 15:22:14 -07:00
ip bridge: add support for the multicast flood flag 2016-10-17 05:29:24 -07:00
lib Merge branch 'master' into net-next 2016-10-09 18:53:52 -07:00
man bridge: add support for the multicast flood flag 2016-10-17 05:29:24 -07:00
misc misc/ss: tcp cwnd should be unsigned 2016-09-22 16:38:22 -07:00
netem scrub out whitespace issues 2016-03-27 10:50:14 -07:00
schema bridge: add json schema for bridge fdb show 2016-07-20 12:02:02 -07:00
tc tc, ipt: don't enforce iproute2 dependency on iptables-devel 2016-10-26 10:58:22 -07:00
testsuite iproute2: build nsid-name cache only for commands that need it 2016-10-09 18:56:47 -07:00
tipc tipc: cleanup style issues 2016-09-20 09:25:42 -07:00
.gitignore gitignore: Ignore 'tags' file generated by ctags 2016-09-08 14:30:44 -07:00
COPYING Update address of FSF in license 2008-03-08 13:31:03 -08:00
Makefile Makefile: Allow to override CC 2016-07-20 12:05:24 -07:00
README README: update mail address and download location 2013-01-18 09:54:58 -08:00
README.decnet Decnet documentation update 2005-06-13 18:47:56 +00:00
README.devel iproute2: fix minor typo in comments 2011-07-11 10:11:09 -07:00
README.distribution README cleanup's 2012-01-03 15:04:55 -08:00
README.iproute2+tc tc, bpf: finalize eBPF support for cls and act front-end 2015-04-10 13:31:19 -07:00
README.lnstat Rename: misc/README.lnstat -> README.lnstat 2004-10-19 20:24:47 +00:00
configure tc, ipt: don't enforce iproute2 dependency on iptables-devel 2016-10-26 10:58:22 -07:00

README

This is a set of utilities for Linux networking.

Information:
    http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2

Download:
    http://www.kernel.org/pub/linux/utils/net/iproute2/

Repository:
    git://git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git

How to compile this.
--------------------
1. libdbm

arpd needs to have the db4 development libraries. For Debian
users this is the package with a name like libdb4.x-dev.
DBM_INCLUDE points to the directory with db_185.h which
is the include file used by arpd to get to the old format Berkeley
database routines.  Often this is in the db-devel package.

2. make

The makefile will automatically build a Config file which
contains whether or not ATM is available, etc.

3. To make documentation, cd to doc/ directory , then
   look at start of Makefile and set correct values for
   PAGESIZE=a4		, ie: a4 , letter ...	(string)
   PAGESPERPAGE=2	, ie: 1 , 2 ...		(numeric)
   and make there. It assumes, that latex, dvips and psnup
   are in your path.

4. This package includes matching sanitized kernel headers because
   the build environment may not have up to date versions. See Makefile
   if you have special requirements and need to point at different
   kernel include files.

Stephen Hemminger
stephen@networkplumber.org

Alexey Kuznetsov
kuznet@ms2.inr.ac.ru