nmap.mk 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. ################################################################################
  2. #
  3. # nmap
  4. #
  5. ################################################################################
  6. NMAP_VERSION = 7.80
  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 = COPYING
  14. # needed by libpcap
  15. NMAP_LIBS_FOR_STATIC_LINK += `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`
  16. ifeq ($(BR2_STATIC_LIBS),y)
  17. NMAP_CONF_ENV += LIBS="$(NMAP_LIBS_FOR_STATIC_LINK)"
  18. endif
  19. # for 0001-libdnet-wrapper-configure.patch
  20. define NMAP_WRAPPER_EXEC
  21. chmod +x $(@D)/libdnet-stripped/configure.gnu
  22. endef
  23. NMAP_POST_PATCH_HOOKS += NMAP_WRAPPER_EXEC
  24. ifeq ($(BR2_PACKAGE_LIBSSH2),y)
  25. NMAP_CONF_OPTS += --with-libssh2="$(STAGING_DIR)/usr"
  26. NMAP_DEPENDENCIES += libssh2
  27. NMAP_LIBS_FOR_STATIC_LINK += `$(PKG_CONFIG_HOST_BINARY) --libs libssh2`
  28. else
  29. NMAP_CONF_OPTS += --without-libssh2
  30. endif
  31. ifeq ($(BR2_PACKAGE_OPENSSL),y)
  32. NMAP_CONF_OPTS += --with-openssl="$(STAGING_DIR)/usr"
  33. NMAP_DEPENDENCIES += host-pkgconf openssl
  34. NMAP_LIBS_FOR_STATIC_LINK += `$(PKG_CONFIG_HOST_BINARY) --libs openssl`
  35. else
  36. NMAP_CONF_OPTS += --without-openssl
  37. endif
  38. NMAP_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR)
  39. ifeq ($(BR2_PACKAGE_NMAP_NCAT),y)
  40. NMAP_CONF_OPTS += --with-ncat
  41. NMAP_MAKE_OPTS += build-ncat
  42. NMAP_INSTALL_TARGET_OPTS += install-ncat
  43. else
  44. NMAP_CONF_OPTS += --without-ncat
  45. endif
  46. ifeq ($(BR2_PACKAGE_NMAP_NDIFF),y)
  47. NMAP_DEPENDENCIES += python
  48. NMAP_CONF_OPTS += --with-ndiff
  49. NMAP_MAKE_OPTS += build-ndiff
  50. NMAP_INSTALL_TARGET_OPTS += install-ndiff
  51. else
  52. NMAP_CONF_OPTS += --without-ndiff
  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))