On Thu, 13 Feb 2020 at 22:12, Daniel Baluta <daniel.baluta@xxxxxxxxx> wrote: > > > > Visible symbols usually should not be selected. The same with symbols > > with dependencies. The docs have this rule mentioned. > > You mean if module X depends on module Y, we shouldn't use select? > But this exactly what this patch does :). There are two different cases (hints against using select): 1. select A, if A is a user-visible (possible to select) option, 2. select only A if A depends on B (and B is kind of independent). These cases are discouraged. > The problem here is that when X depends on Y, and X=y and Y=m > when we try to compile X if get an error because we cannot find a symbol from Y. > > I think if X depends on Y, and X is forced to "y" then also Y should > be forced on "y". If X is bool, then depends should be =y. If X is tristate, then probably you need something like: depends (Y!=m || m) There is also solution like: config CEPH_FSCACHE depends on CEPH_FS=m && FSCACHE || CEPH_FS=y && FSCACHE=y but it works if the upper-level option (CEPH_FS) is a tristate. Best regards, Krzysztof _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel