Subject: Re: unmet direct dependencies in -next

From: Lee Jones <[email-masked]>
Date: Mon, 10 Aug 2015 10:10:04 +0100

On Sun, 09 Aug 2015, Richard Weinberger wrote:

> Hi!
> 
> -next faces some build issues on UML because of unmet direct dependencies.
> Mostly due to HAS_IOMEM and I2C.
> 
> warning: (MEDIA_SUBDRV_AUTOSELECT && VIDEO_CX231XX && INV_MPU6050_IIO) selects I2C_MUX which has unmet direct dependencies (I2C && HAS_IOMEM)
> warning: (ST_IRQCHIP && HIP04_ETH && STMMAC_PLATFORM && DWMAC_IPQ806X && DWMAC_LPC18XX && DWMAC_ROCKCHIP && DWMAC_SOCFPGA && DWMAC_STI && TI_CPSW && PINCTRL_ROCKCHIP &&
> PINCTRL_DOVE && POWER_RESET_KEYSTONE && POWER_RESET_SYSCON && POWER_RESET_SYSCON_POWEROFF && S3C2410_WATCHDOG && VIDEO_OMAP3 && VIDEO_S5P_FIMC && RTC_DRV_AT91SAM9 && VIDEO_OMAP4 &&
> HWSPINLOCK_QCOM && ATMEL_ST && QCOM_GSBI) selects MFD_SYSCON which has unmet direct dependencies (HAS_IOMEM)
> warning: (MEDIA_SUBDRV_AUTOSELECT && VIDEO_CX231XX && INV_MPU6050_IIO) selects I2C_MUX which has unmet direct dependencies (I2C && HAS_IOMEM)
> warning: (ST_IRQCHIP && HIP04_ETH && STMMAC_PLATFORM && DWMAC_IPQ806X && DWMAC_LPC18XX && DWMAC_ROCKCHIP && DWMAC_SOCFPGA && DWMAC_STI && TI_CPSW && PINCTRL_ROCKCHIP &&
> PINCTRL_DOVE && POWER_RESET_KEYSTONE && POWER_RESET_SYSCON && POWER_RESET_SYSCON_POWEROFF && S3C2410_WATCHDOG && VIDEO_OMAP3 && VIDEO_S5P_FIMC && RTC_DRV_AT91SAM9 && VIDEO_OMAP4 &&
> HWSPINLOCK_QCOM && ATMEL_ST && QCOM_GSBI) selects MFD_SYSCON which has unmet direct dependencies (HAS_IOMEM)
> 
> For example MFD_SYSCON cannot build on UML as it depends on HAS_IOMEM.
> While the symbol MFD_SYSCON has correct dependencies some users of MFD_SYSCON
> just issue a "select MFD_SYSCON" and bypass the HAS_IOMEM dependency and causing the build to fail.
> 
> This brings me to a question on kconfig itself, wouldn't it be better to just disable a symbol if it has
> unmet direct dependencies?

If this is a question about "kconfig itself", you should probably have
included the correct ML and Maintainer:

KCONFIG
M:      Michal Marek <[email-masked]>
L:      [email-masked]
S:      Odd Fixes
F:      Documentation/kbuild/kconfig-language.txt
F:      scripts/kconfig/

There are also quite a few interested parties on LKML who might be
inclined to submit a fix for you.

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog