mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Alexander Aring <alex.aring@gmail.com>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] lowpan-tools: new package
Date: Wed, 30 Jan 2013 22:00:07 +0100	[thread overview]
Message-ID: <20130130210005.GC1322@x61s.8.8.8.8> (raw)
In-Reply-To: <20130130202840.GD32646@pengutronix.de>

Hi,

On Wed, Jan 30, 2013 at 09:28:40PM +0100, Michael Olbrich wrote:
> 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.

Now I realize it. I found rules with ':=' and '='. Could you explain the
different?

Should I use '=' if I access variables(like CROSS_PYTHON) except
CROSS_ENV?

> 
> 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

-- 
ptxdist mailing list
ptxdist@pengutronix.de

  parent reply	other threads:[~2013-01-30 20:59 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
2013-01-30 20:44       ` Alexander Aring
2013-01-30 21:00       ` Alexander Aring [this message]
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=20130130210005.GC1322@x61s.8.8.8.8 \
    --to=alex.aring@gmail.com \
    --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