a24544e37a267d2a994f573ae74f2e03a0c0437f
[packages.git] / net / nmap / Makefile
1 #
2 # Copyright (C) 2006-2014 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6
7 #TODO
8 #
9 # * uClibcpp not supported, performance +100x slower. libstdcpp is being used. https://bugs.busybox.net/show_bug.cgi?id=2545
10 # * liblua is still not recognized/blindly accepted. Impossible to compile with support
11 #
12
13 include $(TOPDIR)/rules.mk
14
15 PKG_NAME:=nmap
16 PKG_VERSION:=6.46
17 PKG_RELEASE:=1
18
19 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
20 PKG_SOURCE_URL:=http://nmap.org/dist/
21 PKG_MD5SUM:=5a36ad3a63d5b7ea5514f745a397436a
22
23 PKG_INSTALL:=1
24
25 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
26
27 include $(INCLUDE_DIR)/package.mk
28
29 NMAP_DEPENDS:=+libpcap +libstdcpp
30 NCAT_DEPENDS:=+libpcap
31 NPING_DEPENDS:=+libpcap +libpthread +libstdcpp
32 NDIFF_DEPENDS:=+python
33
34 define Package/nmap/default
35   SUBMENU:=NMAP Suite
36   SECTION:=net
37   CATEGORY:=Network
38   URL:=http://nmap.org/
39 endef
40
41 define Package/nmap
42 $(call Package/nmap/default)
43   DEPENDS:=$(NMAP_DEPENDS)
44   VARIANT:=nossl
45   TITLE:=Utility for network exploration or security auditing
46 endef
47
48 define Package/nmap-ssl
49 $(call Package/nmap/default)
50   DEPENDS:=$(NMAP_DEPENDS) +libopenssl
51   VARIANT:=ssl
52   TITLE:=Nmap (with OpenSSL support)
53 endef
54
55 define Package/ncat
56 $(call Package/nmap/default)
57   DEPENDS:=$(NCAT_DEPENDS)
58   VARIANT:=nossl
59   TITLE:=Much-improved reimplementation of Netcat
60 endef
61
62 define Package/ncat-ssl
63 $(call Package/nmap/default)
64   DEPENDS:=$(NCAT_DEPENDS) +libopenssl
65   VARIANT:=ssl
66   TITLE:=Ncat (with OpenSSL support)
67 endef
68
69 define Package/nping
70 $(call Package/nmap/default)
71   DEPENDS:=$(NPING_DEPENDS)
72   VARIANT:=nossl
73   TITLE:=Network packet generation tool / ping utility
74 endef
75
76 define Package/ndiff
77 $(call Package/nmap/default)
78   DEPENDS:=$(NDIFF_DEPENDS)
79   VARIANT:=nossl
80   TITLE:=Utility to compare the results of Nmap scans
81 endef
82
83 CONFIGURE_ARGS += \
84         --with-libdnet=included \
85         --with-libpcre=included \
86         --with-libpcap="$(STAGING_DIR)/usr" \
87         --without-liblua
88
89 CONFIGURE_VARS += CXXFLAGS="$$$$CXXFLAGS -fno-builtin"
90
91 ifeq ($(BUILD_VARIANT),ssl)
92         CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr"
93 else
94         CONFIGURE_ARGS += --without-openssl
95 endif
96
97 define Package/nmap/install
98         $(INSTALL_DIR) $(1)/usr/bin
99         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/nmap $(1)/usr/bin/
100         $(INSTALL_DIR) $(1)/usr/share/nmap
101         $(CP) $(PKG_INSTALL_DIR)/usr/share/nmap/* $(1)/usr/share/nmap/
102 endef
103
104 define Package/nmap-ssl/install
105         $(INSTALL_DIR) $(1)/usr/bin
106         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/nmap $(1)/usr/bin/
107         $(INSTALL_DIR) $(1)/usr/share/nmap
108         $(CP) $(PKG_INSTALL_DIR)/usr/share/nmap/* $(1)/usr/share/nmap/
109 endef
110
111 define Package/ncat/install
112         $(INSTALL_DIR) $(1)/usr/bin
113         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ncat $(1)/usr/bin/
114 endef
115
116 define Package/ncat-ssl/install
117         $(INSTALL_DIR) $(1)/usr/bin
118         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ncat $(1)/usr/bin/
119         $(INSTALL_DIR) $(1)/usr/share/ncat
120         $(CP) $(PKG_INSTALL_DIR)/usr/share/ncat/ca-bundle.crt $(1)/usr/share/ncat/
121 endef
122
123 define Package/ndiff/install
124         $(INSTALL_DIR) $(1)/usr/bin
125         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ndiff $(1)/usr/bin/
126 endef
127
128 define Package/nping/install
129         $(INSTALL_DIR) $(1)/usr/bin
130         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/nping $(1)/usr/bin/
131 endef
132
133
134 $(eval $(call BuildPackage,nmap))
135 $(eval $(call BuildPackage,nmap-ssl))
136 $(eval $(call BuildPackage,ncat))
137 $(eval $(call BuildPackage,ncat-ssl))
138 $(eval $(call BuildPackage,nping))
139 $(eval $(call BuildPackage,ndiff))