[Buildroot] [PATCH] Add package linux-pam (resending, fixed indentation, mentioned website)
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Fri Jul 20 20:45:38 UTC 2012
Hello Dmitry,
Le Wed, 18 Jul 2012 17:34:27 -0400,
Dmitry <golubovsky at gmail.com> a écrit :
> 1. Add the linux-pam package building instructions
> 2. If the linux-pam package is selected, make sure it builds before
> busybox just in case busybox is configured with PAM support
> (make linux-pam a dependency of busybox)
>
> Signed-off-by: Dmitry <golubovsky at gmail.com>
> ---
> package/Config.in | 1 +
> package/busybox/busybox.mk | 3 +++
> package/linux-pam/Config.in | 15 +++++++++++++++
> package/linux-pam/linux-pam.mk | 37 +++++++++++++++++++++++++++++++++++++
> 4 files changed, 56 insertions(+), 0 deletions(-)
> create mode 100644 package/linux-pam/Config.in
> create mode 100644 package/linux-pam/linux-pam.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index 6aabb8e..4bbb293 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -660,6 +660,7 @@ source "package/bootutils/Config.in"
> endif
> source "package/htop/Config.in"
> source "package/kmod/Config.in"
> +source "package/linux-pam/Config.in"
linux-pam is a library, so it should rather go in Libraries -> Other in
the menuconfig.
> if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
> source "package/module-init-tools/Config.in"
> endif
> diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
> index 394a1ae..4a1de33 100644
> --- a/package/busybox/busybox.mk
> +++ b/package/busybox/busybox.mk
> @@ -11,6 +11,9 @@ else
> BUSYBOX_VERSION = $(call qstrip,$(BR2_BUSYBOX_VERSION))
> BUSYBOX_SITE = http://www.busybox.net/downloads
> endif
> +ifeq ($(BR2_PACKAGE_LINUX_PAM),y)
> +BUSYBOX_DEPENDENCIES += linux-pam
> +endif
> BUSYBOX_SOURCE = busybox-$(BUSYBOX_VERSION).tar.bz2
> BUSYBOX_BUILD_CONFIG = $(BUSYBOX_DIR)/.config
This Busybox change should be part of a separate patch (so your patch
series should have two patches: one adding the linux-pam package, one
tweaking Busybox to use linux-pam).
Also, shouldn't you ensure that CONFIG_PAM is enabled in the Busybox
configuration in that case?
> # Allows the build system to tweak CFLAGS
> diff --git a/package/linux-pam/Config.in b/package/linux-pam/Config.in
> new file mode 100644
> index 0000000..8a9bbca
> --- /dev/null
> +++ b/package/linux-pam/Config.in
> @@ -0,0 +1,15 @@
> +config BR2_PACKAGE_LINUX_PAM
> + bool "linux-pam"
> + select BR2_PACKAGE_LIBINTL
> + select BR2_PACKAGE_GETTEXT
No, see
http://buildroot.org/downloads/manual/manual.html#_gettext_integration_and_interaction_with_packages.
> diff --git a/package/linux-pam/linux-pam.mk b/package/linux-pam/linux-pam.mk
> new file mode 100644
> index 0000000..5024033
> --- /dev/null
> +++ b/package/linux-pam/linux-pam.mk
> @@ -0,0 +1,37 @@
> +############################################
> +#
> +# linux-pam
> +#
> +############################################
> +
> +LINUX_PAM_VERSION = 1.1.4
> +LINUX_PAM_SOURCE = Linux-PAM-$(LINUX_PAM_VERSION).tar.bz2
> +LINUX_PAM_SITE = http://linux-pam.org/library/
> +LINUX_PAM_INSTALL_STAGING = YES
> +LINUX_PAM_INSTALL_TARGET = YES
> +LINUX_PAM_CONF_OPT = --disable-prelude --disable-isadir --disable-nis --disable-regenerate-docu
> +LINUX_PAM_CONF_OPT += --enable-securedir=/lib/security --libdir=/lib
> +LINUX_PAM_DEPENDENCIES = gettext libintl flex
> +LINUX_PAM_LICENSE = BSD
> +LINUX_PAM_LICENSE_FILES = COPYING
> +
> +define LINUX_PAM_BUILD_CMDS
> + $(MAKE) CC="$(TARGET_CC) -lintl -lfl" LD="$(TARGET_LD)" -C $(@D) all
> +endef
> +
> +define LINUX_PAM_DISABLE_INNETGR
> + echo >>$(@D)/config.h
> + echo "#undef HAVE_RUSEROK">>$(@D)/config.h
> + echo "#define HAVE_RUSEROK_AF">>$(@D)/config.h
> + echo "#define ruserok_af(a, b, c, d, e) (-1)" >>$(@D)/config.h
> + echo "#undef innetgr">>$(@D)/config.h
> + echo "#define innetgr(a, b, c, d) 0" >>$(@D)/config.h
> + echo "all:" >$(@D)/doc/Makefile
> + echo "" >>$(@D)/doc/Makefile
> + echo "install:" >>$(@D)/doc/Makefile
> + echo "" >>$(@D)/doc/Makefile
> +endef
Can you add a comment above this justifying why this is needed?
Thanks!
Best regards,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the buildroot
mailing list