From 7bc22cd09969904278e8dfb376b9232fd41d0129 Mon Sep 17 00:00:00 2001
From: nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Thu, 30 Apr 2009 13:57:38 +0000
Subject: swconfig: use libnl-tiny instead of libnl

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15508 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/swconfig/Makefile    | 17 +++++++++--------
 package/swconfig/src/swlib.c | 15 ++++++++++-----
 2 files changed, 19 insertions(+), 13 deletions(-)

(limited to 'package/swconfig')

diff --git a/package/swconfig/Makefile b/package/swconfig/Makefile
index 5959ef4c8..fcabf83b5 100644
--- a/package/swconfig/Makefile
+++ b/package/swconfig/Makefile
@@ -6,24 +6,25 @@
 #
 
 include $(TOPDIR)/rules.mk
-include $(INCLUDE_DIR)/kernel.mk
 
-PKG_NAME:=kmod-swconfig
+PKG_NAME:=swconfig
 PKG_RELEASE:=1
-PKG_BUILD_DEPENDS:=libnl
 
 include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/kernel.mk
 
 define Package/swconfig
   SECTION:=base
   CATEGORY:=Base system
-  DEPENDS:=@LINUX_2_6_26||LINUX_2_6_27||LINUX_2_6_28||LINUX_2_6_29 +libuci
+  DEPENDS:=@LINUX_2_6_26||LINUX_2_6_27||LINUX_2_6_28||LINUX_2_6_29 +libuci +libnl-tiny
   TITLE:=Switch configuration utility
 endef
 
-TARGET_CPPFLAGS += \
+TARGET_CPPFLAGS := \
+	-I$(STAGING_DIR)/usr/include/libnl-tiny \
 	-I$(LINUX_DIR)/include \
-	-I$(PKG_BUILD_DIR)
+	-I$(PKG_BUILD_DIR) \
+	$(TARGET_CPPFLAGS)
 
 define Build/Prepare
 	mkdir -p $(PKG_BUILD_DIR)
@@ -31,10 +32,10 @@ define Build/Prepare
 endef
 
 define Build/Compile
-	CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
+	CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
 	$(MAKE) -C $(PKG_BUILD_DIR) \
 		$(TARGET_CONFIGURE_OPTS) \
-		LIBS="-L$(STAGING_DIR)/usr/lib $(STAGING_DIR)/usr/lib/libnl.a -lm -luci"
+		LIBS="$(TARGET_LDFLAGS) -lnl-tiny -lm -luci"
 endef
 
 define Package/swconfig/install
diff --git a/package/swconfig/src/swlib.c b/package/swconfig/src/swlib.c
index fbc036555..04b3bef49 100644
--- a/package/swconfig/src/swlib.c
+++ b/package/swconfig/src/swlib.c
@@ -24,6 +24,9 @@
 #include <sys/socket.h>
 #include <linux/switch.h>
 #include "swlib.h"
+#include <netlink/netlink.h>
+#include <netlink/genl/genl.h>
+#include <netlink/genl/family.h>
 
 //#define DEBUG 1
 #ifdef DEBUG
@@ -32,7 +35,7 @@
 #define DPRINTF(fmt, ...) do {} while (0)
 #endif
 
-static struct nl_handle *handle;
+static struct nl_sock *handle;
 static struct nl_cache *cache;
 static struct genl_family *family;
 static struct nlattr *tb[SWITCH_ATTR_MAX];
@@ -507,7 +510,7 @@ swlib_priv_free(void)
 	if (cache)
 		nl_cache_free(cache);
 	if (handle)
-		nl_handle_destroy(handle);
+		nl_socket_free(handle);
 	handle = NULL;
 	cache = NULL;
 }
@@ -515,7 +518,9 @@ swlib_priv_free(void)
 static int
 swlib_priv_init(void)
 {
-	handle = nl_handle_alloc();
+	int ret;
+
+	handle = nl_socket_alloc();
 	if (!handle) {
 		DPRINTF("Failed to create handle\n");
 		goto err;
@@ -526,8 +531,8 @@ swlib_priv_init(void)
 		goto err;
 	}
 
-	cache = genl_ctrl_alloc_cache(handle);
-	if (!cache) {
+	ret = genl_ctrl_alloc_cache(handle, &cache);
+	if (ret < 0) {
 		DPRINTF("Failed to allocate netlink cache\n");
 		goto err;
 	}
-- 
cgit v1.2.3