diff mbox series

iputils: splitting the ping6 as a package

Message ID 20240401081002.3667193-1-xiangyu.chen@eng.windriver.com
State New
Headers show
Series iputils: splitting the ping6 as a package | expand

Commit Message

Xiangyu Chen April 1, 2024, 8:10 a.m. UTC
From: Xiangyu Chen <xiangyu.chen@windriver.com>

The iputils merged the ping4 and ping6 command into the ping since the
commit ebad35fe[1], currently, iputils ping support being called using
"ping -6" or "ping6" symlinks.

In oe-core, there are two packages provide ipv6 ping, inetutils and iputils,
the inetutils-ping6 doesn't support "-I" option to bind the interface, that
cause some of scripts(e.g. LTP test[2]) which was based on iputils-ping6 fails.

If someone or a package needs iputils-ping6, they can enable it in local.conf
or add it into rdepends directly.

Ref:
[1] https://github.com/iputils/iputils/commit/e3de851b809c7b72ccc654a72b6af61d
[2] https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/ \
    containers/netns/netns_comm.sh#L25

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
---
 meta/recipes-extended/iputils/iputils_20240117.bb | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

Comments

Alexandre Belloni April 3, 2024, 9:05 a.m. UTC | #1
https://autobuilder.yoctoproject.org/typhoon/#/builders/64/builds/8810/steps/11/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/4601/steps/13/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#/builders/80/builds/6546/steps/14/logs/stdio

ERROR: Logfile of failure stored in: /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/temp/log.do_install.685043
Log data follows:
| DEBUG: Executing python function extend_recipe_sysroot
| NOTE: Direct dependencies are ['/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-core/musl/musl_git.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/gcc/gcc-cross_13.2.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/gcc/gcc-runtime_13.2.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/opkg-utils/opkg-utils_0.6.3.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/qemu/qemu-native_8.2.1.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/quilt/quilt-native_0.67.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-support/gnutls/gnutls_3.8.4.bb:do_populate_sysroot', '/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-support/libcap/libcap_2.69.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/meson/meson_1.3.1.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/ninja/ninja_1.11.1.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/patch/patch_2.7.6.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/pkgconfig/pkgconfig_git.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/pseudo/pseudo_git.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-devtools/python/python3_3.12.2.bb:do_populate_sysroot', 'virtual:native:/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-support/libcap/libcap_2.69.bb:do_populate_sysroot']
| NOTE: Installed into sysroot: []
| NOTE: Skipping as already exists in sysroot: ['gettext-minimal-native', 'bsd-headers', 'libssp-nonshared', 'musl', 'binutils-cross-i686', 'cmake-native', 'gcc-cross-i686', 'gcc-runtime', 'libgcc', 'libtool-native', 'm4-native', 'opkg-utils', 'qemu-native', 'quilt-native', 'libidn2', 'texinfo-dummy-native', 'linux-libc-headers', 'gmp', 'gnutls', 'libtasn1', 'libcap', 'libseccomp', 'libunistring', 'nettle', 'openssl-native', 'expat-native', 'gettext-native', 'glib-2.0-native', 'ncurses-native', 'util-linux-libuuid-native', 'util-linux-native', 'zlib-native', 'flex-native', 'gnu-config-native', 'libedit-native', 'make-native', 'meson-native', 'ninja-native', 'patch-native', 'perl-native', 'pkgconfig-native', 'pseudo-native', 'python3-build-native', 'python3-flit-core-native', 'python3-installer-native', 'python3-packaging-native', 'python3-pyproject-hooks-native', 'python3-setuptools-native', 'python3-wheel-native', 'python3-native', 'bzip2-native', 'libnsl2-native', 'libtirpc-native', 'unzip-native', 'xz-native', 'zstd-native', 'attr-native', 'gdbm-native', 'gmp-native', 'libcap-ng-native', 'libcap-native', 'libffi-native', 'libmpc-native', 'libpcre2-native', 'mpfr-native', 're2c-native', 'sqlite3-native']
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_install
| Installing ping/ping to /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image/bin
| Installing tracepath to /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image/bin
| Installing clockdiff to /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image/bin
| Installing arping to /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image/bin
| ln: failed to create symbolic link '/home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image//usr/bin/ping6': No such file or directory
| WARNING: /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/temp/run.do_install.685043:154 exit 1 from 'ln -sf ping /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/image//usr/bin/ping6'
| WARNING: Backtrace (BB generated script):
| 	#1: do_install, /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/temp/run.do_install.685043, line 154
| 	#2: main, /home/pokybuild/yocto-worker/musl-qemux86/build/build/tmp/work/core2-32-poky-linux-musl/iputils/20240117/temp/run.do_install.685043, line 164
NOTE: recipe iputils-20240117-r0: task do_install: Failed
ERROR: Task (/home/pokybuild/yocto-worker/musl-qemux86/build/meta/recipes-extended/iputils/iputils_20240117.bb:do_install) failed with exit code '1'

