Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla at busybox.net <bugzilla@busybox.net>
To: buildroot@busybox.net
Subject: [Buildroot] [Bug 11191] xattr and check-package issue
Date: Thu, 26 Jul 2018 00:42:16 +0000	[thread overview]
Message-ID: <bug-11191-163-nqppynrRK4@https.bugs.busybox.net/> (raw)
In-Reply-To: <bug-11191-163@https.bugs.busybox.net/>

https://bugs.busybox.net/show_bug.cgi?id=11191

Ricardo Martincoski <ricardo.martincoski@datacom.ind.br> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #1 from Ricardo Martincoski <ricardo.martincoski@datacom.ind.br> ---
I can reproduce both behaviors on current master:
- check-package complaining when tab is not used for |xattr
- xattr being silently ignored by host-makedevs when tab is used for |xattr

The second one occurs because the tab propagates from the package recipe to
package/pkg-generic.mk to fs/common.mk and finally to
output/build/buildroot-fs/device_table.txt and the code that processes this
file does a strict check:
line 513 @ package/makedevs/makedevs.c
if (1 == sscanf(line, "|xattr %254s", xattr)) {

We could fix this inconsistency by a number of ways:
1) change check-package;
2) try to come up with a solution in package/pkg-generic.mk to remove leading
tabs from _PERMISSION. It cannot be a simple $$(strip) because it would remove
the newlines;
3) change makedevs to ignore leading tabs/spaces for xattr (as it already does
for non-xattr lines). Hackish version to replace the code mentioned above:
> if (2 == sscanf(line, "%4095s %254s", name, xattr) && !strcmp(name, "|xattr")) {
4) change fs/common.mk to remove the leading tabs/spaces. Something like this:
>+++ b/fs/common.mk
>@@@ -89,2 -89,2 +89,3 @@@ endi
>        $(call PRINTF,$(PACKAGES_PERMISSIONS_TABLE)) >> $(FULL_DEVICE_TABLE)
>++      $(SED) "s/^[ \t]*//g" $(FULL_DEVICE_TABLE)
>        echo "$(HOST_DIR)/bin/makedevs -d $(FULL_DEVICE_TABLE) $(TARGET_DIR)" >> $(FAKEROOT_SCRIPT)

I think option 4 makes sense because we also will end up with a better
formatted device_table.txt.

But let's wait for more opinions on how to proceed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

  parent reply	other threads:[~2018-07-26  0:42 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-25 15:24 [Buildroot] [Bug 11191] New: xattr and check-package issue bugzilla at busybox.net
2018-07-25 16:12 ` [Buildroot] [Bug 11191] " bugzilla at busybox.net
2018-07-26  0:42 ` bugzilla at busybox.net [this message]
2018-07-26  8:17   ` [Buildroot] Handling leading tabs in makedevs [was: [Bug 11191] xattr and check-package issue] Arnout Vandecappelle
2018-08-06  3:12     ` Ricardo Martincoski
2018-08-14 21:20 ` [Buildroot] [Bug 11191] xattr and check-package issue bugzilla at busybox.net
2018-08-16  3:01 ` bugzilla at busybox.net

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-11191-163-nqppynrRK4@https.bugs.busybox.net/ \
    --to=bugzilla@busybox.net \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox