summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2017-02-09 02:47:11 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2017-02-09 02:49:18 +0100
commitfdfd165799d762acd6cf5871bfcb1493da1359e9 (patch)
treec359e2327241dce4c6a237ff4b61f89b1907a2b0
parent68a2f573ea13d6e028c5eba43bde813c6994f080 (diff)
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.
-rw-r--r--package/kmod/Makefile1
-rw-r--r--package/systemd/Makefile2
-rw-r--r--package/systemd/patches/patch-src_basic_socket-util_c12
-rw-r--r--target/config/Config.in.runtime2
-rw-r--r--toolchain/uclibc-ng/Makefile1
5 files changed, 15 insertions, 3 deletions
diff --git a/package/kmod/Makefile b/package/kmod/Makefile
index 495a7f9fb..4ef5623dc 100644
--- a/package/kmod/Makefile
+++ b/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
diff --git a/package/systemd/Makefile b/package/systemd/Makefile
index e1074f731..bf1aadef5 100644
--- a/package/systemd/Makefile
+++ b/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/
diff --git a/package/systemd/patches/patch-src_basic_socket-util_c b/package/systemd/patches/patch-src_basic_socket-util_c
new file mode 100644
index 000000000..78d871695
--- /dev/null
+++ b/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;
+
diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime
index 4e1d82168..62173c362 100644
--- a/target/config/Config.in.runtime
+++ b/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"
diff --git a/toolchain/uclibc-ng/Makefile b/toolchain/uclibc-ng/Makefile
index 9c8f3c736..caf5e4e32 100644
--- a/toolchain/uclibc-ng/Makefile
+++ b/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