All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest
@ 2019-04-07 17:15 Mariano Lopez
  2019-04-07 17:15 ` [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata Mariano Lopez
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Mariano Lopez @ 2019-04-07 17:15 UTC (permalink / raw)
  To: openembedded-core

Some binaries are renamed by update-alternatives class at build time
and some ptest run against a binary belonging to another package. Take
for example busybox or util-linux.

This series adds a directory within the ptest with symlinks to the
binaries produced by the package, so just adding this directory to the
PATH will test the correct binaries.

v2 changes:

Add busybox recipe to use this method of symlinks generation.

Refactor the way the binary ptest directory is generated. Now the
directory will contain only symlinks to binaries that were renamed by
update-alternatives and not symlinks to all the package's binaries. This
have some advantages:
- Less lines and the code is cleaner.
- There is no need to have symlinks for every binary.
- Reuse existing update-alternatives functionality, don't need to add
  new features to the class.

To use this feature just add PTEST_BINDIR = "1" to the recipe.

The following changes since commit ffa5a1bda6741f5dc9f1b8db1bb37b0c6f103c99:

  asciidoc: specify XML catalogue to use (2019-04-03 14:56:27 +0100)

are available in the Git repository at:

  git://github.com/justanotherboy/poky bug13238
  https://github.com/justanotherboy/poky/tree/bug13238

Mariano Lopez (4):
  update-alternatives.bbclass: Add function to get metadata
  ptest.bbclass: Add feature to populate a binary directory
  util-linux: Use PTEST binary directory
  busybox: Use PTEST binary directory

 meta/classes/ptest.bbclass                    | 31 ++++++++
 meta/classes/update-alternatives.bbclass      | 74 ++++++++++++-------
 meta/recipes-core/busybox/busybox.inc         | 16 +---
 meta/recipes-core/util-linux/util-linux.inc   |  5 +-
 .../util-linux/util-linux/run-ptest           |  4 +
 5 files changed, 87 insertions(+), 43 deletions(-)

-- 
2.19.2



^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata
  2019-04-07 17:15 [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest Mariano Lopez
@ 2019-04-07 17:15 ` Mariano Lopez
  2019-04-07 21:32   ` Richard Purdie
  2019-04-07 17:15 ` [PATCH v2 2/4] ptest.bbclass: Add feature to populate a binary directory Mariano Lopez
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 8+ messages in thread
From: Mariano Lopez @ 2019-04-07 17:15 UTC (permalink / raw)
  To: openembedded-core

This adds update_alternatives_alt_targets function to get the metadata
for a package. This is for code reuse because the metadata would help
other classes that needs to be aware of how update-alternatives modify
the final package.

