diff options
author | Jan Engelhardt <jengelh@medozas.de> | 2009-07-23 17:41:21 +0200 |
---|---|---|
committer | Jan Engelhardt <jengelh@medozas.de> | 2009-07-25 21:40:56 +0200 |
commit | b79ec69027fd8b65e7eccd78a445b6665e8ad53b (patch) | |
tree | d0fa5dae1958bbf190844ea109e7ed27fa778b60 /INSTALL | |
parent | 4186f8aa0b113ea1a52aa90292ff89b96bed9c39 (diff) |
build: combine iptables-multi and iptables-static
Changed the Makefile so that:
1. --enable-shared / --disable-shared control the linkage against
libdl (and thus the potential to use 3rd party extensions)
2. --enable-static / --disable-static controls whether shipped
extensions are built-in or provided as modules
iptables-static becomes redundant by this action; iptables-multi now
has the feature.
Signed-off-by: Jan Engelhardt <jengelh@medozas.de>
Diffstat (limited to 'INSTALL')
-rw-r--r-- | INSTALL | 41 |
1 files changed, 30 insertions, 11 deletions
@@ -41,18 +41,22 @@ Configuring and compiling It is enabled by default. +--enable-static + + Produce additional binaries, iptables-static/ip6tables-static, + which have all shipped extensions compiled in. + +--disable-shared + + Produce binaries that have dynamic loading of extensions disabled. + This implies --enable-static. + (See some details below.) + --enable-libipq This option causes libipq to be installed into ${libdir} and ${includedir}. ---enable-static - - Enable building single standalone multipurpose binaries, - (iptables-static and ip6tables-static), which contain every - extension compiled-in (and does not support additional - extensions). - --with-ksource= Xtables does not depend on kernel headers anymore, but you can @@ -74,7 +78,22 @@ The make process will automatically build multipurpose binaries. These have the core (iptables), -save, -restore and -xml code compiled into one binary, but extensions remain as modules. -If you want to build a statically linked version of the iptables binary, -without the need for loading the plugins at runtime (e.g. for an -embedded device or router-on-a-disk), you can use the --enable-static -configure flag. + +Static and shared +================= + +Basically there are three configuration modes defined: + + --disable-static --enable-shared (this is the default) + + Build a binary that relies upon dynamic loading of extensions. + + --enable-static --enable-shared + + Build a binary that has the shipped extensions built-in, but + is still capable of loading additional extensions. + + --enable-static --disable-shared + + Shipped extensions are built-in, and dynamic loading is + deactivated. |