kismet: fix dependency issues
[openwrt/svn-archive/archive.git] / net / kismet / Makefile
index 53cd8caf260ddb8e08c469d26d00a64359e8bb85..d1eec6a7ed9c8614a493c9c7ee8f55682b249d66 100644 (file)
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=kismet
-PKG_VERSION:=2006-04-R1
+PKG_VERSION:=2010-07-R1
 PKG_RELEASE:=1
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.kismetwireless.net/code
-PKG_MD5SUM:=8ec2de513f2911df1b7edfcba5ad1c26
-PKG_CAT:=zcat
+PKG_MD5SUM:=85e59186eb529889118b5635f35cf57d
 
-PKG_BUILDDEP:=libpcap libncurses uclibcxx
+PKG_BUILD_DEPENDS:=libpcap libncurses uclibcxx libpcre
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/kismet-client
+define Package/kismet/Default
   SECTION:=net
   CATEGORY:=Network
-  TITLE:=Kismet client
-  DEPENDS:=+libncurses +uclibcxx
-  DESCRIPTION:=Kismet client.\\\
-    An 802.11 layer2 wireless network detector, sniffer, and intrusion \\\
-    detection system.\\\
-    \\\
-    This package contains the kismet text interface client.
+  TITLE:=Kismet
+  DEPENDS:= +uclibcxx +libnl
   URL:=http://www.kismetwireless.net/
+  SUBMENU:=wireless
+endef
+
+define Package/kismet/Default/description
+ An 802.11 layer2 wireless network detector, sniffer, and intrusion
+ detection system.
+endef
+
+define Package/kismet-client
+$(call Package/kismet/Default)
+  TITLE+= client
+  DEPENDS+= +libncurses
 endef
 
 define Package/kismet-client/conffiles
-/etc/kismet/ap_manuf
-/etc/kismet/client_manuf
 /etc/kismet/kismet.conf
-/etc/kismet/kismet_ui.conf
+endef
+
+define Package/kismet-client/description
+$(call Package/kismet/Default/description)
+ This package contains the kismet text interface client.
 endef
 
 define Package/kismet-drone
-  SECTION:=net
-  CATEGORY:=Network
-  DEPENDS:=+libpcap +uclibcxx
-  TITLE:=Kismet drone
-  DESCRIPTION:=Kismet drone.\\\
-    An 802.11 layer2 wireless network detector, sniffer, and intrusion \\\
-    detection system.\\\
-    \\\
-    This package contains the kismet remote sniffing.and monitoring drone.
-  URL:=http://www.kismetwireless.net/
+$(call Package/kismet/Default)
+  DEPENDS+= +libpcap +libpcre +libcap
+  TITLE+= drone
 endef
 
 define Package/kismet-drone/conffiles
 /etc/kismet/kismet_drone.conf
 endef
 
+define Package/kismet-drone/description
+$(call Package/kismet/Default/description)
+ This package contains the kismet remote sniffing.and monitoring drone.
+endef
+
 define Package/kismet-server
-  SECTION:=net
-  CATEGORY:=Network
-  DEPENDS:=+libpcap +uclibcxx
-  TITLE:=Kismet server
-  DESCRIPTION:=Kismet server.\\\
-    An 802.11 layer2 wireless network detector, sniffer, and intrusion \\\
-    detection system.\\\
-    \\\
-    This package contains the kismet server.
-  URL:=http://www.kismetwireless.net/
+$(call Package/kismet/Default)
+  DEPENDS+= +libpcap +libpcre +libcap
+  TITLE+= server
 endef
 
 define Package/kismet-server/conffiles
-/etc/kismet/ap_manuf
-/etc/kismet/client_manuf
 /etc/kismet/kismet.conf
 endef
 
-define Build/Configure
-       (cd $(PKG_BUILD_DIR); rm -rf config.cache; \
-               $(TARGET_CONFIGURE_OPTS) \
-               CFLAGS="$(TARGET_CFLAGS)"  \
-               CXXFLAGS="$(TARGET_CFLAGS) -fno-builtin -fno-rtti -nostdinc++"  \
-               CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include -I$(LINUX_DIR)/include" \
-               LDFLAGS="-nodefaultlibs -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
-               LIBS="-luClibc++ -lc -lm -lgcc" \
-               ./configure \
-                       --target=$(GNU_TARGET_NAME) \
-                       --host=$(GNU_TARGET_NAME) \
-                       --build=$(GNU_HOST_NAME) \
-                       --program-prefix="" \
-                       --program-suffix="" \
-                       --prefix=/usr \
-                       --exec-prefix=/usr \
-                       --bindir=/usr/bin \
-                       --datadir=/usr/share \
-                       --includedir=/usr/include \
-                       --infodir=/usr/share/info \
-                       --libdir=/usr/lib \
-                       --libexecdir=/usr/lib \
-                       --localstatedir=/var \
-                       --mandir=/usr/share/man \
-                       --sbindir=/usr/sbin \
-                       --sysconfdir=/etc/kismet \
-                       $(DISABLE_LARGEFILE) \
-                       $(DISABLE_NLS) \
-                       --enable-syspcap=yes \
-                       --disable-setuid \
-                       --disable-wsp100 \
-                       --disable-gpsmap \
-       );
+define Package/kismet-server/description
+$(call Package/kismet/Default/description)
+ This package contains the kismet server.
 endef
 
+CONFIGURE_ARGS += \
+       --sysconfdir=/etc/kismet \
+
+CONFIGURE_VARS += \
+       CXXFLAGS="$$$$CXXFLAGS -fno-builtin -fno-rtti -nostdinc++"  \
+       CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/include/uClibc++" \
+       LDFLAGS="$$$$LDFLAGS" \
+       LIBS="-nodefaultlibs -lc -luClibc++ -lm $(LIBGCC_S)" \
+       CLIENTCLIBS="-nodefaultlibs -lc -luClibc++ -lm $(LIBGCC_S)"
+
 define Build/Compile
        $(MAKE) -C $(PKG_BUILD_DIR) \
-               LIBS="-luClibc++ -lc -lm -lgcc" \
+               LD="$(TARGET_CXX)" \
                all
 endef
 
@@ -127,26 +102,21 @@ endef
 
 define Package/kismet-client/install
        $(INSTALL_DIR) $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/ap_manuf $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/client_manuf $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/kismet.conf $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/kismet_ui.conf $(1)/etc/kismet/
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet.conf $(1)/etc/kismet/
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/kismet_client $(1)/usr/bin/
 endef
 
 define Package/kismet-drone/install
        $(INSTALL_DIR) $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/kismet_drone.conf $(1)/etc/kismet/
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet_drone.conf $(1)/etc/kismet/
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/kismet_drone $(1)/usr/bin/
 endef
 
 define Package/kismet-server/install
        $(INSTALL_DIR) $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/ap_manuf $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/client_manuf $(1)/etc/kismet/
-       $(INSTALL_DATA) ./files/kismet.conf $(1)/etc/kismet/
+       $(INSTALL_CONF) $(PKG_BUILD_DIR)/conf/kismet.conf $(1)/etc/kismet/
        $(INSTALL_DIR) $(1)/usr/bin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/kismet_server $(1)/usr/bin/
 endef