[YOCTO #12597]
[YOCTO #13238]

Signed-off-by: Mariano Lopez <just.another.mariano@gmail.com>
---
 meta/classes/update-alternatives.bbclass | 74 +++++++++++++++---------
 1 file changed, 47 insertions(+), 27 deletions(-)

diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
index 537e85d9a3..bc19373348 100644
--- a/meta/classes/update-alternatives.bbclass
+++ b/meta/classes/update-alternatives.bbclass
@@ -216,44 +216,64 @@ python apply_update_alternative_renames () {
             update_files(alt_target, alt_target_rename, pkg, d)
 }
 
+def update_alternatives_alt_targets(d, pkg):
+    """
+    Returns the update-alternatives metadata for a package.
+
+    The returned format is a list of tuples where the tuple contains:
+    alt_name:     The binary name
+    alt_link:     The path for the binary (Shared by different packages)
+    alt_target:   The path for the renamed binary (Unique per package)
+    alt_priority: The priority of the alt_target
+
+    All the alt_targets will be installed into the sysroot. The alt_link is
+    a symlink pointing to the alt_target with the highest priority.
+    """
+
+    pn = d.getVar('BPN')
+    pkgdest = d.getVar('PKGD')
+    updates = list()
+    for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
+        alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
+        alt_target   = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or \
+                       d.getVarFlag('ALTERNATIVE_TARGET', alt_name) or \
+                       d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or \
+                       d.getVar('ALTERNATIVE_TARGET') or \
+                       alt_link
+        alt_priority = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg,  alt_name) or \
+                       d.getVarFlag('ALTERNATIVE_PRIORITY',  alt_name) or \
+                       d.getVar('ALTERNATIVE_PRIORITY_%s' % pkg) or  \
+                       d.getVar('ALTERNATIVE_PRIORITY')
+
+        # This shouldn't trigger, as it should have been resolved earlier!
+        if alt_link == alt_target:
+            bb.note('alt_link == alt_target: %s == %s -- correcting, this should not happen!' % (alt_link, alt_target))
+            alt_target = '%s.%s' % (alt_target, pn)
+
+        if not os.path.lexists('%s/%s' % (pkgdest, alt_target)):
+            bb.warn('%s: NOT adding alternative provide %s: %s does not exist' % (pn, alt_link, alt_target))
+            continue
+
+        alt_target = os.path.normpath(alt_target)
+        updates.append( (alt_name, alt_link, alt_target, alt_priority) )
+
+    return updates
+
 PACKAGESPLITFUNCS_prepend = "populate_packages_updatealternatives "
 
 python populate_packages_updatealternatives () {
     if not update_alternatives_enabled(d):
         return
 
-    pn = d.getVar('BPN')
-
     # Do actual update alternatives processing
-    pkgdest = d.getVar('PKGD')
     for pkg in (d.getVar('PACKAGES') or "").split():
         # Create post install/removal scripts
         alt_setup_links = ""
         alt_remove_links = ""
-        for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
-            alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
-            alt_target   = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or d.getVarFlag('ALTERNATIVE_TARGET', alt_name)
-            alt_target   = alt_target or d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or d.getVar('ALTERNATIVE_TARGET') or alt_link
-            # Sometimes alt_target is specified as relative to the link name.
-            alt_target   = os.path.join(os.path.dirname(alt_link), alt_target)
-
-            alt_priority = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg,  alt_name) or d.getVarFlag('ALTERNATIVE_PRIORITY',  alt_name)
-            alt_priority = alt_priority or d.getVar('ALTERNATIVE_PRIORITY_%s' % pkg) or d.getVar('ALTERNATIVE_PRIORITY')
-
-            # This shouldn't trigger, as it should have been resolved earlier!
-            if alt_link == alt_target:
-                bb.note('alt_link == alt_target: %s == %s -- correcting, this should not happen!' % (alt_link, alt_target))
-                alt_target = '%s.%s' % (alt_target, pn)
-
-            if not os.path.lexists('%s/%s' % (pkgdest, alt_target)):
-                bb.warn('%s: NOT adding alternative provide %s: %s does not exist' % (pn, alt_link, alt_target))
-                continue
-
-            # Default to generate shell script.. eventually we may want to change this...
-            alt_target = os.path.normpath(alt_target)
-
-            alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
-            alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)
+        updates = update_alternatives_alt_targets(d, pkg)
+        for alt_name, alt_link, alt_target, alt_priority in updates:
+           alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
+           alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)
 
         if alt_setup_links:
             # RDEPENDS setup
