busybox: disable PAM in the config if linux-pam is not selected
authorArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Mon, 26 Mar 2018 12:00:06 +0000 (14:00 +0200)
committerPeter Korsgaard <peter@korsgaard.com>
Mon, 26 Mar 2018 12:51:08 +0000 (14:51 +0200)
Currently there is only logic to enable PAM when linux-pam is selected.
However, busybox will fail to build with PAM enabled if the linux-pam
package has not been built before. So we should forcibly disable PAM in
busybox in that case.

Normally this is not an issue since our default busybox config doesn't
have PAM enabled. However, if you enable linux-pam, then save the
busybox config to a custom configuration file, then disable linux-pam
again, and then do a "make clean; make", the build will fail. A more
practical situation where this can occur is when the same custom
busybox config is used in a Buildroot config with and without
linux-pam.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/busybox/busybox.mk

index bc0c66175402cf67c9038f735f667747e12e00cd..7009f6a675181406b576c2e42c94946def45aa85 100644 (file)
@@ -248,6 +248,10 @@ define BUSYBOX_LINUX_PAM
        $(call KCONFIG_ENABLE_OPT,CONFIG_PAM,$(BUSYBOX_BUILD_CONFIG))
 endef
 BUSYBOX_DEPENDENCIES += linux-pam
+else
+define BUSYBOX_LINUX_PAM
+       $(call KCONFIG_DISABLE_OPT,CONFIG_PAM,$(BUSYBOX_BUILD_CONFIG))
+endef
 endif
 
 # Telnet support