From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: buildroot@buildroot.org
Cc: Adam Duskett <adam.duskett@amarulasolutions.com>,
Giulio Benetti <giulio.benetti@benettiengineering.com>,
"Yann E . MORIN" <yann.morin.1998@free.fr>
Subject: [Buildroot] [PATCH 0/9] everywhere: use $(TAR) not tar (branch yem/tarTAR)
Date: Wed, 5 Jun 2024 16:18:15 +0200 [thread overview]
Message-ID: <cover.1717597094.git.yann.morin.1998@free.fr> (raw)
Hello All!
To allow for reproducible archives, and to ensure we can extract all
archives, we require that we use tar 1.35 or above.
There are then two cases:
1. the system has a suitable tar: we use that;
2. the system has no suitable tar: we build our own host-tar, and use
that (it ends up in HOST_DIR/bin so is in the PATH).
However, to avoid building host-tar again and again, people can set the
TAR environment variable, to point to a tar version they believe is
suitable (if it is not, we fallback to case 2, above). If the user
provides a suitable tar, then we do not build our own host-tar and use
the one provided by the user.
However, there are a few places where we do hard-code calls to 'tar'
without considering the one provided by the user. This breaks cases
where an unsuitable tar is available on the system, as that unsuitable
tar is then used to create and extract tarballs. This breaks generatign
tarballs from VCS (git, svn) or from vendoring (cargo, go).
Fix all those cases.
How to find calls to tar:
$ git grep -E '\<tar '
There are a lot of false positive:
- CHANGES
- comments
- docs
- patches
- misc (e.g. a script with a $tar variable)
After this series, we still have a very few locations which directly
call to a plain tar:
- Makefile: the 'release' target
- scripts not called as part of the build
- boards readmes
- patches
The first will be addressed in a separate patch, as it is not critical
(users do not nromally cut Buildroot releases!). The others can't be
changed, as they execute outside Buildroot's control.
Regards,
Yann E. MORIN.
----------------------------------------------------------------
Yann E. MORIN (9):
fs/tar: use appropriate TAR
package/cvs: use appropriate TAR
package/flutter-engine: use appropriate TAR
package/pkg-download: export TAR for download backends
support/download/helpers: use appropriate TAR
support/download/cvs: fix shellcheck
support/download/cvs: use appropriate TAR
support/scripts/apply-patches: use appropriate TAR
package/sunxi-mali-utgard-driver: handle patching the Buildroot way
.checkpackageignore | 1 -
fs/tar/tar.mk | 2 +-
package/Makefile.in | 2 +-
package/cvs/cvs.mk | 2 +-
package/flutter-engine/flutter-engine.mk | 1 +
package/flutter-engine/gen-tarball | 2 +-
package/pkg-download.mk | 4 ++-
.../0001-build.sh-do-not-apply-patches.patch | 39 ++++++++++++++++++++++
.../sunxi-mali-utgard-driver.mk | 3 +-
support/download/cvs | 5 +--
support/download/helpers | 4 +--
support/scripts/apply-patches.sh | 2 +-
12 files changed, 54 insertions(+), 13 deletions(-)
create mode 100644 package/sunxi-mali-utgard-driver/0001-build.sh-do-not-apply-patches.patch
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next reply other threads:[~2024-06-05 14:18 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-05 14:18 Yann E. MORIN [this message]
2024-06-05 14:18 ` [Buildroot] [PATCH 1/9] fs/tar: use appropriate TAR Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 2/9] package/cvs: " Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 3/9] package/flutter-engine: " Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 4/9] package/pkg-download: export TAR for download backends Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 5/9] support/download/helpers: use appropriate TAR Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 6/9] support/download/cvs: fix shellcheck Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 7/9] support/download/cvs: use appropriate TAR Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 8/9] support/scripts/apply-patches: " Yann E. MORIN
2024-06-05 15:22 ` [Buildroot] [External] " Maier, Brandon L Collins via buildroot
2024-06-05 15:32 ` Yann E. MORIN
2024-06-05 15:41 ` Yann E. MORIN
2024-06-05 14:18 ` [Buildroot] [PATCH 9/9] package/sunxi-mali-utgard-driver: handle patching the Buildroot way Yann E. MORIN
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=cover.1717597094.git.yann.morin.1998@free.fr \
--to=yann.morin.1998@free.fr \
--cc=adam.duskett@amarulasolutions.com \
--cc=buildroot@buildroot.org \
--cc=giulio.benetti@benettiengineering.com \
/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 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.