-- 
2.19.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 2/4] ptest.bbclass: Add feature to populate a binary directory
  2019-04-07 17:15 [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest Mariano Lopez
  2019-04-07 17:15 ` [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata Mariano Lopez
@ 2019-04-07 17:15 ` Mariano Lopez
  2019-04-07 17:15 ` [PATCH v2 3/4] util-linux: Use PTEST " Mariano Lopez
  2019-04-07 17:16 ` [PATCH v2 4/4] busybox: " Mariano Lopez
  3 siblings, 0 replies; 8+ messages in thread
From: Mariano Lopez @ 2019-04-07 17:15 UTC (permalink / raw)
  To: openembedded-core

This adds the functionality to create a binary directory within
PTEST_PATH directory. This directory will be populated with
symlinks pointing to the binaries installed by the package and
then renamed by update-alternatives. This way the ptest only needs
to source this binary directory in order to use the expected
binaries.

To enable this feature just add PTEST_BINDIR = "1" to the recipe.

[YOCTO #12597]
[YOCTO #13238]

Signed-off-by: Mariano Lopez <just.another.mariano@gmail.com>
---
 meta/classes/ptest.bbclass | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/meta/classes/ptest.bbclass b/meta/classes/ptest.bbclass
index 97865c9338..0c37447881 100644
--- a/meta/classes/ptest.bbclass
+++ b/meta/classes/ptest.bbclass
@@ -65,6 +65,37 @@ do_install_ptest_base() {
     done
 }
 
+PTEST_BINDIR_PKGD_PATH = "${PKGD}${PTEST_PATH}/bin"
+
+# This function needs to run after apply_update_alternative_renames because the
+# aforementioned function will update the ALTERNATIVE_LINK_NAME flag. Append is
+# used here to make this function to run as late as possible.
+PACKAGE_PREPROCESS_FUNCS_append = "${@bb.utils.contains("PTEST_BINDIR", "1", " ptest_update_alternatives", "", d)}"
+
+python ptest_update_alternatives() {
+    """
+    This function will generate the symlinks in the PTEST_BINDIR_PKGD_PATH
+    to match the renamed binaries by update-alternatives.
+    """
+
+    if not bb.data.inherits_class('update-alternatives', d) \
+           or not update_alternatives_enabled(d):
+        return
+
+    bb.note("Generating symlinks for ptest")
+    bin_paths = { os.environ["bindir"], os.environ["base_bindir"],
+                  os.environ["sbindir"], os.environ["base_sbindir"] }
+    ptest_bindir = d.getVar("PTEST_BINDIR_PKGD_PATH")
+    os.mkdir(ptest_bindir)
+    for pkg in (d.getVar('PACKAGES') or "").split():
+        alternatives = update_alternatives_alt_targets(d, pkg)
+        for alt_name, alt_link, alt_target, _ in alternatives:
+            # Some alternatives are for man pages,
+            # check if the alternative is in PATH
+            if os.path.dirname(alt_link) in bin_paths:
+                os.symlink(alt_target, os.path.join(ptest_bindir, alt_name))
+}
+
 do_configure_ptest_base[dirs] = "${B}"
 do_compile_ptest_base[dirs] = "${B}"
 do_install_ptest_base[dirs] = "${B}"
-- 
2.19.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 3/4] util-linux: Use PTEST binary directory
  2019-04-07 17:15 [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest Mariano Lopez
  2019-04-07 17:15 ` [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata Mariano Lopez
  2019-04-07 17:15 ` [PATCH v2 2/4] ptest.bbclass: Add feature to populate a binary directory Mariano Lopez
@ 2019-04-07 17:15 ` Mariano Lopez
  2019-04-07 17:16 ` [PATCH v2 4/4] busybox: " Mariano Lopez
  3 siblings, 0 replies; 8+ messages in thread
From: Mariano Lopez @ 2019-04-07 17:15 UTC (permalink / raw)
  To: openembedded-core

Some binaries generated by util-linux will be replaced by core-utils
in the final image by update-alternatives, so use a dedicated directory
with symlinks to avoid using a binary generated by another package.

This will solve the issue with the ptest runner timing out when
running the kill ptests for util-linux.

[YOCTO #13238]

Signed-off-by: Mariano Lopez <just.another.mariano@gmail.com>
---
 meta/recipes-core/util-linux/util-linux.inc       | 5 +++--
 meta/recipes-core/util-linux/util-linux/run-ptest | 4 ++++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
index 18c3af240e..a67318e84e 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -284,6 +284,7 @@ ALTERNATIVE_LINK_NAME[wall.1] = "${mandir}/man1/wall.1"
 
 BBCLASSEXTEND = "native nativesdk"
 
+PTEST_BINDIR = "1"
 do_compile_ptest() {
     oe_runmake buildtest-TESTS
 }
@@ -312,8 +313,8 @@ do_install_ptest() {
         '/^\tif[[:space:]]\[[[:space:]]![[:space:]]-x[[:space:]]"$1"/s|$1|`which $1 2>/dev/null`|g' \
          ${D}${PTEST_PATH}/tests/functions.sh
 
-    # "kill -L" behaves differently than "/bin/kill -L" so we need an additional fix
+    # Running "kill" without the the complete path would use the shell's built-in kill
     sed -i -e \
-         '/^TS_CMD_KILL/ s|kill|/bin/kill|g' \
+         '/^TS_CMD_KILL/ s|kill|${PTEST_PATH}/bin/kill|g' \
          ${D}${PTEST_PATH}/tests/commands.sh
 }
diff --git a/meta/recipes-core/util-linux/util-linux/run-ptest b/meta/recipes-core/util-linux/util-linux/run-ptest
index fbc2f9b56a..2178ab8fef 100644
--- a/meta/recipes-core/util-linux/util-linux/run-ptest
+++ b/meta/recipes-core/util-linux/util-linux/run-ptest
@@ -1,5 +1,9 @@
 #!/bin/sh
 
+current_path=$(readlink -f $0)
+export bindir=$(dirname $current_path)
+export PATH=$bindir/bin:$PATH
+
 cd tests || exit 1                                                          
 
 comps=$(find ts/ -type f -perm -111 -regex ".*/[^\.~]*" |  sort)
-- 
2.19.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH v2 4/4] busybox: Use PTEST binary directory
  2019-04-07 17:15 [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest Mariano Lopez
                   ` (2 preceding siblings ...)
  2019-04-07 17:15 ` [PATCH v2 3/4] util-linux: Use PTEST " Mariano Lopez
@ 2019-04-07 17:16 ` Mariano Lopez
  3 siblings, 0 replies; 8+ messages in thread
From: Mariano Lopez @ 2019-04-07 17:16 UTC (permalink / raw)
  To: openembedded-core

This will generate the symlinks in the ptest binary directory using the
ptest class functionality instead of generating them manually. Because
the ptest class uses update-alternatives to get the metadata for the
symlinks it will respect the use of BUSYBOX_SPLIT_SUID automatically.

[YOCTO #12597]

Signed-off-by: Mariano Lopez <just.another.mariano@gmail.com>
---
 meta/recipes-core/busybox/busybox.inc | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

diff --git a/meta/recipes-core/busybox/busybox.inc b/meta/recipes-core/busybox/busybox.inc
index c9d25ff1ca..174ce5a8c0 100644
--- a/meta/recipes-core/busybox/busybox.inc
+++ b/meta/recipes-core/busybox/busybox.inc
@@ -347,24 +347,12 @@ do_install () {
 	fi
 }
 
+PTEST_BINDIR = "1"
+
 do_install_ptest () {
 	cp -r ${B}/testsuite ${D}${PTEST_PATH}/
 	cp ${B}/.config      ${D}${PTEST_PATH}/
 	ln -s /bin/busybox   ${D}${PTEST_PATH}/busybox
-
-	mkdir ${D}${PTEST_PATH}/bin
-	if [ "${BUSYBOX_SPLIT_SUID}" = "1" ]; then
-		while read link; do
-			ln -s ${base_bindir}/busybox.suid ${D}${PTEST_PATH}/bin/$(basename $link)
-		done <${D}${sysconfdir}/busybox.links.suid
-		while read link; do
-			ln -s ${base_bindir}/busybox.nosuid ${D}${PTEST_PATH}/bin/$(basename $link)
-		done <${D}${sysconfdir}/busybox.links.nosuid
-	else
-		while read link; do
-			ln -s ${base_bindir}/busybox ${D}${PTEST_PATH}/bin/$(basename $link)
-		done <${D}${sysconfdir}/busybox.links
-	fi
 }
 
 inherit update-alternatives
-- 
2.19.2



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata
  2019-04-07 17:15 ` [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata Mariano Lopez
@ 2019-04-07 21:32   ` Richard Purdie
  2019-04-08  2:23     ` Mariano Lopez
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2019-04-07 21:32 UTC (permalink / raw)
  To: Mariano Lopez, openembedded-core

On Sun, 2019-04-07 at 12:15 -0500, Mariano Lopez wrote:
>  python populate_packages_updatealternatives () {
>      if not update_alternatives_enabled(d):
>          return
>  
> -    pn = d.getVar('BPN')
> -
>      # Do actual update alternatives processing
> -    pkgdest = d.getVar('PKGD')
>      for pkg in (d.getVar('PACKAGES') or "").split():
>          # Create post install/removal scripts
>          alt_setup_links = ""
>          alt_remove_links = ""
> -        for alt_name in (d.getVar('ALTERNATIVE_%s' % pkg) or "").split():
> -            alt_link     = d.getVarFlag('ALTERNATIVE_LINK_NAME', alt_name)
> -            alt_target   = d.getVarFlag('ALTERNATIVE_TARGET_%s' % pkg, alt_name) or d.getVarFlag('ALTERNATIVE_TARGET', alt_name)
> -            alt_target   = alt_target or d.getVar('ALTERNATIVE_TARGET_%s' % pkg) or d.getVar('ALTERNATIVE_TARGET') or alt_link
> -            # Sometimes alt_target is specified as relative to the link name.
> -            alt_target   = os.path.join(os.path.dirname(alt_link), alt_target)
> -
> -            alt_priority = d.getVarFlag('ALTERNATIVE_PRIORITY_%s' % pkg,  alt_name) or d.getVarFlag('ALTERNATIVE_PRIORITY',  alt_name)
> -            alt_priority = alt_priority or d.getVar('ALTERNATIVE_PRIORITY_%s' % pkg) or d.getVar('ALTERNATIVE_PRIORITY')
> -
> -            # This shouldn't trigger, as it should have been resolved earlier!
> -            if alt_link == alt_target:
> -                bb.note('alt_link == alt_target: %s == %s -- correcting, this should not happen!' % (alt_link, alt_target))
> -                alt_target = '%s.%s' % (alt_target, pn)
> -
> -            if not os.path.lexists('%s/%s' % (pkgdest, alt_target)):
> -                bb.warn('%s: NOT adding alternative provide %s: %s does not exist' % (pn, alt_link, alt_target))
> -                continue
> -
> -            # Default to generate shell script.. eventually we may want to change this...
> -            alt_target = os.path.normpath(alt_target)
> -
> -            alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
> -            alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)
> +        updates = update_alternatives_alt_targets(d, pkg)
> +        for alt_name, alt_link, alt_target, alt_priority in updates:
> +           alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
> +           alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)

I think the above is three whitespaces, not four? I know its minor but
it jumped out as I was comparing the code before/after!

Cheers,

Richard




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata
  2019-04-07 21:32   ` Richard Purdie
@ 2019-04-08  2:23     ` Mariano Lopez
  2019-04-08  6:57       ` richard.purdie
  0 siblings, 1 reply; 8+ messages in thread
From: Mariano Lopez @ 2019-04-08  2:23 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core


On 4/7/19 4:32 PM, Richard Purdie wrote:
> On Sun, 2019-04-07 at 12:15 -0500, Mariano Lopez wrote:
>> -
>> -            # Default to generate shell script.. eventually we may want to change this...
>> -            alt_target = os.path.normpath(alt_target)
>> -
>> -            alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
>> -            alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)
>> +        updates = update_alternatives_alt_targets(d, pkg)
>> +        for alt_name, alt_link, alt_target, alt_priority in updates:
>> +           alt_setup_links  += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
>> +           alt_remove_links += '\tupdate-alternatives --remove  %s %s\n' % (alt_name, alt_target)
> I think the above is three whitespaces, not four? I know its minor but
> it jumped out as I was comparing the code before/after!
>
> Cheers,
>
> Richard
>

Good catch! I have sent the the fixed version but I messed up with the 
cover letter, you can find the correct version here:
https://patchwork.openembedded.org/patch/160236/


I think I don't even need to put that link there :)

Thanks,

Mariano



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata
  2019-04-08  2:23     ` Mariano Lopez
@ 2019-04-08  6:57       ` richard.purdie
  0 siblings, 0 replies; 8+ messages in thread
From: richard.purdie @ 2019-04-08  6:57 UTC (permalink / raw)
  To: Mariano Lopez, openembedded-core

On Sun, 2019-04-07 at 21:23 -0500, Mariano Lopez wrote:
> On 4/7/19 4:32 PM, Richard Purdie wrote:
> > On Sun, 2019-04-07 at 12:15 -0500, Mariano Lopez wrote:
> > > -
> > > -            # Default to generate shell script.. eventually we
> > > may want to change this...
> > > -            alt_target = os.path.normpath(alt_target)
> > > -
> > > -            alt_setup_links  += '\tupdate-alternatives --install 
> > > %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
> > > -            alt_remove_links += '\tupdate-alternatives --
> > > remove  %s %s\n' % (alt_name, alt_target)
> > > +        updates = update_alternatives_alt_targets(d, pkg)
> > > +        for alt_name, alt_link, alt_target, alt_priority in
> > > updates:
> > > +           alt_setup_links  += '\tupdate-alternatives --install
> > > %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
> > > +           alt_remove_links += '\tupdate-alternatives --
> > > remove  %s %s\n' % (alt_name, alt_target)
> > I think the above is three whitespaces, not four? I know its minor
> > but
> > it jumped out as I was comparing the code before/after!
> > 
> > Cheers,
> > 
> > Richard
> > 
> 
> Good catch! I have sent the the fixed version but I messed up with
> the 
> cover letter, you can find the correct version here:
> https://patchwork.openembedded.org/patch/160236/
> 
> 
> I think I don't even need to put that link there :)

Thanks, unfortunately nativesdk-util-linux fails to build :(

https://autobuilder.yoctoproject.org/typhoon/#/builders/20/builds/711

Cheers,

Richard



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2019-04-08  6:57 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-07 17:15 [PATCH v2 0/4] Feature to use symbolic links to binaries for ptest Mariano Lopez
2019-04-07 17:15 ` [PATCH v2 1/4] update-alternatives.bbclass: Add function to get metadata Mariano Lopez
2019-04-07 21:32   ` Richard Purdie
2019-04-08  2:23     ` Mariano Lopez
2019-04-08  6:57       ` richard.purdie
2019-04-07 17:15 ` [PATCH v2 2/4] ptest.bbclass: Add feature to populate a binary directory Mariano Lopez
2019-04-07 17:15 ` [PATCH v2 3/4] util-linux: Use PTEST " Mariano Lopez
2019-04-07 17:16 ` [PATCH v2 4/4] busybox: " Mariano Lopez

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.