kumquat-buildroot/package/nmap/Config.in

61 lines
1.6 KiB
Plaintext
Raw Normal View History

config BR2_PACKAGE_NMAP
bool "nmap"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_MMU # fork()
depends on BR2_TOOLCHAIN_HAS_THREADS
select BR2_PACKAGE_LIBLINEAR
select BR2_PACKAGE_LIBPCAP
nmap: add sub-options for ncat, nping and ndiff The forthcoming "libvirt" package will need a "nc" command with support for Unix domain sockets in order to permit remote management using the virt-manager utility. netcat-openbsd provides such command but requires glibc, so we would not have remote management on uClibc-based systems. Ncat is a much-improved reimplementation of the venerable Netcat and is compatible with uClibc and musl. It provides features not available in the ancient GNU netcat and its Busybox double like IPv6, proxies, and Unix sockets. Since 'nmap' itself is a fairly big program (~2.3 MB), we want to be able to install only ncat. In addition, nmap requires an external library, pcre. So this commit adds sub-options to selectively enable/disable the different programs part of nmap: nmap, nping, ndiff and ncat. Finally, we symlink 'nc' to ncat if neiter netcat nor netcat-openbsd is selected, even though ncat does not have the same interface as netcat-openbsd. However, since Fedora/RHEL install nmap-ncat as 'nc', it can be assumed that packages that depend on 'nc' know how to deal with this diversity. For example, the virt-manager package does that. Also user-supplied scripts can be assumed to do the right thing, since the user also selects whether nmap-ncat, netcat or netcat-openbsd is installed. Signed-off-by: Carlos Santos <casantos@datacom.ind.br> [Thomas: - don't just handle the ncat case in a special way: create sub-options for all nmap tools, and use <pkg>_MAKE_OPTS and <pkg>_INSTALL_TARGET_OPTS to select which ones should be built/installed.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2017-11-27 11:41:29 +01:00
select BR2_PACKAGE_NMAP_NMAP \
if !BR2_PACKAGE_NMAP_NCAT && !BR2_PACKAGE_NMAP_NPING && !BR2_PACKAGE_NMAP_NDIFF
help
Nmap ("Network Mapper") is a free and open source (license)
utility for network discovery and security auditing.
http://nmap.org
nmap: add sub-options for ncat, nping and ndiff The forthcoming "libvirt" package will need a "nc" command with support for Unix domain sockets in order to permit remote management using the virt-manager utility. netcat-openbsd provides such command but requires glibc, so we would not have remote management on uClibc-based systems. Ncat is a much-improved reimplementation of the venerable Netcat and is compatible with uClibc and musl. It provides features not available in the ancient GNU netcat and its Busybox double like IPv6, proxies, and Unix sockets. Since 'nmap' itself is a fairly big program (~2.3 MB), we want to be able to install only ncat. In addition, nmap requires an external library, pcre. So this commit adds sub-options to selectively enable/disable the different programs part of nmap: nmap, nping, ndiff and ncat. Finally, we symlink 'nc' to ncat if neiter netcat nor netcat-openbsd is selected, even though ncat does not have the same interface as netcat-openbsd. However, since Fedora/RHEL install nmap-ncat as 'nc', it can be assumed that packages that depend on 'nc' know how to deal with this diversity. For example, the virt-manager package does that. Also user-supplied scripts can be assumed to do the right thing, since the user also selects whether nmap-ncat, netcat or netcat-openbsd is installed. Signed-off-by: Carlos Santos <casantos@datacom.ind.br> [Thomas: - don't just handle the ncat case in a special way: create sub-options for all nmap tools, and use <pkg>_MAKE_OPTS and <pkg>_INSTALL_TARGET_OPTS to select which ones should be built/installed.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2017-11-27 11:41:29 +01:00
if BR2_PACKAGE_NMAP
config BR2_PACKAGE_NMAP_NCAT
bool "install ncat"
depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
help
Ncat is a feature-packed networking utility which reads and
writes data across networks from the command line. Ncat was
written for the Nmap Project as a much-improved
reimplementation of the venerable Netcat.
If symlink to "nc" is installed if neither netcat or
netcat-openbsd is selected.
comment "a symlink from ncat to 'nc' will be installed"
depends on BR2_PACKAGE_NMAP_NCAT
depends on !BR2_PACKAGE_NETCAT
depends on !BR2_PACKAGE_NETCAT_OPENBSD
config BR2_PACKAGE_NMAP_NDIFF
bool "install ndiff"
# ndiff only works with python2.x
depends on BR2_PACKAGE_PYTHON
help
This option installs the 'ndiff' tool.
comment "ndiff needs Python 2.x"
depends on !BR2_PACKAGE_PYTHON
config BR2_PACKAGE_NMAP_NMAP
bool "install nmap"
select BR2_PACKAGE_PCRE
help
This option installs 'nmap' itself.
config BR2_PACKAGE_NMAP_NPING
bool "install nping"
help
This option installs the 'nping' tool.
endif
comment "nmap-nmap needs a toolchain w/ C++, threads"
Config.in files: add missing dependencies to toolchain option comments When a package A depends on config option B and toolchain option C, then the comment that is given when C is not fulfilled should also depend on B. For example: config BR2_PACKAGE_A depends on BR2_B depends on BR2_LARGEFILE depends on BR2_WCHAR comment "A needs a toolchain w/ largefile, wchar" depends on !BR2_LARGEFILE || !BR2_WCHAR This comment should actually be: comment "A needs a toolchain w/ largefile, wchar" depends on BR2_B depends on !BR2_LARGEFILE || !BR2_WCHAR or if possible (typically when B is a package config option declared in that same Config.in file): if BR2_B comment "A needs a toolchain w/ largefile, wchar" depends on !BR2_LARGEFILE || !BR2_WCHAR [other config options depending on B] endif Otherwise, the comment would be visible even though the other dependencies are not met. This patch adds such missing dependencies, and changes existing such dependencies from depends on BR2_BASE_DEP && !BR2_TOOLCHAIN_USES_GLIBC to depends on BR2_BASE_DEP depends on !BR2_TOOLCHAIN_USES_GLIBC so that (positive) base dependencies are separate from the (negative) toolchain dependencies. This strategy makes it easier to write such comments (because one can simply copy the base dependency from the actual package config option), but also avoids complex and long boolean expressions. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> (untested) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-07 09:24:37 +01:00
depends on BR2_USE_MMU
depends on !(BR2_INSTALL_LIBSTDCPP && BR2_TOOLCHAIN_HAS_THREADS)