lkml.org 
[lkml]   [2004]   [Feb]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectBug in "select" dependency checking?
From
Date
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

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

\
 
 \ /
  Last update: 2005-03-22 14:00    [W:0.187 / U:0.004 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site