lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 19 Nov 2011 08:52:41 +0100
From:	"konrad.gaisler" <konrad@...sler.com>
To:	Arnaud Lacombe <lacombar@...il.com>
CC:	Randy Dunlap <rdunlap@...otime.net>, linux-kernel@...r.kernel.org,
	linux kbuild list <linux-kbuild@...r.kernel.org>,
	mmarek@...e.cz, pefoley2@...izon.net,
	yann.morin.1998@...iens.enib.fr, sam@...nborg.org,
	zippel@...ux-m68k.org
Subject: Re: [PATCH 1/1] kconfig: Add a configuration subtree command to kconfig

On 11/19/2011 07:23 AM, Arnaud Lacombe wrote:
> Hi,
>
> On Fri, Nov 18, 2011 at 5:51 PM, konrad.gaisler<konrad@...sler.com>  wrote:
>> On 11/18/2011 07:09 PM, Randy Dunlap wrote:
>>> (changed linux-config@ to linux-kbuild@...r.kernel.org)
>>>
>>> On 11/18/2011 06:16 AM, Konrad Eisele wrote:
>>>> New kconfig command "subsource":
>>>> subsource "<kconfig>""<cwd>""<.config>""<title>"<internal_prefix>
>>>>   <.config_prefix>
>>>> Allocates<kconfig>    as a configuration subtree using<.config>    as the
>>>> configuration
>>>> file to save and load from.<cwd>    is the directory path to switch to for
>>>> "source" to
>>>> work, "<title>" is the Menu tile of the subtree,<internal_prefix>    is a
>>>> internal prefix,
>>>> and<.config_prefix>    is the prefix to append/remove when
>>>> saving/loading<.config>.
>>> That explains what but not why.  You need some justification(s) for such
>>> a large patch.  Maybe even some example usages.
>> The patch originated from a buildsystem that uses buildroot and linux.
>> Both use Kconfig and the buildsystem itself uses Kconfig. To configure
>> a subproject you have to exit the toplevel Kconfig and restart to
>> startup a subproject Kconfig, It is even more anoying when looking
>> inside buildroot. It has in its turn subprojects uClibc, busybox,
>> linux, crosstools-ng which all use Kconfig. The subtree patch
>> does make it possible to unify all in one Kconfig.
>>
>> As an example, apply the patch, then add to<top>/Kconfig the lines:
>>
>> subsource "arch/sparc/Kconfig" "." ".config_sparc" "SPARC config" SPARC_
>> CONFIG_
>> subsource "arch/mips/Kconfig" "." ".config_mips" "MIPS config" MIPS_ CONFIG_
>>
> ETOOMUCHARGUMENT!
>
> I wonder if we could not get all these parameters specified
> dynamically in the Kconfig. This would replace the `mainmenu' entry
> ala:
>
> config
>      title "Linux ..."
>      prefix "CONFIG_"
>      file .config
> endconfig
Yes maybe it can be done that way. Personally I think it is
more difficult.

>
> That way, everytime you parse a tree, you can generate the structure
> on-the-fly in a non-intrusive manner.
>
> I have been thinking of doing something like that with a config file,
> but doing it in the Kconfig would make much more sense.
>
> Btw, what are you calling "<internal_prefix>" ?

It is a left-over of a previous iteration where I was prefixing all
symbols to avoid namespace clashes. Now I use the symbol->level
field. It can be removed to:

subsource "<kconfig>""<cwd>""<.config>""<title>"<.config_prefix>


-- Konrad

>
> Thanks,
>   - Arnaud
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