From: Michael Olbrich <m.olbrich@pengutronix.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] lowpan-tools: new package
Date: Wed, 30 Jan 2013 21:28:40 +0100 [thread overview]
Message-ID: <20130130202840.GD32646@pengutronix.de> (raw)
In-Reply-To: <20130130111241.GA1209@x61s.8.8.8.8>
On Wed, Jan 30, 2013 at 12:12:43PM +0100, Alexander Aring wrote:
> Hi,
>
> thanks for reviewing this one.
>
> On Tue, Jan 29, 2013 at 11:40:00PM +0100, Michael Olbrich wrote:
> > On Sun, Jan 27, 2013 at 06:09:49PM +0100, Alexander Aring wrote:
> > > This package provides utils to set up ieee802.15.4 devices.
> > >
> > > Add option do not install test-utils. These test-utils depends
> > > on python. Currently the buildsystem of lowpan-tools can't
> > > disable building of test-tools, which makes a dependency of
> > > python to this package.
> >
> > not true. By setting ac_cv_path_PYTHON=: you can force the build not to use
> > python.
>
> Ok, that works fine. Thanks for this information.
>
> >
> > > Signed-off-by: Alexander Aring <alex.aring@gmail.com>
> > > ---
> > > rules/lowpan-tools.in | 21 +++++++++++++
> > > rules/lowpan-tools.make | 84 +++++++++++++++++++++++++++++++++++++++++++++++++
> > > 2 files changed, 105 insertions(+)
> > > create mode 100644 rules/lowpan-tools.in
> > > create mode 100644 rules/lowpan-tools.make
> > >
> > > diff --git a/rules/lowpan-tools.in b/rules/lowpan-tools.in
> > > new file mode 100644
> > > index 0000000..b83f44a
> > > --- /dev/null
> > > +++ b/rules/lowpan-tools.in
> > > @@ -0,0 +1,21 @@
> > > +## SECTION=networking
> > > +
> > > +menuconfig LOWPAN_TOOLS
> > > + tristate
> > > + prompt "lowpan-tools "
> > > + select LIBNL3
> > > + select PYTHON
> >
> > select PYTHON if LOWPAN_TOOLS_TESTS
> >
> > > + help
> > > + This is a set of utils to manage the Linux LoWPAN stack.
> > > + The LoWPAN stack aims for IEEE 802.15.4-2003 (and for
> > > + lesser extent IEEE 802.15.4-2006) compatibility.
> > > +
> > > +if LOWPAN_TOOLS
> > > +
> > > +config LOWPAN_TOOLS_TESTS
> > > + bool
> > > + prompt "lowpan-tests"
> > > + help
> > > + Install lowpan-tests suites in /usr/libexec/lowpan-tools.
> > > +
> > > +endif # LOWPAN_TOOLS
> > > diff --git a/rules/lowpan-tools.make b/rules/lowpan-tools.make
> > > new file mode 100644
> > > index 0000000..b40946f
> > > --- /dev/null
> > > +++ b/rules/lowpan-tools.make
> > > @@ -0,0 +1,84 @@
> > > +# -*-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_LOWPAN_TOOLS) += lowpan-tools
> > > +
> > > +#
> > > +# Paths and names
> > > +#
> > > +LOWPAN_TOOLS_VERSION := 0.3
> > > +LOWPAN_TOOLS_MD5 := 564bdf163de5b33232d751383495a65c
> > > +LOWPAN_TOOLS := lowpan-tools-$(LOWPAN_TOOLS_VERSION)
> > > +LOWPAN_TOOLS_SUFFIX := tar.gz
> > > +LOWPAN_TOOLS_URL := $(call ptx/mirror, SF, linux-zigbee/$(LOWPAN_TOOLS).$(LOWPAN_TOOLS_SUFFIX))
> > > +LOWPAN_TOOLS_SOURCE := $(SRCDIR)/$(LOWPAN_TOOLS).$(LOWPAN_TOOLS_SUFFIX)
> > > +LOWPAN_TOOLS_DIR := $(BUILDDIR)/$(LOWPAN_TOOLS)
> > > +LOWPAN_TOOLS_LICENSE := GPLv2
> > > +
> >
> > You need to add ac_cv_path_PYTHON=: or ac_cv_path_PYTHON=$(CROSS_PYTHON)
> > (depending on LOWPAN_TOOLS_TESTS) too LOWPAN_TOOLS_CONF_ENV, otherwise the
> > wrong python is used.
>
> I test this one, but ac_cv_path_PYTHON=$(CROSS_PYTHON) doesn't work for
> me.
> I need to set PYTHON=$(CROSS_PYTHON).
Hmmm, it worked for me (tm), but you need to make sure that
LOWPAN_TOOLS_CONF_ENV is defined with '=' not ':=', otherwise CROSS_PYTHON
is empty.
If you run ptxdist with '-v' then it will print the environment used when
executing configure. Make sure ac_cv_path_PYTHON contains a usefull value
there.
>
>
> I tried to figure out this in configure script.
>
> ...
> if ${ac_cv_path_PYTHON+:} false; then :
> $as_echo_n "(cached) " >&6
> else
> case $PYTHON in
> [\\/]* | ?:[\\/]*)
> ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
> ;;
> *)
> ...
>
> First, this is some autoconf magic and I am not a master of the known
> universe in this.
>
> But there is a check if PYTHON is a valid path and then it's sets
> ac_cv_path_PYTHON to $PYTHON variable, there is no check on
> ac_cv_path_PYTHON.
>
> The first one "if ${ac_cv_path_PYTHON+:}" will only skip this test, if
> ac_cv_path_PYTHON is set to ":".
>
> >
> > > +#
> > > +# autoconf
> > > +#
> > > +LOWPAN_TOOLS_CONF_TOOL := autoconf
> > > +LOWPAN_TOOLS_CONF_OPT := \
> > > + $(CROSS_AUTOCONF_USR) \
> > > + --disable-manpages \
> > > + --enable-shared \
> > > + --disable-static \
> > > + --with-gnu-ld
> > > +
> > > +LOWPAN_TOOLS_INSTALL_FILES-y =
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=gnl
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=izlisten
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=listen-packet
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test1
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test2
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test3
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test4
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test5
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test6
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test7
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test_edscan.py
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test_packets.py
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test_recv.py
> > > +LOWPAN_TOOLS_INSTALL_FILES-$(PTXCONF_LOWPAN_TOOLS_TESTS) +=test_trx.py
> >
> > You have a "ifdef PTXCONF_LOWPAN_TOOLS_TESTS" anyways below, so this list
> > can be unconditionally
> >
>
> Should I do only a ifdef for *.pyc file and then call foreach outside
> the ifdef?
> Or should I remove the complete list and call install_copy for each of
> them?
> In my opinion a list is easier to maintain.
I meant, keep the foreach inside the ifdef and do this here:
LOWPAN_TOOLS_INSTALL_FILES := \
gnl izlisten listen-packet test1 test2 test3 test4 test5 \
test6 ...
Michael
> > > +
> > > +# ----------------------------------------------------------------------------
> > > +# Target-Install
> > > +# ----------------------------------------------------------------------------
> > > +
> > > +$(STATEDIR)/lowpan-tools.targetinstall:
> > > + @$(call targetinfo)
> > > +
> > > + @$(call install_init, lowpan-tools)
> > > + @$(call install_fixup, lowpan-tools,PRIORITY,optional)
> > > + @$(call install_fixup, lowpan-tools,SECTION,base)
> > > + @$(call install_fixup, lowpan-tools,AUTHOR,"Alexander Aring <aar@pengutronix.de>")
> > > + @$(call install_fixup, lowpan-tools,DESCRIPTION,missing)
> > > +
> > > + $(call install_copy, lowpan-tools, 0, 0, 0755, -, /usr/bin/izchat)
> > > + $(call install_copy, lowpan-tools, 0, 0, 0755, -, /usr/sbin/iz)
> > > + $(call install_copy, lowpan-tools, 0, 0, 0755, -, /usr/sbin/izattach)
> > > + $(call install_copy, lowpan-tools, 0, 0, 0755, -, /usr/sbin/izcoordinator)
> > > +
> > > +ifdef PTXCONF_LOWPAN_TOOLS_TESTS
> > > + @$(call install_copy, lowpan-tools, 0, 0, 0644, -, $(PYTHON_SITEPACKAGES)/test_DQ.pyc)
> > > +
> > > + @$(foreach tool,$(LOWPAN_TOOLS_INSTALL_FILES-y), \
> > > + $(call install_copy, lowpan-tools, 0, 0, 0755, -, \
> > /usr/libexec/lowpan-tools/$(tool));)
> >
> > break
> >
> > Michael
> >
> > > +endif
> > > +
> > > + @$(call install_finish, lowpan-tools)
> > > +
> > > + @$(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
>
> --
> 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
next prev parent reply other threads:[~2013-01-30 20:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-27 17:09 Alexander Aring
2013-01-29 22:40 ` Michael Olbrich
2013-01-30 11:12 ` Alexander Aring
2013-01-30 20:28 ` Michael Olbrich [this message]
2013-01-30 20:44 ` Alexander Aring
2013-01-30 21:00 ` Alexander Aring
2013-01-31 7:54 ` Juergen Beisert
2013-02-05 15:03 ` Alexander Dahl
2013-02-05 15:08 ` Alexander Aring
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130130202840.GD32646@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox