Hi, thank you for reviewing this. 2013/1/21 Michael Olbrich > On Sun, Jan 20, 2013 at 06:14:50PM +0100, Alexander Aring wrote: > > 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. > > We'll need to do something about networkmanager. It will use libnl3 before > checking for libnl2. But thats for a separate patch. > That's a hint that networkmanager prefers libnl3 instead of libnl2 instead of libnl(1). But there are a lot of another application which used libnl. > > 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 > > --- > > 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 > > +# > > +# 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 > > make sure the tabs align correctly with ts=8 > Thank you so much for this information! > > + > > +# > > +# 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 > > sort as listed in --help. That makes updating easier. > Add --enable-pthreads. Upstream authors sometimes change the default... > > > + > > +# > ---------------------------------------------------------------------------- > > +# 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 > > LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=genl-ctrl-list > > (Note the tab position, and no /usr/sbin/ here). > > > + > > +$(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 > > @$(foreach tool,$(LIBNL3_INSTALL_FILES-y), \ > $(call install_copy, libnl3, 0, 0, 0755, -, > /usr/sbin/$(tool));) > > > + > > + @$(call install_copy, libnl3, 0, 0, 0755, /etc/libnl) > > this is not needed. All files also install their path. Something like this > only makes sense if you need special permissions. > > Michael > > > + @$(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 > > > > -- > Pengutronix e.K. | | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | > > -- > ptxdist mailing list > ptxdist@pengutronix.de >