mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH] libnl3: new package
@ 2013-01-20 17:14 Alexander Aring
  2013-01-21 17:28 ` Michael Olbrich
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Aring @ 2013-01-20 17:14 UTC (permalink / raw)
  To: ptxdist; +Cc: Alexander Aring

New package for libnl3 version 3.2.19.

There is already a libnl package version 1.1.
Some applications have a dependency to libnl3. Others
applications like 'networkmanager' can uses libnl or libnl3.

Eventually we should update packages like 'networkmanager' to use
libnl3 instead of libnl.

It is possible to install both libraries libnl and libnl3.
Libnl3 has an another library name and another header
file location.
The configure part of applications like  'networkmanager'
will determine which library will be used.

The new libnl3 has a option to enable or disable install
cli support.

Others possible optional features, which are currently not
available to configure, are:
	- Disable pthread support.
	- Python bindings(experimental).

This package will install a default configuration of libnl3 to
'/etc/libnl/...'.

Signed-off-by: Alexander Aring <alex.aring@gmail.com>
---
 rules/libnl3.in   | 38 ++++++++++++++++++++++
 rules/libnl3.make | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 133 insertions(+)
 create mode 100644 rules/libnl3.in
 create mode 100644 rules/libnl3.make

diff --git a/rules/libnl3.in b/rules/libnl3.in
new file mode 100644
index 0000000..4cdd2ac
--- /dev/null
+++ b/rules/libnl3.in
@@ -0,0 +1,38 @@
+## SECTION=system_libraries
+
+menuconfig LIBNL3
+	tristate
+	prompt "libnl3                        "
+	select LIBC_M
+	select LIBC_PTHREAD
+	select GCCLIBS_GCC_S
+	select HOST_FLEX
+	help
+	  libnl3 is a library for applications dealing with netlink
+	  sockets. The library provides an interface for raw
+	  netlink messaging and various netlink family specific
+	  interfaces.
+
+if LIBNL3
+
+config LIBNL3_ENABLE_CLI
+	bool
+	default y
+	prompt "Enable command line tools"
+	help
+	  Do build the following command line interface utils:
+	  genl-ctrl-list
+	  nl-class-add
+	  nl-class-delete
+	  nl-classid-lookup
+	  nl-class-list
+	  nl-cls-add
+	  nl-cls-delete
+	  nl-cls-list
+	  nl-link-list
+	  nl-pktloc-lookup
+	  nl-qdisc-add
+	  nl-qdisc-delete
+	  nl-qdisc-list
+
+endif
diff --git a/rules/libnl3.make b/rules/libnl3.make
new file mode 100644
index 0000000..6620000
--- /dev/null
+++ b/rules/libnl3.make
@@ -0,0 +1,95 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2012 by Alexander Aring <aar@pengutronix.de>
+#
+# See CREDITS for details about who has contributed to this project.
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_LIBNL3) += libnl3
+
+#
+# Paths and names
+#
+LIBNL3_VERSION	:= 3.2.19
+LIBNL3_MD5		:= 1795c43bde05f650a43b085438e5da21
+LIBNL3			:= libnl-$(LIBNL3_VERSION)
+LIBNL3_SUFFIX	:= tar.gz
+LIBNL3_URL		:= http://www.infradead.org/~tgr/libnl/files/$(LIBNL3).$(LIBNL3_SUFFIX)
+LIBNL3_SOURCE	:= $(SRCDIR)/$(LIBNL3).$(LIBNL3_SUFFIX)
+LIBNL3_DIR		:= $(BUILDDIR)/$(LIBNL3)
+LIBNL3_LICENSE	:= GPLv2
+
+#
+# autoconf
+#
+LIBNL3_CONF_TOOL	:= autoconf
+LIBNL3_CONF_OPT	:= \
+	$(CROSS_AUTOCONF_USR) \
+	--$(call ptx/endis, PTXCONF_LIBNL3_ENABLE_CLI)-cli \
+	--disable-manpages \
+	--enable-shared \
+	--disable-static
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+LIBNL3_INSTALL_FILES-y =
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/genl-ctrl-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-class-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-class-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-classid-lookup
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-class-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-cls-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-cls-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-cls-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-link-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-pktloc-lookup
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-qdisc-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-qdisc-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=	/usr/sbin/nl-qdisc-list
+
+$(STATEDIR)/libnl3.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, libnl3)
+	@$(call install_fixup, libnl3,PRIORITY,optional)
+	@$(call install_fixup, libnl3,SECTION,base)
+	@$(call install_fixup, libnl3,AUTHOR,"Alexander Aring <aar@pengutronix.de>")
+	@$(call install_fixup, libnl3,DESCRIPTION,missing)
+
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl-3)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl-genl-3)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl-nf-3)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl-route-3)
+
+ifdef PTXCONF_LIBNL3_ENABLE_CLI
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl-cli-3)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/cls/basic)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/cls/cgroup)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/qdisc/bfifo)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/qdisc/blackhole)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/qdisc/htb)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/qdisc/pfifo)
+	@$(call install_lib, libnl3, 0, 0, 0644, libnl/cli/qdisc/plug)
+endif
+
+	@for i in $(LIBNL3_INSTALL_FILES-y); do \
+		$(call install_copy, libnl3, 0, 0, 0755, -, $$i) \
+	done
+
+	@$(call install_copy, libnl3, 0, 0, 0755, /etc/libnl)
+	@$(call install_alternative, libnl3, 0, 0, 0644, /etc/libnl/classid)
+	@$(call install_alternative, libnl3, 0, 0, 0644, /etc/libnl/pktloc)
+
+	@$(call install_finish, libnl3)
+
+	@$(call touch)
+
+# vim: syntax=make
-- 
1.8.1.1


-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-01-22  9:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-20 17:14 [ptxdist] [PATCH] libnl3: new package Alexander Aring
2013-01-21 17:28 ` Michael Olbrich
2013-01-22  9:39   ` Alexander Aring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox