Skip to contentSkip to conversation

packages/linux-pam: disable when using musl

PATCH New Brendan Heading 2 participants 5 messages Aug 20, 2015 – Aug 26, 2015

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 packages/linux-pam: disable when using musl

linux-pam needs some surgery to build under musl, so for the time being disable it until the issues are solved. Also disables dependent package python-pam, and dependent suboptions under openvmtools, rsh-redone and util-linux.

---
v1 -> v2 - added missing comments to document that packages require non-musl (ie uclibc or (e)glibc) toolchains.
---

---
 package/linux-pam/Config.in   |  5 +++--
 package/openvmtools/Config.in |  5 +++--
 package/python-pam/Config.in  |  6 ++++--
 package/rsh-redone/Config.in  | 10 ++++++----
 package/util-linux/Config.in  | 10 ++++++----
 5 files changed, 22 insertions(+), 14 deletions(-)
package/linux-pam/Config.in +3 -2
index 6b92886..04618be 100644
@@ -10,11 +10,12 @@ config BR2_PACKAGE_LINUX_PAM
 	# https://lists.fedorahosted.org/pipermail/linux-pam-commits/2012-February/000105.html
 	# for details.
 	depends on !BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_USES_MUSL	# linux-pam
 	help
 	  A Security Framework that Provides Authentication for Applications
 
 	  http://linux-pam.org
 
-comment "linux-pam needs a toolchain w/ wchar, locale, dynamic library"
+comment "linux-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
-		|| BR2_STATIC_LIBS
+		|| BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
package/openvmtools/Config.in +3 -2
index 8e22eff..091f640 100644
@@ -36,11 +36,12 @@ config BR2_PACKAGE_OPENVMTOOLS_PAM
 	# linux-pam needs locale and wchar, but we already have this
 	# dependency on the main symbol, above.
 	depends on !BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_USES_MUSL	# linux-pam
 	help
 	  Support for PAM in openvmtools
 
-comment "PAM support needs a toolchain w/ dynamic library"
-	depends on BR2_STATIC_LIBS
+comment "PAM support needs a uClibc or (e)glibc toolchain w/ dynamic library"
+	depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
 
 endif
 
package/python-pam/Config.in +4 -2
index 6c7bc63..b23a8e0 100644
@@ -1,6 +1,7 @@
-comment "python-pam needs a toolchain w/ wchar, locale, dynamic library"
+comment "python-pam needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on BR2_PACKAGE_PYTHON
-	depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS
+	depends on !BR2_ENABLE_LOCALE || !BR2_USE_WCHAR || BR2_STATIC_LIBS || \
+		BR2_TOOLCHAIN_USES_MUSL
 
 config BR2_PACKAGE_PYTHON_PAM
 	bool "python-pam"
@@ -8,6 +9,7 @@ config BR2_PACKAGE_PYTHON_PAM
 	depends on BR2_ENABLE_LOCALE # linux-pam
 	depends on BR2_USE_WCHAR # linux-pam
 	depends on !BR2_STATIC_LIBS # linux-pam
+	depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
 	select BR2_PACKAGE_LINUX_PAM
 	help
 	  PAM (Pluggable Authentication Module) bindings for Python.
package/rsh-redone/Config.in +6 -4
index 218b47c..4bd0c19 100644
@@ -16,11 +16,12 @@ config BR2_PACKAGE_RSH_REDONE_RLOGIND
 	bool "rlogind"
 	depends on !BR2_STATIC_LIBS
 	depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR
+	depends on !BR2_TOOLCHAIN_USES_MUSL	# linux-pam
 	select BR2_PACKAGE_LINUX_PAM
 
-comment "rlogind needs a toolchain w/ wchar, locale, dynamic library"
+comment "rlogind needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
-		|| BR2_STATIC_LIBS
+		|| BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
 
 config BR2_PACKAGE_RSH_REDONE_RSH
 	bool "rsh"
@@ -29,10 +30,11 @@ config BR2_PACKAGE_RSH_REDONE_RSHD
 	bool "rshd"
 	depends on BR2_ENABLE_LOCALE && BR2_USE_WCHAR
 	depends on !BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_USES_MUSL	# linux-pam
 	select BR2_PACKAGE_LINUX_PAM
 
-comment "rshd needs a toolchain w/ wchar, locale, dynamic library"
+comment "rshd needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
-		|| BR2_STATIC_LIBS
+		|| BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
 
 endif
