From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from ptx.hi.pengutronix.de ([2001:6f8:1178:2:5054:ff:fec0:8e10] ident=Debian-exim) by metis.ext.pengutronix.de with esmtp (Exim 4.72) (envelope-from ) id 1TxLAI-0000Ff-Uv for ptxdist@pengutronix.de; Mon, 21 Jan 2013 18:28:10 +0100 Received: from mol by ptx.hi.pengutronix.de with local (Exim 4.72) (envelope-from ) id 1TxLAI-0004Jv-TS for ptxdist@pengutronix.de; Mon, 21 Jan 2013 18:28:10 +0100 Date: Mon, 21 Jan 2013 18:28:10 +0100 From: Michael Olbrich Message-ID: <20130121172810.GD4597@pengutronix.de> References: <1358702090-29597-1-git-send-email-alex.aring@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1358702090-29597-1-git-send-email-alex.aring@gmail.com> Subject: Re: [ptxdist] [PATCH] libnl3: new package Reply-To: ptxdist@pengutronix.de List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: ptxdist-bounces@pengutronix.de Errors-To: ptxdist-bounces@pengutronix.de To: ptxdist@pengutronix.de 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. > 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 > + > +# > +# 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 ") > + @$(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