From df3125737b95e66f8ef6a3c3574ce6a3cf138998 Mon Sep 17 00:00:00 2001 From: Maxime Hadjinlian Date: Sat, 3 May 2014 19:48:00 +0200 Subject: [PATCH] linux-zigbee: new package linux-zigbee is a mix of utility tools that implements a 802.15.4 stack along with a usefull library for any program that would need to use this stack. Note that the name is mislead, for licensing reason, this does *NOT* implement the ZigBee protocol. [Thomas: - add dependency on threads, propagated from libnl - improve the Config.in description by borrowing more text from the upstream website - fix the prompt of sub-options to be more consistent, and add help texts where appropriate - fix indentation of the BR2_PACKAGE_LINUX_ZIGBEE_TESTS option help text - add missing dependencies on host-pkgconf, host-flex and host-bison - add missing SoB line in the patch disabling test-serial. Maxime is a well-known contributor, so I assumed we had his SoB. - fix indentation of _CONF_OPT. - remove _INSTALL_STAGING = YES since the package does not install any library, and the two headers it installs are available through the toolchain kernel headers. - add comment to explain _AUTORECONF = YES.] Signed-off-by: Maxime Hadjinlian Signed-off-by: Thomas Petazzoni --- package/Config.in | 1 + package/linux-zigbee/Config.in | 52 ++++++++++++++++++ ...-0001-test-serial-Remove-test-serial.patch | 54 +++++++++++++++++++ package/linux-zigbee/linux-zigbee.mk | 30 +++++++++++ 4 files changed, 137 insertions(+) create mode 100644 package/linux-zigbee/Config.in create mode 100644 package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch create mode 100644 package/linux-zigbee/linux-zigbee.mk diff --git a/package/Config.in b/package/Config.in index d73eaed35f..0440ce8011 100644 --- a/package/Config.in +++ b/package/Config.in @@ -947,6 +947,7 @@ source "package/lighttpd/Config.in" source "package/linknx/Config.in" source "package/links/Config.in" source "package/linphone/Config.in" +source "package/linux-zigbee/Config.in" source "package/lrzsz/Config.in" source "package/macchanger/Config.in" source "package/mii-diag/Config.in" diff --git a/package/linux-zigbee/Config.in b/package/linux-zigbee/Config.in new file mode 100644 index 0000000000..ef7c760eba --- /dev/null +++ b/package/linux-zigbee/Config.in @@ -0,0 +1,52 @@ +config BR2_PACKAGE_LINUX_ZIGBEE + bool "linux-zigbee" + depends on BR2_USE_MMU # fork() + depends on BR2_TOOLCHAIN_HAS_THREADS # libnl + select BR2_PACKAGE_LIBNL + help + IEEE 802.15.4 is a standard for communication in small + low-rate wireless personal area networks (WPAN). While + 802.15.4 is a MAC- and PHY- layer standard only, several + common protocols commonly sit on top of it such as ZigBee, + MiWi, and 6LoWPAN. The goal of this project is to create an + implementation of 802.15.4 and several of the protocols + which run on top of it (primarily 6LoWPAN) for Linux. + + It's worth noting that the name linux-zigbee is somewhat of + a misnomer. While this project was originally started to + create a ZigBee implementation for Linux, licensing + restrictions put in place by the ZigBee Alliance make it + impossible for an implementation of ZigBee to ever become + part of the Linux kernel. Once this licensing issue was + discovered, this project's primary focus shifted to IEEE + 802.15.4 and 6LoWPAN. Other higher-layer standards may be + added at a future time. + + The 802.15.4 stack contains kernel components, which are + part of the mainline Linux kernel, and userspace components, + available in this package. + + http://sourceforge.net/apps/trac/linux-zigbee/ + +if BR2_PACKAGE_LINUX_ZIGBEE + +config BR2_PACKAGE_LINUX_ZIGBEE_TESTS + bool "tests programs" + help + Enable this option to install the Linux-ZigBee test programs + to the target. + + +config BR2_PACKAGE_LINUX_ZIGBEE_OLD_KERNEL_COMPAT + bool "compatibility with older kernels" + help + Enable this option to get compatibility of the Linux-ZigBee + userspace tools with old kernels. Recent kernels know the + 802.15.4 line discipline as N_IEEE802154 with the value 25, + but some older kernels had it with the values 22 or 19. + +config BR2_PACKAGE_LINUX_ZIGBEE_LEASEFILE + string "path for persistent lease storage" + default "/var/run/izcoordinator.leases" + +endif diff --git a/package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch b/package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch new file mode 100644 index 0000000000..8cd9d754c0 --- /dev/null +++ b/package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch @@ -0,0 +1,54 @@ +From 98187a5238939edc889fdaad93b00628b55d1e08 Mon Sep 17 00:00:00 2001 +From: Maxime Hadjinlian +Date: Sat, 3 May 2014 19:43:20 +0200 +Subject: [PATCH] test-serial: Remove test-serial + +This folders only contains python tests scripts which would force us to +enable a dependency to host-python which seems kind of silly since +theses are only tests scripts. + +Signed-off-by: Maxime Hadjinlian +--- + Makefile.am | 2 +- + configure.ac | 6 ------ + 2 files changed, 1 insertion(+), 7 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 265f0d7..e7bb1a1 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,7 +2,7 @@ include $(top_srcdir)/Makefile.common + + ACLOCAL_AMFLAGS = -I m4 + +-SUBDIRS = lib addrdb src tests test-serial ++SUBDIRS = lib addrdb src tests + + include_HEADERS = include/ieee802154.h include/nl802154.h + noinst_HEADERS = include/libcommon.h include/addrdb.h include/logging.h +diff --git a/configure.ac b/configure.ac +index 17658af..506b289 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -77,11 +77,6 @@ AC_PROG_LIBTOOL + AM_PROG_LEX + AC_PROG_YACC + AC_SUBST(LIBTOOL_DEPS) +-# Currently the scripts works with python2.x only +-# Check for this at first +-AC_PATH_PROG(PYTHON, python2 python2.7 python2.6 python2.5 python) +-AM_PATH_PYTHON(,, [:]) +-py_CHECK_MAJOR_VERSION([PYTHON_VERSION], [2]) + AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir) + + # Checks for libraries. +@@ -135,6 +130,5 @@ AC_CONFIG_FILES([ + addrdb/Makefile + src/Makefile + tests/Makefile +- test-serial/Makefile + ]) + AC_OUTPUT +-- +1.9.2 + diff --git a/package/linux-zigbee/linux-zigbee.mk b/package/linux-zigbee/linux-zigbee.mk new file mode 100644 index 0000000000..3001eefa61 --- /dev/null +++ b/package/linux-zigbee/linux-zigbee.mk @@ -0,0 +1,30 @@ +################################################################################ +# +# linux-zigbee +# +################################################################################ + +LINUX_ZIGBEE_VERSION = v0.3.1 +LINUX_ZIGBEE_SITE = git://linux-zigbee.git.sourceforge.net/gitroot/linux-zigbee/linux-zigbee +LINUX_ZIGBEE_LICENSE = GPLv2 +LINUX_ZIGBEE_LICENSE_FILES = COPYING +LINUX_ZIGBEE_DEPENDENCIES = libnl host-pkgconf host-flex host-bison + +# We patch configure.ac/Makefile.am +LINUX_ZIGBEE_AUTORECONF = YES + +LINUX_ZIGBEE_CONF_OPT = \ + --disable-manpages \ + --with-leasefile="$(call qstrip,$(BR2_PACKAGE_LINUX_ZIGBEE_LEASEFILE))" + +ifeq ($(BR2_PACKAGE_LINUX_ZIGBEE_TESTS),y) +LINUX_ZIGBEE_CONF_OPT += --with-zbtestdir='/usr/sbin/' +else +LINUX_ZIGBEE_CONF_OPT += --with-zbtestdir='' +endif + +ifeq ($(BR2_PACKAGE_LINUX_ZIGBEE_OLD_KERNEL_COMPAT),y) +LINUX_ZIGBEE_CONF_OPT += --enable-kernel-compat +endif + +$(eval $(autotools-package)) -- 2.30.2