swconfig: use libnl-tiny instead of libnl

SVN-Revision: 15508
This commit is contained in:
Felix Fietkau 2009-04-30 13:57:38 +00:00
parent 938553bd69
commit ad9d1857a5
2 changed files with 19 additions and 13 deletions

View file

@ -6,24 +6,25 @@
# #
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=kmod-swconfig PKG_NAME:=swconfig
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_BUILD_DEPENDS:=libnl
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/kernel.mk
define Package/swconfig define Package/swconfig
SECTION:=base SECTION:=base
CATEGORY:=Base system 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 TITLE:=Switch configuration utility
endef endef
TARGET_CPPFLAGS += \ TARGET_CPPFLAGS := \
-I$(STAGING_DIR)/usr/include/libnl-tiny \
-I$(LINUX_DIR)/include \ -I$(LINUX_DIR)/include \
-I$(PKG_BUILD_DIR) -I$(PKG_BUILD_DIR) \
$(TARGET_CPPFLAGS)
define Build/Prepare define Build/Prepare
mkdir -p $(PKG_BUILD_DIR) mkdir -p $(PKG_BUILD_DIR)
@ -31,10 +32,10 @@ define Build/Prepare
endef endef
define Build/Compile define Build/Compile
CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \ CFLAGS="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
$(MAKE) -C $(PKG_BUILD_DIR) \ $(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \ $(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 endef
define Package/swconfig/install define Package/swconfig/install

View file

@ -24,6 +24,9 @@
#include <sys/socket.h> #include <sys/socket.h>
#include <linux/switch.h> #include <linux/switch.h>
#include "swlib.h" #include "swlib.h"
#include <netlink/netlink.h>
#include <netlink/genl/genl.h>
#include <netlink/genl/family.h>
//#define DEBUG 1 //#define DEBUG 1
#ifdef DEBUG #ifdef DEBUG
@ -32,7 +35,7 @@
#define DPRINTF(fmt, ...) do {} while (0) #define DPRINTF(fmt, ...) do {} while (0)
#endif #endif
static struct nl_handle *handle; static struct nl_sock *handle;
static struct nl_cache *cache; static struct nl_cache *cache;
static struct genl_family *family; static struct genl_family *family;
static struct nlattr *tb[SWITCH_ATTR_MAX]; static struct nlattr *tb[SWITCH_ATTR_MAX];
@ -507,7 +510,7 @@ swlib_priv_free(void)
if (cache) if (cache)
nl_cache_free(cache); nl_cache_free(cache);
if (handle) if (handle)
nl_handle_destroy(handle); nl_socket_free(handle);
handle = NULL; handle = NULL;
cache = NULL; cache = NULL;
} }
@ -515,7 +518,9 @@ swlib_priv_free(void)
static int static int
swlib_priv_init(void) swlib_priv_init(void)
{ {
handle = nl_handle_alloc(); int ret;
handle = nl_socket_alloc();
if (!handle) { if (!handle) {
DPRINTF("Failed to create handle\n"); DPRINTF("Failed to create handle\n");
goto err; goto err;
@ -526,8 +531,8 @@ swlib_priv_init(void)
goto err; goto err;
} }
cache = genl_ctrl_alloc_cache(handle); ret = genl_ctrl_alloc_cache(handle, &cache);
if (!cache) { if (ret < 0) {
DPRINTF("Failed to allocate netlink cache\n"); DPRINTF("Failed to allocate netlink cache\n");
goto err; goto err;
} }