Browse Source

systemd: enable for uClibc-ng

Patch out IDN usage. libidn will be removed from GNU C library
in the future, so we don't add it to uClibc-ng getnameinfo().
libkmod can't be activated when PKG_BB is 1 for kmod package.
Waldemar Brodkorb 7 years ago
parent
commit
fdfd165799

+ 0 - 1
package/kmod/Makefile

@@ -14,7 +14,6 @@ PKG_URL:=		http://profusion.mobi/index.php
 PKG_SITES:=		https://www.kernel.org/pub/linux/utils/kernel/kmod/
 PKG_LIBNAME:=		libkmod
 PKG_OPTS:=		dev
-PKG_BB:=		1
 
 PKG_SUBPKGS:=		KMOD LIBKMOD
 PKGSD_LIBKMOD:=		kernel module library

+ 1 - 1
package/systemd/Makefile

@@ -9,7 +9,7 @@ PKG_RELEASE:=		2
 PKG_HASH:=		1172c7c7d5d72fbded53186e7599d5272231f04cc8b72f9a0fb2c5c20dfc4880
 PKG_DESCR:=		system and service manager
 PKG_SECTION:=		base/init
-PKG_DEPENDS:=		libcap libmount libuuid libblkid libncurses kmod
+PKG_DEPENDS:=		libcap libmount libuuid libblkid libncurses libkmod
 PKG_BUILDDEP:=		intltool-host gperf-host libcap util-linux gettext-host kmod
 PKG_KDEPENDS:=		cgroups namespaces fhandle tmpfs-posix-acl tmpfs-xattr
 PKG_URL:=		https://wiki.freedesktop.org/www/Software/systemd/

+ 12 - 0
package/systemd/patches/patch-src_basic_socket-util_c

@@ -0,0 +1,12 @@
+--- systemd-232.orig/src/basic/socket-util.c	2016-11-03 18:16:42.000000000 +0100
++++ systemd-232/src/basic/socket-util.c	2017-02-07 04:55:53.976146036 +0100
+@@ -657,8 +657,7 @@ int socknameinfo_pretty(union sockaddr_u
+ 
+         assert(_ret);
+ 
+-        r = getnameinfo(&sa->sa, salen, host, sizeof(host), NULL, 0,
+-                        NI_IDN|NI_IDN_USE_STD3_ASCII_RULES);
++        r = getnameinfo(&sa->sa, salen, host, sizeof(host), NULL, 0, 0);
+         if (r != 0) {
+                 int saved_errno = errno;
+ 

+ 1 - 1
target/config/Config.in.runtime

@@ -35,7 +35,7 @@ config ADK_RUNTIME_INIT_SYSTEMD
 	select ADK_PACKAGE_SYSTEMD
 	select ADK_PACKAGE_DBUS
 	select ADK_PACKAGE_DBUS_WITH_SYSTEMD
-	depends on ADK_TARGET_LIB_GLIBC
+	depends on ADK_TARGET_LIB_GLIBC || ADK_TARGET_LIB_UCLIBC_NG
 
 config ADK_RUNTIME_INIT_SIMPLEINIT
 	bool "Use a very simple init"

+ 1 - 0
toolchain/uclibc-ng/Makefile

@@ -110,6 +110,7 @@ ifeq ($(ADK_TARGET_LIBC_ICONV),y)
 endif
 ifeq ($(ADK_RUNTIME_ENABLE_LOCALE),y)
 	$(SED) 's/.*\(UCLIBC_HAS_LOCALE\).*/\1=y/' ${WRKBUILD}/.config
+	echo 'UCLIBC_HAS_XLOCALE=y' >> ${WRKBUILD}/.config
 endif
 ifeq ($(ADK_TARGET_UCLINUX),y)
 	$(SED) 's/.*\(ARCH_USE_MMU\).*/# \1 is not set/' ${WRKBUILD}/.config