浏览代码

package/asterisk: needs libxcrypt with glibc

We unconditionally configure asterisk with --with-crypt, so the build
currently fails under glibc since it removed crypt in 2.39, and we
explicitly remove it from external toolchains as well, whatever the
version, causing build failures such as:

    checking for mandatory modules:  OPENSSL BKTR CRYPT ILBC JANSSON LIBEDIT LIBJWT LIBXML2 PJPROJECT SQLITE3 ZLIB... fail
    configure: ***
    configure: *** The CRYPT installation appears to be missing or broken.
    configure: *** Either correct the installation, or run configure
    configure: *** including --without-crypt.

Fixing this could be done in two ways: either make libxcrypt a mandatory
dependency under glibc, and continue unconditionally enabling crypt
support, or only enable crypt support when libxcrypt is available or
this was a non-glibc toolchain.

We chose the first option, to keep the existing behaviour (crypt support
is always enabled), to be aligned with other packages (libxcrypt is
selected under glibc toolchains), and because it is also the simplest.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Yann E. MORIN 1 年之前
父节点
当前提交
8996fedefb
共有 2 个文件被更改,包括 6 次插入0 次删除
  1. 1 0
      package/asterisk/Config.in
  2. 5 0
      package/asterisk/asterisk.mk

+ 1 - 0
package/asterisk/Config.in

@@ -12,6 +12,7 @@ config BR2_PACKAGE_ASTERISK
 	select BR2_PACKAGE_LIBILBC
 	select BR2_PACKAGE_LIBJWT
 	select BR2_PACKAGE_LIBPJSIP
+	select BR2_PACKAGE_LIBXCRYPT if BR2_TOOLCHAIN_USES_GLIBC
 	select BR2_PACKAGE_LIBXML2
 	select BR2_PACKAGE_SQLITE
 	select BR2_PACKAGE_UTIL_LINUX

+ 5 - 0
package/asterisk/asterisk.mk

@@ -238,6 +238,11 @@ else
 ASTERISK_CONF_OPTS += --without-ssl
 endif
 
+ifeq ($(BR2_PACKAGE_LIBXCRYPT),y)
+# --with-crypt is unconditional, relies on the C library if present
+ASTERISK_DEPENDENCIES += libxcrypt
+endif
+
 ifeq ($(BR2_PACKAGE_SPEEX)$(BR2_PACKAGE_SPEEXDSP),yy)
 ASTERISK_DEPENDENCIES += speex
 ASTERISK_CONF_OPTS += --with-speex --with-speexdsp