summaryrefslogtreecommitdiffstats
path: root/rules/libnl3.make
diff options
context:
space:
mode:
authorAlexander Aring <alex.aring@gmail.com>2013-01-22 11:26:57 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2013-01-23 12:01:03 +0100
commitadeac13183422dc7152ad5e0484601b074436af7 (patch)
tree9fafd8780ff7f907cc192cd65c5893812562d897 /rules/libnl3.make
parentafbf3edf7de31a09653afb7339bb2901247267ff (diff)
downloadptxdist-adeac13183422dc7152ad5e0484601b074436af7.tar.gz
ptxdist-adeac13183422dc7152ad5e0484601b074436af7.tar.xz
libnl3: new package
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> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'rules/libnl3.make')
-rw-r--r--rules/libnl3.make94
1 files changed, 94 insertions, 0 deletions
diff --git a/rules/libnl3.make b/rules/libnl3.make
new file mode 100644
index 000000000..33a00187c
--- /dev/null
+++ b/rules/libnl3.make
@@ -0,0 +1,94 @@
+# -*-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) \
+ --disable-manpages \
+ --enable-shared \
+ --disable-static \
+ --$(call ptx/endis, PTXCONF_LIBNL3_ENABLE_CLI)-cli \
+ --enable-pthreads
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+LIBNL3_INSTALL_FILES-y =
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=genl-ctrl-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-class-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-class-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-classid-lookup
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-class-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-cls-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-cls-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-cls-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-link-list
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-pktloc-lookup
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-qdisc-add
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=nl-qdisc-delete
+LIBNL3_INSTALL_FILES-$(PTXCONF_LIBNL3_ENABLE_CLI) +=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
+
+ @$(foreach tool,$(LIBNL3_INSTALL_FILES-y), \
+ $(call install_copy, libnl3, 0, 0, 0755, -, /usr/sbin/$(tool));)
+
+ @$(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