package/util-linux/Config.in +6 -4
index 39df11c..cc6e9a5 100644
@@ -66,13 +66,14 @@ config BR2_PACKAGE_UTIL_LINUX_CHFN_CHSH
 	bool "chfn/chsh"
 	depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
 	depends on !BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
 	select BR2_PACKAGE_LINUX_PAM
 	help
 	  Change login shell, real user name and information
 
-comment "chfn/chsh needs a toolchain w/ wchar, locale, dynamic library"
+comment "chfn/chsh needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
-		|| BR2_STATIC_LIBS
+		|| BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
 
 config BR2_PACKAGE_UTIL_LINUX_CRAMFS
 	bool "cramfs utilities"
@@ -124,13 +125,14 @@ config BR2_PACKAGE_UTIL_LINUX_LOGIN_UTILS
 	bool "login utilities"
 	depends on (BR2_ENABLE_LOCALE && BR2_USE_WCHAR) # linux-pam
 	depends on !BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam
 	select BR2_PACKAGE_LINUX_PAM
 	help
 	  Build login utilities (last, login, su, sulogin)
 
-comment "login utilities needs a toolchain w/ wchar, locale, dynamic library"
+comment "login utilities needs a uClibc or (e)glibc toolchain w/ wchar, locale, dynamic library"
 	depends on !(BR2_ENABLE_LOCALE && BR2_USE_WCHAR) \
-		|| BR2_STATIC_LIBS
+		|| BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
 
 config BR2_PACKAGE_UTIL_LINUX_LOSETUP
 	bool "losetup"
Signature · 1 line
2.4.3
#1 lore raw

PATCH v2 1/1 packages/linux-pam: disable when using musl

Brendan,

Quoted 7 lines · Brendan Heading

linux-pam needs some surgery to build under musl, so for the time being disable it until the issues are solved. Also disables dependent package python-pam, and dependent suboptions under openvmtools, rsh-redone and util-linux.

Quoted 6 lines

---
v1 -> v2 - added missing comments to document that packages require non-musl (ie uclibc or (e)glibc) toolchains.
---

Your SoB line should be before the first "---" otherwise it gets stripped by Git when applying.

Review

Quoted 1 line
(quoted diff) +1 -0
+	depends on !BR2_TOOLCHAIN_USES_MUSL	# linux-pam

We use a space before the comment, not a tab.

I've applied to master after fixing those minor nits.

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

PATCH v2 1/1 packages/linux-pam: disable when using musl

Thanks Thomas!

I have submitted a separate patch set to support linux-pam under musl, but I think I'll rebase and re-issue it against the August release when it goes out.

regards

Brendan

Quoted 34 lines · Thomas Petazzoni

Brendan,

Quoted 7 lines · Brendan Heading

linux-pam needs some surgery to build under musl, so for the time being disable it until the issues are solved. Also disables dependent package python-pam, and dependent suboptions under openvmtools, rsh-redone and util-linux.

Quoted 6 lines

---
v1 -> v2 - added missing comments to document that packages require non-musl (ie uclibc or (e)glibc) toolchains.
---

Your SoB line should be before the first "---" otherwise it gets stripped by Git when applying.

Quoted 1 line

+ depends on !BR2_TOOLCHAIN_USES_MUSL # linux-pam

We use a space before the comment, not a tab.

I've applied to master after fixing those minor nits.

Thanks a lot!

Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

#3 lore raw

PATCH v2 1/1 packages/linux-pam: disable when using musl

Dear Brendan Heading,

Quoted 5 lines · Brendan Heading

Thanks Thomas!

I have submitted a separate patch set to support linux-pam under musl, but I think I'll rebase and re-issue it against the August release when it goes out.

Is upstream interested about musl support, and active?

The thing that worries me a bit about the changes required to get things (in general, not only linux-pam) is that many of those patches will probably never make their way to the respective upstream projects.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#4 lore raw

PATCH v2 1/1 packages/linux-pam: disable when using musl

Quoted 6 lines

Is upstream interested about musl support, and active?

The thing that worries me a bit about the changes required to get things (in general, not only linux-pam) is that many of those patches will probably never make their way to the respective upstream projects.

Good question.

I'd sent the patch here first as folks here are generally more clued up on cross compiling, differing C libraries, autoconf/automake and so on.

But I can certainly go ahead and raise it with the upstream maintainers.

Brendan