[backfire] cleanup: remove refs to unsupported "ps3" target
[openwrt/svn-archive/archive.git] / package / wprobe / Makefile
index cea23d2a3b7d56cbea02cbcab35c6a0e612553f9..8cb3b2f610f7b93226dec1490778e22e20906b35 100644 (file)
@@ -1,5 +1,5 @@
-# 
-# Copyright (C) 2008 OpenWrt.org
+#
+# Copyright (C) 2008-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -9,8 +9,9 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=wprobe
 PKG_VERSION:=1
+PKG_RELEASE:=1
 
-PKG_BUILD_DEPENDS:=libnl PACKAGE_wprobe-export:libipfix
+PKG_BUILD_DEPENDS:=PACKAGE_wprobe-export:libipfix
 
 PKG_CONFIG_DEPENDS = \
        CONFIG_PACKAGE_kmod-wprobe \
@@ -18,9 +19,19 @@ PKG_CONFIG_DEPENDS = \
 
 include $(INCLUDE_DIR)/package.mk
 
+# XXX: build failure on cris
+# wprobe-lib.c:145: error: 'packed' attribute ignored for field of type 'struct <anonymous>'
+# wprobe-lib.c:149: error: 'packed' attribute ignored for field of type 'struct <anonymous>'
+
+define Package/wprobe/Default
+  DEPENDS:=@LINUX_2_6 @(!(TARGET_pxcab||cris)||BROKEN)
+endef
+
 define KernelPackage/wprobe
+$(call Package/wprobe/Default)
   SUBMENU:=Network Support
   TITLE:=Wireless driver probe infrastructure
+  MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
   FILES:= \
        $(PKG_BUILD_DIR)/kernel/wprobe.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,01,wprobe)
@@ -30,22 +41,24 @@ define KernelPackage/wprobe/description
   A module that exports measurement data from wireless driver to user space
 endef
 
-define Package/wprobe-info
+define Package/wprobe-util
+$(call Package/wprobe/Default)
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=+kmod-wprobe
+  DEPENDS+=+kmod-wprobe +libnl-tiny
   TITLE:=Wireless measurement utility
 endef
 
-define Package/wprobe-info/description
-  wprobe-info uses the wprobe kernel module to query
+define Package/wprobe-util/description
+  wprobe-util uses the wprobe kernel module to query
   wireless driver measurement data from an interface
 endef
 
 define Package/wprobe-export
+$(call Package/wprobe/Default)
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=+kmod-wprobe
+  DEPENDS+=+wprobe-util
   TITLE:=Wireless measurement data exporter
 endef
 
@@ -54,17 +67,24 @@ define Package/wprobe-export/description
   wireless driver measurement data via the IPFIX protocol
 endef
 
+define Package/wprobe-export/conffiles
+/etc/config/wprobe
+endef
+
 define Build/Prepare
        mkdir -p $(PKG_BUILD_DIR)
        $(CP) src/* $(PKG_BUILD_DIR)/
 endef
 
-TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include
+TARGET_CPPFLAGS := \
+       -D_GNU_SOURCE \
+       -I$(STAGING_DIR)/usr/include/libnl-tiny \
+       $(TARGET_CPPFLAGS)
 
 ifdef CONFIG_PACKAGE_kmod-wprobe
   define Build/Compile/kmod
        $(MAKE) -C $(LINUX_DIR) \
-               CROSS_COMPILE="$(TARGET_CROSS)" \
+               CROSS_COMPILE="$(KERNEL_CROSS)" \
                ARCH="$(LINUX_KARCH)" \
                SUBDIRS="$(PKG_BUILD_DIR)/kernel" \
                KERNELDIR=$(LINUX_DIR) \
@@ -80,7 +100,8 @@ define Build/Compile/lib
                CFLAGS="$(TARGET_CFLAGS)" \
                CPPFLAGS="$(TARGET_CPPFLAGS) -I$(PKG_BUILD_DIR)/kernel" \
                LDFLAGS="$(TARGET_LDFLAGS)" \
-               LIBNL="$(STAGING_DIR)/usr/lib/libnl.a"
+               HOST_OS=Linux \
+               LIBNL="-lnl-tiny"
 endef
 
 ifdef CONFIG_PACKAGE_wprobe-export
@@ -90,7 +111,7 @@ ifdef CONFIG_PACKAGE_wprobe-export
                CFLAGS="$(TARGET_CFLAGS)" \
                CPPFLAGS="$(TARGET_CPPFLAGS) -I$(PKG_BUILD_DIR)/kernel -I$(PKG_BUILD_DIR)/user" \
                LDFLAGS="$(TARGET_LDFLAGS)" \
-               LIBS="$(PKG_BUILD_DIR)/user/libwprobe.a $(STAGING_DIR)/usr/lib/libipfix.a $(STAGING_DIR)/usr/lib/libmisc.a $(STAGING_DIR)/usr/lib/libnl.a -lm"
+               LIBS="$(PKG_BUILD_DIR)/user/libwprobe.a $(STAGING_DIR)/usr/lib/libipfix.a $(STAGING_DIR)/usr/lib/libmisc.a -lnl-tiny -lm"
   endef
 endif
 
@@ -105,17 +126,18 @@ define Build/InstallDev
        $(CP) $(PKG_BUILD_DIR)/kernel/linux $(1)/usr/include/wprobe
 endef
 
-define Package/wprobe-info/install
+define Package/wprobe-util/install
        $(INSTALL_DIR) $(1)/sbin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/user/wprobe-info $(1)/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/user/wprobe-util $(1)/sbin/
 endef
 
 define Package/wprobe-export/install
-       $(INSTALL_DIR) $(1)/sbin $(1)/etc/init.d
-       $(INSTALL_BIN) ./files/wprobe.init $(1)/etc/init.d/
+       $(INSTALL_DIR) $(1)/sbin $(1)/etc/init.d $(1)/etc/config
+       $(INSTALL_BIN) ./files/wprobe.init $(1)/etc/init.d/wprobe
+       $(INSTALL_BIN) ./files/wprobe.config $(1)/etc/config/wprobe
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/exporter/wprobe-export $(1)/sbin/
 endef
 
 $(eval $(call KernelPackage,wprobe))
-$(eval $(call BuildPackage,wprobe-info))
+$(eval $(call BuildPackage,wprobe-util))
 $(eval $(call BuildPackage,wprobe-export))