* [PATCH 0/4] Introduce packagegroup-core-base-utils @ 2019-03-01 22:26 Tom Rini 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini ` (4 more replies) 0 siblings, 5 replies; 20+ messages in thread From: Tom Rini @ 2019-03-01 22:26 UTC (permalink / raw) To: openembedded-core Hey all, Over on the Yocto list[1] the topic of how to build an image without busybox once again came up. As part of that discussion I said I'd been thinking about a packagegroup to make this easier to do as while virtual/base-utils and VIRTUAL-RUNTIME_base-utils exist and work and allow for this, the list of things we get from busybox is non-trivial. In fact, this exposed that in oe-core itself we have no editor aside from busybox and are missing a number of common network utilities too. To that end, this series migrates vim and inetutils from meta-oe to oe-core, introduces packagegroup-core-base-utils (and documents using it in local.conf.sample.extended) and finally adds a testcase of building (technically, making the dependency graph as that does what we need and is much quicker, 5s vs 3 minute) core-image-sato with busybox disabled, so that we can do our best to avoid introucing busybox as a hard requirement in the future. With respect to functionality, this is basically 1:1 with busybox. I didn't add more "useful" utilities (which I would argue belong in packagegroup-core-full-cmdline which follow up to this could be enhanced to pull in this packagegroup and add to it). In terms of deviation: - We do not have a trivial dhcp server, unless you use systemd. - We may have also lost a few similar trivial servers. One may argue that by default maybe busybox shouldn't be opening this stuff up. - busybox provides "nslookup" which at this point in time is an anachronism. bind stopped shipping "nslookup" prior to oe-core replacing the old monolithic layer. We do provide host and dig and such via bind-utils. [1]: https://lists.yoctoproject.org/pipermail/yocto/2019-February/044317.html -- Tom ^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH 1/4] vim: Import version 8.1.0347 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini @ 2019-03-01 22:26 ` Tom Rini 2019-03-02 9:15 ` Martin Jansa 2019-03-02 15:42 ` Joshua Watt 2019-03-01 22:26 ` [PATCH 2/4] inetutils: Import version 1.9.4 Tom Rini ` (3 subsequent siblings) 4 siblings, 2 replies; 20+ messages in thread From: Tom Rini @ 2019-03-01 22:26 UTC (permalink / raw) To: openembedded-core In order to have a stand-alone editor in oe-core, bring in vim from meta-openembedded/meta-oe. This imports the recipes as of git commit: commit 7b48bd2be97408107c0dd3c74b1e28f042268457 Author: Ovidiu Panait <ovidiu.panait@windriver.com> Date: Fri Feb 1 10:07:20 2019 +0200 vim: Enable GUI support for x11 DISTRO_FEATURES Signed-off-by: Tom Rini <trini@konsulko.com> --- meta/files/common-licenses/vim | 81 ++++++++++++++ ...0001-src-Makefile-improve-reproducibility.patch | 46 ++++++++ .../vim/files/disable_acl_header_check.patch | 39 +++++++ .../vim-add-knob-whether-elf.h-are-checked.patch | 42 +++++++ meta/recipes-support/vim/vim-tiny_8.1.0347.bb | 15 +++ meta/recipes-support/vim/vim_8.1.0347.bb | 121 +++++++++++++++++++++ 6 files changed, 344 insertions(+) create mode 100644 meta/files/common-licenses/vim create mode 100644 meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch create mode 100644 meta/recipes-support/vim/files/disable_acl_header_check.patch create mode 100644 meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch create mode 100644 meta/recipes-support/vim/vim-tiny_8.1.0347.bb create mode 100644 meta/recipes-support/vim/vim_8.1.0347.bb diff --git a/meta/files/common-licenses/vim b/meta/files/common-licenses/vim new file mode 100644 index 000000000000..4aa818eb248e --- /dev/null +++ b/meta/files/common-licenses/vim @@ -0,0 +1,81 @@ +VIM LICENSE + +I) There are no restrictions on distributing unmodified copies of Vim except + that they must include this license text. You can also distribute + unmodified parts of Vim, likewise unrestricted except that they must + include this license text. You are also allowed to include executables + that you made from the unmodified Vim sources, plus your own usage + examples and Vim scripts. + +II) It is allowed to distribute a modified (or extended) version of Vim, + including executables and/or source code, when the following four + conditions are met: + 1) This license text must be included unmodified. + 2) The modified Vim must be distributed in one of the following five ways: + a) If you make changes to Vim yourself, you must clearly describe in + the distribution how to contact you. When the maintainer asks you + (in any way) for a copy of the modified Vim you distributed, you + must make your changes, including source code, available to the + maintainer without fee. The maintainer reserves the right to + include your changes in the official version of Vim. What the + maintainer will do with your changes and under what license they + will be distributed is negotiable. If there has been no negotiation + then this license, or a later version, also applies to your changes. + The current maintainer is Bram Moolenaar <Bram@vim.org>. If this + changes it will be announced in appropriate places (most likely + vim.sf.net, www.vim.org and/or comp.editors). When it is completely + impossible to contact the maintainer, the obligation to send him + your changes ceases. Once the maintainer has confirmed that he has + received your changes they will not have to be sent again. + b) If you have received a modified Vim that was distributed as + mentioned under a) you are allowed to further distribute it + unmodified, as mentioned at I). If you make additional changes the + text under a) applies to those changes. + c) Provide all the changes, including source code, with every copy of + the modified Vim you distribute. This may be done in the form of a + context diff. You can choose what license to use for new code you + add. The changes and their license must not restrict others from + making their own changes to the official version of Vim. + d) When you have a modified Vim which includes changes as mentioned + under c), you can distribute it without the source code for the + changes if the following three conditions are met: + - The license that applies to the changes permits you to distribute + the changes to the Vim maintainer without fee or restriction, and + permits the Vim maintainer to include the changes in the official + version of Vim without fee or restriction. + - You keep the changes for at least three years after last + distributing the corresponding modified Vim. When the maintainer + or someone who you distributed the modified Vim to asks you (in + any way) for the changes within this period, you must make them + available to him. + - You clearly describe in the distribution how to contact you. This + contact information must remain valid for at least three years + after last distributing the corresponding modified Vim, or as long + as possible. + e) When the GNU General Public License (GPL) applies to the changes, + you can distribute the modified Vim under the GNU GPL version 2 or + any later version. + 3) A message must be added, at least in the output of the ":version" + command and in the intro screen, such that the user of the modified Vim + is able to see that it was modified. When distributing as mentioned + under 2)e) adding the message is only required for as far as this does + not conflict with the license used for the changes. + 4) The contact information as required under 2)a) and 2)d) must not be + removed or changed, except that the person himself can make + corrections. + +III) If you distribute a modified version of Vim, you are encouraged to use + the Vim license for your changes and make them available to the + maintainer, including the source code. The preferred way to do this is + by e-mail or by uploading the files to a server and e-mailing the URL. + If the number of changes is small (e.g., a modified Makefile) e-mailing a + context diff will do. The e-mail address to be used is + <maintainer@vim.org> + +IV) It is not allowed to remove this license from the distribution of the Vim + sources, parts of it or from a modified version. You may use this + license for previous Vim releases instead of the license that they came + with, at your option. + +=== +Read more about this license at http://vimdoc.sourceforge.net/htmldoc/uganda.html#license diff --git a/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch new file mode 100644 index 000000000000..63a7b78f12f1 --- /dev/null +++ b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch @@ -0,0 +1,46 @@ +From 133ab27cdb17ca20ef6b0304cf30621d2bcbe757 Mon Sep 17 00:00:00 2001 +From: Mingli Yu <mingli.yu@windriver.com> +Date: Thu, 31 Jan 2019 21:32:26 -0800 +Subject: [PATCH] src/Makefile: improve reproducibility + +Clear all_cflags, all_lflags, compiled_user +and compiled_sys to avoid introducing build +info to improve reproducibility as below: + +WARNING: vim-8.1.0347-r0 do_package_qa: QA Issue: File /work/core2-64-wrs-linux/vim/8.1.0347-r0/packages-split/vim/usr/bin/vim.vim in package contained reference to tmpdir [buildpaths] + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> +--- + src/Makefile | 14 ++++---------- + 1 file changed, 4 insertions(+), 10 deletions(-) + +diff --git a/src/Makefile b/src/Makefile +index f2fafa4dc..7148d4bd9 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -2845,16 +2845,10 @@ auto/pathdef.c: Makefile auto/config.mk + -@echo '#include "vim.h"' >> $@ + -@echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | $(QUOTESED) >> $@ + -@echo 'char_u *default_vimruntime_dir = (char_u *)"$(VIMRUNTIMEDIR)";' | $(QUOTESED) >> $@ +- -@echo 'char_u *all_cflags = (char_u *)"$(CC) -c -I$(srcdir) $(ALL_CFLAGS)";' | $(QUOTESED) >> $@ +- -@echo 'char_u *all_lflags = (char_u *)"$(CC) $(ALL_LIB_DIRS) $(LDFLAGS) -o $(VIMTARGET) $(ALL_LIBS) ";' | $(QUOTESED) >> $@ +- -@echo 'char_u *compiled_user = (char_u *)"' | tr -d $(NL) >> $@ +- -@if test -n "$(COMPILEDBY)"; then \ +- echo "$(COMPILEDBY)" | tr -d $(NL) >> $@; \ +- else ((logname) 2>/dev/null || whoami) | tr -d $(NL) >> $@; fi +- -@echo '";' >> $@ +- -@echo 'char_u *compiled_sys = (char_u *)"' | tr -d $(NL) >> $@ +- -@if test -z "$(COMPILEDBY)"; then hostname | tr -d $(NL) >> $@; fi +- -@echo '";' >> $@ ++ -@echo 'char_u *all_cflags = (char_u *)"";' | $(QUOTESED) >> $@ ++ -@echo 'char_u *all_lflags = (char_u *)"";' | $(QUOTESED) >> $@ ++ -@echo 'char_u *compiled_user = (char_u *)"";' >> $@ ++ -@echo 'char_u *compiled_sys = (char_u *)"";' >> $@ + -@sh $(srcdir)/pathdef.sh + + GUI_GTK_RES_INPUTS = \ +-- +2.17.1 + diff --git a/meta/recipes-support/vim/files/disable_acl_header_check.patch b/meta/recipes-support/vim/files/disable_acl_header_check.patch new file mode 100644 index 000000000000..4720003c252a --- /dev/null +++ b/meta/recipes-support/vim/files/disable_acl_header_check.patch @@ -0,0 +1,39 @@ +From 5ed25c076a1fb1889a3c50dddf29f21850b59a13 Mon Sep 17 00:00:00 2001 +From: Wenzong Fan <wenzong.fan@windriver.com> +Date: Tue, 26 Jun 2018 17:29:09 +0800 +Subject: [PATCH] disable acl header check + +Don't check 'sys/acl.h' if acl support disabled for vim/vim-tiny. + +Upstream-Status: pending + +Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + src/configure.ac | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/configure.ac b/src/configure.ac +index 107c170..0ee86ad 100644 +--- a/src/configure.ac ++++ b/src/configure.ac +@@ -3220,7 +3220,7 @@ AC_CHECK_HEADERS(stdint.h stdlib.h string.h \ + sys/systeminfo.h locale.h sys/stream.h termios.h \ + libc.h sys/statfs.h poll.h sys/poll.h pwd.h \ + utime.h sys/param.h libintl.h libgen.h \ +- util/debug.h util/msg18n.h frame.h sys/acl.h \ ++ util/debug.h util/msg18n.h frame.h \ + sys/access.h sys/sysinfo.h wchar.h wctype.h) + + dnl sys/ptem.h depends on sys/stream.h on Solaris +@@ -3848,6 +3848,7 @@ AC_ARG_ENABLE(acl, + , [enable_acl="yes"]) + if test "$enable_acl" = "yes"; then + AC_MSG_RESULT(no) ++ AC_CHECK_HEADERS(sys/acl.h) + AC_CHECK_LIB(posix1e, acl_get_file, [LIBS="$LIBS -lposix1e"], + AC_CHECK_LIB(acl, acl_get_file, [LIBS="$LIBS -lacl" + AC_CHECK_LIB(attr, fgetxattr, LIBS="$LIBS -lattr",,)],,),) +-- +2.7.4 + diff --git a/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch new file mode 100644 index 000000000000..37914d4cd9c1 --- /dev/null +++ b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch @@ -0,0 +1,42 @@ +From 38de4bccdb8a861ffdd447f12fdab19d6d852c02 Mon Sep 17 00:00:00 2001 +From: Chong Lu <Chong.Lu@windriver.com> +Date: Tue, 26 Jun 2018 17:34:15 +0800 +Subject: [PATCH] vim: add knob whether elf.h are checked + +Previously, it still was checked when there was no elf library in sysroots directory. +Add knob to decide whether elf.h are checked or not. + +Upstream-Status: Pending + +Signed-off-by: Chong Lu <Chong.Lu@windriver.com> +Signed-off-by: Changqing Li <changqing.li@windriver.com> +--- + src/configure.ac | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/configure.ac b/src/configure.ac +index 0ee86ad..64736f0 100644 +--- a/src/configure.ac ++++ b/src/configure.ac +@@ -3192,11 +3192,18 @@ AC_TRY_COMPILE([#include <stdio.h>], [int x __attribute__((unused));], + AC_MSG_RESULT(no)) + + dnl Checks for header files. ++AC_MSG_CHECKING(whether or not to look for elf.h) ++AC_ARG_ENABLE(elf-check, ++ [ --enable-elf-check If elfutils, check for elf.h [default=no]], ++ , enable_elf_check="no") ++AC_MSG_RESULT($enable_elf_check) ++if test "x$enable_elf_check" != "xno"; then + AC_CHECK_HEADER(elf.h, HAS_ELF=1) + dnl AC_CHECK_HEADER(dwarf.h, SVR4=1) + if test "$HAS_ELF" = 1; then + AC_CHECK_LIB(elf, main) + fi ++fi + + AC_HEADER_DIRENT + +-- +2.7.4 + diff --git a/meta/recipes-support/vim/vim-tiny_8.1.0347.bb b/meta/recipes-support/vim/vim-tiny_8.1.0347.bb new file mode 100644 index 000000000000..8b1fb7b1158d --- /dev/null +++ b/meta/recipes-support/vim/vim-tiny_8.1.0347.bb @@ -0,0 +1,15 @@ +require vim_${PV}.bb + +SUMMARY += " (with tiny features)" + +PROVIDES_remove = "xxd" +ALTERNATIVE_${PN}_remove = "xxd" + +PACKAGECONFIG += "tiny" + +do_install() { + install -D -m 0755 ${S}/vim ${D}/${bindir}/vim.tiny +} + +ALTERNATIVE_PRIORITY = "90" +ALTERNATIVE_TARGET = "${bindir}/vim.tiny" diff --git a/meta/recipes-support/vim/vim_8.1.0347.bb b/meta/recipes-support/vim/vim_8.1.0347.bb new file mode 100644 index 000000000000..070583158467 --- /dev/null +++ b/meta/recipes-support/vim/vim_8.1.0347.bb @@ -0,0 +1,121 @@ +SUMMARY = "Vi IMproved - enhanced vi editor" +SECTION = "console/utils" + +PROVIDES = "xxd" +DEPENDS = "ncurses gettext-native" +# vimdiff doesn't like busybox diff +RSUGGESTS_${PN} = "diffutils" +LICENSE = "vim" +LIC_FILES_CHKSUM = "file://../runtime/doc/uganda.txt;endline=287;md5=f1f82b42360005c70b8c19b0ef493f72" + +SRC_URI = "git://github.com/vim/vim.git \ + file://disable_acl_header_check.patch;patchdir=.. \ + file://vim-add-knob-whether-elf.h-are-checked.patch;patchdir=.. \ + file://0001-src-Makefile-improve-reproducibility.patch;patchdir=.. \ +" +SRCREV = "f1c118be93184e8e57e3e80b1b3383f464ed649e" + +S = "${WORKDIR}/git/src" + +VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}" + +inherit autotools-brokensep update-alternatives + +CLEANBROKEN = "1" + +# vim configure.in contains functions which got 'dropped' by autotools.bbclass +do_configure () { + rm -f auto/* + touch auto/config.mk + aclocal + autoconf + oe_runconf + touch auto/configure + touch auto/config.mk auto/config.h +} + +#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny +PACKAGECONFIG ??= "" +PACKAGECONFIG += " \ + ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \ +" + +PACKAGECONFIG[gtkgui] = "--enable-gui=gtk2,--enable-gui=no,gtk+," +PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," +PACKAGECONFIG[x11] = "--with-x,--without-x,xt," +PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,," +PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux," +PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils," + +EXTRA_OECONF = " \ + --disable-gpm \ + --disable-gtktest \ + --disable-xim \ + --disable-netbeans \ + --with-tlib=ncurses \ + ac_cv_small_wchar_t=no \ + vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=no \ + vim_cv_terminfo=yes \ + vim_cv_tgetent=non-zero \ + vim_cv_toupper_broken=no \ + vim_cv_tty_group=world \ + STRIP=/bin/true \ +" + +do_install() { + autotools_do_install + + # Work around file-rdeps picking up csh, awk, perl or python as a dep + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/vim132 + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/mve.awk + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.pl + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.py + + # Install example vimrc from runtime files + install -m 0644 ../runtime/vimrc_example.vim ${D}/${datadir}/${BPN}/vimrc + + # we use --with-features=big as default + mv ${D}${bindir}/${BPN} ${D}${bindir}/${BPN}.${BPN} +} + +PARALLEL_MAKEINST = "" + +PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools" +FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax" +FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc" +FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor" +FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc" +FILES_${PN}-data = "${datadir}/${BPN}" +FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools" +FILES_${PN}-common = " \ + ${datadir}/${BPN}/${VIMDIR}/*.vim \ + ${datadir}/${BPN}/${VIMDIR}/autoload \ + ${datadir}/${BPN}/${VIMDIR}/colors \ + ${datadir}/${BPN}/${VIMDIR}/compiler \ + ${datadir}/${BPN}/${VIMDIR}/ftplugin \ + ${datadir}/${BPN}/${VIMDIR}/indent \ + ${datadir}/${BPN}/${VIMDIR}/keymap \ + ${datadir}/${BPN}/${VIMDIR}/lang \ + ${datadir}/${BPN}/${VIMDIR}/macros \ + ${datadir}/${BPN}/${VIMDIR}/plugin \ + ${datadir}/${BPN}/${VIMDIR}/print \ + ${datadir}/${BPN}/${VIMDIR}/spell \ + ${datadir}/icons \ +" + +RDEPENDS_${BPN} = "ncurses-terminfo-base" +# Recommend that runtime data is installed along with vim +RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common" + +ALTERNATIVE_${PN} = "vi vim xxd" +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}" +ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi" +ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim" +ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd" +ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" + +BBCLASSEXTEND = "native" -- 2.7.4 ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH 1/4] vim: Import version 8.1.0347 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini @ 2019-03-02 9:15 ` Martin Jansa 2019-03-02 12:36 ` Tom Rini 2019-03-02 15:42 ` Joshua Watt 1 sibling, 1 reply; 20+ messages in thread From: Martin Jansa @ 2019-03-02 9:15 UTC (permalink / raw) To: Tom Rini; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 788 bytes --] On Fri, Mar 01, 2019 at 05:26:49PM -0500, Tom Rini wrote: > In order to have a stand-alone editor in oe-core, bring in vim from > meta-openembedded/meta-oe. This imports the recipes as of git commit: > commit 7b48bd2be97408107c0dd3c74b1e28f042268457 > Author: Ovidiu Panait <ovidiu.panait@windriver.com> > Date: Fri Feb 1 10:07:20 2019 +0200 > > vim: Enable GUI support for x11 DISTRO_FEATURES This isn't the latest vim commit in meta-oe, you're missing: commit c4db3971ab88dc8c012256e987f73ccd4459b400 (HEAD -> jansa/master, contrib/jansa/master) Author: Martin Jansa <Martin.Jansa@gmail.com> Date: Fri Feb 8 22:57:02 2019 +0000 vim: use empty PACKAGECONFIG for vim-native it's currently in master-next, but it should be imported as well. Regards, [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 201 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 1/4] vim: Import version 8.1.0347 2019-03-02 9:15 ` Martin Jansa @ 2019-03-02 12:36 ` Tom Rini 2019-03-02 12:57 ` Tom Rini 0 siblings, 1 reply; 20+ messages in thread From: Tom Rini @ 2019-03-02 12:36 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-core On Sat, Mar 02, 2019 at 10:15:48AM +0100, Martin Jansa wrote: > On Fri, Mar 01, 2019 at 05:26:49PM -0500, Tom Rini wrote: > > In order to have a stand-alone editor in oe-core, bring in vim from > > meta-openembedded/meta-oe. This imports the recipes as of git commit: > > commit 7b48bd2be97408107c0dd3c74b1e28f042268457 > > Author: Ovidiu Panait <ovidiu.panait@windriver.com> > > Date: Fri Feb 1 10:07:20 2019 +0200 > > > > vim: Enable GUI support for x11 DISTRO_FEATURES > > This isn't the latest vim commit in meta-oe, you're missing: > > commit c4db3971ab88dc8c012256e987f73ccd4459b400 (HEAD -> jansa/master, contrib/jansa/master) > Author: Martin Jansa <Martin.Jansa@gmail.com> > Date: Fri Feb 8 22:57:02 2019 +0000 > > vim: use empty PACKAGECONFIG for vim-native > > it's currently in master-next, but it should be imported as well. OK, yes, I only grabbed current master. Yes, I can re-spin to include this version. -- Tom ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 1/4] vim: Import version 8.1.0347 2019-03-02 12:36 ` Tom Rini @ 2019-03-02 12:57 ` Tom Rini 0 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-02 12:57 UTC (permalink / raw) To: Martin Jansa, Mark Hatle; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 1471 bytes --] On Sat, Mar 02, 2019 at 07:36:34AM -0500, Tom Rini wrote: > On Sat, Mar 02, 2019 at 10:15:48AM +0100, Martin Jansa wrote: > > On Fri, Mar 01, 2019 at 05:26:49PM -0500, Tom Rini wrote: > > > In order to have a stand-alone editor in oe-core, bring in vim from > > > meta-openembedded/meta-oe. This imports the recipes as of git commit: > > > commit 7b48bd2be97408107c0dd3c74b1e28f042268457 > > > Author: Ovidiu Panait <ovidiu.panait@windriver.com> > > > Date: Fri Feb 1 10:07:20 2019 +0200 > > > > > > vim: Enable GUI support for x11 DISTRO_FEATURES > > > > This isn't the latest vim commit in meta-oe, you're missing: > > > > commit c4db3971ab88dc8c012256e987f73ccd4459b400 (HEAD -> jansa/master, contrib/jansa/master) > > Author: Martin Jansa <Martin.Jansa@gmail.com> > > Date: Fri Feb 8 22:57:02 2019 +0000 > > > > vim: use empty PACKAGECONFIG for vim-native > > > > it's currently in master-next, but it should be imported as well. > > OK, yes, I only grabbed current master. Yes, I can re-spin to include > this version. I see that in master-next, this is current: commit 41f3f8165bde3eb4f8bcf6dddbaca0d3b760c70b Author: Mark Hatle <mark.hatle@windriver.com> Date: Thu Feb 28 09:39:19 2019 +0800 vim: remove xfce vim bbappend Changing the behavior of a recipe by including a layer is not allowed by the yocto-check-layer script. And have grabbed the vim recipe side of this as well. -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 1/4] vim: Import version 8.1.0347 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini 2019-03-02 9:15 ` Martin Jansa @ 2019-03-02 15:42 ` Joshua Watt 1 sibling, 0 replies; 20+ messages in thread From: Joshua Watt @ 2019-03-02 15:42 UTC (permalink / raw) To: Tom Rini; +Cc: OE-core [-- Attachment #1: Type: text/plain, Size: 19296 bytes --] On Fri, Mar 1, 2019, 4:27 PM Tom Rini <trini@konsulko.com> wrote: > In order to have a stand-alone editor in oe-core, bring in vim from > meta-openembedded/meta-oe. This imports the recipes as of git commit: > commit 7b48bd2be97408107c0dd3c74b1e28f042268457 > Author: Ovidiu Panait <ovidiu.panait@windriver.com> > Date: Fri Feb 1 10:07:20 2019 +0200 > > vim: Enable GUI support for x11 DISTRO_FEATURES > > Signed-off-by: Tom Rini <trini@konsulko.com> > --- > meta/files/common-licenses/vim | 81 ++++++++++++++ > ...0001-src-Makefile-improve-reproducibility.patch | 46 ++++++++ > .../vim/files/disable_acl_header_check.patch | 39 +++++++ > .../vim-add-knob-whether-elf.h-are-checked.patch | 42 +++++++ > meta/recipes-support/vim/vim-tiny_8.1.0347.bb | 15 +++ > meta/recipes-support/vim/vim_8.1.0347.bb | 121 > +++++++++++++++++++++ > 6 files changed, 344 insertions(+) > create mode 100644 meta/files/common-licenses/vim > create mode 100644 > meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch > create mode 100644 > meta/recipes-support/vim/files/disable_acl_header_check.patch > create mode 100644 > meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch > create mode 100644 meta/recipes-support/vim/vim-tiny_8.1.0347.bb > create mode 100644 meta/recipes-support/vim/vim_8.1.0347.bb Someone should be added as the maintainer of these recipes? > > diff --git a/meta/files/common-licenses/vim > b/meta/files/common-licenses/vim > new file mode 100644 > index 000000000000..4aa818eb248e > --- /dev/null > +++ b/meta/files/common-licenses/vim > @@ -0,0 +1,81 @@ > +VIM LICENSE > + > +I) There are no restrictions on distributing unmodified copies of Vim > except > + that they must include this license text. You can also distribute > + unmodified parts of Vim, likewise unrestricted except that they must > + include this license text. You are also allowed to include > executables > + that you made from the unmodified Vim sources, plus your own usage > + examples and Vim scripts. > + > +II) It is allowed to distribute a modified (or extended) version of Vim, > + including executables and/or source code, when the following four > + conditions are met: > + 1) This license text must be included unmodified. > + 2) The modified Vim must be distributed in one of the following five > ways: > + a) If you make changes to Vim yourself, you must clearly describe > in > + the distribution how to contact you. When the maintainer asks > you > + (in any way) for a copy of the modified Vim you distributed, you > + must make your changes, including source code, available to the > + maintainer without fee. The maintainer reserves the right to > + include your changes in the official version of Vim. What the > + maintainer will do with your changes and under what license they > + will be distributed is negotiable. If there has been no > negotiation > + then this license, or a later version, also applies to your > changes. > + The current maintainer is Bram Moolenaar <Bram@vim.org>. If > this > + changes it will be announced in appropriate places (most likely > + vim.sf.net, www.vim.org and/or comp.editors). When it is > completely > + impossible to contact the maintainer, the obligation to send him > + your changes ceases. Once the maintainer has confirmed that he > has > + received your changes they will not have to be sent again. > + b) If you have received a modified Vim that was distributed as > + mentioned under a) you are allowed to further distribute it > + unmodified, as mentioned at I). If you make additional changes > the > + text under a) applies to those changes. > + c) Provide all the changes, including source code, with every copy > of > + the modified Vim you distribute. This may be done in the form > of a > + context diff. You can choose what license to use for new code > you > + add. The changes and their license must not restrict others from > + making their own changes to the official version of Vim. > + d) When you have a modified Vim which includes changes as mentioned > + under c), you can distribute it without the source code for the > + changes if the following three conditions are met: > + - The license that applies to the changes permits you to > distribute > + the changes to the Vim maintainer without fee or restriction, > and > + permits the Vim maintainer to include the changes in the > official > + version of Vim without fee or restriction. > + - You keep the changes for at least three years after last > + distributing the corresponding modified Vim. When the > maintainer > + or someone who you distributed the modified Vim to asks you (in > + any way) for the changes within this period, you must make them > + available to him. > + - You clearly describe in the distribution how to contact you. > This > + contact information must remain valid for at least three years > + after last distributing the corresponding modified Vim, or as > long > + as possible. > + e) When the GNU General Public License (GPL) applies to the > changes, > + you can distribute the modified Vim under the GNU GPL version 2 > or > + any later version. > + 3) A message must be added, at least in the output of the ":version" > + command and in the intro screen, such that the user of the > modified Vim > + is able to see that it was modified. When distributing as > mentioned > + under 2)e) adding the message is only required for as far as this > does > + not conflict with the license used for the changes. > + 4) The contact information as required under 2)a) and 2)d) must not be > + removed or changed, except that the person himself can make > + corrections. > + > +III) If you distribute a modified version of Vim, you are encouraged to > use > + the Vim license for your changes and make them available to the > + maintainer, including the source code. The preferred way to do this > is > + by e-mail or by uploading the files to a server and e-mailing the > URL. > + If the number of changes is small (e.g., a modified Makefile) > e-mailing a > + context diff will do. The e-mail address to be used is > + <maintainer@vim.org> > + > +IV) It is not allowed to remove this license from the distribution of > the Vim > + sources, parts of it or from a modified version. You may use this > + license for previous Vim releases instead of the license that they > came > + with, at your option. > + > +=== > +Read more about this license at > http://vimdoc.sourceforge.net/htmldoc/uganda.html#license > diff --git > a/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch > b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch > new file mode 100644 > index 000000000000..63a7b78f12f1 > --- /dev/null > +++ > b/meta/recipes-support/vim/files/0001-src-Makefile-improve-reproducibility.patch > @@ -0,0 +1,46 @@ > +From 133ab27cdb17ca20ef6b0304cf30621d2bcbe757 Mon Sep 17 00:00:00 2001 > +From: Mingli Yu <mingli.yu@windriver.com> > +Date: Thu, 31 Jan 2019 21:32:26 -0800 > +Subject: [PATCH] src/Makefile: improve reproducibility > + > +Clear all_cflags, all_lflags, compiled_user > +and compiled_sys to avoid introducing build > +info to improve reproducibility as below: > + > +WARNING: vim-8.1.0347-r0 do_package_qa: QA Issue: File > /work/core2-64-wrs-linux/vim/8.1.0347-r0/packages-split/vim/usr/bin/vim.vim > in package contained reference to tmpdir [buildpaths] > + > +Upstream-Status: Inappropriate [oe specific] > + > +Signed-off-by: Mingli Yu <mingli.yu@windriver.com> > +--- > + src/Makefile | 14 ++++---------- > + 1 file changed, 4 insertions(+), 10 deletions(-) > + > +diff --git a/src/Makefile b/src/Makefile > +index f2fafa4dc..7148d4bd9 100644 > +--- a/src/Makefile > ++++ b/src/Makefile > +@@ -2845,16 +2845,10 @@ auto/pathdef.c: Makefile auto/config.mk > + -@echo '#include "vim.h"' >> $@ > + -@echo 'char_u *default_vim_dir = (char_u *)"$(VIMRCLOC)";' | > $(QUOTESED) >> $@ > + -@echo 'char_u *default_vimruntime_dir = (char_u > *)"$(VIMRUNTIMEDIR)";' | $(QUOTESED) >> $@ > +- -@echo 'char_u *all_cflags = (char_u *)"$(CC) -c -I$(srcdir) > $(ALL_CFLAGS)";' | $(QUOTESED) >> $@ > +- -@echo 'char_u *all_lflags = (char_u *)"$(CC) $(ALL_LIB_DIRS) > $(LDFLAGS) -o $(VIMTARGET) $(ALL_LIBS) ";' | $(QUOTESED) >> $@ > +- -@echo 'char_u *compiled_user = (char_u *)"' | tr -d $(NL) >> $@ > +- -@if test -n "$(COMPILEDBY)"; then \ > +- echo "$(COMPILEDBY)" | tr -d $(NL) >> $@; \ > +- else ((logname) 2>/dev/null || whoami) | tr -d $(NL) >> > $@; fi > +- -@echo '";' >> $@ > +- -@echo 'char_u *compiled_sys = (char_u *)"' | tr -d $(NL) >> $@ > +- -@if test -z "$(COMPILEDBY)"; then hostname | tr -d $(NL) >> $@; fi > +- -@echo '";' >> $@ > ++ -@echo 'char_u *all_cflags = (char_u *)"";' | $(QUOTESED) >> $@ > ++ -@echo 'char_u *all_lflags = (char_u *)"";' | $(QUOTESED) >> $@ > ++ -@echo 'char_u *compiled_user = (char_u *)"";' >> $@ > ++ -@echo 'char_u *compiled_sys = (char_u *)"";' >> $@ > + -@sh $(srcdir)/pathdef.sh > + > + GUI_GTK_RES_INPUTS = \ > +-- > +2.17.1 > + > diff --git a/meta/recipes-support/vim/files/disable_acl_header_check.patch > b/meta/recipes-support/vim/files/disable_acl_header_check.patch > new file mode 100644 > index 000000000000..4720003c252a > --- /dev/null > +++ b/meta/recipes-support/vim/files/disable_acl_header_check.patch > @@ -0,0 +1,39 @@ > +From 5ed25c076a1fb1889a3c50dddf29f21850b59a13 Mon Sep 17 00:00:00 2001 > +From: Wenzong Fan <wenzong.fan@windriver.com> > +Date: Tue, 26 Jun 2018 17:29:09 +0800 > +Subject: [PATCH] disable acl header check > + > +Don't check 'sys/acl.h' if acl support disabled for vim/vim-tiny. > + > +Upstream-Status: pending > + > +Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> > +Signed-off-by: Changqing Li <changqing.li@windriver.com> > +--- > + src/configure.ac | 3 ++- > + 1 file changed, 2 insertions(+), 1 deletion(-) > + > +diff --git a/src/configure.ac b/src/configure.ac > +index 107c170..0ee86ad 100644 > +--- a/src/configure.ac > ++++ b/src/configure.ac > +@@ -3220,7 +3220,7 @@ AC_CHECK_HEADERS(stdint.h stdlib.h string.h \ > + sys/systeminfo.h locale.h sys/stream.h termios.h \ > + libc.h sys/statfs.h poll.h sys/poll.h pwd.h \ > + utime.h sys/param.h libintl.h libgen.h \ > +- util/debug.h util/msg18n.h frame.h sys/acl.h \ > ++ util/debug.h util/msg18n.h frame.h \ > + sys/access.h sys/sysinfo.h wchar.h wctype.h) > + > + dnl sys/ptem.h depends on sys/stream.h on Solaris > +@@ -3848,6 +3848,7 @@ AC_ARG_ENABLE(acl, > + , [enable_acl="yes"]) > + if test "$enable_acl" = "yes"; then > + AC_MSG_RESULT(no) > ++ AC_CHECK_HEADERS(sys/acl.h) > + AC_CHECK_LIB(posix1e, acl_get_file, [LIBS="$LIBS -lposix1e"], > + AC_CHECK_LIB(acl, acl_get_file, [LIBS="$LIBS -lacl" > + AC_CHECK_LIB(attr, fgetxattr, LIBS="$LIBS > -lattr",,)],,),) > +-- > +2.7.4 > + > diff --git > a/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch > b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch > new file mode 100644 > index 000000000000..37914d4cd9c1 > --- /dev/null > +++ > b/meta/recipes-support/vim/files/vim-add-knob-whether-elf.h-are-checked.patch > @@ -0,0 +1,42 @@ > +From 38de4bccdb8a861ffdd447f12fdab19d6d852c02 Mon Sep 17 00:00:00 2001 > +From: Chong Lu <Chong.Lu@windriver.com> > +Date: Tue, 26 Jun 2018 17:34:15 +0800 > +Subject: [PATCH] vim: add knob whether elf.h are checked > + > +Previously, it still was checked when there was no elf library in > sysroots directory. > +Add knob to decide whether elf.h are checked or not. > + > +Upstream-Status: Pending > + > +Signed-off-by: Chong Lu <Chong.Lu@windriver.com> > +Signed-off-by: Changqing Li <changqing.li@windriver.com> > +--- > + src/configure.ac | 7 +++++++ > + 1 file changed, 7 insertions(+) > + > +diff --git a/src/configure.ac b/src/configure.ac > +index 0ee86ad..64736f0 100644 > +--- a/src/configure.ac > ++++ b/src/configure.ac > +@@ -3192,11 +3192,18 @@ AC_TRY_COMPILE([#include <stdio.h>], [int x > __attribute__((unused));], > + AC_MSG_RESULT(no)) > + > + dnl Checks for header files. > ++AC_MSG_CHECKING(whether or not to look for elf.h) > ++AC_ARG_ENABLE(elf-check, > ++ [ --enable-elf-check If elfutils, check for elf.h > [default=no]], > ++ , enable_elf_check="no") > ++AC_MSG_RESULT($enable_elf_check) > ++if test "x$enable_elf_check" != "xno"; then > + AC_CHECK_HEADER(elf.h, HAS_ELF=1) > + dnl AC_CHECK_HEADER(dwarf.h, SVR4=1) > + if test "$HAS_ELF" = 1; then > + AC_CHECK_LIB(elf, main) > + fi > ++fi > + > + AC_HEADER_DIRENT > + > +-- > +2.7.4 > + > diff --git a/meta/recipes-support/vim/vim-tiny_8.1.0347.bb > b/meta/recipes-support/vim/vim-tiny_8.1.0347.bb > new file mode 100644 > index 000000000000..8b1fb7b1158d > --- /dev/null > +++ b/meta/recipes-support/vim/vim-tiny_8.1.0347.bb > @@ -0,0 +1,15 @@ > +require vim_${PV}.bb > + > +SUMMARY += " (with tiny features)" > + > +PROVIDES_remove = "xxd" > +ALTERNATIVE_${PN}_remove = "xxd" > + > +PACKAGECONFIG += "tiny" > + > +do_install() { > + install -D -m 0755 ${S}/vim ${D}/${bindir}/vim.tiny > +} > + > +ALTERNATIVE_PRIORITY = "90" > +ALTERNATIVE_TARGET = "${bindir}/vim.tiny" > diff --git a/meta/recipes-support/vim/vim_8.1.0347.bb > b/meta/recipes-support/vim/vim_8.1.0347.bb > new file mode 100644 > index 000000000000..070583158467 > --- /dev/null > +++ b/meta/recipes-support/vim/vim_8.1.0347.bb > @@ -0,0 +1,121 @@ > +SUMMARY = "Vi IMproved - enhanced vi editor" > +SECTION = "console/utils" > + > +PROVIDES = "xxd" > +DEPENDS = "ncurses gettext-native" > +# vimdiff doesn't like busybox diff > +RSUGGESTS_${PN} = "diffutils" > +LICENSE = "vim" > +LIC_FILES_CHKSUM = > "file://../runtime/doc/uganda.txt;endline=287;md5=f1f82b42360005c70b8c19b0ef493f72" > + > +SRC_URI = "git://github.com/vim/vim.git \ > + file://disable_acl_header_check.patch;patchdir=.. \ > + > file://vim-add-knob-whether-elf.h-are-checked.patch;patchdir=.. \ > + > file://0001-src-Makefile-improve-reproducibility.patch;patchdir=.. \ > +" > +SRCREV = "f1c118be93184e8e57e3e80b1b3383f464ed649e" > + > +S = "${WORKDIR}/git/src" > + > +VIMDIR = > "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}" > + > +inherit autotools-brokensep update-alternatives > + > +CLEANBROKEN = "1" > + > +# vim configure.in contains functions which got 'dropped' by > autotools.bbclass > +do_configure () { > + rm -f auto/* > + touch auto/config.mk > + aclocal > + autoconf > + oe_runconf > + touch auto/configure > + touch auto/config.mk auto/config.h > +} > + > +#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny > +PACKAGECONFIG ??= "" > +PACKAGECONFIG += " \ > + ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \ > + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \ > +" > + > +PACKAGECONFIG[gtkgui] = "--enable-gui=gtk2,--enable-gui=no,gtk+," > +PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," > +PACKAGECONFIG[x11] = "--with-x,--without-x,xt," > +PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,," > +PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux," > +PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils," > + > +EXTRA_OECONF = " \ > + --disable-gpm \ > + --disable-gtktest \ > + --disable-xim \ > + --disable-netbeans \ > + --with-tlib=ncurses \ > + ac_cv_small_wchar_t=no \ > + vim_cv_getcwd_broken=no \ > + vim_cv_memmove_handles_overlap=yes \ > + vim_cv_stat_ignores_slash=no \ > + vim_cv_terminfo=yes \ > + vim_cv_tgetent=non-zero \ > + vim_cv_toupper_broken=no \ > + vim_cv_tty_group=world \ > + STRIP=/bin/true \ > +" > + > +do_install() { > + autotools_do_install > + > + # Work around file-rdeps picking up csh, awk, perl or python as a dep > + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/vim132 > + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/mve.awk > + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.pl > + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.py > + > + # Install example vimrc from runtime files > + install -m 0644 ../runtime/vimrc_example.vim > ${D}/${datadir}/${BPN}/vimrc > + > + # we use --with-features=big as default > + mv ${D}${bindir}/${BPN} ${D}${bindir}/${BPN}.${BPN} > +} > + > +PARALLEL_MAKEINST = "" > + > +PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc > ${PN}-tools" > +FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax" > +FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc" > +FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor > ${bindir}/${BPN}tutor" > +FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc" > +FILES_${PN}-data = "${datadir}/${BPN}" > +FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools" > +FILES_${PN}-common = " \ > + ${datadir}/${BPN}/${VIMDIR}/*.vim \ > + ${datadir}/${BPN}/${VIMDIR}/autoload \ > + ${datadir}/${BPN}/${VIMDIR}/colors \ > + ${datadir}/${BPN}/${VIMDIR}/compiler \ > + ${datadir}/${BPN}/${VIMDIR}/ftplugin \ > + ${datadir}/${BPN}/${VIMDIR}/indent \ > + ${datadir}/${BPN}/${VIMDIR}/keymap \ > + ${datadir}/${BPN}/${VIMDIR}/lang \ > + ${datadir}/${BPN}/${VIMDIR}/macros \ > + ${datadir}/${BPN}/${VIMDIR}/plugin \ > + ${datadir}/${BPN}/${VIMDIR}/print \ > + ${datadir}/${BPN}/${VIMDIR}/spell \ > + ${datadir}/icons \ > +" > + > +RDEPENDS_${BPN} = "ncurses-terminfo-base" > +# Recommend that runtime data is installed along with vim > +RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc > ${PN}-common" > + > +ALTERNATIVE_${PN} = "vi vim xxd" > +ALTERNATIVE_PRIORITY = "100" > +ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}" > +ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi" > +ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim" > +ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd" > +ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" > + > +BBCLASSEXTEND = "native" > -- > 2.7.4 > > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core > [-- Attachment #2: Type: text/html, Size: 25606 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini @ 2019-03-01 22:26 ` Tom Rini 2019-03-02 17:00 ` Richard Purdie 2019-03-04 9:47 ` André Draszik 2019-03-01 22:26 ` [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup Tom Rini ` (2 subsequent siblings) 4 siblings, 2 replies; 20+ messages in thread From: Tom Rini @ 2019-03-01 22:26 UTC (permalink / raw) To: openembedded-core In order to have more robust stand-alone network tools in oe-core, bring in vim from meta-openembedded/meta-networking. This imports the recipes as of git commit: commit 408204073e6bdcd8ac586e05d5b75213417673f2 Author: Martin Jansa <martin.jansa@gmail.com> Date: Thu Aug 16 20:39:15 2018 +0000 inetutils: fix build with glibc-2.28 Signed-off-by: Tom Rini <trini@konsulko.com> --- .../0001-rcp-fix-to-work-with-large-files.patch | 31 ++++ .../inetutils/inetutils/fix-disable-ipv6.patch | 83 +++++++++ ...tf-parse-pull-in-features.h-for-__GLIBC__.patch | 29 +++ .../inetutils/inetutils-1.8-0003-wchar.patch | 14 ++ .../inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch | 26 +++ ...ls-only-check-pam_appl.h-when-pam-enabled.patch | 40 ++++ .../inetutils/inetutils/rexec.xinetd.inetutils | 20 ++ .../inetutils/inetutils/rlogin.xinetd.inetutils | 23 +++ .../inetutils/inetutils/rsh.xinetd.inetutils | 21 +++ .../inetutils/inetutils/telnet.xinetd.inetutils | 13 ++ .../inetutils/inetutils/tftpd.xinetd.inetutils | 19 ++ .../inetutils/inetutils/version.patch | 17 ++ .../inetutils/inetutils_1.9.4.bb | 206 +++++++++++++++++++++ 13 files changed, 542 insertions(+) create mode 100644 meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils create mode 100644 meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils create mode 100644 meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils create mode 100644 meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils create mode 100644 meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils create mode 100644 meta/recipes-connectivity/inetutils/inetutils/version.patch create mode 100644 meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb diff --git a/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch b/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch new file mode 100644 index 000000000000..d4764f586736 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large-files.patch @@ -0,0 +1,31 @@ +Upstream-Status: Pending + +Subject: rcp: fix to work with large files + +When we copy file by rcp command, if the file > 2GB, it will fail. +The cause is that it used incorrect data type on file size in sink() of rcp. + +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> +--- + src/rcp.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/rcp.c b/src/rcp.c +index 21f55b6..bafa35f 100644 +--- a/src/rcp.c ++++ b/src/rcp.c +@@ -876,9 +876,9 @@ sink (int argc, char *argv[]) + enum + { YES, NO, DISPLAYED } wrerr; + BUF *bp; +- off_t i, j; ++ off_t i, j, size; + int amt, count, exists, first, mask, mode, ofd, omode; +- int setimes, size, targisdir, wrerrno; ++ int setimes, targisdir, wrerrno; + char ch, *cp, *np, *targ, *vect[1], buf[BUFSIZ]; + const char *why; + +-- +1.9.1 + diff --git a/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch b/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch new file mode 100644 index 000000000000..24c134fcac8d --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch @@ -0,0 +1,83 @@ +Upstream: http://www.mail-archive.com/bug-inetutils@gnu.org/msg02103.html + +Upstream-Status: Pending + +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> +--- + ping/ping_common.h | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + +diff --git a/ping/ping_common.h b/ping/ping_common.h +index 1dfd1b5..3bfbd12 100644 +--- a/ping/ping_common.h ++++ b/ping/ping_common.h +@@ -17,10 +17,14 @@ + You should have received a copy of the GNU General Public License + along with this program. If not, see `http://www.gnu.org/licenses/'. */ + ++#include <config.h> ++ + #include <netinet/in_systm.h> + #include <netinet/in.h> + #include <netinet/ip.h> ++#ifdef HAVE_IPV6 + #include <netinet/icmp6.h> ++#endif + #include <icmp.h> + #include <error.h> + #include <progname.h> +@@ -62,7 +66,12 @@ struct ping_stat + want to follow the traditional behaviour of ping. */ + #define DEFAULT_PING_COUNT 0 + ++#ifdef HAVE_IPV6 + #define PING_HEADER_LEN (USE_IPV6 ? sizeof (struct icmp6_hdr) : ICMP_MINLEN) ++#else ++#define PING_HEADER_LEN (ICMP_MINLEN) ++#endif ++ + #define PING_TIMING(s) ((s) >= sizeof (struct timeval)) + #define PING_DATALEN (64 - PING_HEADER_LEN) /* default data length */ + +@@ -74,13 +83,20 @@ struct ping_stat + (t).tv_usec = ((i)%PING_PRECISION)*(1000000/PING_PRECISION) ;\ + } while (0) + ++#ifdef HAVE_IPV6 + /* FIXME: Adjust IPv6 case for options and their consumption. */ + #define _PING_BUFLEN(p, u) ((u)? ((p)->ping_datalen + sizeof (struct icmp6_hdr)) : \ + (MAXIPLEN + (p)->ping_datalen + ICMP_TSLEN)) + ++#else ++#define _PING_BUFLEN(p, u) (MAXIPLEN + (p)->ping_datalen + ICMP_TSLEN) ++#endif ++ ++#ifdef HAVE_IPV6 + typedef int (*ping_efp6) (int code, void *closure, struct sockaddr_in6 * dest, + struct sockaddr_in6 * from, struct icmp6_hdr * icmp, + int datalen); ++#endif + + typedef int (*ping_efp) (int code, + void *closure, +@@ -89,13 +105,17 @@ typedef int (*ping_efp) (int code, + struct ip * ip, icmphdr_t * icmp, int datalen); + + union event { ++#ifdef HAVE_IPV6 + ping_efp6 handler6; ++#endif + ping_efp handler; + }; + + union ping_address { + struct sockaddr_in ping_sockaddr; ++#ifdef HAVE_IPV6 + struct sockaddr_in6 ping_sockaddr6; ++#endif + }; + + typedef struct ping_data PING; +-- +2.8.3 + diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch new file mode 100644 index 000000000000..3da4e9f55a78 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch @@ -0,0 +1,29 @@ +From 552a7d64ad4a7188a9b7cd89933ae7caf7ebfe90 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <vapier at gentoo.org> +Date: Thu, 18 Nov 2010 16:59:14 -0500 +Subject: [PATCH gnulib] printf-parse: pull in features.h for __GLIBC__ + +Upstream-Status: Pending + +Signed-off-by: Mike Frysinger <vapier at gentoo.org> +--- + lib/printf-parse.h | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/lib/printf-parse.h b/lib/printf-parse.h +index 67a4a2a..3bd6152 100644 +--- a/lib/printf-parse.h ++++ b/lib/printf-parse.h +@@ -25,6 +25,9 @@ + + #include "printf-args.h" + ++#ifdef HAVE_FEATURES_H ++# include <features.h> /* for __GLIBC__ */ ++#endif + + /* Flags */ + #define FLAG_GROUP 1 /* ' flag */ +-- +1.7.3.2 + diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch new file mode 100644 index 000000000000..b13bb9229ff0 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch @@ -0,0 +1,14 @@ +Upstream-Status: Pending + +--- inetutils-1.8/lib/wchar.in.h ++++ inetutils-1.8/lib/wchar.in.h +@@ -70,6 +70,9 @@ + /* The include_next requires a split double-inclusion guard. */ + #if @HAVE_WCHAR_H@ + # @INCLUDE_NEXT@ @NEXT_WCHAR_H@ ++#else ++# include <stddef.h> ++# define MB_CUR_MAX 1 + #endif + + #undef _GL_ALREADY_INCLUDING_WCHAR_H diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch new file mode 100644 index 000000000000..2592989a90a3 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch @@ -0,0 +1,26 @@ +inetutils: define PATH_PROCNET_DEV if not already defined + +this prevents the following compilation error : +system/linux.c:401:15: error: 'PATH_PROCNET_DEV' undeclared (first use in this function) + +this patch comes from : + http://repository.timesys.com/buildsources/i/inetutils/inetutils-1.9/ + +Upstream-Status: Inappropriate [not author] + +Signed-of-by: Eric Bénard <eric@eukrea.com> +--- +diff -Naur inetutils-1.9.orig/ifconfig/system/linux.c inetutils-1.9/ifconfig/system/linux.c +--- inetutils-1.9.orig/ifconfig/system/linux.c 2012-01-04 16:31:36.000000000 -0500 ++++ inetutils-1.9/ifconfig/system/linux.c 2012-01-04 16:40:53.000000000 -0500 +@@ -49,6 +49,10 @@ + #include "../ifconfig.h" + \f + ++#ifndef PATH_PROCNET_DEV ++ #define PATH_PROCNET_DEV "/proc/net/dev" ++#endif ++ + /* ARPHRD stuff. */ + + static void diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch b/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch new file mode 100644 index 000000000000..ff3abd86aad3 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam-enabled.patch @@ -0,0 +1,40 @@ +Only check security/pam_appl.h which is provided by package libpam when pam is +enabled. + +Upstream-Status: Pending + +Signed-off-by: Kai Kang <kai.kang@windriver.com> +--- +diff --git a/configure.ac b/configure.ac +index b35e672..e78a751 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -195,6 +195,19 @@ fi + + # See if we have libpam.a. Investigate PAM versus Linux-PAM. + if test "$with_pam" = yes ; then ++ AC_CHECK_HEADERS([security/pam_appl.h], [], [], [ ++#include <sys/types.h> ++#ifdef HAVE_NETINET_IN_SYSTM_H ++# include <netinet/in_systm.h> ++#endif ++#include <netinet/in.h> ++#ifdef HAVE_NETINET_IP_H ++# include <netinet/ip.h> ++#endif ++#ifdef HAVE_SYS_PARAM_H ++# include <sys/param.h> ++#endif ++]) + AC_CHECK_LIB(dl, dlopen, LIBDL=-ldl) + AC_CHECK_LIB(pam, pam_authenticate, LIBPAM=-lpam) + if test "$ac_cv_lib_pam_pam_authenticate" = yes ; then +@@ -587,7 +600,7 @@ AC_HEADER_DIRENT + AC_CHECK_HEADERS([arpa/nameser.h errno.h fcntl.h features.h \ + glob.h memory.h netinet/ether.h netinet/in_systm.h \ + netinet/ip.h netinet/ip_icmp.h netinet/ip_var.h \ +- security/pam_appl.h shadow.h \ ++ shadow.h \ + stdarg.h stdlib.h string.h stropts.h sys/tty.h \ + sys/utsname.h sys/ptyvar.h sys/msgbuf.h sys/filio.h \ + sys/ioctl_compat.h sys/cdefs.h sys/stream.h sys/mkdev.h \ diff --git a/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils new file mode 100644 index 000000000000..30e81ef4502b --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils @@ -0,0 +1,20 @@ +# default: off +# description: +# Rexecd is the server for the rexec program. The server provides remote +# execution facilities with authentication based on user names and +# passwords. +# +service exec +{ + socket_type = stream + protocol = tcp + flags = NAMEINARGS + wait = no + user = root + group = root + log_on_success += USERID + log_on_failure += USERID + server = @SBINDIR@/tcpd + server_args = @SBINDIR@/in.rexecd + disable = yes +} diff --git a/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils new file mode 100644 index 000000000000..21b55da9a9fd --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rlogin.xinetd.inetutils @@ -0,0 +1,23 @@ +# default: off +# description: +# Rlogind is a server for the rlogin program. The server provides remote +# execution with authentication based on privileged port numbers from trusted +# host +# +service login +{ + socket_type = stream + protocol = tcp + flags = NAMEINARGS + wait = no + user = root + group = root + log_on_success += USERID + log_on_failure += USERID + server = @SBINDIR@/tcpd + server_args = @SBINDIR@/in.rlogind -a + disable = yes +} + + + diff --git a/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils new file mode 100644 index 000000000000..2b894a74bd41 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils @@ -0,0 +1,21 @@ +# default: off +# description: +# The rshd server is a server for the rcmd(3) routine and, +# consequently, for the rsh(1) program. The server provides +# remote execution facilities with authentication based on +# privileged port numbers from trusted hosts. +# +service shell +{ + socket_type = stream + protocol = tcp + flags = NAMEINARGS + wait = no + user = root + group = root + log_on_success += USERID + log_on_failure += USERID + server = @SBINDIR@/tcpd + server_args = @SBINDIR@/in.rshd -aL + disable = yes +} diff --git a/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils new file mode 100644 index 000000000000..2d9a0408c0db --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/telnet.xinetd.inetutils @@ -0,0 +1,13 @@ +# default: on +# description: The telnet server serves telnet sessions; it uses \ +# unencrypted username/password pairs for authentication. +service telnet +{ + disable = no + flags = REUSE + socket_type = stream + wait = no + user = root + server = @SBINDIR@/in.telnetd + log_on_failure += USERID +} diff --git a/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils b/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils new file mode 100644 index 000000000000..67b44c43e852 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils @@ -0,0 +1,19 @@ +# default: off +# description: +# Tftpd is a server which supports the Internet Trivial File Transfer +# Pro-tocol (RFC 783). The TFTP server operates at the port indicated +# in the tftp service description; see services(5). +# +service tftp +{ + disable = yes + socket_type = dgram + protocol = udp + flags = IPv6 + wait = yes + user = root + group = root + server = @SBINDIR@/in.tftpd + server_args = /tftpboot +} + diff --git a/meta/recipes-connectivity/inetutils/inetutils/version.patch b/meta/recipes-connectivity/inetutils/inetutils/version.patch new file mode 100644 index 000000000000..532a0e5c0896 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils/version.patch @@ -0,0 +1,17 @@ +Upstream-Status: Pending + +remove m4_esyscmd function + +Signed-off-by: Chunrong Guo <b40290@freescale.com> +--- inetutils-1.9.1/configure.ac 2012-01-06 22:05:05.000000000 +0800 ++++ inetutils-1.9.1/configure.ac 2012-11-12 14:01:11.732957019 +0800 +@@ -20,8 +20,7 @@ + + AC_PREREQ(2.59) + +-AC_INIT([GNU inetutils], +- m4_esyscmd([build-aux/git-version-gen .tarball-version 's/inetutils-/v/;s/_/./g']), ++AC_INIT([GNU inetutils],[1.9.4], + [bug-inetutils@gnu.org]) + + AC_CONFIG_SRCDIR([src/inetd.c]) diff --git a/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb new file mode 100644 index 000000000000..a27dbae2e688 --- /dev/null +++ b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb @@ -0,0 +1,206 @@ +DESCRIPTION = "The GNU inetutils are a collection of common \ +networking utilities and servers including ftp, ftpd, rcp, \ +rexec, rlogin, rlogind, rsh, rshd, syslog, syslogd, talk, \ +talkd, telnet, telnetd, tftp, tftpd, and uucpd." +HOMEPAGE = "http://www.gnu.org/software/inetutils" +SECTION = "net" +DEPENDS = "ncurses netbase readline virtual/crypt" + +LICENSE = "GPLv3" + +LIC_FILES_CHKSUM = "file://COPYING;md5=0c7051aef9219dc7237f206c5c4179a7" + +SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.gz \ + file://version.patch \ + file://inetutils-1.8-0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch \ + file://inetutils-1.8-0003-wchar.patch \ + file://rexec.xinetd.inetutils \ + file://rlogin.xinetd.inetutils \ + file://rsh.xinetd.inetutils \ + file://telnet.xinetd.inetutils \ + file://tftpd.xinetd.inetutils \ + file://inetutils-1.9-PATH_PROCNET_DEV.patch \ + file://inetutils-only-check-pam_appl.h-when-pam-enabled.patch \ + file://0001-rcp-fix-to-work-with-large-files.patch \ +" + +SRC_URI[md5sum] = "04852c26c47cc8c6b825f2b74f191f52" +SRC_URI[sha256sum] = "be8f75eff936b8e41b112462db51adf689715658a1b09e0d6b05d11ec92cc616" + +inherit autotools gettext update-alternatives texinfo + +acpaths = "-I ./m4" + +SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '', 'file://fix-disable-ipv6.patch', d)}" + +PACKAGECONFIG ??= "ftp uucpd \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6 ping6', '', d)} \ + " +PACKAGECONFIG[ftp] = "--enable-ftp,--disable-ftp,readline" +PACKAGECONFIG[uucpd] = "--enable-uucpd,--disable-uucpd,readline" +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6 gl_cv_socket_ipv6=no," +PACKAGECONFIG[ping6] = "--enable-ping6,--disable-ping6," + +EXTRA_OECONF = "--with-ncurses-include-dir=${STAGING_INCDIR} \ + inetutils_cv_path_login=${base_bindir}/login \ + --with-libreadline-prefix=${STAGING_LIBDIR} \ + --enable-rpath=no \ +" + +EXTRA_OECONF_append_libc-musl = " --disable-rsh --disable-rcp --disable-rlogin " + +do_configure_prepend () { + export HELP2MAN='true' + cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S}/build-aux/config.rpath + rm -f ${S}/glob/configure* +} + +do_install_append () { + install -m 0755 -d ${D}${base_sbindir} + install -m 0755 -d ${D}${sbindir} + install -m 0755 -d ${D}${sysconfdir}/xinetd.d + if [ "${base_bindir}" != "${bindir}" ] ; then + install -m 0755 -d ${D}${base_bindir} + mv ${D}${bindir}/ping* ${D}${base_bindir}/ + mv ${D}${bindir}/hostname ${D}${base_bindir}/ + fi + mv ${D}${bindir}/ifconfig ${D}${base_sbindir}/ + mv ${D}${libexecdir}/syslogd ${D}${base_sbindir}/ + mv ${D}${libexecdir}/tftpd ${D}${sbindir}/in.tftpd + mv ${D}${libexecdir}/telnetd ${D}${sbindir}/in.telnetd + mv ${D}${libexecdir}/rexecd ${D}${sbindir}/in.rexecd + if [ -e ${D}${libexecdir}/rlogind ]; then + mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind + fi + if [ -e ${D}${libexecdir}/rshd ]; then + mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd + fi + if [ -e ${D}${libexecdir}/talkd ]; then + mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd + fi + mv ${D}${libexecdir}/uucpd ${D}${sbindir}/in.uucpd + mv ${D}${libexecdir}/* ${D}${bindir}/ + cp ${WORKDIR}/rexec.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rexec + cp ${WORKDIR}/rlogin.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rlogin + cp ${WORKDIR}/rsh.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rsh + cp ${WORKDIR}/telnet.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/telnet + cp ${WORKDIR}/tftpd.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/tftpd + + sed -e 's,@SBINDIR@,${sbindir},g' -i ${D}/${sysconfdir}/xinetd.d/* + if [ -e ${D}${libdir}/charset.alias ]; then + rm -rf ${D}${libdir}/charset.alias + fi + rm -rf ${D}${libexecdir}/ + # remove usr/lib if empty + rmdir ${D}${libdir} || true +} + +PACKAGES =+ "${PN}-ping ${PN}-ping6 ${PN}-hostname ${PN}-ifconfig \ +${PN}-tftp ${PN}-logger ${PN}-traceroute ${PN}-syslogd \ +${PN}-ftp ${PN}-ftpd ${PN}-tftpd ${PN}-telnet ${PN}-telnetd ${PN}-inetd \ +${PN}-rsh ${PN}-rshd" + +# The packages tftpd, telnetd and rshd conflict with the ones +# provided by netkit, so add the corresponding -dbg packages +# for them to avoid the confliction between the dbg package +# of inetutils and netkit. +PACKAGES =+ "${PN}-tftpd-dbg ${PN}-telnetd-dbg ${PN}-rshd-dbg" +NOAUTOPACKAGEDEBUG = "1" + +ALTERNATIVE_PRIORITY = "79" +ALTERNATIVE_${PN} = "talk whois" +ALTERNATIVE_LINK_NAME[talkd] = "${sbindir}/in.talkd" +ALTERNATIVE_LINK_NAME[uucpd] = "${sbindir}/in.uucpd" + +ALTERNATIVE_PRIORITY_${PN}-logger = "60" +ALTERNATIVE_${PN}-logger = "logger" +ALTERNATIVE_${PN}-syslogd = "syslogd" +ALTERNATIVE_LINK_NAME[syslogd] = "${base_sbindir}/syslogd" + +ALTERNATIVE_${PN}-ftp = "ftp" +ALTERNATIVE_${PN}-ftpd = "ftpd" +ALTERNATIVE_${PN}-tftp = "tftp" +ALTERNATIVE_${PN}-tftpd = "tftpd" +ALTERNATIVE_LINK_NAME[tftpd] = "${sbindir}/tftpd" +ALTERNATIVE_TARGET[tftpd] = "${sbindir}/in.tftpd" + +ALTERNATIVE_${PN}-telnet = "telnet" +ALTERNATIVE_${PN}-telnetd = "telnetd" +ALTERNATIVE_LINK_NAME[telnetd] = "${sbindir}/telnetd" +ALTERNATIVE_TARGET[telnetd] = "${sbindir}/in.telnetd" + +ALTERNATIVE_${PN}-rsh = "rcp rexec rlogin rsh" +ALTERNATIVE_${PN}-rshd = "rshd rexecd rlogind" +ALTERNATIVE_LINK_NAME[rshd] = "${sbindir}/rshd" +ALTERNATIVE_TARGET[rshd] = "${sbindir}/in.rshd" +ALTERNATIVE_LINK_NAME[rexecd] = "${sbindir}/rexecd" +ALTERNATIVE_TARGET[rexecd] = "${sbindir}/in.rexecd" +ALTERNATIVE_LINK_NAME[rlogind] = "${sbindir}/rlogind" +ALTERNATIVE_TARGET[rlogind] = "${sbindir}/in.rlogind" + +ALTERNATIVE_${PN}-inetd= "inetd" +ALTERNATIVE_${PN}-traceroute = "traceroute" + +ALTERNATIVE_${PN}-hostname = "hostname" +ALTERNATIVE_LINK_NAME[hostname] = "${base_bindir}/hostname" + +ALTERNATIVE_${PN}-doc = "hostname.1 dnsdomainname.1 logger.1 syslogd.8" +ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" +ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1" +ALTERNATIVE_LINK_NAME[logger.1] = "${mandir}/man1/logger.1" +ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8" + +ALTERNATIVE_${PN}-ifconfig = "ifconfig" +ALTERNATIVE_LINK_NAME[ifconfig] = "${base_sbindir}/ifconfig" + +ALTERNATIVE_${PN}-ping = "ping" +ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" + +ALTERNATIVE_${PN}-ping6 = "${@bb.utils.filter('PACKAGECONFIG', 'ping6', d)}" +ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6" + + +FILES_${PN}-dbg += "${base_bindir}/.debug ${base_sbindir}/.debug ${bindir}/.debug ${sbindir}/.debug" +FILES_${PN}-ping = "${base_bindir}/ping.${BPN}" +FILES_${PN}-ping6 = "${base_bindir}/ping6.${BPN}" +FILES_${PN}-hostname = "${base_bindir}/hostname.${BPN}" +FILES_${PN}-ifconfig = "${base_sbindir}/ifconfig.${BPN}" +FILES_${PN}-traceroute = "${bindir}/traceroute.${BPN}" +FILES_${PN}-logger = "${bindir}/logger.${BPN}" + +FILES_${PN}-syslogd = "${base_sbindir}/syslogd.${BPN}" +RCONFLICTS_${PN}-syslogd = "rsyslog busybox-syslog sysklogd syslog-ng" + +FILES_${PN}-ftp = "${bindir}/ftp.${BPN}" + +FILES_${PN}-tftp = "${bindir}/tftp.${BPN}" +FILES_${PN}-telnet = "${bindir}/telnet.${BPN}" +FILES_${PN}-rsh = "${bindir}/rsh.${BPN} ${bindir}/rlogin.${BPN} ${bindir}/rexec.${BPN} ${bindir}/rcp.${BPN}" + +FILES_${PN}-rshd = "${sbindir}/in.rshd ${sbindir}/in.rlogind ${sbindir}/in.rexecd \ + ${sysconfdir}/xinetd.d/rsh ${sysconfdir}/xinetd.d/rlogin ${sysconfdir}/xinetd.d/rexec" +FILES_${PN}-rshd-dbg = "${sbindir}/.debug/in.rshd ${sbindir}/.debug/in.rlogind ${sbindir}/.debug/in.rexecd" +RDEPENDS_${PN}-rshd += "xinetd tcp-wrappers" +RCONFLICTS_${PN}-rshd += "netkit-rshd" +RPROVIDES_${PN}-rshd = "rshd" + +FILES_${PN}-ftpd = "${bindir}/ftpd.${BPN}" +FILES_${PN}-ftpd-dbg = "${bindir}/.debug/ftpd.${BPN}" +RDEPENDS_${PN}-ftpd += "xinetd" + +FILES_${PN}-tftpd = "${sbindir}/in.tftpd ${sysconfdir}/xinetd.d/tftpd" +FILES_${PN}-tftpd-dbg = "${sbindir}/.debug/in.tftpd" +RCONFLICTS_${PN}-tftpd += "netkit-tftpd" +RDEPENDS_${PN}-tftpd += "xinetd" + +FILES_${PN}-telnetd = "${sbindir}/in.telnetd ${sysconfdir}/xinetd.d/telnet" +FILES_${PN}-telnetd-dbg = "${sbindir}/.debug/in.telnetd" +RCONFLICTS_${PN}-telnetd += "netkit-telnetd" +RPROVIDES_${PN}-telnetd = "telnetd" +RDEPENDS_${PN}-telnetd += "xinetd" + +FILES_${PN}-inetd = "${bindir}/inetd.${BPN}" + +RDEPENDS_${PN} = "xinetd" -- 2.7.4 ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-01 22:26 ` [PATCH 2/4] inetutils: Import version 1.9.4 Tom Rini @ 2019-03-02 17:00 ` Richard Purdie 2019-03-02 17:46 ` Tom Rini 2019-03-04 9:47 ` André Draszik 1 sibling, 1 reply; 20+ messages in thread From: Richard Purdie @ 2019-03-02 17:00 UTC (permalink / raw) To: Tom Rini, openembedded-core On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > In order to have more robust stand-alone network tools in oe-core, > bring > in vim from meta-openembedded/meta-networking. This imports the > recipes > as of git commit: > commit 408204073e6bdcd8ac586e05d5b75213417673f2 > Author: Martin Jansa <martin.jansa@gmail.com> > Date: Thu Aug 16 20:39:15 2018 +0000 > > inetutils: fix build with glibc-2.28 > > Signed-off-by: Tom Rini <trini@konsulko.com> vim and inetutils will need entries in maintainers.inc else we'll see selftest failures. Cheers, Richard ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-02 17:00 ` Richard Purdie @ 2019-03-02 17:46 ` Tom Rini 2019-03-02 19:25 ` Richard Purdie 0 siblings, 1 reply; 20+ messages in thread From: Tom Rini @ 2019-03-02 17:46 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 815 bytes --] On Sat, Mar 02, 2019 at 05:00:18PM +0000, Richard Purdie wrote: > On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > > In order to have more robust stand-alone network tools in oe-core, > > bring > > in vim from meta-openembedded/meta-networking. This imports the > > recipes > > as of git commit: > > commit 408204073e6bdcd8ac586e05d5b75213417673f2 > > Author: Martin Jansa <martin.jansa@gmail.com> > > Date: Thu Aug 16 20:39:15 2018 +0000 > > > > inetutils: fix build with glibc-2.28 > > > > Signed-off-by: Tom Rini <trini@konsulko.com> > > vim and inetutils will need entries in maintainers.inc else we'll see > selftest failures. Ah, OK. Does that generally involve more than ack'ing the automatic upgrades (that one gets CC'd on I assume) and answering questions? -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-02 17:46 ` Tom Rini @ 2019-03-02 19:25 ` Richard Purdie 2019-03-02 19:28 ` Tom Rini 0 siblings, 1 reply; 20+ messages in thread From: Richard Purdie @ 2019-03-02 19:25 UTC (permalink / raw) To: Tom Rini; +Cc: openembedded-core On Sat, 2019-03-02 at 12:46 -0500, Tom Rini wrote: > On Sat, Mar 02, 2019 at 05:00:18PM +0000, Richard Purdie wrote: > > On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > > > In order to have more robust stand-alone network tools in oe- > > > core, > > > bring > > > in vim from meta-openembedded/meta-networking. This imports the > > > recipes > > > as of git commit: > > > commit 408204073e6bdcd8ac586e05d5b75213417673f2 > > > Author: Martin Jansa <martin.jansa@gmail.com> > > > Date: Thu Aug 16 20:39:15 2018 +0000 > > > > > > inetutils: fix build with glibc-2.28 > > > > > > Signed-off-by: Tom Rini <trini@konsulko.com> > > > > vim and inetutils will need entries in maintainers.inc else we'll > > see > > selftest failures. > > Ah, OK. Does that generally involve more than ack'ing the automatic > upgrades (that one gets CC'd on I assume) and answering questions? That and helping out with upgrades when new versions appear even if the AUH can't handle it. Cheers, Richard ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-02 19:25 ` Richard Purdie @ 2019-03-02 19:28 ` Tom Rini 0 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-02 19:28 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 1318 bytes --] On Sat, Mar 02, 2019 at 07:25:29PM +0000, Richard Purdie wrote: > On Sat, 2019-03-02 at 12:46 -0500, Tom Rini wrote: > > On Sat, Mar 02, 2019 at 05:00:18PM +0000, Richard Purdie wrote: > > > On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > > > > In order to have more robust stand-alone network tools in oe- > > > > core, > > > > bring > > > > in vim from meta-openembedded/meta-networking. This imports the > > > > recipes > > > > as of git commit: > > > > commit 408204073e6bdcd8ac586e05d5b75213417673f2 > > > > Author: Martin Jansa <martin.jansa@gmail.com> > > > > Date: Thu Aug 16 20:39:15 2018 +0000 > > > > > > > > inetutils: fix build with glibc-2.28 > > > > > > > > Signed-off-by: Tom Rini <trini@konsulko.com> > > > > > > vim and inetutils will need entries in maintainers.inc else we'll > > > see > > > selftest failures. > > > > Ah, OK. Does that generally involve more than ack'ing the automatic > > upgrades (that one gets CC'd on I assume) and answering questions? > > That and helping out with upgrades when new versions appear even if the > AUH can't handle it. Yeah, I can handle that much still :) I'll drop myself in for v2. I'll wait until Monday to give anyone else a chance to chime in on anything else I might have missed. Thanks! -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-01 22:26 ` [PATCH 2/4] inetutils: Import version 1.9.4 Tom Rini 2019-03-02 17:00 ` Richard Purdie @ 2019-03-04 9:47 ` André Draszik 2019-03-04 16:40 ` Tom Rini 1 sibling, 1 reply; 20+ messages in thread From: André Draszik @ 2019-03-04 9:47 UTC (permalink / raw) To: openembedded-core On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > In order to have more robust stand-alone network tools in oe-core, bring > in vim from meta-openembedded/meta-networking. This imports the recipes ^^^ vim for networking? :-) Cheers, Andre' > as of git commit: > commit 408204073e6bdcd8ac586e05d5b75213417673f2 > Author: Martin Jansa <martin.jansa@gmail.com> > Date: Thu Aug 16 20:39:15 2018 +0000 > > inetutils: fix build with glibc-2.28 > > Signed-off-by: Tom Rini <trini@konsulko.com> > --- > .../0001-rcp-fix-to-work-with-large-files.patch | 31 ++++ > .../inetutils/inetutils/fix-disable-ipv6.patch | 83 +++++++++ > ...tf-parse-pull-in-features.h-for-__GLIBC__.patch | 29 +++ > .../inetutils/inetutils-1.8-0003-wchar.patch | 14 ++ > .../inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch | 26 +++ > ...ls-only-check-pam_appl.h-when-pam-enabled.patch | 40 ++++ > .../inetutils/inetutils/rexec.xinetd.inetutils | 20 ++ > .../inetutils/inetutils/rlogin.xinetd.inetutils | 23 +++ > .../inetutils/inetutils/rsh.xinetd.inetutils | 21 +++ > .../inetutils/inetutils/telnet.xinetd.inetutils | 13 ++ > .../inetutils/inetutils/tftpd.xinetd.inetutils | 19 ++ > .../inetutils/inetutils/version.patch | 17 ++ > .../inetutils/inetutils_1.9.4.bb | 206 > +++++++++++++++++++++ > 13 files changed, 542 insertions(+) > create mode 100644 meta/recipes-connectivity/inetutils/inetutils/0001- > rcp-fix-to-work-with-large-files.patch > create mode 100644 meta/recipes-connectivity/inetutils/inetutils/fix- > disable-ipv6.patch > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in- > features.h-for-__GLIBC__.patch > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam- > enabled.patch > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/rexec.xinetd.inetutils > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/rlogin.xinetd.inetutils > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/rsh.xinetd.inetutils > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/telnet.xinetd.inetutils > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/tftpd.xinetd.inetutils > create mode 100644 meta/recipes- > connectivity/inetutils/inetutils/version.patch > create mode 100644 meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb > > diff --git a/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix- > to-work-with-large-files.patch b/meta/recipes- > connectivity/inetutils/inetutils/0001-rcp-fix-to-work-with-large- > files.patch > new file mode 100644 > index 000000000000..d4764f586736 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/0001-rcp-fix-to-work- > with-large-files.patch > @@ -0,0 +1,31 @@ > +Upstream-Status: Pending > + > +Subject: rcp: fix to work with large files > + > +When we copy file by rcp command, if the file > 2GB, it will fail. > +The cause is that it used incorrect data type on file size in sink() of > rcp. > + > +Signed-off-by: Chen Qi <Qi.Chen@windriver.com> > +--- > + src/rcp.c | 4 ++-- > + 1 file changed, 2 insertions(+), 2 deletions(-) > + > +diff --git a/src/rcp.c b/src/rcp.c > +index 21f55b6..bafa35f 100644 > +--- a/src/rcp.c > ++++ b/src/rcp.c > +@@ -876,9 +876,9 @@ sink (int argc, char *argv[]) > + enum > + { YES, NO, DISPLAYED } wrerr; > + BUF *bp; > +- off_t i, j; > ++ off_t i, j, size; > + int amt, count, exists, first, mask, mode, ofd, omode; > +- int setimes, size, targisdir, wrerrno; > ++ int setimes, targisdir, wrerrno; > + char ch, *cp, *np, *targ, *vect[1], buf[BUFSIZ]; > + const char *why; > + > +-- > +1.9.1 > + > diff --git a/meta/recipes-connectivity/inetutils/inetutils/fix-disable- > ipv6.patch b/meta/recipes-connectivity/inetutils/inetutils/fix-disable- > ipv6.patch > new file mode 100644 > index 000000000000..24c134fcac8d > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/fix-disable-ipv6.patch > @@ -0,0 +1,83 @@ > +Upstream: http://www.mail-archive.com/bug-inetutils@gnu.org/msg02103.html > + > +Upstream-Status: Pending > + > +Signed-off-by: Jackie Huang <jackie.huang@windriver.com> > +--- > + ping/ping_common.h | 20 ++++++++++++++++++++ > + 1 file changed, 20 insertions(+) > + > +diff --git a/ping/ping_common.h b/ping/ping_common.h > +index 1dfd1b5..3bfbd12 100644 > +--- a/ping/ping_common.h > ++++ b/ping/ping_common.h > +@@ -17,10 +17,14 @@ > + You should have received a copy of the GNU General Public License > + along with this program. If not, see `http://www.gnu.org/licenses/'. > */ > + > ++#include <config.h> > ++ > + #include <netinet/in_systm.h> > + #include <netinet/in.h> > + #include <netinet/ip.h> > ++#ifdef HAVE_IPV6 > + #include <netinet/icmp6.h> > ++#endif > + #include <icmp.h> > + #include <error.h> > + #include <progname.h> > +@@ -62,7 +66,12 @@ struct ping_stat > + want to follow the traditional behaviour of ping. */ > + #define DEFAULT_PING_COUNT 0 > + > ++#ifdef HAVE_IPV6 > + #define PING_HEADER_LEN (USE_IPV6 ? sizeof (struct icmp6_hdr) : > ICMP_MINLEN) > ++#else > ++#define PING_HEADER_LEN (ICMP_MINLEN) > ++#endif > ++ > + #define PING_TIMING(s) ((s) >= sizeof (struct timeval)) > + #define PING_DATALEN (64 - PING_HEADER_LEN) /* default data length > */ > + > +@@ -74,13 +83,20 @@ struct ping_stat > + (t).tv_usec = ((i)%PING_PRECISION)*(1000000/PING_PRECISION) ;\ > + } while (0) > + > ++#ifdef HAVE_IPV6 > + /* FIXME: Adjust IPv6 case for options and their consumption. */ > + #define _PING_BUFLEN(p, u) ((u)? ((p)->ping_datalen + sizeof (struct > icmp6_hdr)) : \ > + (MAXIPLEN + (p)->ping_datalen + > ICMP_TSLEN)) > + > ++#else > ++#define _PING_BUFLEN(p, u) (MAXIPLEN + (p)->ping_datalen + ICMP_TSLEN) > ++#endif > ++ > ++#ifdef HAVE_IPV6 > + typedef int (*ping_efp6) (int code, void *closure, struct sockaddr_in6 * > dest, > + struct sockaddr_in6 * from, struct icmp6_hdr * > icmp, > + int datalen); > ++#endif > + > + typedef int (*ping_efp) (int code, > + void *closure, > +@@ -89,13 +105,17 @@ typedef int (*ping_efp) (int code, > + struct ip * ip, icmphdr_t * icmp, int datalen); > + > + union event { > ++#ifdef HAVE_IPV6 > + ping_efp6 handler6; > ++#endif > + ping_efp handler; > + }; > + > + union ping_address { > + struct sockaddr_in ping_sockaddr; > ++#ifdef HAVE_IPV6 > + struct sockaddr_in6 ping_sockaddr6; > ++#endif > + }; > + > + typedef struct ping_data PING; > +-- > +2.8.3 > + > diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8- > 0001-printf-parse-pull-in-features.h-for-__GLIBC__.patch b/meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.8-0001-printf-parse-pull-in- > features.h-for-__GLIBC__.patch > new file mode 100644 > index 000000000000..3da4e9f55a78 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0001- > printf-parse-pull-in-features.h-for-__GLIBC__.patch > @@ -0,0 +1,29 @@ > +From 552a7d64ad4a7188a9b7cd89933ae7caf7ebfe90 Mon Sep 17 00:00:00 2001 > +From: Mike Frysinger <vapier at gentoo.org> > +Date: Thu, 18 Nov 2010 16:59:14 -0500 > +Subject: [PATCH gnulib] printf-parse: pull in features.h for __GLIBC__ > + > +Upstream-Status: Pending > + > +Signed-off-by: Mike Frysinger <vapier at gentoo.org> > +--- > + lib/printf-parse.h | 3 +++ > + 1 files changed, 3 insertions(+), 0 deletions(-) > + > +diff --git a/lib/printf-parse.h b/lib/printf-parse.h > +index 67a4a2a..3bd6152 100644 > +--- a/lib/printf-parse.h > ++++ b/lib/printf-parse.h > +@@ -25,6 +25,9 @@ > + > + #include "printf-args.h" > + > ++#ifdef HAVE_FEATURES_H > ++# include <features.h> /* for __GLIBC__ */ > ++#endif > + > + /* Flags */ > + #define FLAG_GROUP 1 /* ' flag */ > +-- > +1.7.3.2 > + > diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8- > 0003-wchar.patch b/meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.8-0003-wchar.patch > new file mode 100644 > index 000000000000..b13bb9229ff0 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.8-0003- > wchar.patch > @@ -0,0 +1,14 @@ > +Upstream-Status: Pending > + > +--- inetutils-1.8/lib/wchar.in.h > ++++ inetutils-1.8/lib/wchar.in.h > +@@ -70,6 +70,9 @@ > + /* The include_next requires a split double-inclusion guard. */ > + #if @HAVE_WCHAR_H@ > + # @INCLUDE_NEXT@ @NEXT_WCHAR_H@ > ++#else > ++# include <stddef.h> > ++# define MB_CUR_MAX 1 > + #endif > + > + #undef _GL_ALREADY_INCLUDING_WCHAR_H > diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9- > PATH_PROCNET_DEV.patch b/meta/recipes- > connectivity/inetutils/inetutils/inetutils-1.9-PATH_PROCNET_DEV.patch > new file mode 100644 > index 000000000000..2592989a90a3 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-1.9- > PATH_PROCNET_DEV.patch > @@ -0,0 +1,26 @@ > +inetutils: define PATH_PROCNET_DEV if not already defined > + > +this prevents the following compilation error : > +system/linux.c:401:15: error: 'PATH_PROCNET_DEV' undeclared (first use in > this function) > + > +this patch comes from : > + http://repository.timesys.com/buildsources/i/inetutils/inetutils-1.9/ > + > +Upstream-Status: Inappropriate [not author] > + > +Signed-of-by: Eric Bénard <eric@eukrea.com> > +--- > +diff -Naur inetutils-1.9.orig/ifconfig/system/linux.c inetutils- > 1.9/ifconfig/system/linux.c > +--- inetutils-1.9.orig/ifconfig/system/linux.c 2012-01-04 > 16:31:36.000000000 -0500 > ++++ inetutils-1.9/ifconfig/system/linux.c 2012-01-04 > 16:40:53.000000000 -0500 > +@@ -49,6 +49,10 @@ > + #include "../ifconfig.h" > + > + > ++#ifndef PATH_PROCNET_DEV > ++ #define PATH_PROCNET_DEV "/proc/net/dev" > ++#endif > ++ > + /* ARPHRD stuff. */ > + > + static void > diff --git a/meta/recipes-connectivity/inetutils/inetutils/inetutils-only- > check-pam_appl.h-when-pam-enabled.patch b/meta/recipes- > connectivity/inetutils/inetutils/inetutils-only-check-pam_appl.h-when-pam- > enabled.patch > new file mode 100644 > index 000000000000..ff3abd86aad3 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/inetutils-only-check- > pam_appl.h-when-pam-enabled.patch > @@ -0,0 +1,40 @@ > +Only check security/pam_appl.h which is provided by package libpam when > pam is > +enabled. > + > +Upstream-Status: Pending > + > +Signed-off-by: Kai Kang <kai.kang@windriver.com> > +--- > +diff --git a/configure.ac b/configure.ac > +index b35e672..e78a751 100644 > +--- a/configure.ac > ++++ b/configure.ac > +@@ -195,6 +195,19 @@ fi > + > + # See if we have libpam.a. Investigate PAM versus Linux-PAM. > + if test "$with_pam" = yes ; then > ++ AC_CHECK_HEADERS([security/pam_appl.h], [], [], [ > ++#include <sys/types.h> > ++#ifdef HAVE_NETINET_IN_SYSTM_H > ++# include <netinet/in_systm.h> > ++#endif > ++#include <netinet/in.h> > ++#ifdef HAVE_NETINET_IP_H > ++# include <netinet/ip.h> > ++#endif > ++#ifdef HAVE_SYS_PARAM_H > ++# include <sys/param.h> > ++#endif > ++]) > + AC_CHECK_LIB(dl, dlopen, LIBDL=-ldl) > + AC_CHECK_LIB(pam, pam_authenticate, LIBPAM=-lpam) > + if test "$ac_cv_lib_pam_pam_authenticate" = yes ; then > +@@ -587,7 +600,7 @@ AC_HEADER_DIRENT > + AC_CHECK_HEADERS([arpa/nameser.h errno.h fcntl.h features.h \ > + glob.h memory.h netinet/ether.h netinet/in_systm.h \ > + netinet/ip.h netinet/ip_icmp.h netinet/ip_var.h \ > +- security/pam_appl.h shadow.h \ > ++ shadow.h \ > + stdarg.h stdlib.h string.h stropts.h sys/tty.h \ > + sys/utsname.h sys/ptyvar.h sys/msgbuf.h sys/filio.h \ > + sys/ioctl_compat.h sys/cdefs.h sys/stream.h sys/mkdev.h \ > diff --git a/meta/recipes- > connectivity/inetutils/inetutils/rexec.xinetd.inetutils b/meta/recipes- > connectivity/inetutils/inetutils/rexec.xinetd.inetutils > new file mode 100644 > index 000000000000..30e81ef4502b > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/rexec.xinetd.inetutils > @@ -0,0 +1,20 @@ > +# default: off > +# description: > +# Rexecd is the server for the rexec program. The server provides remote > +# execution facilities with authentication based on user names and > +# passwords. > +# > +service exec > +{ > + socket_type = stream > + protocol = tcp > + flags = NAMEINARGS > + wait = no > + user = root > + group = root > + log_on_success += USERID > + log_on_failure += USERID > + server = @SBINDIR@/tcpd > + server_args = @SBINDIR@/in.rexecd > + disable = yes > +} > diff --git a/meta/recipes- > connectivity/inetutils/inetutils/rlogin.xinetd.inetutils b/meta/recipes- > connectivity/inetutils/inetutils/rlogin.xinetd.inetutils > new file mode 100644 > index 000000000000..21b55da9a9fd > --- /dev/null > +++ b/meta/recipes- > connectivity/inetutils/inetutils/rlogin.xinetd.inetutils > @@ -0,0 +1,23 @@ > +# default: off > +# description: > +# Rlogind is a server for the rlogin program. The server provides remote > +# execution with authentication based on privileged port numbers from > trusted > +# host > +# > +service login > +{ > + socket_type = stream > + protocol = tcp > + flags = NAMEINARGS > + wait = no > + user = root > + group = root > + log_on_success += USERID > + log_on_failure += USERID > + server = @SBINDIR@/tcpd > + server_args = @SBINDIR@/in.rlogind -a > + disable = yes > +} > + > + > + > diff --git a/meta/recipes- > connectivity/inetutils/inetutils/rsh.xinetd.inetutils b/meta/recipes- > connectivity/inetutils/inetutils/rsh.xinetd.inetutils > new file mode 100644 > index 000000000000..2b894a74bd41 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/rsh.xinetd.inetutils > @@ -0,0 +1,21 @@ > +# default: off > +# description: > +# The rshd server is a server for the rcmd(3) routine and, > +# consequently, for the rsh(1) program. The server provides > +# remote execution facilities with authentication based on > +# privileged port numbers from trusted hosts. > +# > +service shell > +{ > + socket_type = stream > + protocol = tcp > + flags = NAMEINARGS > + wait = no > + user = root > + group = root > + log_on_success += USERID > + log_on_failure += USERID > + server = @SBINDIR@/tcpd > + server_args = @SBINDIR@/in.rshd -aL > + disable = yes > +} > diff --git a/meta/recipes- > connectivity/inetutils/inetutils/telnet.xinetd.inetutils b/meta/recipes- > connectivity/inetutils/inetutils/telnet.xinetd.inetutils > new file mode 100644 > index 000000000000..2d9a0408c0db > --- /dev/null > +++ b/meta/recipes- > connectivity/inetutils/inetutils/telnet.xinetd.inetutils > @@ -0,0 +1,13 @@ > +# default: on > +# description: The telnet server serves telnet sessions; it uses \ > +# unencrypted username/password pairs for authentication. > +service telnet > +{ > + disable = no > + flags = REUSE > + socket_type = stream > + wait = no > + user = root > + server = @SBINDIR@/in.telnetd > + log_on_failure += USERID > +} > diff --git a/meta/recipes- > connectivity/inetutils/inetutils/tftpd.xinetd.inetutils b/meta/recipes- > connectivity/inetutils/inetutils/tftpd.xinetd.inetutils > new file mode 100644 > index 000000000000..67b44c43e852 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/tftpd.xinetd.inetutils > @@ -0,0 +1,19 @@ > +# default: off > +# description: > +# Tftpd is a server which supports the Internet Trivial File Transfer > +# Pro-tocol (RFC 783). The TFTP server operates at the port indicated > +# in the tftp service description; see services(5). > +# > +service tftp > +{ > + disable = yes > + socket_type = dgram > + protocol = udp > + flags = IPv6 > + wait = yes > + user = root > + group = root > + server = @SBINDIR@/in.tftpd > + server_args = /tftpboot > +} > + > diff --git a/meta/recipes-connectivity/inetutils/inetutils/version.patch > b/meta/recipes-connectivity/inetutils/inetutils/version.patch > new file mode 100644 > index 000000000000..532a0e5c0896 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils/version.patch > @@ -0,0 +1,17 @@ > +Upstream-Status: Pending > + > +remove m4_esyscmd function > + > +Signed-off-by: Chunrong Guo <b40290@freescale.com> > +--- inetutils-1.9.1/configure.ac 2012-01-06 22:05:05.000000000 +0800 > ++++ inetutils-1.9.1/configure.ac 2012-11-12 14:01:11.732957019 +0800 > +@@ -20,8 +20,7 @@ > + > + AC_PREREQ(2.59) > + > +-AC_INIT([GNU inetutils], > +- m4_esyscmd([build-aux/git-version-gen .tarball-version 's/inetutils- > /v/;s/_/./g']), > ++AC_INIT([GNU inetutils],[1.9.4], > + [bug-inetutils@gnu.org]) > + > + AC_CONFIG_SRCDIR([src/inetd.c]) > diff --git a/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb > b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb > new file mode 100644 > index 000000000000..a27dbae2e688 > --- /dev/null > +++ b/meta/recipes-connectivity/inetutils/inetutils_1.9.4.bb > @@ -0,0 +1,206 @@ > +DESCRIPTION = "The GNU inetutils are a collection of common \ > +networking utilities and servers including ftp, ftpd, rcp, \ > +rexec, rlogin, rlogind, rsh, rshd, syslog, syslogd, talk, \ > +talkd, telnet, telnetd, tftp, tftpd, and uucpd." > +HOMEPAGE = "http://www.gnu.org/software/inetutils" > +SECTION = "net" > +DEPENDS = "ncurses netbase readline virtual/crypt" > + > +LICENSE = "GPLv3" > + > +LIC_FILES_CHKSUM = "file://COPYING;md5=0c7051aef9219dc7237f206c5c4179a7" > + > +SRC_URI = "${GNU_MIRROR}/inetutils/inetutils-${PV}.tar.gz \ > + file://version.patch \ > + file://inetutils-1.8-0001-printf-parse-pull-in-features.h-for- > __GLIBC__.patch \ > + file://inetutils-1.8-0003-wchar.patch \ > + file://rexec.xinetd.inetutils \ > + file://rlogin.xinetd.inetutils \ > + file://rsh.xinetd.inetutils \ > + file://telnet.xinetd.inetutils \ > + file://tftpd.xinetd.inetutils \ > + file://inetutils-1.9-PATH_PROCNET_DEV.patch \ > + file://inetutils-only-check-pam_appl.h-when-pam-enabled.patch > \ > + file://0001-rcp-fix-to-work-with-large-files.patch \ > +" > + > +SRC_URI[md5sum] = "04852c26c47cc8c6b825f2b74f191f52" > +SRC_URI[sha256sum] = > "be8f75eff936b8e41b112462db51adf689715658a1b09e0d6b05d11ec92cc616" > + > +inherit autotools gettext update-alternatives texinfo > + > +acpaths = "-I ./m4" > + > +SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', '', ' > file://fix-disable-ipv6.patch', d)}" > + > +PACKAGECONFIG ??= "ftp uucpd \ > + ${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)} \ > + ${@bb.utils.contains('DISTRO_FEATURES', 'ipv6', 'ipv6 > ping6', '', d)} \ > + " > +PACKAGECONFIG[ftp] = "--enable-ftp,--disable-ftp,readline" > +PACKAGECONFIG[uucpd] = "--enable-uucpd,--disable-uucpd,readline" > +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" > +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6 > gl_cv_socket_ipv6=no," > +PACKAGECONFIG[ping6] = "--enable-ping6,--disable-ping6," > + > +EXTRA_OECONF = "--with-ncurses-include-dir=${STAGING_INCDIR} \ > + inetutils_cv_path_login=${base_bindir}/login \ > + --with-libreadline-prefix=${STAGING_LIBDIR} \ > + --enable-rpath=no \ > +" > + > +EXTRA_OECONF_append_libc-musl = " --disable-rsh --disable-rcp --disable- > rlogin " > + > +do_configure_prepend () { > + export HELP2MAN='true' > + cp ${STAGING_DATADIR_NATIVE}/gettext/config.rpath ${S}/build- > aux/config.rpath > + rm -f ${S}/glob/configure* > +} > + > +do_install_append () { > + install -m 0755 -d ${D}${base_sbindir} > + install -m 0755 -d ${D}${sbindir} > + install -m 0755 -d ${D}${sysconfdir}/xinetd.d > + if [ "${base_bindir}" != "${bindir}" ] ; then > + install -m 0755 -d ${D}${base_bindir} > + mv ${D}${bindir}/ping* ${D}${base_bindir}/ > + mv ${D}${bindir}/hostname ${D}${base_bindir}/ > + fi > + mv ${D}${bindir}/ifconfig ${D}${base_sbindir}/ > + mv ${D}${libexecdir}/syslogd ${D}${base_sbindir}/ > + mv ${D}${libexecdir}/tftpd ${D}${sbindir}/in.tftpd > + mv ${D}${libexecdir}/telnetd ${D}${sbindir}/in.telnetd > + mv ${D}${libexecdir}/rexecd ${D}${sbindir}/in.rexecd > + if [ -e ${D}${libexecdir}/rlogind ]; then > + mv ${D}${libexecdir}/rlogind ${D}${sbindir}/in.rlogind > + fi > + if [ -e ${D}${libexecdir}/rshd ]; then > + mv ${D}${libexecdir}/rshd ${D}${sbindir}/in.rshd > + fi > + if [ -e ${D}${libexecdir}/talkd ]; then > + mv ${D}${libexecdir}/talkd ${D}${sbindir}/in.talkd > + fi > + mv ${D}${libexecdir}/uucpd ${D}${sbindir}/in.uucpd > + mv ${D}${libexecdir}/* ${D}${bindir}/ > + cp > ${WORKDIR}/rexec.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rexec > + cp > ${WORKDIR}/rlogin.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rlogin > + cp ${WORKDIR}/rsh.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/rsh > + cp > ${WORKDIR}/telnet.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/telnet > + cp > ${WORKDIR}/tftpd.xinetd.inetutils ${D}/${sysconfdir}/xinetd.d/tftpd > + > + sed -e 's,@SBINDIR@,${sbindir},g' -i ${D}/${sysconfdir}/xinetd.d/* > + if [ -e ${D}${libdir}/charset.alias ]; then > + rm -rf ${D}${libdir}/charset.alias > + fi > + rm -rf ${D}${libexecdir}/ > + # remove usr/lib if empty > + rmdir ${D}${libdir} || true > +} > + > +PACKAGES =+ "${PN}-ping ${PN}-ping6 ${PN}-hostname ${PN}-ifconfig \ > +${PN}-tftp ${PN}-logger ${PN}-traceroute ${PN}-syslogd \ > +${PN}-ftp ${PN}-ftpd ${PN}-tftpd ${PN}-telnet ${PN}-telnetd ${PN}-inetd \ > +${PN}-rsh ${PN}-rshd" > + > +# The packages tftpd, telnetd and rshd conflict with the ones > +# provided by netkit, so add the corresponding -dbg packages > +# for them to avoid the confliction between the dbg package > +# of inetutils and netkit. > +PACKAGES =+ "${PN}-tftpd-dbg ${PN}-telnetd-dbg ${PN}-rshd-dbg" > +NOAUTOPACKAGEDEBUG = "1" > + > +ALTERNATIVE_PRIORITY = "79" > +ALTERNATIVE_${PN} = "talk whois" > +ALTERNATIVE_LINK_NAME[talkd] = "${sbindir}/in.talkd" > +ALTERNATIVE_LINK_NAME[uucpd] = "${sbindir}/in.uucpd" > + > +ALTERNATIVE_PRIORITY_${PN}-logger = "60" > +ALTERNATIVE_${PN}-logger = "logger" > +ALTERNATIVE_${PN}-syslogd = "syslogd" > +ALTERNATIVE_LINK_NAME[syslogd] = "${base_sbindir}/syslogd" > + > +ALTERNATIVE_${PN}-ftp = "ftp" > +ALTERNATIVE_${PN}-ftpd = "ftpd" > +ALTERNATIVE_${PN}-tftp = "tftp" > +ALTERNATIVE_${PN}-tftpd = "tftpd" > +ALTERNATIVE_LINK_NAME[tftpd] = "${sbindir}/tftpd" > +ALTERNATIVE_TARGET[tftpd] = "${sbindir}/in.tftpd" > + > +ALTERNATIVE_${PN}-telnet = "telnet" > +ALTERNATIVE_${PN}-telnetd = "telnetd" > +ALTERNATIVE_LINK_NAME[telnetd] = "${sbindir}/telnetd" > +ALTERNATIVE_TARGET[telnetd] = "${sbindir}/in.telnetd" > + > +ALTERNATIVE_${PN}-rsh = "rcp rexec rlogin rsh" > +ALTERNATIVE_${PN}-rshd = "rshd rexecd rlogind" > +ALTERNATIVE_LINK_NAME[rshd] = "${sbindir}/rshd" > +ALTERNATIVE_TARGET[rshd] = "${sbindir}/in.rshd" > +ALTERNATIVE_LINK_NAME[rexecd] = "${sbindir}/rexecd" > +ALTERNATIVE_TARGET[rexecd] = "${sbindir}/in.rexecd" > +ALTERNATIVE_LINK_NAME[rlogind] = "${sbindir}/rlogind" > +ALTERNATIVE_TARGET[rlogind] = "${sbindir}/in.rlogind" > + > +ALTERNATIVE_${PN}-inetd= "inetd" > +ALTERNATIVE_${PN}-traceroute = "traceroute" > + > +ALTERNATIVE_${PN}-hostname = "hostname" > +ALTERNATIVE_LINK_NAME[hostname] = "${base_bindir}/hostname" > + > +ALTERNATIVE_${PN}-doc = "hostname.1 dnsdomainname.1 logger.1 syslogd.8" > +ALTERNATIVE_LINK_NAME[hostname.1] = "${mandir}/man1/hostname.1" > +ALTERNATIVE_LINK_NAME[dnsdomainname.1] = "${mandir}/man1/dnsdomainname.1" > +ALTERNATIVE_LINK_NAME[logger.1] = "${mandir}/man1/logger.1" > +ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8" > + > +ALTERNATIVE_${PN}-ifconfig = "ifconfig" > +ALTERNATIVE_LINK_NAME[ifconfig] = "${base_sbindir}/ifconfig" > + > +ALTERNATIVE_${PN}-ping = "ping" > +ALTERNATIVE_LINK_NAME[ping] = "${base_bindir}/ping" > + > +ALTERNATIVE_${PN}-ping6 = "${@bb.utils.filter('PACKAGECONFIG', 'ping6', > d)}" > +ALTERNATIVE_LINK_NAME[ping6] = "${base_bindir}/ping6" > + > + > +FILES_${PN}-dbg += "${base_bindir}/.debug ${base_sbindir}/.debug > ${bindir}/.debug ${sbindir}/.debug" > +FILES_${PN}-ping = "${base_bindir}/ping.${BPN}" > +FILES_${PN}-ping6 = "${base_bindir}/ping6.${BPN}" > +FILES_${PN}-hostname = "${base_bindir}/hostname.${BPN}" > +FILES_${PN}-ifconfig = "${base_sbindir}/ifconfig.${BPN}" > +FILES_${PN}-traceroute = "${bindir}/traceroute.${BPN}" > +FILES_${PN}-logger = "${bindir}/logger.${BPN}" > + > +FILES_${PN}-syslogd = "${base_sbindir}/syslogd.${BPN}" > +RCONFLICTS_${PN}-syslogd = "rsyslog busybox-syslog sysklogd syslog-ng" > + > +FILES_${PN}-ftp = "${bindir}/ftp.${BPN}" > + > +FILES_${PN}-tftp = "${bindir}/tftp.${BPN}" > +FILES_${PN}-telnet = "${bindir}/telnet.${BPN}" > +FILES_${PN}-rsh = "${bindir}/rsh.${BPN} ${bindir}/rlogin.${BPN} > ${bindir}/rexec.${BPN} ${bindir}/rcp.${BPN}" > + > +FILES_${PN}-rshd = "${sbindir}/in.rshd ${sbindir}/in.rlogind > ${sbindir}/in.rexecd \ > + ${sysconfdir}/xinetd.d/rsh > ${sysconfdir}/xinetd.d/rlogin ${sysconfdir}/xinetd.d/rexec" > +FILES_${PN}-rshd-dbg = "${sbindir}/.debug/in.rshd > ${sbindir}/.debug/in.rlogind ${sbindir}/.debug/in.rexecd" > +RDEPENDS_${PN}-rshd += "xinetd tcp-wrappers" > +RCONFLICTS_${PN}-rshd += "netkit-rshd" > +RPROVIDES_${PN}-rshd = "rshd" > + > +FILES_${PN}-ftpd = "${bindir}/ftpd.${BPN}" > +FILES_${PN}-ftpd-dbg = "${bindir}/.debug/ftpd.${BPN}" > +RDEPENDS_${PN}-ftpd += "xinetd" > + > +FILES_${PN}-tftpd = "${sbindir}/in.tftpd ${sysconfdir}/xinetd.d/tftpd" > +FILES_${PN}-tftpd-dbg = "${sbindir}/.debug/in.tftpd" > +RCONFLICTS_${PN}-tftpd += "netkit-tftpd" > +RDEPENDS_${PN}-tftpd += "xinetd" > + > +FILES_${PN}-telnetd = "${sbindir}/in.telnetd > ${sysconfdir}/xinetd.d/telnet" > +FILES_${PN}-telnetd-dbg = "${sbindir}/.debug/in.telnetd" > +RCONFLICTS_${PN}-telnetd += "netkit-telnetd" > +RPROVIDES_${PN}-telnetd = "telnetd" > +RDEPENDS_${PN}-telnetd += "xinetd" > + > +FILES_${PN}-inetd = "${bindir}/inetd.${BPN}" > + > +RDEPENDS_${PN} = "xinetd" > -- > 2.7.4 > ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 2/4] inetutils: Import version 1.9.4 2019-03-04 9:47 ` André Draszik @ 2019-03-04 16:40 ` Tom Rini 0 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-04 16:40 UTC (permalink / raw) To: André Draszik; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 370 bytes --] On Mon, Mar 04, 2019 at 09:47:57AM +0000, André Draszik wrote: > On Fri, 2019-03-01 at 17:26 -0500, Tom Rini wrote: > > In order to have more robust stand-alone network tools in oe-core, bring > > in vim from meta-openembedded/meta-networking. This imports the recipes > ^^^ > > vim for networking? :-) Noted, fixed for next round. Thanks! -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini 2019-03-01 22:26 ` [PATCH 2/4] inetutils: Import version 1.9.4 Tom Rini @ 2019-03-01 22:26 ` Tom Rini 2019-03-02 14:41 ` Tom Rini 2019-03-04 16:44 ` Mark Hatle 2019-03-01 22:26 ` [PATCH 4/4] imagefeatures: Add test to blacklist building busybox Tom Rini 2019-03-02 7:11 ` [PATCH 0/4] Introduce packagegroup-core-base-utils Adrian Bunk 4 siblings, 2 replies; 20+ messages in thread From: Tom Rini @ 2019-03-01 22:26 UTC (permalink / raw) To: openembedded-core This packagegroup is intended to provide all of the functionality found in other VIRTUAL-RUNTIME_base-utils providers through full packages rather than an all-on-one package. Document how to make use of this in local.conf.sample.extended. Introduce VIRTUAL-RUNTIME-vim and default this to vim-tiny to allow for a differently features vim to be used instead. Signed-off-by: Tom Rini <trini@konsulko.com> --- meta/conf/local.conf.sample.extended | 8 ++++ .../packagegroups/packagegroup-core-base-utils.bb | 49 ++++++++++++++++++++++ 2 files changed, 57 insertions(+) create mode 100644 meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb diff --git a/meta/conf/local.conf.sample.extended b/meta/conf/local.conf.sample.extended index 8062e4c5721b..d00221893ad9 100644 --- a/meta/conf/local.conf.sample.extended +++ b/meta/conf/local.conf.sample.extended @@ -384,3 +384,11 @@ #VIRTUAL-RUNTIME_login_manager = "shadow-base" #VIRTUAL-RUNTIME_init_manager = "systemd" #VIRTUAL-RUNTIME_initscripts = "systemd-compat-units" + +# +# Use a full set of packages instead of busybox for base utils +# +#PREFERRED_PROVIDER_base-utils = "packagegroup-core-base-utils" +#VIRTUAL-RUNTIME_base-utils = "packagegroup-core-base-utils" +#VIRTUAL-RUNTIME_base-utils-hwclock = "util-linux-hwclock" +#VIRTUAL-RUNTIME_base-utils-syslog = "syslog" diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb new file mode 100644 index 000000000000..061dade0bc03 --- /dev/null +++ b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb @@ -0,0 +1,49 @@ +# +# Copyright (C) 2019 Konsulko Group +# + +SUMMARY = "Full-featured set of base utils" +DESCRIPTION = "Package group bringing in packages needed to provide much of the base utils type functionality found in busybox" + +inherit packagegroup + +VIRTUAL-RUNTIME_vim ?= "vim-tiny" + +RDEPENDS_${PN} = "\ + base-passwd \ + bash \ + bind-utils \ + bzip2 \ + coreutils \ + cpio \ + dhcp-client \ + diffutils \ + e2fsprogs \ + ed \ + file \ + findutils \ + gawk \ + grep \ + gzip \ + inetutils \ + iproute2 \ + kmod \ + less \ + lzip \ + ncurses-tools \ + net-tools \ + parted \ + patch \ + procps \ + psmisc \ + sed \ + shadow-base \ + tar \ + time \ + unzip \ + util-linux \ + ${VIRTUAL-RUNTIME_vim} \ + wget \ + which \ + xz \ + " -- 2.7.4 ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup 2019-03-01 22:26 ` [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup Tom Rini @ 2019-03-02 14:41 ` Tom Rini 2019-03-04 16:44 ` Mark Hatle 1 sibling, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-02 14:41 UTC (permalink / raw) To: openembedded-core [-- Attachment #1: Type: text/plain, Size: 755 bytes --] On Fri, Mar 01, 2019 at 05:26:51PM -0500, Tom Rini wrote: > This packagegroup is intended to provide all of the functionality found > in other VIRTUAL-RUNTIME_base-utils providers through full packages > rather than an all-on-one package. Document how to make use of this > in local.conf.sample.extended. Introduce VIRTUAL-RUNTIME-vim and > default this to vim-tiny to allow for a differently features vim to be > used instead. > > Signed-off-by: Tom Rini <trini@konsulko.com> [snip] > + inetutils \ One thing I forgot to double check until now is that inetutils does not work as a metapackage and pull in everything else. When I post v2 I'm going to add in a few more sub-packages to match what is/isn't in busybox. -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup 2019-03-01 22:26 ` [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup Tom Rini 2019-03-02 14:41 ` Tom Rini @ 2019-03-04 16:44 ` Mark Hatle 2019-03-04 18:02 ` Tom Rini 1 sibling, 1 reply; 20+ messages in thread From: Mark Hatle @ 2019-03-04 16:44 UTC (permalink / raw) To: Tom Rini, openembedded-core On 3/1/19 4:26 PM, Tom Rini wrote: > This packagegroup is intended to provide all of the functionality found > in other VIRTUAL-RUNTIME_base-utils providers through full packages > rather than an all-on-one package. Document how to make use of this > in local.conf.sample.extended. Introduce VIRTUAL-RUNTIME-vim and > default this to vim-tiny to allow for a differently features vim to be > used instead. > > Signed-off-by: Tom Rini <trini@konsulko.com> > --- > meta/conf/local.conf.sample.extended | 8 ++++ > .../packagegroups/packagegroup-core-base-utils.bb | 49 ++++++++++++++++++++++ > 2 files changed, 57 insertions(+) > create mode 100644 meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > > diff --git a/meta/conf/local.conf.sample.extended b/meta/conf/local.conf.sample.extended > index 8062e4c5721b..d00221893ad9 100644 > --- a/meta/conf/local.conf.sample.extended > +++ b/meta/conf/local.conf.sample.extended > @@ -384,3 +384,11 @@ > #VIRTUAL-RUNTIME_login_manager = "shadow-base" > #VIRTUAL-RUNTIME_init_manager = "systemd" > #VIRTUAL-RUNTIME_initscripts = "systemd-compat-units" > + > +# > +# Use a full set of packages instead of busybox for base utils > +# > +#PREFERRED_PROVIDER_base-utils = "packagegroup-core-base-utils" > +#VIRTUAL-RUNTIME_base-utils = "packagegroup-core-base-utils" > +#VIRTUAL-RUNTIME_base-utils-hwclock = "util-linux-hwclock" > +#VIRTUAL-RUNTIME_base-utils-syslog = "syslog" > diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > new file mode 100644 > index 000000000000..061dade0bc03 > --- /dev/null > +++ b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > @@ -0,0 +1,49 @@ > +# > +# Copyright (C) 2019 Konsulko Group > +# > + > +SUMMARY = "Full-featured set of base utils" > +DESCRIPTION = "Package group bringing in packages needed to provide much of the base utils type functionality found in busybox" > + > +inherit packagegroup > + > +VIRTUAL-RUNTIME_vim ?= "vim-tiny" > + > +RDEPENDS_${PN} = "\ > + base-passwd \ > + bash \ > + bind-utils \ > + bzip2 \ > + coreutils \ > + cpio \ > + dhcp-client \ > + diffutils \ > + e2fsprogs \ > + ed \ > + file \ > + findutils \ > + gawk \ > + grep \ > + gzip \ > + inetutils \ > + iproute2 \ > + kmod \ > + less \ > + lzip \ > + ncurses-tools \ > + net-tools \ > + parted \ > + patch \ > + procps \ > + psmisc \ > + sed \ > + shadow-base \ > + tar \ > + time \ > + unzip \ > + util-linux \ > + ${VIRTUAL-RUNTIME_vim} \ > + wget \ > + which \ > + xz \ > + " > Sorry missed this earlier. On note, we have a similar recipe in our local layer. I figured you may want to look at it to determine if anything might be missing. https://github.com/WindRiver-OpenSourceLabs/wrlinux/blob/master-wr/recipes-base/packagegroups/packagegroup-busybox-replacement.bb The parts I see missing (when comparing them) are: bc debianutils-run-parts dhcp-server (likely not needed) dpkg-start-stop ifupdown kbd In some configurations we also add "fbset, netcat, and usleep" as well... but I think the reasonable approach is to match the default busybox configuration to whatever is in this list. --Mark ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup 2019-03-04 16:44 ` Mark Hatle @ 2019-03-04 18:02 ` Tom Rini 0 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-04 18:02 UTC (permalink / raw) To: Mark Hatle; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 4409 bytes --] On Mon, Mar 04, 2019 at 10:44:00AM -0600, Mark Hatle wrote: > On 3/1/19 4:26 PM, Tom Rini wrote: > > This packagegroup is intended to provide all of the functionality found > > in other VIRTUAL-RUNTIME_base-utils providers through full packages > > rather than an all-on-one package. Document how to make use of this > > in local.conf.sample.extended. Introduce VIRTUAL-RUNTIME-vim and > > default this to vim-tiny to allow for a differently features vim to be > > used instead. > > > > Signed-off-by: Tom Rini <trini@konsulko.com> > > --- > > meta/conf/local.conf.sample.extended | 8 ++++ > > .../packagegroups/packagegroup-core-base-utils.bb | 49 ++++++++++++++++++++++ > > 2 files changed, 57 insertions(+) > > create mode 100644 meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > > > > diff --git a/meta/conf/local.conf.sample.extended b/meta/conf/local.conf.sample.extended > > index 8062e4c5721b..d00221893ad9 100644 > > --- a/meta/conf/local.conf.sample.extended > > +++ b/meta/conf/local.conf.sample.extended > > @@ -384,3 +384,11 @@ > > #VIRTUAL-RUNTIME_login_manager = "shadow-base" > > #VIRTUAL-RUNTIME_init_manager = "systemd" > > #VIRTUAL-RUNTIME_initscripts = "systemd-compat-units" > > + > > +# > > +# Use a full set of packages instead of busybox for base utils > > +# > > +#PREFERRED_PROVIDER_base-utils = "packagegroup-core-base-utils" > > +#VIRTUAL-RUNTIME_base-utils = "packagegroup-core-base-utils" > > +#VIRTUAL-RUNTIME_base-utils-hwclock = "util-linux-hwclock" > > +#VIRTUAL-RUNTIME_base-utils-syslog = "syslog" > > diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > > new file mode 100644 > > index 000000000000..061dade0bc03 > > --- /dev/null > > +++ b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb > > @@ -0,0 +1,49 @@ > > +# > > +# Copyright (C) 2019 Konsulko Group > > +# > > + > > +SUMMARY = "Full-featured set of base utils" > > +DESCRIPTION = "Package group bringing in packages needed to provide much of the base utils type functionality found in busybox" > > + > > +inherit packagegroup > > + > > +VIRTUAL-RUNTIME_vim ?= "vim-tiny" > > + > > +RDEPENDS_${PN} = "\ > > + base-passwd \ > > + bash \ > > + bind-utils \ > > + bzip2 \ > > + coreutils \ > > + cpio \ > > + dhcp-client \ > > + diffutils \ > > + e2fsprogs \ > > + ed \ > > + file \ > > + findutils \ > > + gawk \ > > + grep \ > > + gzip \ > > + inetutils \ > > + iproute2 \ > > + kmod \ > > + less \ > > + lzip \ > > + ncurses-tools \ > > + net-tools \ > > + parted \ > > + patch \ > > + procps \ > > + psmisc \ > > + sed \ > > + shadow-base \ > > + tar \ > > + time \ > > + unzip \ > > + util-linux \ > > + ${VIRTUAL-RUNTIME_vim} \ > > + wget \ > > + which \ > > + xz \ > > + " > > > > Sorry missed this earlier. On note, we have a similar recipe in our local layer. > > I figured you may want to look at it to determine if anything might be missing. > > https://github.com/WindRiver-OpenSourceLabs/wrlinux/blob/master-wr/recipes-base/packagegroups/packagegroup-busybox-replacement.bb > > The parts I see missing (when comparing them) are: > > bc I had this initially but bc isn't enabled in busybox (anymore?). > debianutils-run-parts > dhcp-server (likely not needed) > dpkg-start-stop > ifupdown These fall into the category of "Oh, I need to try without systemd". I'll put those in and give it a spin. > kbd This is in, but via a dep rather than explicit, so I'll list it. > In some configurations we also add "fbset, netcat, and usleep" as well... but I > think the reasonable approach is to match the default busybox configuration to > whatever is in this list. Ah fbset, going off on a quick tangent, I see 2.1 from 1999 is still the latest and greatest. Good times! I'm not sure if we should move fbset to oe-core however. For netcat, we have netcat-openbsd in meta-oe which is 'nc' and would match busybox saying CONFIG_NC=y and CONFIG_NETCAT=n. For usleep, real sleep (and busybox sleep when configured) supports decimals so I would be inclined to say sleep is good enough. -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
* [PATCH 4/4] imagefeatures: Add test to blacklist building busybox 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini ` (2 preceding siblings ...) 2019-03-01 22:26 ` [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup Tom Rini @ 2019-03-01 22:26 ` Tom Rini 2019-03-02 7:11 ` [PATCH 0/4] Introduce packagegroup-core-base-utils Adrian Bunk 4 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-01 22:26 UTC (permalink / raw) To: openembedded-core Now that we have a packagegroup that can be used to replace the overall functionality of busybox as base-utils, add a test that we can continue to build a fairly complex image without busybox being available. This also doubles as documentation-by-test of how to do this. Signed-off-by: Tom Rini <trini@konsulko.com> --- meta/lib/oeqa/selftest/cases/imagefeatures.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/meta/lib/oeqa/selftest/cases/imagefeatures.py b/meta/lib/oeqa/selftest/cases/imagefeatures.py index 8c95432e00b3..aed63e5476a7 100644 --- a/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -236,3 +236,29 @@ USERADD_GID_TABLES += "files/static-group" """ self.write_config(config) bitbake("core-image-base") + + def test_no_busybox_base_utils(self): + config = """ +# Enable x11 +DISTRO_FEATURES_append += "x11" + +# Switch to systemd +DISTRO_FEATURES += "systemd" +VIRTUAL-RUNTIME_init_manager = "systemd" +VIRTUAL-RUNTIME_initscripts = "" +VIRTUAL-RUNTIME_syslog = "" +VIRTUAL-RUNTIME_login_manager = "shadow-base" +DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit" + +# Replace busybox +PREFERRED_PROVIDER_virtual/base-utils = "packagegroup-core-base-utils" +VIRTUAL-RUNTIME_base-utils = "packagegroup-core-base-utils" +VIRTUAL-RUNTIME_base-utils-hwclock = "util-linux-hwclock" +VIRTUAL-RUNTIME_base-utils-syslog = "" + +# Blacklist busybox +PNBLACKLIST[busybox] = "Don't build this" +""" + self.write_config(config) + + bitbake("--graphviz core-image-sato") -- 2.7.4 ^ permalink raw reply related [flat|nested] 20+ messages in thread
* Re: [PATCH 0/4] Introduce packagegroup-core-base-utils 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini ` (3 preceding siblings ...) 2019-03-01 22:26 ` [PATCH 4/4] imagefeatures: Add test to blacklist building busybox Tom Rini @ 2019-03-02 7:11 ` Adrian Bunk 2019-03-02 12:36 ` Tom Rini 4 siblings, 1 reply; 20+ messages in thread From: Adrian Bunk @ 2019-03-02 7:11 UTC (permalink / raw) To: Tom Rini; +Cc: openembedded-core On Fri, Mar 01, 2019 at 05:26:48PM -0500, Tom Rini wrote: >... > - busybox provides "nslookup" which at this point in time is an > anachronism. bind stopped shipping "nslookup" prior to oe-core replacing > the old monolithic layer. We do provide host and dig and such via > bind-utils. >... I'd say this is a bug in bind-utils. nslookup was was at some point deprecated by bind upstream, but it was undeprecated 15 years ago. > Tom cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 20+ messages in thread
* Re: [PATCH 0/4] Introduce packagegroup-core-base-utils 2019-03-02 7:11 ` [PATCH 0/4] Introduce packagegroup-core-base-utils Adrian Bunk @ 2019-03-02 12:36 ` Tom Rini 0 siblings, 0 replies; 20+ messages in thread From: Tom Rini @ 2019-03-02 12:36 UTC (permalink / raw) To: Adrian Bunk; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 755 bytes --] On Sat, Mar 02, 2019 at 09:11:40AM +0200, Adrian Bunk wrote: > On Fri, Mar 01, 2019 at 05:26:48PM -0500, Tom Rini wrote: > >... > > - busybox provides "nslookup" which at this point in time is an > > anachronism. bind stopped shipping "nslookup" prior to oe-core replacing > > the old monolithic layer. We do provide host and dig and such via > > bind-utils. > >... > > I'd say this is a bug in bind-utils. > > nslookup was was at some point deprecated by bind upstream, > but it was undeprecated 15 years ago. Interesting, OK. It looks like Fedora puts this into bind-utils (which is a lot of tools) and Ubuntu/Debian into dnsutils (which is nslookup, nsupdate and dig). I'll put it into our bind-utils. Thanks! -- Tom [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 20+ messages in thread
end of thread, other threads:[~2019-03-04 18:02 UTC | newest] Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-03-01 22:26 [PATCH 0/4] Introduce packagegroup-core-base-utils Tom Rini 2019-03-01 22:26 ` [PATCH 1/4] vim: Import version 8.1.0347 Tom Rini 2019-03-02 9:15 ` Martin Jansa 2019-03-02 12:36 ` Tom Rini 2019-03-02 12:57 ` Tom Rini 2019-03-02 15:42 ` Joshua Watt 2019-03-01 22:26 ` [PATCH 2/4] inetutils: Import version 1.9.4 Tom Rini 2019-03-02 17:00 ` Richard Purdie 2019-03-02 17:46 ` Tom Rini 2019-03-02 19:25 ` Richard Purdie 2019-03-02 19:28 ` Tom Rini 2019-03-04 9:47 ` André Draszik 2019-03-04 16:40 ` Tom Rini 2019-03-01 22:26 ` [PATCH 3/4] packagegroup-core-base-utils: Introduce new base-utils packagegroup Tom Rini 2019-03-02 14:41 ` Tom Rini 2019-03-04 16:44 ` Mark Hatle 2019-03-04 18:02 ` Tom Rini 2019-03-01 22:26 ` [PATCH 4/4] imagefeatures: Add test to blacklist building busybox Tom Rini 2019-03-02 7:11 ` [PATCH 0/4] Introduce packagegroup-core-base-utils Adrian Bunk 2019-03-02 12:36 ` Tom Rini
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.