Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCHv6 1/5] manual: fix manual generation in preparation for BR2_EXTERNAL support
Date: Thu, 5 Dec 2013 00:19:52 +0100	[thread overview]
Message-ID: <20131204231952.GI3332@free.fr> (raw)
In-Reply-To: <1386198891-17968-2-git-send-email-thomas.petazzoni@free-electrons.com>

Thomas, Samuel, All,

On 2013-12-05 00:14 +0100, Thomas Petazzoni spake thusly:
> From: Samuel Martin <s.martin49@gmail.com>
> 
> This patch fixes an issue that occurs during the manual build process
> which will occur when BR2_EXTERNAL is introduced.
> 
> During the package list generation, the python script using kconfiglib
> module reads and parses the Config.in files. So, symbols, including
> environment variables, got expanded and/or resolved.  In
> kconfiglib.py, this patch fixes the regex that did not allow to use
> numbers in the environment variable names, so '$BR2_EXTERNAL' got
> wrongly expanded like it was '${BR}2_EXTERNAL':
> 
> <snip>
> >>>   Updating the manual lists...
> Traceback (most recent call last):
>   File "/opt/buildroot/master/support/scripts/gen-manual-lists.py", line 375, in <module>
>     buildroot = Buildroot()
>   File "/opt/buildroot/master/support/scripts/gen-manual-lists.py", line 216, in __init__
>     self.root_config))
>   File "/opt/buildroot/master/support/scripts/kconfiglib.py", line 214, in __init__
>     self.top_block = self._parse_file(filename, None, None, None)
>   File "/opt/src/buildroot/master/support/scripts/kconfiglib.py", line 919, in _parse_file
>     return self._parse_block(line_feeder, None, parent, deps, visible_if_deps, res)
>   File "/opt/buildroot/master/support/scripts/kconfiglib.py", line 1114, in _parse_block
>     self.base_dir))
> IOError: /opt/buildroot/master/Config.in:490: sourced file "$BR2_EXTERNAL/Config.in" (expands to
> "2_EXTERNAL/Config.in") not found. Perhaps base_dir
> (argument to Config.__init__(), currently
> "/opt/buildroot/master") is set to the wrong value.
> docs/manual/manual.mk:2: recipe for target 'manual-update-lists' failed
> make: *** [manual-update-lists] Error 1
> </snip>
> 
> Reported-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

Regards,
Yann E. MORIN.

> ---
>  support/scripts/kconfiglib.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/support/scripts/kconfiglib.py b/support/scripts/kconfiglib.py
> index 0704cc0..e40947c 100644
> --- a/support/scripts/kconfiglib.py
> +++ b/support/scripts/kconfiglib.py
> @@ -2074,7 +2074,7 @@ set_re   = re.compile(r"CONFIG_(\w+)=(.*)")
>  unset_re = re.compile(r"# CONFIG_(\w+) is not set")
>  
>  # Regular expression for finding $-references to symbols in strings
> -sym_ref_re = re.compile(r"\$[A-Za-z_]+")
> +sym_ref_re = re.compile(r"\$[A-Za-z_][0-9A-Za-z_]*")
>  
>  # Integers representing symbol types
>  UNKNOWN, BOOL, TRISTATE, STRING, HEX, INT = range(0, 6)
> -- 
> 1.8.1.2
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2013-12-04 23:19 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-04 23:14 [Buildroot] [PATCHv6 0/5] Keeping customizations outside the Buildroot tree with BR2_EXTERNAL Thomas Petazzoni
2013-12-04 23:14 ` [Buildroot] [PATCHv6 1/5] manual: fix manual generation in preparation for BR2_EXTERNAL support Thomas Petazzoni
2013-12-04 23:19   ` Yann E. MORIN [this message]
2013-12-05 18:12     ` [Buildroot] What is an Acked-by? Arnout Vandecappelle
2013-12-05 20:12       ` Yann E. MORIN
2013-12-05 20:13         ` Yann E. MORIN
2013-12-06  8:03           ` Thomas De Schampheleire
2013-12-06  9:49             ` Arnout Vandecappelle
2013-12-05  9:32   ` [Buildroot] [PATCHv6 1/5] manual: fix manual generation in preparation for BR2_EXTERNAL support Ryan Barnett
2013-12-04 23:14 ` [Buildroot] [PATCHv6 2/5] core: introduce the BR2_EXTERNAL variable Thomas Petazzoni
2013-12-05 12:39   ` Ryan Barnett
2013-12-04 23:14 ` [Buildroot] [PATCHv6 3/5] core: allow external Config.in/makefile code to be integrated Thomas Petazzoni
2013-12-05 12:40   ` Ryan Barnett
2013-12-04 23:14 ` [Buildroot] [PATCHv6 4/5] core: allow external defconfigs to be used Thomas Petazzoni
2013-12-05 12:41   ` Ryan Barnett
2013-12-04 23:14 ` [Buildroot] [PATCHv6 5/5] docs/manual: add explanations about BR2_EXTERNAL Thomas Petazzoni
2013-12-05 12:00   ` Ryan Barnett

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=20131204231952.GI3332@free.fr \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /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