On 01/04/2024 16:10:02+0800, Xiangyu Chen wrote:
> From: Xiangyu Chen <xiangyu.chen@windriver.com>
> 
> The iputils merged the ping4 and ping6 command into the ping since the
> commit ebad35fe[1], currently, iputils ping support being called using
> "ping -6" or "ping6" symlinks.
> 
> In oe-core, there are two packages provide ipv6 ping, inetutils and iputils,
> the inetutils-ping6 doesn't support "-I" option to bind the interface, that
> cause some of scripts(e.g. LTP test[2]) which was based on iputils-ping6 fails.
> 
> If someone or a package needs iputils-ping6, they can enable it in local.conf
> or add it into rdepends directly.
> 
> Ref:
> [1] https://github.com/iputils/iputils/commit/e3de851b809c7b72ccc654a72b6af61d
> [2] https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/ \
>     containers/netns/netns_comm.sh#L25
> 
> Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
> ---
>  meta/recipes-extended/iputils/iputils_20240117.bb | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/recipes-extended/iputils/iputils_20240117.bb b/meta/recipes-extended/iputils/iputils_20240117.bb
> index 5a5e15528e..72a7aeb777 100644
> --- a/meta/recipes-extended/iputils/iputils_20240117.bb
> +++ b/meta/recipes-extended/iputils/iputils_20240117.bb
> @@ -35,7 +35,11 @@ ALTERNATIVE_PRIORITY = "100"
>  ALTERNATIVE:${PN}-ping = "ping"
>  ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping"
>  
> -SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff"
> +ALTERNATIVE:${PN}-ping6 = "ping6"
> +ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6"
> +
> +SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff \
> +             ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ping6', '', d)}"
>  PACKAGES += "${SPLITPKGS}"
>  
>  ALLOW_EMPTY:${PN} = "1"
> @@ -43,6 +47,13 @@ RDEPENDS:${PN} += "${SPLITPKGS}"
>  
>  FILES:${PN} = ""
>  FILES:${PN}-ping = "${base_bindir}/ping.${BPN}"
> +FILES:${PN}-ping6 = "${base_bindir}/ping6.${BPN}"
>  FILES:${PN}-arping = "${base_bindir}/arping"
>  FILES:${PN}-tracepath = "${base_bindir}/tracepath"
>  FILES:${PN}-clockdiff = "${base_bindir}/clockdiff"
> +
> +do_install:append() {
> +	if ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'true', 'false', d)}; then
> +		ln -sf ping ${D}/${bindir}/ping6
> +	fi
> +}
> -- 
> 2.35.5
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#197675): https://lists.openembedded.org/g/openembedded-core/message/197675
> Mute This Topic: https://lists.openembedded.org/mt/105259616/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff mbox series

Patch

diff --git a/meta/recipes-extended/iputils/iputils_20240117.bb b/meta/recipes-extended/iputils/iputils_20240117.bb
index 5a5e15528e..72a7aeb777 100644
--- a/meta/recipes-extended/iputils/iputils_20240117.bb
+++ b/meta/recipes-extended/iputils/iputils_20240117.bb
@@ -35,7 +35,11 @@  ALTERNATIVE_PRIORITY = "100"
 ALTERNATIVE:${PN}-ping = "ping"
 ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping"
 
-SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff"
+ALTERNATIVE:${PN}-ping6 = "ping6"
+ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6"
+
+SPLITPKGS = "${PN}-ping ${PN}-arping ${PN}-tracepath ${PN}-clockdiff \
+             ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '${PN}-ping6', '', d)}"
 PACKAGES += "${SPLITPKGS}"
 
 ALLOW_EMPTY:${PN} = "1"
@@ -43,6 +47,13 @@  RDEPENDS:${PN} += "${SPLITPKGS}"
 
 FILES:${PN} = ""
 FILES:${PN}-ping = "${base_bindir}/ping.${BPN}"
+FILES:${PN}-ping6 = "${base_bindir}/ping6.${BPN}"
 FILES:${PN}-arping = "${base_bindir}/arping"
 FILES:${PN}-tracepath = "${base_bindir}/tracepath"
 FILES:${PN}-clockdiff = "${base_bindir}/clockdiff"
+
+do_install:append() {
+	if ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'true', 'false', d)}; then
+		ln -sf ping ${D}/${bindir}/ping6
+	fi
+}