mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Bug in "select" dependency checking?
@ 2004-02-06  0:37 Andreas Gruenbacher
  2004-02-06 14:00 ` Roman Zippel
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Gruenbacher @ 2004-02-06  0:37 UTC (permalink / raw)
  To: Roman Zippel; +Cc: kbuild-devel, lkml

Hello,

I think the dependency check in scripts/kconfig/symbol.c has a bug
related to "select", but possibly it's only a misunderstanding what
select is supposed to do. I have the following symbols and dependencies
(simplified):


  config NFS_ACL_SUPPORT
	tristate

  config NFSD
	tristate "..."
	select NFS_ACL_SUPPORT if NFSD_ACL	

  config NFSD_V3
	bool "..."
	depends on NFSD

  config NFSD_ACL
	bool "..."
	depends on NFSD_V3

  config NFS_FS
	tristate "..."
	select NFS_ACL_SUPPORT if NFS_ACL

  config NFS_V3
	bool "..."
	depends on NFS_FS

  config NFS_ACL
	bool "..."
	depends on NFS_V3


The intention of this is as follows: NFS_ACL_SUPPORT is a symbol without
menu entry. It activates an object which is either a module or linked
into the kernel. It is needed if NFSD_ACL is y or NFS_ACL is y. When it
is needed, it should have max(NFSD,NFS_FS).

With this configuration, menuconf gives me this message (among others):

  Warning! Found recursive dependency: NFSD_V3 NFSD_ACL NFSD NFSD_V3

In my understanding, the select statement does not cause a dependency of
NFSD on NFSD_ACL. I can write the same thing without selects as follows:

  config NFS_ACL_SUPPORT
        tristate
        default y if (NFSD=y || NFS_FS=y) && (NFSD_ACL || NFS_ACL)
        default m if (NFSD!=y && NFS_FS!=y) && (NFSD=m || NFS_FS=m) &&
		     (NFSD_ACL || NFS_ACL)

Any thoughts?


Cheers,
-- 
Andreas Gruenbacher <agruen@suse.de>
SUSE Labs, SUSE LINUX AG


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-02-07 22:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-02-06  0:37 Bug in "select" dependency checking? Andreas Gruenbacher
2004-02-06 14:00 ` Roman Zippel
2004-02-06 14:49   ` Andreas Gruenbacher
2004-02-07 22:03     ` Roman Zippel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®