Messages in this thread | | | Subject | Bug in "select" dependency checking? | From | Andreas Gruenbacher <> | Date | Fri, 06 Feb 2004 01:37:18 +0100 |
| |
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/
| |