support/downloaf/git: add support for git attirbutes (branch yem/git-attributes)
cover support/downloaf/git: add support for git attirbutes (branch yem/git-attributes)
Hello All!
This litle series, after a few fixups and cleanup commits, introduces support for git attributes to the git download backend.
Git attriibutes are very similar to the decades-old CVS-style keywords and placeholders; except they are acted on while generating an archive with git-archive, rather than on checkout.
Some packages (pcm-tools already, luajit soon) use such markers for versioning information; luajit uses the UNIX timestamp as its semver patch-level.
While introducing this support, a few fixes were first needed; the git backend was also cleaned up to pass shellcheck.
Regards,
Yann E. MORIN.
----------------------------------------------------------------
Yann E. MORIN (5):
package/qt5: fix upstream git trees support/download: generate even more reproducible tarballs support/download/git: properly catch failures support/download/git: fix shellcheck errors support/download/git: handle git attributes
.checkpackageignore | 1 - boot/edk2/edk2.hash | 2 +- boot/vexpress-firmware/vexpress-firmware.hash | 2 +- package/abootimg/abootimg.hash | 2 +- package/aer-inject/aer-inject.hash | 2 +- package/am33x-cm3/am33x-cm3.hash | 2 +- package/armbian-firmware/armbian-firmware.hash | 2 +- package/azure-iot-sdk-c/azure-iot-sdk-c.hash | 2 +- package/bayer2rgb-neon/bayer2rgb-neon.hash | 2 +- package/bpftool/bpftool.hash | 2 +- package/brickd/brickd.hash | 2 +- package/c-capnproto/c-capnproto.hash | 2 +- package/dbus-triggerd/dbus-triggerd.hash | 2 +- package/dtv-scan-tables/dtv-scan-tables.hash | 2 +- package/edid-decode/edid-decode.hash | 2 +- package/firmware-utils/firmware-utils.hash | 2 +- package/flashbench/flashbench.hash | 2 +- package/freescale-imx/imx-lib/imx-lib.hash | 2 +- package/google-breakpad/google-breakpad.hash | 2 +- .../gstreamer1/gst1-interpipe/gst1-interpipe.hash | 2 +- .../gst1-plugins-bayer2rgb-neon.hash | 2 +- package/gstreamer1/gst1-shark/gst1-shark.hash | 3 +- package/ibm-sw-tpm2/ibm-sw-tpm2.hash | 2 +- package/kvmtool/kvmtool.hash | 2 +- package/libbroadvoice/libbroadvoice.hash | 2 +- package/libcamera/libcamera.hash | 2 +- package/libdbi-drivers/libdbi-drivers.hash | 2 +- package/libdbi/libdbi.hash | 2 +- package/libg7221/libg7221.hash | 2 +- package/libilbc/libilbc.hash | 2 +- package/libsilk/libsilk.hash | 2 +- package/libsvgtiny/libsvgtiny.hash | 2 +- package/libubox/libubox.hash | 2 +- package/libuci/libuci.hash | 2 +- package/libyuv/libyuv.hash | 2 +- .../linux-syscall-support.hash | 2 +- package/mmc-utils/mmc-utils.hash | 3 +- .../netsurf-buildsystem/netsurf-buildsystem.hash | 2 +- package/odhcp6c/odhcp6c.hash | 2 +- package/ogre/ogre.hash | 2 +- package/open62541/open62541.hash | 2 +- package/opkg-utils/opkg-utils.hash | 2 +- package/pcm-tools/pcm-tools.hash | 2 +- package/pcm-tools/pcm-tools.mk | 8 --- package/piglit/piglit.hash | 2 +- package/pkg-download.mk | 2 +- package/prelink-cross/prelink-cross.hash | 2 +- package/psplash/psplash.hash | 2 +- package/qt-webkit-kiosk/qt-webkit-kiosk.hash | 2 +- package/qt5/qt5coap/qt5coap.hash | 2 +- package/qt5/qt5coap/qt5coap.mk | 2 +- package/qt5/qt5knx/qt5knx.hash | 2 +- package/qt5/qt5knx/qt5knx.mk | 2 +- package/qt5/qt5location/qt5location.hash | 2 +- package/qt5/qt5mqtt/qt5mqtt.hash | 2 +- package/qt5/qt5mqtt/qt5mqtt.mk | 2 +- package/qt5/qt5opcua/qt5opcua.hash | 2 +- .../qt5webengine-chromium-catapult.hash | 2 +- package/rockchip-rkbin/rockchip-rkbin.hash | 2 +- package/rtc-tools/rtc-tools.hash | 2 +- package/rtmpdump/rtmpdump.hash | 2 +- package/signal-estimator/signal-estimator.hash | 2 +- package/sox/sox.hash | 2 +- package/tftpd/tftpd.hash | 2 +- package/ti-sgx-demos/ti-sgx-demos.hash | 2 +- package/ti-sgx-km/ti-sgx-km.hash | 2 +- package/ti-sgx-um/ti-sgx-um.hash | 2 +- package/tl-expected/tl-expected.hash | 2 +- package/tremor/tremor.hash | 2 +- package/ubus/ubus.hash | 2 +- package/uclibc-ng-test/uclibc-ng-test.hash | 2 +- package/uemacs/uemacs.hash | 2 +- package/uhttpd/uhttpd.hash | 2 +- package/uqmi/uqmi.hash | 2 +- package/ustream-ssl/ustream-ssl.hash | 2 +- package/vboot-utils/vboot-utils.hash | 2 +- package/wilink-bt-firmware/wilink-bt-firmware.hash | 2 +- .../xdriver_xf86-video-intel.hash | 2 +- .../xdriver_xf86-video-openchrome.hash | 2 +- package/x264/x264.hash | 2 +- package/yavta/yavta.hash | 2 +- support/download/git | 72 +++++++++++++++++++-- support/download/helpers | 3 + .../br2-external/git-hash/package/bad/bad.hash | 2 +- .../package/export-subst/export-subst.hash | 1 + .../git-hash/package/export-subst/export-subst.mk | 10 +++ .../br2-external/git-hash/package/good/good.hash | 2 +- .../git-partial-sha1-branch-head.hash | 2 +- .../git-partial-sha1-reachable-by-branch.hash | 2 +- .../git-partial-sha1-reachable-by-tag.hash | 2 +- .../git-partial-sha1-tag-itself.hash | 2 +- .../git-partial-sha1-tag-points-to.hash | 2 +- .../git-sha1-branch-head/git-sha1-branch-head.hash | 2 +- .../git-sha1-reachable-by-branch.hash | 2 +- .../git-sha1-reachable-by-tag.hash | 2 +- .../git-sha1-tag-itself/git-sha1-tag-itself.hash | 2 +- .../git-sha1-tag-points-to.hash | 2 +- .../git-submodule-disabled.hash | 2 +- .../git-submodule-enabled.hash | 2 +- .../git-refs/package/git-tag/git-tag.hash | 2 +- .../git-wrong-content/git-wrong-content.hash | 2 +- .../05/482df734b3715b849ef4a3147a9b1b1f8cca38 | Bin 0 -> 35 bytes .../0f/db95cf4f3c5ed4003287649cabb33c5f843e26 | Bin 0 -> 197 bytes .../68/28f88dcb0e88b8cd738ad6044ce74d7a9a13c8 | Bin 0 -> 28 bytes .../6d/a12b257e47f6089612fe97a8746d2d9c4ca0e0 | Bin 0 -> 112 bytes .../download/git-remote/repo.git/refs/heads/master | 2 +- support/testing/tests/download/test_git.py | 4 ++ 107 files changed, 182 insertions(+), 111 deletions(-) create mode 100644 support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.hash create mode 100644 support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.mk create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/05/482df734b3715b849ef4a3147a9b1b1f8cca38 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/0f/db95cf4f3c5ed4003287649cabb33c5f843e26 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/68/28f88dcb0e88b8cd738ad6044ce74d7a9a13c8 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/6d/a12b257e47f6089612fe97a8746d2d9c4ca0e0
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | 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 [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
PATCH 1/5 package/qt5: fix upstream git trees
Since commits 4e8b5f9bee9c [0], 6cfbd51d98d1 [1], and d838a416c4ed [2], the repository we clone from is the cgit browser, and it does not serve the git tree, only the browser:
$ git clone https://code.qt.io/cgit/qt/qtcoap.git Cloning into 'qtcoap'... fatal: repository 'https://code.qt.io/cgit/qt/qtcoap.git/' not found
Browsing there displays the cgit UI, which gives a proper URI to clone from; switch to using that.
[0] 4e8b5f9bee9c package/qt5/qt5mqtt: bump version to 5.15.2 (and fix download)
[1] 6cfbd51d98d1 package/qt5/qt5coap: bump version to 5.15.2 (and fix download)
[2] d838a416c4ed package/qt5/qt5knx: bump version to 5.15.2 (and fix download)
--- package/qt5/qt5coap/qt5coap.mk | 2 +- package/qt5/qt5knx/qt5knx.mk | 2 +- package/qt5/qt5mqtt/qt5mqtt.mk | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
package/qt5/qt5coap/qt5coap.mk +1 -1
@@ -5,7 +5,7 @@ ################################################################################ QT5COAP_VERSION = 5.15.2 -QT5COAP_SITE = https://code.qt.io/cgit/qt/qtcoap.git +QT5COAP_SITE = https://code.qt.io/qt/qtcoap.git QT5COAP_SITE_METHOD = git QT5COAP_INSTALL_STAGING = YES QT5COAP_LICENSE = GPL-3.0, GFDL-1.3
package/qt5/qt5knx/qt5knx.mk +1 -1
@@ -5,7 +5,7 @@ ################################################################################ QT5KNX_VERSION = 5.15.2 -QT5KNX_SITE = https://code.qt.io/cgit/qt/qtknx.git +QT5KNX_SITE = https://code.qt.io/qt/qtknx.git QT5KNX_SITE_METHOD = git QT5KNX_INSTALL_STAGING = YES QT5KNX_LICENSE = GPL-3.0 with exception
package/qt5/qt5mqtt/qt5mqtt.mk +1 -1
@@ -5,7 +5,7 @@ ################################################################################ QT5MQTT_VERSION = 5.15.2 -QT5MQTT_SITE = https://code.qt.io/cgit/qt/qtmqtt.git +QT5MQTT_SITE = https://code.qt.io/qt/qtmqtt.git QT5MQTT_SITE_METHOD = git QT5MQTT_INSTALL_STAGING = YES QT5MQTT_LICENSE = GPL-3.0 with exception
Signature · 6 lines
2.25.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 1/5] package/qt5: fix upstream git trees
Quoted 15 lines · On Wed, 13 Sep 2023 00:15:48 +0200 "Yann E. MORIN" <[email protected]>…
Since commits
4e8b5f9bee9c[0],6cfbd51d98d1[1], andd838a416c4ed[2], the repository we clone from is the cgit browser, and it does not serve the git tree, only the browser:$ git clone https://code.qt.io/cgit/qt/qtcoap.git Cloning into 'qtcoap'... fatal: repository 'https://code.qt.io/cgit/qt/qtcoap.git/' not foundBrowsing there displays the cgit UI, which gives a proper URI to clone from; switch to using that.
[0]
4e8b5f9bee9cpackage/qt5/qt5mqtt: bump version to 5.15.2 (and fix download)
[1]6cfbd51d98d1package/qt5/qt5coap: bump version to 5.15.2 (and fix download)
[2]d838a416c4edpackage/qt5/qt5knx: bump version to 5.15.2 (and fix download)
Quoted 5 lines
Signed-off-by Yann E. MORIN <[email protected]>Cc Peter Seiderer <[email protected]>Cc Angelo Compagnucci <[email protected]>Cc Giulio Benetti <[email protected]>CC Julien Corjon <[email protected]>
So how does it work today? It falls back to sources.buildroot.org?
Thomas
Signature · 7 lines
Thomas Petazzoni, co-owner and CEO, Bootlin Embedded Linux and Kernel engineering and training https://bootlin.com _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 1/5] package/qt5: fix upstream git trees
Thomas, All,
On 2023-09-13 11:45 +0200, Thomas Petazzoni spake thusly:
Quoted 5 lines
Quoted 3 lines · On Wed, 13 Sep 2023 00:15:48 +0200 "Yann E. MORIN" <[email protected]>…
Since commits
4e8b5f9bee9c[0],6cfbd51d98d1[1], andd838a416c4ed[2], the repository we clone from is the cgit browser, and it does not serve the git tree, only the browser:
[--SNIP--]
Quoted 1 line
So how does it work today? It falls back to sources.buildroot.org?
It indeed falls back to s.b.o:
$ make qt5coap-source
[...]
fatal: repository 'https://code.qt.io/cgit/qt/qtcoap.git/' not found
Detected a corrupted git cache.
This is the second time in a row; bailing out
wget --passive-ftp -nd -t 3 -O '/home/ymorin/dev/buildroot/O/master/build/.qt5coap-5.15.2-br1.tar.gz.MjTpxa/output' 'http://sources.buildroot.net/qt5coap/qt5coap-5.15.2-br1.tar.gz'
[...]
2023-09-13 11:52:58 (1016 KB/s) - ‘/home/ymorin/dev/buildroot/O/master/build/.qt5coap-5.15.2-br1.tar.gz.MjTpxa/output’saved [178557/178557]qt5coap-5.15.2-br1.tar.gz: OK (sha256: 0ad05a2305437b9b96a4322bfadaa26f043ba16845d5303e53c00c82b37b243f)
Regards,
Yann E. MORIN.
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | 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 [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 1/5] package/qt5: fix upstream git trees
In reply to Yann E. MORINQuoted 20 lines · On Wed, 13 Sep 2023 00:15:48 +0200 "Yann E. MORIN" <[email protected]>…
Since commits
4e8b5f9bee9c[0],6cfbd51d98d1[1], andd838a416c4ed[2], the repository we clone from is the cgit browser, and it does not serve the git tree, only the browser:$ git clone https://code.qt.io/cgit/qt/qtcoap.git Cloning into 'qtcoap'... fatal: repository 'https://code.qt.io/cgit/qt/qtcoap.git/' not foundBrowsing there displays the cgit UI, which gives a proper URI to clone from; switch to using that.
[0]
4e8b5f9bee9cpackage/qt5/qt5mqtt: bump version to 5.15.2 (and fix download)
[1]6cfbd51d98d1package/qt5/qt5coap: bump version to 5.15.2 (and fix download)
[2]d838a416c4edpackage/qt5/qt5knx: bump version to 5.15.2 (and fix download)Signed-off-by Yann E. MORIN <[email protected]>Cc Peter Seiderer <[email protected]>Cc Angelo Compagnucci <[email protected]>Cc Giulio Benetti <[email protected]>CC Julien Corjon <[email protected]>
Quoted 5 lines
--- package/qt5/qt5coap/qt5coap.mk | 2 +- package/qt5/qt5knx/qt5knx.mk | 2 +- package/qt5/qt5mqtt/qt5mqtt.mk | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
Thanks, patches 1 to 4 applied. I'll reply to patch 5 separately.
Thomas
Signature · 7 lines
Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 1/5] package/qt5: fix upstream git trees
In reply to Yann E. MORINQuoted 10 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
Since commits
4e8b5f9bee9c[0],6cfbd51d98d1[1], andd838a416c4ed[2], the repository we clone from is the cgit browser, and it does not serve the git tree, only the browser:$ git clone https://code.qt.io/cgit/qt/qtcoap.git Cloning into 'qtcoap'... fatal: repository 'https://code.qt.io/cgit/qt/qtcoap.git/' not found
Quoted 8 lines
Browsing there displays the cgit UI, which gives a proper URI to clone from; switch to using that.
[0]
4e8b5f9bee9cpackage/qt5/qt5mqtt: bump version to 5.15.2 (and fix download)
[1]6cfbd51d98d1package/qt5/qt5coap: bump version to 5.15.2 (and fix download)
[2]d838a416c4edpackage/qt5/qt5knx: bump version to 5.15.2 (and fix download)Signed-off-by Yann E. MORIN <[email protected]>
I guess it must be upstream changing something on the server since 2021, otherwise how could we have a copy on s.b.o?
Committed to 2023.02.x, 2023.05.x and 2023.08.x, thanks.
Signature · 5 lines
Bye, Peter Korsgaard _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
PATCH 2/5 support/download: generate even more reproducible tarballs
In reply to Yann E. MORINWhen we generate the taballs off a local working copy of a VCS tree, the umask is the one that we enforce in out top-level Makefile.
However, it is possible that a user manually tinkers in said working copy (e.g. to check an upstream bug fix, or regression). If the user umask is different from the one Buildroot enfirces, such tinkering can impact the mode bits of the files, even if their content is not modified.
When we eventually need to create a tarball from said working copy, the VCS (e.g. git) will only be interested in checking whether the content of the files have changed before chcking them out, and will not look at, and restore/fix the mode bits.
As a consequence, we may create non-reproducible archives.
We fix that by enforcing the mode bits on the files before we create the tarball: we disable the write and execute bits, and only set the execute bit if the user execute bit is set.
--- support/download/helpers | 3 +++ 1 file changed, 3 insertions(+)
support/download/helpers +3 -0
@@ -53,6 +53,9 @@ mk_tar_gz() { tmp="$(mktemp --tmpdir="$(pwd)")" pushd "${in_dir}" >/dev/null + # Enforce group/others mode bits + chmod -R go-wx+X . + # Establish list find . -not -type d -and -not \( -false "${find_opts[@]}" \) >"${tmp}.list" # Sort list for reproducibility
Signature · 6 lines
2.25.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 2/5] support/download: generate even more reproducible tarballs
Quoted 16 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
When we generate the taballs off a local working copy of a VCS tree, the umask is the one that we enforce in out top-level
Makefile.However, it is possible that a user manually tinkers in said working copy (e.g. to check an upstream bug fix, or regression). If the user umask is different from the one Buildroot enfirces, such tinkering can impact the mode bits of the files, even if their content is not modified.
When we eventually need to create a tarball from said working copy, the VCS (e.g. git) will only be interested in checking whether the content of the files have changed before chcking them out, and will not look at, and restore/fix the mode bits.
Quoted 8 lines
As a consequence, we may create non-reproducible archives.
We fix that by enforcing the mode bits on the files before we create the tarball: we disable the write and execute bits, and only set the execute bit if the user execute bit is set.
Signed-off-by Yann E. MORIN <[email protected]>Cc Vincent Fazio <[email protected]>
Committed to 2023.02.x, 2023.05.x and 2023.08.x, thanks.
Signature · 5 lines
Bye, Peter Korsgaard _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
PATCH 3/5 support/download/git: properly catch failures
In reply to Yann E. MORINSince commit b7efb43e86da (download/git: try to recover from utterly-broken repositories), we catch errors through an ERR trap, so we can try and recover from a broken repository. In that commit, we switched from using "set -e" to "set -E", so that trap is inherited in functions, command substitutions, and subshells.
However, the trap is not defined until we have parsed the options, created the cache directory, and eventually chdir()ed into it. Athough improbable, it is possible for the git helper to fail in any of those steps, and that would not get caught.
Fix that
--- support/download/git | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
support/download/git +3 -2
@@ -5,8 +5,8 @@ # (e.g. tar options, compression ratio or method)), we MUST update the format # version in the variable BR_FMT_VERSION_git, in package/pkg-download.mk. -# We want to catch any unexpected failure, and exit immediately -set -E +# We want to catch any unexpected failure +set -e # Download helper for git, to be called from the download wrapper script #
@@ -77,6 +77,7 @@ pushd "${git_cache}" >/dev/null # Any error now should try to recover trap _on_error ERR +set -E # Caller needs to single-quote its arguments to prevent them from # being expanded a second time (in case there are spaces in them)
Signature · 6 lines
2.25.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 3/5] support/download/git: properly catch failures
Quoted 9 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
Since commit
b7efb43e86da(download/git: try to recover from utterly-broken repositories), we catch errors through an ERR trap, so we can try and recover from a broken repository. In that commit, we switched from using "set -e" to "set -E", so that trap is inherited in functions, command substitutions, and subshells.
Quoted 8 lines
However, the trap is not defined until we have parsed the options, created the cache directory, and eventually chdir()ed into it. Athough improbable, it is possible for the git helper to fail in any of those steps, and that would not get caught.
Fix that
Signed-off-by Yann E. MORIN <[email protected]>
Committed to 2023.02.x, 2023.05.x and 2023.08.x, thanks.
Signature · 5 lines
Bye, Peter Korsgaard _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
PATCH 4/5 support/download/git: fix shellcheck errors
In reply to Yann E. MORINThe quoting around the expansion of ${relative_dir} was indeed incorrect since it was introduced back in 8fe9894f655f (suport/download: fix git wrapper with submodules on older git versions): it is in fact already quoted as part of the whole sed expression.
${GIT} can contain more than one item, but we don't care about splitting on spaces when we just print it for debug, so we can just quote it rather than add an exception.
--- .checkpackageignore | 1 - support/download/git | 9 +++++++-- 2 files changed, 7 insertions(+), 3 deletions(-)
.checkpackageignore +0 -1
@@ -1618,7 +1618,6 @@ support/download/check-hash Shellcheck support/download/cvs Shellcheck support/download/dl-wrapper Shellcheck support/download/file Shellcheck -support/download/git Shellcheck support/download/go-post-process Shellcheck support/download/hg Shellcheck support/download/scp Shellcheck
support/download/git +7 -2
@@ -21,6 +21,7 @@ set -e # Environment: # GIT : the git command to call +# shellcheck disable=SC1090 # Only provides mk_tar_gz() . "${0%/*}/helpers" # Save our path and options in case we need to call ourselves again
@@ -83,12 +84,13 @@ set -E # being expanded a second time (in case there are spaces in them) _git() { if [ -z "${quiet}" ]; then - printf '%s ' GIT_DIR="${git_cache}/.git" ${GIT} "${@}"; printf '\n' + printf '%s ' GIT_DIR="${git_cache}/.git" "${GIT}" "${@}"; printf '\n' fi _plain_git "$@" } # Note: please keep command below aligned with what is printed above _plain_git() { + # shellcheck disable=SC2086 # We want word-splitting for GIT eval GIT_DIR="${git_cache}/.git" ${GIT} "${@}" }
@@ -174,6 +176,7 @@ fi # the working copy as well as the repository, which means submodules # will not be cached for older versions. # +# shellcheck disable=SC2016 # Will be expanded by git-foreach cmd='printf "Deregistering submodule \"%s\"\n" "${path}" && cd .. && rm -rf "${path##*/}"' _git submodule --quiet foreach "'${cmd}'"
@@ -200,11 +203,12 @@ if [ ${recurse} -eq 1 ]; then # that the archives are reproducible across a wider range of git # versions. However, we can't do that if git is too old and uses # full repositories for submodules. + # shellcheck disable=SC2016 # Will be expanded by git-foreach cmd='printf "%s\n" "${path}/"' for module_dir in $( _plain_git submodule --quiet foreach "'${cmd}'" ); do [ -f "${module_dir}/.git" ] || continue relative_dir="$( sed -r -e 's,/+,/,g; s,[^/]+/,../,g' <<<"${module_dir}" )" - sed -r -i -e "s:^gitdir\: $(pwd)/:gitdir\: "${relative_dir}":" "${module_dir}/.git" + sed -r -i -e "s:^gitdir\: $(pwd)/:gitdir\: ${relative_dir}:" "${module_dir}/.git" done fi
@@ -214,6 +218,7 @@ if [ ${large_file} -eq 1 ]; then _git lfs fetch _git lfs checkout # If there are also submodules, recurse into them, + # shellcheck disable=SC2086 # We want word-splitting for GIT if [ ${recurse} -eq 1 ]; then _git submodule foreach --recursive ${GIT} lfs install --local _git submodule foreach --recursive ${GIT} lfs fetch
Signature · 6 lines
2.25.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 4/5] support/download/git: fix shellcheck errors
Quoted 7 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
The quoting around the expansion of ${relative_dir} was indeed incorrect since it was introduced back in
8fe9894f655f(suport/download: fix git wrapper with submodules on older git versions): it is in fact already quoted as part of the whole sed expression.
Quoted 5 lines
${GIT} can contain more than one item, but we don't care about splitting on spaces when we just print it for debug, so we can just quote it rather than add an exception.
Signed-off-by Yann E. MORIN <[email protected]>
Committed to 2023.02.x, 2023.05.x and 2023.08.x, thanks.
Signature · 5 lines
Bye, Peter Korsgaard _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
PATCH 5/5 support/download/git: handle git attributes
In reply to Yann E. MORINFiles in a git repository can be given attributes, like the usual eol that can convert to-from crlf, cr, lf when checking-out of committing a file.
There are also two attributes that are meant to be used when generating an archive (with git archive): export-subst, and export-ignore, that respectively substitutes format placeholders in a file, and excludes a file from the archive.
Some package (e.g. pcm-tools, luajit) use the export-subst attribute to generate versioning information. luajit, specifically, uses the UNIX timestamp of the commit as the patch-level for its semantic versioning.
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.
When doing the replacement, we decided to force abbreviating short hashes to 40 chars, which is the length of a full sha1, rather than actually abbreviating them:
- letting git decide of the length is not reproducible over time:
as new commits are added, the short length will increase to avoid collisions; a newer git version may decide of a different heuristic to shorten hashes; a user may have a local setting with an arbitrary length;
- deciding on our side of an arbitrary value would not be viable long term either, as it might be too large to be minimum, or too short to avoid collisions.
The only reproducible solution is to use unabbreviated hashes.
Handling git-attributes also implies that the format of the generated archives has changed, since we now expand placeholders, so we bump our git format version.
Of all our git-downloaded packages, 5 are affected:
- pcm-tools, which was known, and the one that triggered this commit;
since we now expand placeholders, we can drop the post-extract hook;
switching to a full hash in replacements also changes the hash of
the generated archive;- qt5knx, qt5location, qt5mqtt, and qt5opcua: the file .tag at the repository root, contains only the full hash placeholder; that file is not used at all during the build (AFAICS);
Finally, we add a run-time test to validate this new feature.
--- boot/edk2/edk2.hash | 2 +- boot/vexpress-firmware/vexpress-firmware.hash | 2 +- package/abootimg/abootimg.hash | 2 +- package/aer-inject/aer-inject.hash | 2 +- package/am33x-cm3/am33x-cm3.hash | 2 +- .../armbian-firmware/armbian-firmware.hash | 2 +- package/azure-iot-sdk-c/azure-iot-sdk-c.hash | 2 +- package/bayer2rgb-neon/bayer2rgb-neon.hash | 2 +- package/bpftool/bpftool.hash | 2 +- package/brickd/brickd.hash | 2 +- package/c-capnproto/c-capnproto.hash | 2 +- package/dbus-triggerd/dbus-triggerd.hash | 2 +- package/dtv-scan-tables/dtv-scan-tables.hash | 2 +- package/edid-decode/edid-decode.hash | 2 +- package/firmware-utils/firmware-utils.hash | 2 +- package/flashbench/flashbench.hash | 2 +- package/freescale-imx/imx-lib/imx-lib.hash | 2 +- package/google-breakpad/google-breakpad.hash | 2 +- .../gst1-interpipe/gst1-interpipe.hash | 2 +- .../gst1-plugins-bayer2rgb-neon.hash | 2 +- package/gstreamer1/gst1-shark/gst1-shark.hash | 3 +- package/ibm-sw-tpm2/ibm-sw-tpm2.hash | 2 +- package/kvmtool/kvmtool.hash | 2 +- package/libbroadvoice/libbroadvoice.hash | 2 +- package/libcamera/libcamera.hash | 2 +- package/libdbi-drivers/libdbi-drivers.hash | 2 +- package/libdbi/libdbi.hash | 2 +- package/libg7221/libg7221.hash | 2 +- package/libilbc/libilbc.hash | 2 +- package/libsilk/libsilk.hash | 2 +- package/libsvgtiny/libsvgtiny.hash | 2 +- package/libubox/libubox.hash | 2 +- package/libuci/libuci.hash | 2 +- package/libyuv/libyuv.hash | 2 +- .../linux-syscall-support.hash | 2 +- package/mmc-utils/mmc-utils.hash | 3 +- .../netsurf-buildsystem.hash | 2 +- package/odhcp6c/odhcp6c.hash | 2 +- package/ogre/ogre.hash | 2 +- package/open62541/open62541.hash | 2 +- package/opkg-utils/opkg-utils.hash | 2 +- package/pcm-tools/pcm-tools.hash | 2 +- package/pcm-tools/pcm-tools.mk | 8 --- package/piglit/piglit.hash | 2 +- package/pkg-download.mk | 2 +- package/prelink-cross/prelink-cross.hash | 2 +- package/psplash/psplash.hash | 2 +- package/qt-webkit-kiosk/qt-webkit-kiosk.hash | 2 +- package/qt5/qt5coap/qt5coap.hash | 2 +- package/qt5/qt5knx/qt5knx.hash | 2 +- package/qt5/qt5location/qt5location.hash | 2 +- package/qt5/qt5mqtt/qt5mqtt.hash | 2 +- package/qt5/qt5opcua/qt5opcua.hash | 2 +- .../qt5webengine-chromium-catapult.hash | 2 +- package/rockchip-rkbin/rockchip-rkbin.hash | 2 +- package/rtc-tools/rtc-tools.hash | 2 +- package/rtmpdump/rtmpdump.hash | 2 +- .../signal-estimator/signal-estimator.hash | 2 +- package/sox/sox.hash | 2 +- package/tftpd/tftpd.hash | 2 +- package/ti-sgx-demos/ti-sgx-demos.hash | 2 +- package/ti-sgx-km/ti-sgx-km.hash | 2 +- package/ti-sgx-um/ti-sgx-um.hash | 2 +- package/tl-expected/tl-expected.hash | 2 +- package/tremor/tremor.hash | 2 +- package/ubus/ubus.hash | 2 +- package/uclibc-ng-test/uclibc-ng-test.hash | 2 +- package/uemacs/uemacs.hash | 2 +- package/uhttpd/uhttpd.hash | 2 +- package/uqmi/uqmi.hash | 2 +- package/ustream-ssl/ustream-ssl.hash | 2 +- package/vboot-utils/vboot-utils.hash | 2 +- .../wilink-bt-firmware.hash | 2 +- .../xdriver_xf86-video-intel.hash | 2 +- .../xdriver_xf86-video-openchrome.hash | 2 +- package/x264/x264.hash | 2 +- package/yavta/yavta.hash | 2 +- support/download/git | 58 ++++++++++++++++++ .../git-hash/package/bad/bad.hash | 2 +- .../package/export-subst/export-subst.hash | 1 + .../package/export-subst/export-subst.mk | 10 +++ .../git-hash/package/good/good.hash | 2 +- .../git-partial-sha1-branch-head.hash | 2 +- .../git-partial-sha1-reachable-by-branch.hash | 2 +- .../git-partial-sha1-reachable-by-tag.hash | 2 +- .../git-partial-sha1-tag-itself.hash | 2 +- .../git-partial-sha1-tag-points-to.hash | 2 +- .../git-sha1-branch-head.hash | 2 +- .../git-sha1-reachable-by-branch.hash | 2 +- .../git-sha1-reachable-by-tag.hash | 2 +- .../git-sha1-tag-itself.hash | 2 +- .../git-sha1-tag-points-to.hash | 2 +- .../git-submodule-disabled.hash | 2 +- .../git-submodule-enabled.hash | 2 +- .../git-refs/package/git-tag/git-tag.hash | 2 +- .../git-wrong-content/git-wrong-content.hash | 2 +- .../05/482df734b3715b849ef4a3147a9b1b1f8cca38 | Bin 0 -> 35 bytes .../0f/db95cf4f3c5ed4003287649cabb33c5f843e26 | Bin 0 -> 197 bytes .../68/28f88dcb0e88b8cd738ad6044ce74d7a9a13c8 | Bin 0 -> 28 bytes .../6d/a12b257e47f6089612fe97a8746d2d9c4ca0e0 | Bin 0 -> 112 bytes .../git-remote/repo.git/refs/heads/master | 2 +- support/testing/tests/download/test_git.py | 4 ++ 102 files changed, 166 insertions(+), 103 deletions(-) create mode 100644 support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.hash create mode 100644 support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.mk create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/05/482df734b3715b849ef4a3147a9b1b1f8cca38 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/0f/db95cf4f3c5ed4003287649cabb33c5f843e26 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/68/28f88dcb0e88b8cd738ad6044ce74d7a9a13c8 create mode 100644 support/testing/tests/download/git-remote/repo.git/objects/6d/a12b257e47f6089612fe97a8746d2d9c4ca0e0
boot/edk2/edk2.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 9389ad20bc75f2a8fa9e7c1b1948ef07481c94e96dec57ae2f9f9be9c754f92c edk2-edk2-stable202308-br1.tar.gz +sha256 9389ad20bc75f2a8fa9e7c1b1948ef07481c94e96dec57ae2f9f9be9c754f92c edk2-edk2-stable202308-br2.tar.gz sha256 50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80 License.txt
boot/vexpress-firmware/vexpress-firmware.hash +1 -1
@@ -1,2 +1,2 @@ # Locally calculated -sha256 ea92d686e6e211074fb0f62cb5e011f4cfc294c7f6ec9fb27b7d987db7bf51c5 vexpress-firmware-901f81977c3b367a2e0bf3d6444be302822d97a3-br1.tar.gz +sha256 ea92d686e6e211074fb0f62cb5e011f4cfc294c7f6ec9fb27b7d987db7bf51c5 vexpress-firmware-901f81977c3b367a2e0bf3d6444be302822d97a3-br2.tar.gz
package/abootimg/abootimg.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 f377da42a57d982cfc22fa75c5a69febdc3e4c1ef43cd0ceaec42e14067e2f37 abootimg-1ebeb393252ab5aeed62e34bc439b6728444f06e-br1.tar.gz +sha256 f377da42a57d982cfc22fa75c5a69febdc3e4c1ef43cd0ceaec42e14067e2f37 abootimg-1ebeb393252ab5aeed62e34bc439b6728444f06e-br2.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE
package/aer-inject/aer-inject.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 2dd2bd73aa738c1cc26ba04b6e502329778d18c2cc873c0bd00e6b2d38e9477c aer-inject-9bd5e2c7886fca72f139cd8402488a2235957d41-br1.tar.gz +sha256 2dd2bd73aa738c1cc26ba04b6e502329778d18c2cc873c0bd00e6b2d38e9477c aer-inject-9bd5e2c7886fca72f139cd8402488a2235957d41-br2.tar.gz sha256 659a191d8775e05c6c6a9a4ba66b3577c577342bb83f20d393135eb6633c8973 README
package/am33x-cm3/am33x-cm3.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 c0b11d7ed2300172354f2948e858ddb5cae19d084bd1ab6d48cfa7b6bfa13261 am33x-cm3-11107db2f1e9e58ee75d4fe9cc38423c9a6e4365-br1.tar.gz +sha256 c0b11d7ed2300172354f2948e858ddb5cae19d084bd1ab6d48cfa7b6bfa13261 am33x-cm3-11107db2f1e9e58ee75d4fe9cc38423c9a6e4365-br2.tar.gz sha256 e136e6949a1d3ca144374375af8b9387faa11d2eee7debff8cf22ca8fe7bf7e9 License.txt
package/armbian-firmware/armbian-firmware.hash +1 -1
@@ -1,2 +1,2 @@ # Locally calculated -sha256 725b1f65a5947f053a593f917f91c6634d496c92af6180845cc3679d1377ab79 armbian-firmware-5d685ad233b4dfd03a4d025fa0061f6b0f850cb3-br1.tar.gz +sha256 725b1f65a5947f053a593f917f91c6634d496c92af6180845cc3679d1377ab79 armbian-firmware-5d685ad233b4dfd03a4d025fa0061f6b0f850cb3-br2.tar.gz
package/azure-iot-sdk-c/azure-iot-sdk-c.hash +1 -1
@@ -1,5 +1,5 @@ # Locally computed: -sha256 7b52b9886a3aff20a55a0d5bc5e140c212f85fd06af18c31291c15d363743a77 azure-iot-sdk-c-LTS_01_2023_Ref02-br1.tar.gz +sha256 7b52b9886a3aff20a55a0d5bc5e140c212f85fd06af18c31291c15d363743a77 azure-iot-sdk-c-LTS_01_2023_Ref02-br2.tar.gz # Hash for license files: sha256 be2e9913fad9ff33607287c728f392579e2a6cc83e51b203ef6274c41db02ee7 LICENSE
package/bayer2rgb-neon/bayer2rgb-neon.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 edf451dbb52ad67eb35f9043390bd75ea7228d493c99184aae80b3bd27beab62 bayer2rgb-neon-15feb1115b4828488cc36d09f625e23e8b6a0ec5-br1.tar.gz +sha256 edf451dbb52ad67eb35f9043390bd75ea7228d493c99184aae80b3bd27beab62 bayer2rgb-neon-15feb1115b4828488cc36d09f625e23e8b6a0ec5-br2.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
package/bpftool/bpftool.hash +1 -1
@@ -1,5 +1,5 @@ # Locally calculated -sha256 35ff149cab4a3ab209b0c04cab2707243ab7ee753de5f4b5678296c975cf7fe0 bpftool-v7.1.0-br1.tar.gz +sha256 35ff149cab4a3ab209b0c04cab2707243ab7ee753de5f4b5678296c975cf7fe0 bpftool-v7.1.0-br2.tar.gz sha256 7c588754d5e81e92e2a12e47cf78949d485c9c22b4850f12d21b3835c85947d1 LICENSE sha256 6313108c23efffa36948f8b2cff1560a5935373b527b0e1a837cc77e6ed1bacd LICENSE.BSD-2-Clause sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL-2.0
package/brickd/brickd.hash +1 -1
@@ -1,5 +1,5 @@ # Locally computed hash -sha256 8469b6959a7e32c4b39a56e1a4f7479f785d83e6db3269487f5312f3cf1df382 brickd-v1.2.2-br1.tar.gz +sha256 8469b6959a7e32c4b39a56e1a4f7479f785d83e6db3269487f5312f3cf1df382 brickd-v1.2.2-br2.tar.gz # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.txt
package/c-capnproto/c-capnproto.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 1e35ef786bd8e418ff04fccb20ac881a87fa2fa76df1cbddc4774e35423bafb8 c-capnproto-9053ebe6eeb2ae762655b982e27c341cb568366d-br1.tar.gz +sha256 1e35ef786bd8e418ff04fccb20ac881a87fa2fa76df1cbddc4774e35423bafb8 c-capnproto-9053ebe6eeb2ae762655b982e27c341cb568366d-br2.tar.gz sha256 27797e6c7dce96675d79ed250584d157b7a86405db6eb6fba9644e6d96d42c57 COPYING
package/dbus-triggerd/dbus-triggerd.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 930cccfe8bdff98cab0cff003d90f9421858850d2d00143108191b62b4ef5e5a dbus-triggerd-ba3dbec805cb707c94c54de21666bf18b79bcc09-br1.tar.gz +sha256 930cccfe8bdff98cab0cff003d90f9421858850d2d00143108191b62b4ef5e5a dbus-triggerd-ba3dbec805cb707c94c54de21666bf18b79bcc09-br2.tar.gz sha256 30d135650639af9019633690fc1aecbfc150aeeef9446347d4286a58338d10b0 dbus-triggerd.c
package/dtv-scan-tables/dtv-scan-tables.hash +1 -1
@@ -1,4 +1,4 @@ # Locally computed -sha256 b77c6bcbbc20f6b6bdbf735fb75cf9bec8634e1e6d3a32e6db2573deeb7a2212 dtv-scan-tables-57ed2982275045ea5e92ef2a40b9fa58255852e5-br1.tar.gz +sha256 b77c6bcbbc20f6b6bdbf735fb75cf9bec8634e1e6d3a32e6db2573deeb7a2212 dtv-scan-tables-57ed2982275045ea5e92ef2a40b9fa58255852e5-br2.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING sha256 4fd46f32582c29007657e2daad8d0a6d954cf4e9d2e47bae8f8d8c32765fc987 COPYING.LGPL
package/edid-decode/edid-decode.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 a8774f1d3eb031ffa4ecb85135b47ad28afeeaa7cf9e8410c5b51a29b83bbfdd edid-decode-2d44e1b01c7ed7d65b20ecdce62d354841832201-br1.tar.gz +sha256 a8774f1d3eb031ffa4ecb85135b47ad28afeeaa7cf9e8410c5b51a29b83bbfdd edid-decode-2d44e1b01c7ed7d65b20ecdce62d354841832201-br2.tar.gz sha256 9bc7ab961e9a07dc84eaa0210af388def56d024357e79671fb89fe27d073eed7 LICENSE
package/firmware-utils/firmware-utils.hash +1 -1
@@ -1,2 +1,2 @@ # Locally calculated -sha256 0df1b7912d68822025f9bb6a7ddfdf9675e2116d34c3c74bbdc83defcefe203c firmware-utils-86739f2b3ae9502368b89ef37fa6f31c42aad6f4-br1.tar.gz +sha256 0df1b7912d68822025f9bb6a7ddfdf9675e2116d34c3c74bbdc83defcefe203c firmware-utils-86739f2b3ae9502368b89ef37fa6f31c42aad6f4-br2.tar.gz
package/flashbench/flashbench.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 422860966ad3528a7fd1dc88e4aa0b2bd91f11fa6429523b9acd21dc5beb6a19 flashbench-2e30b1968a66147412f21002ea844122a0d5e2f0-br1.tar.gz +sha256 422860966ad3528a7fd1dc88e4aa0b2bd91f11fa6429523b9acd21dc5beb6a19 flashbench-2e30b1968a66147412f21002ea844122a0d5e2f0-br2.tar.gz sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
package/freescale-imx/imx-lib/imx-lib.hash +1 -1
@@ -1,3 +1,3 @@ # locally computed -sha256 cad7823568cbd367ed8525e01c8c11a2393fc2dc481425273cb7919385367c61 imx-lib-3f777974c0c146817e2ff5cb0340ca66a1f99e57-br1.tar.gz +sha256 cad7823568cbd367ed8525e01c8c11a2393fc2dc481425273cb7919385367c61 imx-lib-3f777974c0c146817e2ff5cb0340ca66a1f99e57-br2.tar.gz sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a COPYING-LGPL-2.1
package/google-breakpad/google-breakpad.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 52716d140ba528d36b40591ae2c7485b18023f6610414bba0057f0cc13caf256 google-breakpad-c85eb4a59b618f3beaad5445ceb1f865ffa8efdf-br1.tar.gz +sha256 52716d140ba528d36b40591ae2c7485b18023f6610414bba0057f0cc13caf256 google-breakpad-c85eb4a59b618f3beaad5445ceb1f865ffa8efdf-br2.tar.gz sha256 8d5d1311342ed55b486d778a6763f54a26002698ac0cbab64026b98033300dfd LICENSE
package/gstreamer1/gst1-interpipe/gst1-interpipe.hash +1 -1
@@ -1,5 +1,5 @@ # locally computed hash -sha256 b97af0dfa108c5f736a961c388267c7a9c8f915e753985d7e85939091032deed gst1-interpipe-v1.1.8-br1.tar.gz +sha256 b97af0dfa108c5f736a961c388267c7a9c8f915e753985d7e85939091032deed gst1-interpipe-v1.1.8-br2.tar.gz # Hashes for license files: sha256 16d7caa6cabbfd0ca47e064a7b48cb446d013e84ca88c854d6470851752136d5 COPYING
package/gstreamer1/gst1-plugins-bayer2rgb-neon/gst1-plugins-bayer2rgb-neon.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 76b2135a23f465f789ccb86bd3a8190a1e30f86cdb28abfac4d9a2cdece63fa2 gst1-plugins-bayer2rgb-neon-b630798efcd611879e7cb1c246052e5ba1acc41d-br1.tar.gz +sha256 76b2135a23f465f789ccb86bd3a8190a1e30f86cdb28abfac4d9a2cdece63fa2 gst1-plugins-bayer2rgb-neon-b630798efcd611879e7cb1c246052e5ba1acc41d-br2.tar.gz sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING
package/gstreamer1/gst1-shark/gst1-shark.hash +1 -2
@@ -1,5 +1,4 @@ -# locally computed hash -sha256 07587922dc49d12abe2444590a88c530409854b02904ad50357b312f9b6ea736 gst1-shark-v0.8.1-br1.tar.gz +sha256 07587922dc49d12abe2444590a88c530409854b02904ad50357b312f9b6ea736 gst1-shark-v0.8.1-br2.tar.gz # Hashes for license files: sha256 6d191b8f1fa03cabced18b8e48fddbf960a19f965bed8491e76ed62238f92f0b COPYING
package/ibm-sw-tpm2/ibm-sw-tpm2.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed: -sha256 d11203a73946ad14ca39f4b74742c0d81762dbe7e913a4685f92620f1d6fe295 ibm-sw-tpm2-5452af422edeff70fcae8ea99dd28a0922051d7b-br1.tar.gz +sha256 d11203a73946ad14ca39f4b74742c0d81762dbe7e913a4685f92620f1d6fe295 ibm-sw-tpm2-5452af422edeff70fcae8ea99dd28a0922051d7b-br2.tar.gz sha256 dd2d31b560011ea673e197251e710e52669d911367d83cd3cfd018f8ed58bde9 LICENSE
package/kvmtool/kvmtool.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 e2eb2cd8b31d24484e3095923cfe8c36d4b92741b76965cafaed6be3835369c6 kvmtool-f77d646ba01d04be5aad9449ac00719c043fe36e-br1.tar.gz +sha256 e2eb2cd8b31d24484e3095923cfe8c36d4b92741b76965cafaed6be3835369c6 kvmtool-f77d646ba01d04be5aad9449ac00719c043fe36e-br2.tar.gz sha256 0d5bf346df9e635a29dcdddf832dc5b002ca6cdc1c5c9c6c567d2a61bb0c5c15 COPYING
package/libbroadvoice/libbroadvoice.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 777e5dccc3d189514b7f8e85b6c941d3b9d16d2d68d72cad055cbdfb571d3681 libbroadvoice-f65b0f50c8c767229fbf1758370880abc0d78564-br1.tar.gz +sha256 777e5dccc3d189514b7f8e85b6c941d3b9d16d2d68d72cad055cbdfb571d3681 libbroadvoice-f65b0f50c8c767229fbf1758370880abc0d78564-br2.tar.gz sha256 2550586c993ce4a8c23c8b11968ea36192116a896a2504799cc65307d769c094 COPYING
package/libcamera/libcamera.hash +1 -1
@@ -1,4 +1,4 @@ -sha256 f38b42fa849d4d1d5a4dd4ca3013b4b297861cba53970e665e295d3e57de58e6 libcamera-v0.1.0-br1.tar.gz +sha256 f38b42fa849d4d1d5a4dd4ca3013b4b297861cba53970e665e295d3e57de58e6 libcamera-v0.1.0-br2.tar.gz # license files sha256 fd38b2c053c0cce46d9c5ef3545a6e34d157a240ba99c9b8dca5d37a8147da6c LICENSES/BSD-2-Clause.txt
package/libdbi-drivers/libdbi-drivers.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 80a1befb044238a89b2d0dbd40881aa6c75bf99d3a7a6c016c657ea26df7792c libdbi-drivers-0bfae6c43134cf58dc89364328545982ca297abb-br1.tar.gz +sha256 80a1befb044238a89b2d0dbd40881aa6c75bf99d3a7a6c016c657ea26df7792c libdbi-drivers-0bfae6c43134cf58dc89364328545982ca297abb-br2.tar.gz sha256 5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509 COPYING
package/libdbi/libdbi.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed: -sha256 958475e0010a3d8e43ce9ecd6a64d25eacca6ada46c39bc69f949dd70f92ab7a libdbi-88b8477d57153b9f736dd19d432d3b7ab1c49073-br1.tar.gz +sha256 958475e0010a3d8e43ce9ecd6a64d25eacca6ada46c39bc69f949dd70f92ab7a libdbi-88b8477d57153b9f736dd19d432d3b7ab1c49073-br2.tar.gz sha256 5bbcbb737e60fe9deba08ecbd00920cfcc3403ba2e534c64fdeea49d6bb87509 COPYING
package/libg7221/libg7221.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 7f00d6a4f435a91ab3bc96e6c95aa1334bd416f80d98843b4f178067239ee832 libg7221-dbfc29d4806ecdace50379a2f4d68a992a6fec34-br1.tar.gz +sha256 7f00d6a4f435a91ab3bc96e6c95aa1334bd416f80d98843b4f178067239ee832 libg7221-dbfc29d4806ecdace50379a2f4d68a992a6fec34-br2.tar.gz sha256 26cc5f718279b45dbe34e25a2d29b2c8ca487bd9ab11b2d68c9318ff59d5c645 COPYING
package/libilbc/libilbc.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 f97d8284776c95b31ed5d5441f13b519b8c7966b77a26aa06c29bb77e02cfe16 libilbc-829b08c7902ceb87a261279fabb36b6d523c6e07-br1.tar.gz +sha256 f97d8284776c95b31ed5d5441f13b519b8c7966b77a26aa06c29bb77e02cfe16 libilbc-829b08c7902ceb87a261279fabb36b6d523c6e07-br2.tar.gz sha256 b7f4cbb4a12cd11a3d1aeda9bd17c99f59b054de4b3ee53045531cd2fa74dd2a gips_iLBClicense.pdf
package/libsilk/libsilk.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 ac79eb4c154af25c0ab25e12d60d3b4165c399903fe88d82e066cf6d9827503e libsilk-4268a02240c35c6055b0f237c46b09b2dcf79e45-br1.tar.gz +sha256 ac79eb4c154af25c0ab25e12d60d3b4165c399903fe88d82e066cf6d9827503e libsilk-4268a02240c35c6055b0f237c46b09b2dcf79e45-br2.tar.gz sha256 62a5963f034024665641f4a9888b208f1e39aa7e29e87c9634fdcf07d3073baf COPYING
package/libsvgtiny/libsvgtiny.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 917850350d014c953f2af0fb92f0eeb25652619710922d467c98f8109fb92baf libsvgtiny-ea9d99fc8b231c22d06168135e181d61f4eb2f06-br1.tar.gz +sha256 917850350d014c953f2af0fb92f0eeb25652619710922d467c98f8109fb92baf libsvgtiny-ea9d99fc8b231c22d06168135e181d61f4eb2f06-br2.tar.gz sha256 92b965c77be71661cae51425a6b40a5ca274f44cc13c723c90fb471a9a26a828 README
package/libubox/libubox.hash +1 -1
@@ -1,2 +1,2 @@ # Locally calculated -sha256 b06311e7d857583303e9256f58787857944572012fbfd4a5d83e92e0e684f654 libubox-75a3b870cace1171faf57bd55e5a9a2f1564f757-br1.tar.gz +sha256 b06311e7d857583303e9256f58787857944572012fbfd4a5d83e92e0e684f654 libubox-75a3b870cace1171faf57bd55e5a9a2f1564f757-br2.tar.gz
package/libuci/libuci.hash +1 -1
@@ -1,4 +1,4 @@ # Locally computed -sha256 4b4e3ef9c9f51c02a1985c63ff0e8fc1f3aafdf24491247a4dc33c993c3fa1ea libuci-4b3db1179747b6a6779029407984bacef851325c-br1.tar.gz +sha256 4b4e3ef9c9f51c02a1985c63ff0e8fc1f3aafdf24491247a4dc33c993c3fa1ea libuci-4b3db1179747b6a6779029407984bacef851325c-br2.tar.gz sha256 39e1cc18a36172fb80d9b37f0af77d78ae935bd8a020978a7895d9e76a24e112 cli.c sha256 69d4eea4de19d27014f3d6ed723081b4039700bfd73cd0a5e39e2c4f19a58c66 libuci.c
package/libyuv/libyuv.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 7bb4118ef050ca3e9a27f49b7d21e068922bf57cf973f2c7b1476cadf73ac66a libyuv-413a8d8041f1cc5a350a47c0d81cc721e64f9fd0-br1.tar.gz +sha256 7bb4118ef050ca3e9a27f49b7d21e068922bf57cf973f2c7b1476cadf73ac66a libyuv-413a8d8041f1cc5a350a47c0d81cc721e64f9fd0-br2.tar.gz sha256 2b2cc1180c7e6988328ad2033b04b80117419db9c4c584918bbb3cfec7e9364f LICENSE
package/linux-syscall-support/linux-syscall-support.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 2a12703ce59773ec714b603e46c733b03f3fbf9b4763195fae40d0042e5da3f6 linux-syscall-support-e1e7b0ad8ee99a875b272c8e33e308472e897660-br1.tar.gz +sha256 2a12703ce59773ec714b603e46c733b03f3fbf9b4763195fae40d0042e5da3f6 linux-syscall-support-e1e7b0ad8ee99a875b272c8e33e308472e897660-br2.tar.gz sha256 c180f12840c00224cceed7139192018d2c7e6061db4ce4310b8626f7ad10bf26 LICENSE
package/mmc-utils/mmc-utils.hash +1 -2
@@ -1,3 +1,2 @@ -# Locally computed -sha256 9ac9718343ffa36ab9ef192728e60cce6504febe29d43fb8003c2e2ef5a7c7d7 mmc-utils-613495ecaca97a19fa7f8f3ea23306472b36453c-br1.tar.gz +sha256 9ac9718343ffa36ab9ef192728e60cce6504febe29d43fb8003c2e2ef5a7c7d7 mmc-utils-613495ecaca97a19fa7f8f3ea23306472b36453c-br2.tar.gz sha256 4207d81122a02555f78c5a11b61c83a331ee03dc933e1ef9dd932ef9b434d12d README
package/netsurf-buildsystem/netsurf-buildsystem.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 150a3a45c3f433a35451506b316a35c14630112fc557f9e1f02c9e08b50e0cce netsurf-buildsystem-7574b41345968b5f7e9ca5875faccb1478ce0555-br1.tar.gz +sha256 150a3a45c3f433a35451506b316a35c14630112fc557f9e1f02c9e08b50e0cce netsurf-buildsystem-7574b41345968b5f7e9ca5875faccb1478ce0555-br2.tar.gz sha256 b2ddc1d607332423f6cf415b2ac619a1c03dd565facdc39a571282a520929a65 llvm/LICENSE.TXT
package/odhcp6c/odhcp6c.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 7274a304016838483e2da48193309e5f84ca0a8a407647033283d1249eebe986 odhcp6c-53f07e90b7f1da6977143a488dd5cb73a33b233b-br1.tar.gz +sha256 7274a304016838483e2da48193309e5f84ca0a8a407647033283d1249eebe986 odhcp6c-53f07e90b7f1da6977143a488dd5cb73a33b233b-br2.tar.gz sha256 e6d6a009505e345fe949e1310334fcb0747f28dae2856759de102ab66b722cb4 COPYING
package/ogre/ogre.hash +1 -1
@@ -1,3 +1,3 @@ # sha256 locally computed -sha256 805b97aacd2070f19394fe92442307a7ba6036ad95c511f551817d694c8dea37 ogre-v1.12.12-br1.tar.gz +sha256 805b97aacd2070f19394fe92442307a7ba6036ad95c511f551817d694c8dea37 ogre-v1.12.12-br2.tar.gz sha256 82758e8d1d72139904b9b7472ef0f6544413d2871b58540307fdcc20e473e5f8 LICENSE
package/open62541/open62541.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 372fd6b2d78823d3f9e8279f78fb43b6af2501603675450a194d2bac65925ca1 open62541-v1.3.6-br1.tar.gz +sha256 372fd6b2d78823d3f9e8279f78fb43b6af2501603675450a194d2bac65925ca1 open62541-v1.3.6-br2.tar.gz sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 LICENSE
package/opkg-utils/opkg-utils.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 e0fcaab51bff2149bd6560fb4238319d502dd99b581f66763d702e75c224736d opkg-utils-0.4.5-br1.tar.gz +sha256 e0fcaab51bff2149bd6560fb4238319d502dd99b581f66763d702e75c224736d opkg-utils-0.4.5-br2.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING
package/pcm-tools/pcm-tools.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 29416f83d1de95594d225f63af34f8f074ee4822010ce2e05b1fabc66933472a pcm-tools-93fc9193a70e2f1f054be554c48f4a4791be5032-br1.tar.gz +sha256 f3eae080e1bdc1f6264709534dff4881fb94d0d78c17ba4c8d0dbd816f6b17b9 pcm-tools-93fc9193a70e2f1f054be554c48f4a4791be5032-br2.tar.gz sha256 0f476c77009f982dcc4bdff41e692ddd456a9862908e99f2ae3d57296decc649 LICENSE
package/pcm-tools/pcm-tools.mk +0 -8
@@ -17,14 +17,6 @@ PCM_TOOLS_EXE_FILES = \ pcm-core pcm-iio pcm-lspci pcm-memory pcm-msr pcm-numa \ pcm-pcicfg pcm-pcie pcm-power pcm-sensor pcm-tsx pcm -# version.h contains git attributes; replace them with the previously-known -# value. -define PCM_TOOLS_FIXUP_VERSION_H - $(SED) 's/\$$Format:%ci ID=%h\$$/2021-10-25 16:07:54 +0200 ID=93fc9193/' \ - $(@D)/version.h -endef -PCM_TOOLS_POST_EXTRACT_HOOKS += PCM_TOOLS_FIXUP_VERSION_H - define PCM_TOOLS_BUILD_CMDS touch $(@D)/daemon-binaries $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) \
package/piglit/piglit.hash +1 -1
@@ -1,5 +1,5 @@ # Locally calculated -sha256 ec2a80c49f10761980334f1591be54ee6f365165d7ac637270b4ca15a12ad674 piglit-2affee53f3ad7a96f5b397a2b6d6408af8a374b0-br1.tar.gz +sha256 ec2a80c49f10761980334f1591be54ee6f365165d7ac637270b4ca15a12ad674 piglit-2affee53f3ad7a96f5b397a2b6d6408af8a374b0-br2.tar.gz sha256 dcc398730859aee7cc1d6aa57f526f8d181b47bb3a49830e85b5723d5bc2c3bc COPYING sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 licences/GPL-2 sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 licences/GPL-3
package/pkg-download.mk +1 -1
@@ -20,7 +20,7 @@ export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES)) # Version of the format of the archives we generate in the corresponding # download backend: -BR_FMT_VERSION_git = -br1 +BR_FMT_VERSION_git = -br2 BR_FMT_VERSION_svn = -br3 DL_WRAPPER = support/download/dl-wrapper
package/prelink-cross/prelink-cross.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 d7c95e81993edead813accf417f6d5b05bcc84eea9ee2d711b9505ffb4f2865b prelink-cross-a853a5d715d84eec93aa68e8f2df26b7d860f5b2-br1.tar.gz +sha256 d7c95e81993edead813accf417f6d5b05bcc84eea9ee2d711b9505ffb4f2865b prelink-cross-a853a5d715d84eec93aa68e8f2df26b7d860f5b2-br2.tar.gz sha256 b8a2f73f743dc1a51aff23f1aacbca4b868564db52496fa3c0caba755bfd1eaf COPYING
package/psplash/psplash.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 c9f71754f4606e46212a4851d6c1145e4ae8752fd11a2b40e825f04bf79b22ec psplash-44afb7506d43cca15582b4c5b90ba5580344d75d-br1.tar.gz +sha256 c9f71754f4606e46212a4851d6c1145e4ae8752fd11a2b40e825f04bf79b22ec psplash-44afb7506d43cca15582b4c5b90ba5580344d75d-br2.tar.gz sha256 f9c375a1be4a41f7b70301dd83c91cb89e41567478859b77eef375a52d782505 COPYING
package/qt-webkit-kiosk/qt-webkit-kiosk.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 5c3992cc35260d165f9a16094bd224529f012f799e0bc21317a39480cedb1fd2 qt-webkit-kiosk-a7720e50f2bd70aad99e0b465f5c4a57aca48127-br1.tar.gz +sha256 5c3992cc35260d165f9a16094bd224529f012f799e0bc21317a39480cedb1fd2 qt-webkit-kiosk-a7720e50f2bd70aad99e0b465f5c4a57aca48127-br2.tar.gz sha256 de59ec6c939f4c4def79c0a996b3bd5626895fcbd1ae108e7bddb1dac8218381 doc/lgpl.html
package/qt5/qt5coap/qt5coap.hash +1 -1
@@ -1,5 +1,5 @@ # Hash locally calculated -sha256 0ad05a2305437b9b96a4322bfadaa26f043ba16845d5303e53c00c82b37b243f qt5coap-5.15.2-br1.tar.gz +sha256 0ad05a2305437b9b96a4322bfadaa26f043ba16845d5303e53c00c82b37b243f qt5coap-5.15.2-br2.tar.gz # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
package/qt5/qt5knx/qt5knx.hash +1 -1
@@ -1,5 +1,5 @@ # Hash locally calculated -sha256 932ea512aa8ceb514ac40ce1fcbebe86c306caff1a0b11320d9a36fd84bae10c qt5knx-5.15.2-br1.tar.gz +sha256 df517ec632aca8d95150c73f4c43d1d396452b40d434b5f1969f266f127e1d70 qt5knx-5.15.2-br2.tar.gz # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
package/qt5/qt5location/qt5location.hash +1 -1
@@ -1,5 +1,5 @@ # Locally calculated -sha256 90b57a335d8c7311a86865a56b2b9cd944a8a1cafa6a7499de5b35a105c5b247 qt5location-ebdf5b38da6e3fe0a183702bcca395c589c459ed-br1.tar.gz +sha256 6c4bb905d6e3e43ae4f8e46b0f2ea8dfe1fc27e97399fa69620a3e1cc7dd6555 qt5location-ebdf5b38da6e3fe0a183702bcca395c589c459ed-br2.tar.gz # Hashes for license files: sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 LICENSE.GPL2
package/qt5/qt5mqtt/qt5mqtt.hash +1 -1
@@ -1,5 +1,5 @@ # Hash locally calculated -sha256 38f2bc1bcbdf76d30d78c86426c85f62a6c2091c997cad4b087039f795b2b406 qt5mqtt-5.15.2-br1.tar.gz +sha256 eb7b75ab3f8fa6f512c3e2ba05e1356d15bc850977197ebbd3d360528b05281c qt5mqtt-5.15.2-br2.tar.gz # Hashes for license files: sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 LICENSE.GPL3
package/qt5/qt5opcua/qt5opcua.hash +1 -1
@@ -1,5 +1,5 @@ # Hash locally calculated -sha256 562171c6dfd6f4f072316ddb6d7c5bcc8907a68ba31005cb8c20ed75beff34fb qt5opcua-5.15.2-br1.tar.gz +sha256 61a39fe7336709a9b2068e250713c2eb66fd3460b2c6e5f7bfc569b15b9cacb9 qt5opcua-5.15.2-br2.tar.gz # Hashes for license files: sha256 d93cc415382f0013088fa276d9cf82373badf244c78220a926f15ee46f0fe3c4 LICENSE-CC0
package/qt5/qt5webengine-chromium-catapult/qt5webengine-chromium-catapult.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 66b8593e665c4236f7b1c487548d41d3826eddbf486ff985dbdfd01cddcaa1a8 qt5webengine-chromium-catapult-5eedfe23148a234211ba477f76fc2ea2e8529189-br1.tar.gz +sha256 66b8593e665c4236f7b1c487548d41d3826eddbf486ff985dbdfd01cddcaa1a8 qt5webengine-chromium-catapult-5eedfe23148a234211ba477f76fc2ea2e8529189-br2.tar.gz sha256 f0df289ba9d03d857ad1c2f5918861376b1510b71588ffc60eff5c7a7bfedb09 LICENSE
package/rockchip-rkbin/rockchip-rkbin.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 bd8d19ace202ff26d1c0b4d7744cd467cd0093801dc674dde57290159eedee2b rockchip-rkbin-b4558da0860ca48bf1a571dd33ccba580b9abe23-br1.tar.gz +sha256 bd8d19ace202ff26d1c0b4d7744cd467cd0093801dc674dde57290159eedee2b rockchip-rkbin-b4558da0860ca48bf1a571dd33ccba580b9abe23-br2.tar.gz sha256 1f2e25ae65f3af774e6f141f84253d6a05d489fb0b88b311220d70471c023c9c LICENSE
package/rtc-tools/rtc-tools.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 8614e140b04da3dbb787760bdb0fe2ac5fe8907f5d3e9a74c6713e3d17fc3650 rtc-tools-33ef4aa1c92b0c92a351284d93d1ac5570de9cc7-br1.tar.gz +sha256 8614e140b04da3dbb787760bdb0fe2ac5fe8907f5d3e9a74c6713e3d17fc3650 rtc-tools-33ef4aa1c92b0c92a351284d93d1ac5570de9cc7-br2.tar.gz sha256 7ae50a5344af14d6231aff6814632a220b3127da4099aea2c6070fd79c407c1a COPYING
package/rtmpdump/rtmpdump.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 e362202d94b92632b17abc7ef909afc56de06a2cb40e308edfad901d799bbd9c rtmpdump-c5f04a58fc2aeea6296ca7c44ee4734c18401aa3-br1.tar.gz +sha256 e362202d94b92632b17abc7ef909afc56de06a2cb40e308edfad901d799bbd9c rtmpdump-c5f04a58fc2aeea6296ca7c44ee4734c18401aa3-br2.tar.gz sha256 03fe7ca91cc28e99b4003d5b3bd4ce3b084d4c475fdf9975cf0e7fdf4dc739cd librtmp/COPYING
package/signal-estimator/signal-estimator.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 6256b881bd9285fdcf133628cf6dd6b0e2758c08bada231e44b2684a3cf7898f signal-estimator-v0.0.4-br1.tar.gz +sha256 6256b881bd9285fdcf133628cf6dd6b0e2758c08bada231e44b2684a3cf7898f signal-estimator-v0.0.4-br2.tar.gz sha256 e836fc784cb6ed2d160f1c1ecdf1303ed57436a86f66f97e5406a1b79e6db55e LICENSE
package/sox/sox.hash +1 -1
@@ -1,4 +1,4 @@ # Locally computed -sha256 3d06ba8fc39ac92f16da73593be48afe0a704fe4dc4f6eca2e5137ef77cd5115 sox-7524160b29a476f7e87bc14fddf12d349f9a3c5e-br1.tar.gz +sha256 3d06ba8fc39ac92f16da73593be48afe0a704fe4dc4f6eca2e5137ef77cd5115 sox-7524160b29a476f7e87bc14fddf12d349f9a3c5e-br2.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 LICENSE.GPL sha256 5df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a LICENSE.LGPL
package/tftpd/tftpd.hash +1 -1
@@ -1,5 +1,5 @@ # Locally calculated -sha256 c86520c30dab0b6bcbae021ab26d2ac63227696596d37a9b02aa3e56ec5c2e77 tftpd-b2b34cecc8cbc18ff6f1fc00bda6ae6e9011e6c7-br1.tar.gz +sha256 c86520c30dab0b6bcbae021ab26d2ac63227696596d37a9b02aa3e56ec5c2e77 tftpd-b2b34cecc8cbc18ff6f1fc00bda6ae6e9011e6c7-br2.tar.gz # Hash for license file sha256 67754ebd8f265571d3226ac97e521b1bd6fd8a61363ecd4ab7806a6f90efab92 tftpd/tftpd.c
package/ti-sgx-demos/ti-sgx-demos.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed: -sha256 5564741d7669b6303e52f4c0d1eaa04aa2633c0c6ad8ff7c5295b7ef3764c719 ti-sgx-demos-bb8b74cdd1323e76697b3eb2258f863b15fee287-br1.tar.gz +sha256 5564741d7669b6303e52f4c0d1eaa04aa2633c0c6ad8ff7c5295b7ef3764c719 ti-sgx-demos-bb8b74cdd1323e76697b3eb2258f863b15fee287-br2.tar.gz sha256 052741ea66a4a48e0ef8cab259d2dc136e7cf52fda694af8d1fe9bd28abe333b LegalNotice.txt
package/ti-sgx-km/ti-sgx-km.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed: -sha256 213b4ff3893c74f026a06404dca185216809d062e54d17c2302d56ff7ede5181 ti-sgx-km-cf7f48cb30abfd5df7a60c9bf4bbb1dde0d496d9-br1.tar.gz +sha256 213b4ff3893c74f026a06404dca185216809d062e54d17c2302d56ff7ede5181 ti-sgx-km-cf7f48cb30abfd5df7a60c9bf4bbb1dde0d496d9-br2.tar.gz sha256 e9d660547691b2a9232850fd43aac16d40fd063023166fd27162020c30dc2bd4 eurasia_km/GPL-COPYING
package/ti-sgx-um/ti-sgx-um.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed: -sha256 e52c743194516fcc92d570bc5a26dfaa26d18c13d92d41640019f544ef25be3a ti-sgx-um-909e237baf47d0bde006ff25552f5403fd7e359d-br1.tar.gz +sha256 e52c743194516fcc92d570bc5a26dfaa26d18c13d92d41640019f544ef25be3a ti-sgx-um-909e237baf47d0bde006ff25552f5403fd7e359d-br2.tar.gz sha256 368c306246c9130b5c90a6fef2f80085f70b6225b3f552654a288c0f39fc1531 TI-Linux-Graphics-DDK-UM-Manifest.doc
package/tl-expected/tl-expected.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 2611769546cedcaef233ef587e71420d1f079a794eb7bb19b888dedf991ace7c tl-expected-v1.0.0-br1.tar.gz +sha256 2611769546cedcaef233ef587e71420d1f079a794eb7bb19b888dedf991ace7c tl-expected-v1.0.0-br2.tar.gz sha256 a2010f343487d3f7618affe54f789f5487602331c0a8d03f49e9a7c547cf0499 COPYING
package/tremor/tremor.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 a387ebb4536ca98034eb91855616b971b0a85575943699b2a6d0be79b4a9f6a9 tremor-7c30a66346199f3f09017a09567c6c8a3a0eedc8-br1.tar.gz +sha256 a387ebb4536ca98034eb91855616b971b0a85575943699b2a6d0be79b4a9f6a9 tremor-7c30a66346199f3f09017a09567c6c8a3a0eedc8-br2.tar.gz sha256 d2ab5758336489da61c12cc5bb757da5339c4ae9001f9bb0562b4370249af814 COPYING
package/ubus/ubus.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 e3022aa3cf6c38a4d3c0d798d9a9c7069ada063a0a5fe6894b466b71b17ce9cc ubus-f787c97b34894a38b15599886cacbca01271684f-br1.tar.gz +sha256 e3022aa3cf6c38a4d3c0d798d9a9c7069ada063a0a5fe6894b466b71b17ce9cc ubus-f787c97b34894a38b15599886cacbca01271684f-br2.tar.gz sha256 a3caa6c0e90c87b7c97c2ac3d0c0d416082ef777215faec2e9b24ea6e68f6988 ubusd_acl.h
package/uclibc-ng-test/uclibc-ng-test.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 f261229c43c026e39178aca48f4f3caacd0bbe373ccd06d27954e7a5fa768fe8 uclibc-ng-test-0f303c63fab7f4038515ced6f2659242cf60ac19-br1.tar.gz +sha256 f261229c43c026e39178aca48f4f3caacd0bbe373ccd06d27954e7a5fa768fe8 uclibc-ng-test-0f303c63fab7f4038515ced6f2659242cf60ac19-br2.tar.gz sha256 6095e9ffa777dd22839f7801aa845b31c9ed07f3d6bf8a26dc5d2dec8ccc0ef3 COPYING.LIB
package/uemacs/uemacs.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 96e30247365bb27bd74c550b637f5b2ffd2978379872a32a840f6667cec5fa2a uemacs-1cdcf9df88144049750116e36fe20c8c39fa2517-br1.tar.gz +sha256 96e30247365bb27bd74c550b637f5b2ffd2978379872a32a840f6667cec5fa2a uemacs-1cdcf9df88144049750116e36fe20c8c39fa2517-br2.tar.gz sha256 6e2a4cf41ec8d4379c154923349733bc0d3935c6fa72c4337cf1bc137b98b90a README
package/uhttpd/uhttpd.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 9ae10aaf6642b214e0a4ca47d6fd9693ac4b88d61e7d6446f0f0feb3a28ca510 uhttpd-15346de8d3ba422002496526ee24c62a3601ab8c-br1.tar.gz +sha256 9ae10aaf6642b214e0a4ca47d6fd9693ac4b88d61e7d6446f0f0feb3a28ca510 uhttpd-15346de8d3ba422002496526ee24c62a3601ab8c-br2.tar.gz sha256 ce1803f83f776cc88661e303fede0e5ff52faf1d9f74508fadbecf7705b4c84d uhttpd.h
package/uqmi/uqmi.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 aae6a72791da8f58012303ba3bfeeb613e74597cbebfb9e7c2d9125e6f256799 uqmi-0a19b5b77140465c29e2afa7d611fe93abc9672f-br1.tar.gz +sha256 aae6a72791da8f58012303ba3bfeeb613e74597cbebfb9e7c2d9125e6f256799 uqmi-0a19b5b77140465c29e2afa7d611fe93abc9672f-br2.tar.gz sha256 a69bf44dbff15d727578d2069a654d60e9034c5e2cc3e199a012e72afef6c259 main.c
package/ustream-ssl/ustream-ssl.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 e77e579b718085c1447339e0fcd5385b85a783d5c92544e48a6b37b1695a7f39 ustream-ssl-68d09243b6fd4473004b27ff6483352e76e6af1a-br1.tar.gz +sha256 e77e579b718085c1447339e0fcd5385b85a783d5c92544e48a6b37b1695a7f39 ustream-ssl-68d09243b6fd4473004b27ff6483352e76e6af1a-br2.tar.gz sha256 cf28f0f01a57423983fa062eb0f04bb1a78891863cb58c53059c3d8cb52c1dd4 ustream-ssl.h
package/vboot-utils/vboot-utils.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 9cdeaa2e4e1190c0cd200e1b07d394e5d24f57cc0efffdce861d5de934035bf7 vboot-utils-bbdd62f9b030db7ad8eef789aaf58a7ff9a25656-br1.tar.gz +sha256 9cdeaa2e4e1190c0cd200e1b07d394e5d24f57cc0efffdce861d5de934035bf7 vboot-utils-bbdd62f9b030db7ad8eef789aaf58a7ff9a25656-br2.tar.gz sha256 cb9dc8e96aedf9120b6757a60387db10f3c1a8e3fd97bb9d0f11327be5a7ed4d LICENSE
package/wilink-bt-firmware/wilink-bt-firmware.hash +1 -1
@@ -1,3 +1,3 @@ # Locally calculated -sha256 209e1a46a945e7d4d031e22fb7bd1e3fc96fa3b99d069051ce257c5e2e0843f4 wilink-bt-firmware-43fca73c6a98c63fcb98f82af5bf83761778e005-br1.tar.gz +sha256 209e1a46a945e7d4d031e22fb7bd1e3fc96fa3b99d069051ce257c5e2e0843f4 wilink-bt-firmware-43fca73c6a98c63fcb98f82af5bf83761778e005-br2.tar.gz sha256 21fd99ce784dc33b39ec0b4a383a9a9b8dafea261d73ad4548683c4eecd87f37 LICENSE
package/x11r7/xdriver_xf86-video-intel/xdriver_xf86-video-intel.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 11f48628d2b1f495446c49df93de40569ced664c6fdbd5d3f8f7a863e4a1124c xdriver_xf86-video-intel-31486f40f8e8f8923ca0799aea84b58799754564-br1.tar.gz +sha256 11f48628d2b1f495446c49df93de40569ced664c6fdbd5d3f8f7a863e4a1124c xdriver_xf86-video-intel-31486f40f8e8f8923ca0799aea84b58799754564-br2.tar.gz sha256 5808e89f4b9a30afc59f335bfa8219ecf2dacb89a81d16b322bc6d92993a48fa COPYING
package/x11r7/xdriver_xf86-video-openchrome/xdriver_xf86-video-openchrome.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 037bebbe31bcca2b4f3adeefccd2a64a30e2924946a6c6646c5829f7362212ec xdriver_xf86-video-openchrome-ab03de703b91c7e0fd3e4d1ca06ad5add7f077a1-br1.tar.gz +sha256 037bebbe31bcca2b4f3adeefccd2a64a30e2924946a6c6646c5829f7362212ec xdriver_xf86-video-openchrome-ab03de703b91c7e0fd3e4d1ca06ad5add7f077a1-br2.tar.gz sha256 1fde58bce5cff8c32e9a0a80bfa3e60213a2767954e30a367127d5afa2884ca2 COPYING
package/x264/x264.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 e83cda2a69e72bc45bcb14aa7ca5e689cf0f67dc29fc6f1dce63abe2a428fc01 x264-baee400fa9ced6f5481a728138fed6e867b0ff7f-br1.tar.gz +sha256 e83cda2a69e72bc45bcb14aa7ca5e689cf0f67dc29fc6f1dce63abe2a428fc01 x264-baee400fa9ced6f5481a728138fed6e867b0ff7f-br2.tar.gz sha256 32b1062f7da84967e7019d01ab805935caa7ab7321a7ced0e30ebe75e5df1670 COPYING
package/yavta/yavta.hash +1 -1
@@ -1,3 +1,3 @@ # Locally computed -sha256 108a0ceec862b56a3fbcb3ad28a8744d9800555ccb3e11bdd94c8cd4614296d5 yavta-583bedefc2a247d2cfd32d1b4a0abbe3e2015c70-br1.tar.gz +sha256 108a0ceec862b56a3fbcb3ad28a8744d9800555ccb3e11bdd94c8cd4614296d5 yavta-583bedefc2a247d2cfd32d1b4a0abbe3e2015c70-br2.tar.gz sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING.GPL
support/download/git +58 -0
64 lines not on this page · raw message
support/testing/tests/download/br2-external/git-hash/package/bad/bad.hash +1 -1
@@ -1 +1 @@ -sha256 0000000000000000000000000000000000000000000000000000000000000000 bad-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz +sha256 0000000000000000000000000000000000000000000000000000000000000000 bad-a238b1dfcd825d47d834af3c5223417c8411d90d-br2.tar.gz
support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.hash new file +1 -0
@@ -0,0 +1 @@ +sha256 9d359f9ae9a9e65dd4ccfe7170aa6fda24e17dfc81238972957b4b7fe97168a7 export-subst-0fdb95cf4f3c5ed4003287649cabb33c5f843e26-br2.tar.gz
support/testing/tests/download/br2-external/git-hash/package/export-subst/export-subst.mk new file +10 -0
@@ -0,0 +1,10 @@ +################################################################################ +# +# export-subst +# +################################################################################ + +EXPORT_SUBST_VERSION = 0fdb95cf4f3c5ed4003287649cabb33c5f843e26 +EXPORT_SUBST_SITE = git://localhost:$(GITREMOTE_PORT_NUMBER)/repo.git + +$(eval $(generic-package))
support/testing/tests/download/br2-external/git-hash/package/good/good.hash +1 -1
@@ -1 +1 @@ -sha256 682ad1f39f258bfb35e26f213f3798f44bb8105bb55fad47bdc003113765b650 good-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz +sha256 682ad1f39f258bfb35e26f213f3798f44bb8105bb55fad47bdc003113765b650 good-a238b1dfcd825d47d834af3c5223417c8411d90d-br2.tar.gz
support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-branch-head/git-partial-sha1-branch-head.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 c27041b3e874beb0d0218158e7d6507ad1515b684de5eed5fabd0f7205e9718e git-partial-sha1-branch-head-68c197d0879d485f4f6c-br1.tar.gz +sha256 c27041b3e874beb0d0218158e7d6507ad1515b684de5eed5fabd0f7205e9718e git-partial-sha1-branch-head-68c197d0879d485f4f6c-br2.tar.gz sha256 2c1126513651b0d346a4e6d1bb75ac1c9999217e18026302d27bea47b06c7fb2 file
support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-branch/git-partial-sha1-reachable-by-branch.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 1bbba9bf2788bd789ed8da4e47cabbf3467b1f706875b3f6b62df38e08fb9aba git-partial-sha1-reachable-by-branch-317406308d9259e2231b-br1.tar.gz +sha256 1bbba9bf2788bd789ed8da4e47cabbf3467b1f706875b3f6b62df38e08fb9aba git-partial-sha1-reachable-by-branch-317406308d9259e2231b-br2.tar.gz sha256 fabbc65c442bacb5e69b7adfea6d14fbbfc1327134322efd12771dc84387d507 file
support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-reachable-by-tag/git-partial-sha1-reachable-by-tag.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 52d223f3b2d625216c259e9ff949ca8818452a531ba61557dd91f3889c7919d7 git-partial-sha1-reachable-by-tag-46bae5b639e5a18e2cc4-br1.tar.gz +sha256 52d223f3b2d625216c259e9ff949ca8818452a531ba61557dd91f3889c7919d7 git-partial-sha1-reachable-by-tag-46bae5b639e5a18e2cc4-br2.tar.gz sha256 2de87d77a2f226813f2d9bda906e970e4195605cdba6680443c0c04d89c532b6 file
support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-itself/git-partial-sha1-tag-itself.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 5cfc004b05f48b3fb419a5db4b7239223d670225fbbb91de2ae151c97910b36c git-partial-sha1-tag-itself-2b0e0d98a49c97da6a61-br1.tar.gz +sha256 5cfc004b05f48b3fb419a5db4b7239223d670225fbbb91de2ae151c97910b36c git-partial-sha1-tag-itself-2b0e0d98a49c97da6a61-br2.tar.gz sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file
support/testing/tests/download/br2-external/git-refs/package/git-partial-sha1-tag-points-to/git-partial-sha1-tag-points-to.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 0f40d7f39bf2e389cc2ce03c73cc0cc9ded1119378aaa68e2a2ef8597f6fd2f3 git-partial-sha1-tag-points-to-516c9c5f64ec66534d4d-br1.tar.gz +sha256 0f40d7f39bf2e389cc2ce03c73cc0cc9ded1119378aaa68e2a2ef8597f6fd2f3 git-partial-sha1-tag-points-to-516c9c5f64ec66534d4d-br2.tar.gz sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file
support/testing/tests/download/br2-external/git-refs/package/git-sha1-branch-head/git-sha1-branch-head.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 3ab67c485ce1825abbbf5db1d90d94dfadc89b30bb740041cfc75fc04021e218 git-sha1-branch-head-68c197d0879d485f4f6cee85544722b79e68e59f-br1.tar.gz +sha256 3ab67c485ce1825abbbf5db1d90d94dfadc89b30bb740041cfc75fc04021e218 git-sha1-branch-head-68c197d0879d485f4f6cee85544722b79e68e59f-br2.tar.gz sha256 2c1126513651b0d346a4e6d1bb75ac1c9999217e18026302d27bea47b06c7fb2 file
support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-branch/git-sha1-reachable-by-branch.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 a5936d6d6022ea101a6076864a2afa918ab2776764012c4be589027001044041 git-sha1-reachable-by-branch-317406308d9259e2231bd0d6ddad3de3832bce08-br1.tar.gz +sha256 a5936d6d6022ea101a6076864a2afa918ab2776764012c4be589027001044041 git-sha1-reachable-by-branch-317406308d9259e2231bd0d6ddad3de3832bce08-br2.tar.gz sha256 fabbc65c442bacb5e69b7adfea6d14fbbfc1327134322efd12771dc84387d507 file
support/testing/tests/download/br2-external/git-refs/package/git-sha1-reachable-by-tag/git-sha1-reachable-by-tag.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 c203f968e358ca478d4c5344b1e4ae9bf13f9fb1120f2ed96a12154dd64195a6 git-sha1-reachable-by-tag-46bae5b639e5a18e2cc4dc508f080d566baeff59-br1.tar.gz +sha256 c203f968e358ca478d4c5344b1e4ae9bf13f9fb1120f2ed96a12154dd64195a6 git-sha1-reachable-by-tag-46bae5b639e5a18e2cc4dc508f080d566baeff59-br2.tar.gz sha256 2de87d77a2f226813f2d9bda906e970e4195605cdba6680443c0c04d89c532b6 file
support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-itself/git-sha1-tag-itself.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 57f08e9f3914e79a10e7fb5d346b26fef2773dd22eed0d61fd755e79e62cee93 git-sha1-tag-itself-2b0e0d98a49c97da6a618ab36337e2058eb733a2-br1.tar.gz +sha256 57f08e9f3914e79a10e7fb5d346b26fef2773dd22eed0d61fd755e79e62cee93 git-sha1-tag-itself-2b0e0d98a49c97da6a618ab36337e2058eb733a2-br2.tar.gz sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file
support/testing/tests/download/br2-external/git-refs/package/git-sha1-tag-points-to/git-sha1-tag-points-to.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 1d8b565827137aa21ba37cde382aa291e33a135c697e38dcd31f14e195386327 git-sha1-tag-points-to-516c9c5f64ec66534d4d069c2e408d9ae4dce023-br1.tar.gz +sha256 1d8b565827137aa21ba37cde382aa291e33a135c697e38dcd31f14e195386327 git-sha1-tag-points-to-516c9c5f64ec66534d4d069c2e408d9ae4dce023-br2.tar.gz sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file
support/testing/tests/download/br2-external/git-refs/package/git-submodule-disabled/git-submodule-disabled.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 e8e0febc7f1408df22bce2d73d9a30081e03b45e152bc25effd14435ca8b3433 git-submodule-disabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br1.tar.gz +sha256 e8e0febc7f1408df22bce2d73d9a30081e03b45e152bc25effd14435ca8b3433 git-submodule-disabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br2.tar.gz sha256 ba8b6ddc4726bfb6a05045ebfd8c43263c968ad1bc601bd46a25bc055008eddc file
support/testing/tests/download/br2-external/git-refs/package/git-submodule-enabled/git-submodule-enabled.hash +1 -1
@@ -1 +1 @@ -sha256 176c32f10ad11f290b6251d701835450292ba281eb59c7fb57b244407a55ceab git-submodule-enabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br1.tar.gz +sha256 176c32f10ad11f290b6251d701835450292ba281eb59c7fb57b244407a55ceab git-submodule-enabled-a9dbc1e23c45e8e1b88c0448763f54d714eb6f8f-br2.tar.gz
support/testing/tests/download/br2-external/git-refs/package/git-tag/git-tag.hash +1 -1
@@ -1,2 +1,2 @@ -sha256 c66b2366d8ccb1670951012334fe8d48de3358aef39b3da2912b339448fefcde git-tag-mytag-br1.tar.gz +sha256 c66b2366d8ccb1670951012334fe8d48de3358aef39b3da2912b339448fefcde git-tag-mytag-br2.tar.gz sha256 6de8772a0a58fa62e2b8c58d4dae55c9db7534ad3b3918ecc849a9008d58f081 file
support/testing/tests/download/br2-external/git-refs/package/git-wrong-content/git-wrong-content.hash +1 -1
@@ -1,2 +1,2 @@ - sha256 4a230e667227310289438cd7d899276a0d45ca8778abfd043dfc0a10ed2c9085 git-wrong-content-a238b1dfcd825d47d834af3c5223417c8411d90d-br1.tar.gz + sha256 4a230e667227310289438cd7d899276a0d45ca8778abfd043dfc0a10ed2c9085 git-wrong-content-a238b1dfcd825d47d834af3c5223417c8411d90d-br2.tar.gz sha256 0000000000000000000000000000000000000000000000000000000000000000 file
support/testing/tests/download/git-remote/repo.git/objects/05/482df734b3715b849ef4a3147a9b1b1f8cca38 new file binary +0 -0
support/testing/tests/download/git-remote/repo.git/objects/0f/db95cf4f3c5ed4003287649cabb33c5f843e26 new file binary +0 -0
support/testing/tests/download/git-remote/repo.git/objects/68/28f88dcb0e88b8cd738ad6044ce74d7a9a13c8 new file binary +0 -0
support/testing/tests/download/git-remote/repo.git/objects/6d/a12b257e47f6089612fe97a8746d2d9c4ca0e0 new file binary +0 -0
support/testing/tests/download/git-remote/repo.git/refs/heads/master +1 -1
@@ -1 +1 @@ -a238b1dfcd825d47d834af3c5223417c8411d90d +0fdb95cf4f3c5ed4003287649cabb33c5f843e26
support/testing/tests/download/test_git.py +4 -0
@@ -56,6 +56,10 @@ class TestGitHash(GitTestBase): self.check_hash("bad") self.check_hash("good") self.check_hash("nohash") + self.check_hash("export-subst") + with open(os.path.join(self.builddir, "dl", "export-subst", "git", "file2"), "r") as f: + blob = f.read() + self.assertEqual(blob, "0fdb95cf4f3c5ed4003287649cabb33c5f843e26\n") class TestGitRefs(GitTestBase):
Signature · 6 lines
2.25.1 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Hello Yann,
Quoted 54 lines · On Wed, 13 Sep 2023 00:15:52 +0200 "Yann E. MORIN" <[email protected]>…
Files in a git repository can be given attributes, like the usual eol that can convert to-from crlf, cr, lf when checking-out of committing a file.
There are also two attributes that are meant to be used when generating an archive (with git archive): export-subst, and export-ignore, that respectively substitutes format placeholders in a file, and excludes a file from the archive.
Some package (e.g. pcm-tools, luajit) use the export-subst attribute to generate versioning information. luajit, specifically, uses the UNIX timestamp of the commit as the patch-level for its semantic versioning.
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.
When doing the replacement, we decided to force abbreviating short hashes to 40 chars, which is the length of a full sha1, rather than actually abbreviating them:
- letting git decide of the length is not reproducible over time:
as new commits are added, the short length will increase to avoid collisions; a newer git version may decide of a different heuristic to shorten hashes; a user may have a local setting with an arbitrary length;- deciding on our side of an arbitrary value would not be viable long term either, as it might be too large to be minimum, or too short to avoid collisions.
The only reproducible solution is to use unabbreviated hashes.
Handling git-attributes also implies that the format of the generated archives has changed, since we now expand placeholders, so we bump our git format version.
Of all our git-downloaded packages, 5 are affected:
- pcm-tools, which was known, and the one that triggered this commit;
since we now expand placeholders, we can drop the post-extract hook; switching to a full hash in replacements also changes the hash of the generated archive;- qt5knx, qt5location, qt5mqtt, and qt5opcua: the file .tag at the repository root, contains only the full hash placeholder; that file is not used at all during the build (AFAICS);
Quoted 6 lines
Finally, we add a run-time test to validate this new feature.
Signed-off-by Yann E. MORIN <[email protected]>Cc Woody Douglass <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Francois Perrad <[email protected]>
I am not totally convinced by this. I recognize the massive efforts that have been into these complex awk scripts, but there are a few reasons why I dislike it:
(1) It's complex/non-obvious
(2) It fixes a problem in only one single package, which is already fixed in a package-specific way, and we don't have visibility on many more packages adopting this.
(3) It bumps the Git tarball version, which is going to cause breakage to *all* downstream users of Buildroot which have custom packages retrieved from Git (and there are probably thousands of these in the numerous companies using Buildroot). So causing so much hassle to our users for the gain of fixing one package in Buildroot is IMO not a good trade-off.
Of course, I can be convinced that I'm wrong, but I'm not too convinced at the moment. And of course (again), Peter and Arnout are definitely welcome to disagree and overrule me :)
Best regards,
Thomas
Signature · 7 lines
Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Thomas, All,
On 2023-09-14 23:07 +0200, Thomas Petazzoni spake thusly:
Quoted 2 lines
On Wed, 13 Sep 2023 00:15:52 +0200
"Yann E. MORIN" <[email protected]> wrote:
[--SNIP--]
Quoted 7 lines
Quoted 7 lines
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.
[--SNIP--]
Quoted 3 lines
I am not totally convinced by this. I recognize the massive efforts that have been into these complex awk scripts, but there are a few reasons why I dislike it:
I am not too surprised by your reply, indeed! ;-)
Quoted 1 line
(1) It's complex/non-obvious
TBH, we've seen more complex code (awk or otherwise) get in. ;-)
But I do agree that we need to asses the complexity vs. gain ratio.
Quoted 3 lines
(2) It fixes a problem in only one single package, which is already fixed in a package-specific way, and we don't have visibility on many more packages adopting this.
Plus luajit that you applied just moments before (and was identified in the commit log), which makes it two.
For those two, I am afraid that bumpers will simply forget to update the post-extract hook with the appropriate data, especially as there is no hint, close to the _VERSION setting, that another value has to be updated in lock-step [*].
Plus the 4 qt5-related package (for which that has no impact on the build, I'll grant it).
[*] we also recently ensured that the erlang API version is no longer hard-coded, see b574a9606e62 (package/erlang: do not hard-code the Erlang Interface Version (EI_VSN)) because, in the long run, people forget about such things... And even so, even with hints, people just don't follow them, like we had meas3d bumps that did not update mesa3d-headers in spite of the hint right above MESA3D_VERISON.
Quoted 6 lines
(3) It bumps the Git tarball version, which is going to cause breakage to *all* downstream users of Buildroot which have custom packages retrieved from Git (and there are probably thousands of these in the numerous companies using Buildroot). So causing so much hassle to our users for the gain of fixing one package in Buildroot is IMO not a good trade-off.
So:
- if the package does not use export-subst, then only the filename changes, and it is easy to s/-br1/-br2/; that can be added to release notres and in the "updating" section of the manual;
- if the package uses export-subst, then that will actually help those out-of-tree packages because they will no longer have to deal with it manually in an ad-hoc manner.
For that second point, we have always had people that wanted to keep the git tree because their build system wanted to extract the git hash (or other info) so that they can quickly identify the source *on a running target*. Telling those to use export-subst can be a solution (now, we just need to convince Linus to add that to his kernel tree ;-) ).
Finally, we also bumped the subversion backend version, which is now -br3; that will probably have caused a lot of churn for those numerous companies that still use svn. I don't see why that would be acceptable for one backend and not another.
Quoted 3 lines
Of course, I can be convinced that I'm wrong, but I'm not too convinced at the moment. And of course (again), Peter and Arnout are definitely welcome to disagree and overrule me :)
You won't be surprised when I tell you I believe it is worth it. ;-)
Regards,
Yann E. MORIN.
Quoted 7 lines
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | 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 [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Quoted 18 lines · Yann E. MORIN
Thomas, All,
On 2023-09-14 23:07 +0200, Thomas Petazzoni spake thusly:
Quoted 2 lines
On Wed, 13 Sep 2023 00:15:52 +0200
"Yann E. MORIN" <[email protected]> wrote:[--SNIP--]
Quoted 7 lines
Quoted 7 lines
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.[--SNIP--]
Quoted 3 lines
I am not totally convinced by this. I recognize the massive efforts that have been into these complex awk scripts, but there are a few reasons why I dislike it:
Quoted 7 lines
I am not too surprised by your reply, indeed! ;-)
Quoted 1 line
(1) It's complex/non-obvious
TBH, we've seen more complex code (awk or otherwise) get in. ;-)
But I do agree that we need to asses the complexity vs. gain ratio.
I haven't looked at it in a lot of detail, but it didn't look _that_ complex
to me.
Quoted 6 lines
Quoted 3 lines
(2) It fixes a problem in only one single package, which is already fixed in a package-specific way, and we don't have visibility on many more packages adopting this.
Plus luajit that you applied just moments before (and was identified in the commit log), which makes it two.
In addition, we are still playing with the idea of switching from downloading
tarballs from github to using the git download method. When we do that, it's likely that more packages will have this issue.
Quoted 22 lines
For those two, I am afraid that bumpers will simply forget to update the post-extract hook with the appropriate data, especially as there is no hint, close to the
_VERSIONsetting, that another value has to be updated in lock-step [*].Plus the 4 qt5-related package (for which that has no impact on the build, I'll grant it).
[*] we also recently ensured that the erlang API version is no longer hard-coded, see
b574a9606e62(package/erlang: do not hard-code the Erlang Interface Version (EI_VSN)) because, in the long run, people forget about such things... And even so, even with hints, people just don't follow them, like we had meas3d bumps that did not update mesa3d-headers in spite of the hint right aboveMESA3D_VERISON.Quoted 6 lines
(3) It bumps the Git tarball version, which is going to cause breakage to *all* downstream users of Buildroot which have custom packages retrieved from Git (and there are probably thousands of these in the numerous companies using Buildroot). So causing so much hassle to our users for the gain of fixing one package in Buildroot is IMO not a good trade-off.
Quoted 8 lines
So:
- if the package does not use export-subst, then only the filename changes, and it is easy to s/-br1/-br2/; that can be added to release notres and in the "updating" section of the manual;- if the package uses export-subst, then that will actually help those out-of-tree packages because they will no longer have to deal with it manually in an ad-hoc manner.
Yeah, I agree with Yann here: there is churn, but it's not too bad. And it's
always detected at build time (missing hash is reported) so it's not causing anything difficult to debug. You're going to have a lot more trouble with package updates when updating buildroot.
Quoted 5 lines
For that second point, we have always had people that wanted to keep the git tree because their build system wanted to extract the git hash (or other info) so that they can quickly identify the source *on a running target*. Telling those to use export-subst can be a solution (now, we just need to convince Linus to add that to his kernel tree ;-) ).
It would be nice if we could generate a file that git-describe recognizes and
uses instead of the actual git tree. Or perhaps we should create a git wrapper that does exactly that.
Quoted 4 lines
Finally, we also bumped the subversion backend version, which is now -br3; that will probably have caused a lot of churn for those numerous companies that still use svn. I don't see why that would be acceptable for one backend and not another.
I expect the impact of svn to be much smaller. Also, mistakes made in the past
doesn't mean we should make the same mistake again :-)
Quoted 5 lines
Quoted 3 lines
Of course, I can be convinced that I'm wrong, but I'm not too convinced at the moment. And of course (again), Peter and Arnout are definitely welcome to disagree and overrule me :)
You won't be surprised when I tell you I believe it is worth it. ;-)
Yeah, I do think we should do everything we can to make sure the git archives
are reproducible.
Regards,
Arnout
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Arnout, All,
On 2023-09-17 19:52 +0200, Arnout Vandecappelle spake thusly:
Quoted 13 lines · Yann E. MORIN
Quoted 12 lines
On 2023-09-14 23:07 +0200, Thomas Petazzoni spake thusly:
Quoted 2 lines
On Wed, 13 Sep 2023 00:15:52 +0200
"Yann E. MORIN" <[email protected]> wrote:[--SNIP--]
Quoted 7 lines
Quoted 7 lines
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.[--SNIP--]
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
I am not totally convinced by this. I recognize the massive efforts that have been into these complex awk scripts, but there are a few reasons why I dislike it:
(1) It's complex/non-obviousTBH, we've seen more complex code (awk or otherwise) get in. ;-) But I do agree that we need to asses the complexity vs. gain ratio.
I haven't looked at it in a lot of detail, but it didn't look _that_
complex to me.
I noticed a little coding-style issue in there (missing semi-column on end of line, innocuous as it's optional, but that's diverging from the rest of the file). I'll fix and respin a v2.
[--SNIP--]
Quoted 8 lines
Quoted 5 lines
For that second point, we have always had people that wanted to keep the git tree because their build system wanted to extract the git hash (or other info) so that they can quickly identify the source *on a running target*. Telling those to use export-subst can be a solution (now, we just need to convince Linus to add that to his kernel tree ;-) ).
It would be nice if we could generate a file that git-describe recognizes
and uses instead of the actual git tree. Or perhaps we should create a git wrapper that does exactly that.
In retrospect, I was thinking about override-src-dir packages. For those, we could look into something like:
ifneq ($$($(2)_OVERRIDE_SRCDIR),)
$(2)_ENV += GIT_DIR=$$($(2)_OVERRIDE_SRCDIR)/.git
endifQuoted 6 lines
Quoted 4 lines
Finally, we also bumped the subversion backend version, which is now -br3; that will probably have caused a lot of churn for those numerous companies that still use svn. I don't see why that would be acceptable for one backend and not another.
I expect the impact of svn to be much smaller. Also, mistakes made in the
past doesn't mean we should make the same mistake again :-)
Sure, but svn is in fact still quite widely used in $big_corps...
Quoted 6 lines
Quoted 4 lines
Quoted 3 lines
Of course, I can be convinced that I'm wrong, but I'm not too convinced at the moment. And of course (again), Peter and Arnout are definitely welcome to disagree and overrule me :)
You won't be surprised when I tell you I believe it is worth it. ;-)
Yeah, I do think we should do everything we can to make sure the git
archives are reproducible.
What we currently have is *already* reproducible, and I was not arguing that was not the case. The point was about adding support for export-subst, not reproducibility (but adding export-subst should also be reproducible, hence the core.abbrev=40).
So, I'll fix the little coding style issue, add a section in the manual, and resubmit, with a conversion of luajit while at it.
Regards,
Yann E. MORIN.
Signature · 10 lines
.-----------------.--------------------.------------------.--------------------. | 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 [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot
Re: [Buildroot] [PATCH 5/5] support/download/git: handle git attributes
Quoted 20 lines · Yann E. MORIN
Arnout, All,
On 2023-09-17 19:52 +0200, Arnout Vandecappelle spake thusly:
Quoted 17 lines · Yann E. MORIN
Quoted 16 lines
On 2023-09-14 23:07 +0200, Thomas Petazzoni spake thusly:
Quoted 2 lines
On Wed, 13 Sep 2023 00:15:52 +0200
"Yann E. MORIN" <[email protected]> wrote:[--SNIP--]
Quoted 7 lines
Quoted 7 lines
Extend the git backend to handle the export-subst attribute. There is no git tool (that we could find) that does that automatically, except git-archive, which we can't use. So, we do it manually with a bit of trickery where we do use awk to:
- identify all files that have the export-subst attribute set,
- for each such file, iterate over all the placeholders, and replace them with the expanded format.[--SNIP--]
Quoted 4 lines
I am not totally convinced by this. I recognize the massive efforts that have been into these complex awk scripts, but there are a few reasons why I dislike it:
(1) It's complex/non-obvious
Quoted 8 lines
Quoted 4 lines
Quoted 2 lines
TBH, we've seen more complex code (awk or otherwise) get in. ;-) But I do agree that we need to asses the complexity vs. gain ratio.
I haven't looked at it in a lot of detail, but it didn't look _that_
complex to me.I noticed a little coding-style issue in there (missing semi-column on end of line, innocuous as it's optional, but that's diverging from the rest of the file). I'll fix and respin a v2.
If you do that, can you also split up the big patch? Mixing all the br1->br2
changes with the actual code change makes it very hard to review, and also hard to revert or backport because the br1->br2 changes are almost guaranteed to be wrong.
Quoted 16 lines
[--SNIP--]
Quoted 8 lines
Quoted 5 lines
For that second point, we have always had people that wanted to keep the git tree because their build system wanted to extract the git hash (or other info) so that they can quickly identify the source *on a running target*. Telling those to use export-subst can be a solution (now, we just need to convince Linus to add that to his kernel tree ;-) ).
It would be nice if we could generate a file that git-describe recognizes
and uses instead of the actual git tree. Or perhaps we should create a git wrapper that does exactly that.In retrospect, I was thinking about override-src-dir packages. For those, we could look into something like:
ifneq ($$($(2)_OVERRIDE_SRCDIR),) $(2)_ENV += GIT_DIR=$$($(2)_OVERRIDE_SRCDIR)/.git endif >
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Finally, we also bumped the subversion backend version, which is now -br3; that will probably have caused a lot of churn for those numerous companies that still use svn. I don't see why that would be acceptable for one backend and not another.
I expect the impact of svn to be much smaller. Also, mistakes made in the
past doesn't mean we should make the same mistake again :-)Sure, but svn is in fact still quite widely used in $big_corps...
Widely, yes, but less than git.
Quoted 11 lines
Quoted 6 lines
Quoted 4 lines
Quoted 3 lines
Of course, I can be convinced that I'm wrong, but I'm not too convinced at the moment. And of course (again), Peter and Arnout are definitely welcome to disagree and overrule me :)
You won't be surprised when I tell you I believe it is worth it. ;-)
Yeah, I do think we should do everything we can to make sure the git
archives are reproducible.What we currently have is *already* reproducible, and I was not arguing that was not the case. The point was about adding support for export-subst, not reproducibility (but adding export-subst should also be reproducible, hence the core.abbrev=40).
Ah I misunderstood that. Then it shifts a bit less in favour of applying this,
actually.
Regards,
Arnout
Quoted 6 lines
So, I'll fix the little coding style issue, add a section in the manual, and resubmit, with a conversion of luajit while at it.
Regards,
Yann E. MORIN.
_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot