nmap.mk 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. ################################################################################
  2. #
  3. # nmap
  4. #
  5. ################################################################################
  6. NMAP_VERSION = 7.94
  7. NMAP_SITE = https://nmap.org/dist
  8. NMAP_SOURCE = nmap-$(NMAP_VERSION).tar.bz2
  9. NMAP_DEPENDENCIES = liblinear libpcap
  10. NMAP_CONF_OPTS = --without-liblua --without-zenmap \
  11. --with-libdnet=included
  12. NMAP_LICENSE = nmap license
  13. NMAP_LICENSE_FILES = LICENSE
  14. NMAP_CPE_ID_VENDOR = nmap
  15. NMAP_SELINUX_MODULES = netutils
  16. # needed by libpcap
  17. NMAP_LIBS_FOR_STATIC_LINK += `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`
  18. ifeq ($(BR2_STATIC_LIBS),y)
  19. NMAP_CONF_ENV += LIBS="$(NMAP_LIBS_FOR_STATIC_LINK)"
  20. endif
  21. # for 0001-libdnet-wrapper-configure.patch
  22. define NMAP_WRAPPER_EXEC
  23. chmod +x $(@D)/libdnet-stripped/configure.gnu
  24. endef
  25. NMAP_POST_PATCH_HOOKS += NMAP_WRAPPER_EXEC
  26. ifeq ($(BR2_PACKAGE_LIBSSH2),y)
  27. NMAP_CONF_OPTS += --with-libssh2="$(STAGING_DIR)/usr"
  28. NMAP_DEPENDENCIES += libssh2
  29. NMAP_LIBS_FOR_STATIC_LINK += `$(PKG_CONFIG_HOST_BINARY) --libs libssh2`
  30. else
  31. NMAP_CONF_OPTS += --without-libssh2
  32. endif
  33. ifeq ($(BR2_PACKAGE_OPENSSL),y)
  34. NMAP_CONF_OPTS += --with-openssl="$(STAGING_DIR)/usr"
  35. NMAP_DEPENDENCIES += host-pkgconf openssl
  36. NMAP_LIBS_FOR_STATIC_LINK += `$(PKG_CONFIG_HOST_BINARY) --libs openssl`
  37. else
  38. NMAP_CONF_OPTS += --without-openssl
  39. endif
  40. ifeq ($(BR2_PACKAGE_ZLIB),y)
  41. NMAP_CONF_OPTS += --with-libz="$(STAGING_DIR)/usr"
  42. NMAP_DEPENDENCIES += zlib
  43. else
  44. NMAP_CONF_OPTS += --without-libz
  45. endif
  46. NMAP_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR)
  47. ifeq ($(BR2_PACKAGE_NMAP_NCAT),y)
  48. NMAP_CONF_OPTS += --with-ncat
  49. NMAP_MAKE_OPTS += build-ncat
  50. NMAP_INSTALL_TARGET_OPTS += install-ncat
  51. else
  52. NMAP_CONF_OPTS += --without-ncat
  53. endif
  54. ifeq ($(BR2_PACKAGE_NMAP_NMAP),y)
  55. NMAP_DEPENDENCIES += pcre
  56. NMAP_CONF_OPTS += --with-libpcre="$(STAGING_DIR)/usr"
  57. NMAP_MAKE_OPTS += nmap
  58. NMAP_INSTALL_TARGET_OPTS += install-nmap
  59. endif
  60. ifeq ($(BR2_PACKAGE_NMAP_NPING),y)
  61. NMAP_CONF_OPTS += --with-nping
  62. NMAP_MAKE_OPTS += build-nping
  63. NMAP_INSTALL_TARGET_OPTS += install-nping
  64. else
  65. NMAP_CONF_OPTS += --without-nping
  66. endif
  67. # Add a symlink to "nc" if none of the competing netcats is selected
  68. ifeq ($(BR2_PACKAGE_NMAP_NCAT):$(BR2_PACKAGE_NETCAT)$(BR2_PACKAGE_NETCAT_OPENBSD),y:)
  69. define NMAP_INSTALL_NCAT_SYMLINK
  70. ln -fs ncat $(TARGET_DIR)/usr/bin/nc
  71. endef
  72. NMAP_POST_INSTALL_TARGET_HOOKS += NMAP_INSTALL_NCAT_SYMLINK
  73. endif
  74. $(eval $(autotools-package))