* [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 @ 2026-01-03 11:40 Fiona Klute via buildroot 2026-01-04 12:52 ` Julien Olivain via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Fiona Klute via buildroot @ 2026-01-03 11:40 UTC (permalink / raw) To: buildroot; +Cc: Thomas Petazzoni, Fiona Klute Upstream changelog: https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md Signed-off-by: Fiona Klute <fiona.klute@gmx.de> --- package/squashfs/squashfs.hash | 4 ++-- package/squashfs/squashfs.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/squashfs/squashfs.hash b/package/squashfs/squashfs.hash index c921d638bb..eb9bc34282 100644 --- a/package/squashfs/squashfs.hash +++ b/package/squashfs/squashfs.hash @@ -1,5 +1,5 @@ -# Locally computed -sha256 94201754b36121a9f022a190c75f718441df15402df32c2b520ca331a107511c squashfs-tools-4.6.1.tar.gz +# From https://github.com/plougher/squashfs-tools/releases/tag/4.7.4 +sha256 91c49f9a1ed972ad00688a38222119e2baf49ba74cf5fda05729a79d7d59d335 squashfs-tools-4.7.4.tar.gz # License files sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk index f2cb0ab25e..04b328ccab 100644 --- a/package/squashfs/squashfs.mk +++ b/package/squashfs/squashfs.mk @@ -4,7 +4,7 @@ # ################################################################################ -SQUASHFS_VERSION = 4.6.1 +SQUASHFS_VERSION = 4.7.4 SQUASHFS_SOURCE = squashfs-tools-$(SQUASHFS_VERSION).tar.gz SQUASHFS_SITE = https://github.com/plougher/squashfs-tools/releases/download/$(SQUASHFS_VERSION) SQUASHFS_LICENSE = GPL-2.0+ -- 2.51.0 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-03 11:40 [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 Fiona Klute via buildroot @ 2026-01-04 12:52 ` Julien Olivain via buildroot 2026-01-04 14:43 ` Fiona Klute via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Julien Olivain via buildroot @ 2026-01-04 12:52 UTC (permalink / raw) To: Fiona Klute; +Cc: buildroot, Thomas Petazzoni Hi Fiona, Thanks for the patch. On 03/01/2026 12:40, Fiona Klute via buildroot wrote: > Upstream changelog: > https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md > > Signed-off-by: Fiona Klute <fiona.klute@gmx.de> > --- [...] > diff --git a/package/squashfs/squashfs.mk > b/package/squashfs/squashfs.mk > index f2cb0ab25e..04b328ccab 100644 > --- a/package/squashfs/squashfs.mk > +++ b/package/squashfs/squashfs.mk > @@ -4,7 +4,7 @@ > # > > ################################################################################ > > -SQUASHFS_VERSION = 4.6.1 > +SQUASHFS_VERSION = 4.7.4 This new version is introducing new build failures. See: https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 For reference, the previous version passes test-pkg: https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 This is likely due to the new SEEK_DATA usage in lseek(), which might not be always present or might require _GNU_SOURCE to be defined. See: https://man7.org/linux/man-pages/man2/lseek.2.html Could you have a look, please? Best regards, Julien. _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-04 12:52 ` Julien Olivain via buildroot @ 2026-01-04 14:43 ` Fiona Klute via buildroot 2026-01-04 15:34 ` Fiona Klute via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Fiona Klute via buildroot @ 2026-01-04 14:43 UTC (permalink / raw) To: Julien Olivain; +Cc: buildroot, Thomas Petazzoni Hi Julien! Am 04.01.26 um 13:52 schrieb Julien Olivain: > Hi Fiona, > > Thanks for the patch. > > On 03/01/2026 12:40, Fiona Klute via buildroot wrote: >> Upstream changelog: >> https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md >> >> Signed-off-by: Fiona Klute <fiona.klute@gmx.de> >> --- > [...] >> diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk >> index f2cb0ab25e..04b328ccab 100644 >> --- a/package/squashfs/squashfs.mk >> +++ b/package/squashfs/squashfs.mk >> @@ -4,7 +4,7 @@ >> # >> >> ################################################################################ >> >> -SQUASHFS_VERSION = 4.6.1 >> +SQUASHFS_VERSION = 4.7.4 > > This new version is introducing new build failures. See: > https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 > > For reference, the previous version passes test-pkg: > https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 > > This is likely due to the new SEEK_DATA usage in lseek(), which > might not be always present or might require _GNU_SOURCE to > be defined. See: > https://man7.org/linux/man-pages/man2/lseek.2.html > > Could you have a look, please? Looks to me like the toolchains need to be updated. The job log clearly shows -D_GNU_SOURCE on the command line. What's noticeable is that the failing builds all use BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/$JOB_NAME-2020.11.2.tar.bz2" while the passing ones (didn't check all of them, but a handful) use Bootlin stable toolchains. E.g. in the br-arm-full-static one arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/unistd.h does not define SEEK_DATA at all, with or without _GNU_SOURCE, unlike with a current glibc version. Interestingly musl does *not* require _GNU_SOURCE, unistd.h defines all SEEK_* macros unconditionally. I did not check since when though, I wouldn't be surprised if a 2020 version would fail, too. Best regards, Fiona _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-04 14:43 ` Fiona Klute via buildroot @ 2026-01-04 15:34 ` Fiona Klute via buildroot 2026-01-04 18:46 ` Julien Olivain via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Fiona Klute via buildroot @ 2026-01-04 15:34 UTC (permalink / raw) To: Julien Olivain; +Cc: buildroot, Thomas Petazzoni Am 04.01.26 um 15:43 schrieb Fiona Klute via buildroot: > Hi Julien! > > Am 04.01.26 um 13:52 schrieb Julien Olivain: >> Hi Fiona, >> >> Thanks for the patch. >> >> On 03/01/2026 12:40, Fiona Klute via buildroot wrote: >>> Upstream changelog: >>> https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md >>> >>> Signed-off-by: Fiona Klute <fiona.klute@gmx.de> >>> --- >> [...] >>> diff --git a/package/squashfs/squashfs.mk b/package/squashfs/squashfs.mk >>> index f2cb0ab25e..04b328ccab 100644 >>> --- a/package/squashfs/squashfs.mk >>> +++ b/package/squashfs/squashfs.mk >>> @@ -4,7 +4,7 @@ >>> # >>> >>> ################################################################################ >>> >>> -SQUASHFS_VERSION = 4.6.1 >>> +SQUASHFS_VERSION = 4.7.4 >> >> This new version is introducing new build failures. See: >> https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 >> >> For reference, the previous version passes test-pkg: >> https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 >> >> This is likely due to the new SEEK_DATA usage in lseek(), which >> might not be always present or might require _GNU_SOURCE to >> be defined. See: >> https://man7.org/linux/man-pages/man2/lseek.2.html >> >> Could you have a look, please? > Looks to me like the toolchains need to be updated. The job log clearly > shows -D_GNU_SOURCE on the command line. What's noticeable is that the > failing builds all use > > BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/ > tarballs/$JOB_NAME-2020.11.2.tar.bz2" > > while the passing ones (didn't check all of them, but a handful) use > Bootlin stable toolchains. > > E.g. in the br-arm-full-static one arm-buildroot-linux-uclibcgnueabi/ > sysroot/usr/include/unistd.h does not define SEEK_DATA at all, with or > without _GNU_SOURCE, unlike with a current glibc version. > > Interestingly musl does *not* require _GNU_SOURCE, unistd.h defines all > SEEK_* macros unconditionally. I did not check since when though, I > wouldn't be surprised if a 2020 version would fail, too. Oh, another relevant detail: In uClibc SEEK_DATA support is a fairly recent addition (commit July 2024, first tag including it is v1.0.50). So uClibc toolchains from 2020 definitely won't work. See: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/include/unistd.h?id=05b11809bd11450aff3d20e43f18415ce58601e7 Best regards, Fiona _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-04 15:34 ` Fiona Klute via buildroot @ 2026-01-04 18:46 ` Julien Olivain via buildroot 2026-01-04 23:42 ` Fiona Klute via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Julien Olivain via buildroot @ 2026-01-04 18:46 UTC (permalink / raw) To: Fiona Klute; +Cc: buildroot, Thomas Petazzoni Hi FIona, On 04/01/2026 16:34, Fiona Klute wrote: > Am 04.01.26 um 15:43 schrieb Fiona Klute via buildroot: >> Hi Julien! >> >> Am 04.01.26 um 13:52 schrieb Julien Olivain: >>> Hi Fiona, >>> >>> Thanks for the patch. >>> >>> On 03/01/2026 12:40, Fiona Klute via buildroot wrote: >>>> Upstream changelog: >>>> https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md >>>> >>>> Signed-off-by: Fiona Klute <fiona.klute@gmx.de> >>>> --- >>> [...] >>>> diff --git a/package/squashfs/squashfs.mk >>>> b/package/squashfs/squashfs.mk >>>> index f2cb0ab25e..04b328ccab 100644 >>>> --- a/package/squashfs/squashfs.mk >>>> +++ b/package/squashfs/squashfs.mk >>>> @@ -4,7 +4,7 @@ >>>> # >>>> >>>> ################################################################################ >>>> >>>> -SQUASHFS_VERSION = 4.6.1 >>>> +SQUASHFS_VERSION = 4.7.4 >>> >>> This new version is introducing new build failures. See: >>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 >>> >>> For reference, the previous version passes test-pkg: >>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 >>> >>> This is likely due to the new SEEK_DATA usage in lseek(), which >>> might not be always present or might require _GNU_SOURCE to >>> be defined. See: >>> https://man7.org/linux/man-pages/man2/lseek.2.html >>> >>> Could you have a look, please? >> Looks to me like the toolchains need to be updated. The job log >> clearly shows -D_GNU_SOURCE on the command line. What's noticeable is >> that the failing builds all use >> >> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/ >> tarballs/$JOB_NAME-2020.11.2.tar.bz2" >> >> while the passing ones (didn't check all of them, but a handful) use >> Bootlin stable toolchains. >> >> E.g. in the br-arm-full-static one arm-buildroot-linux-uclibcgnueabi/ >> sysroot/usr/include/unistd.h does not define SEEK_DATA at all, with or >> without _GNU_SOURCE, unlike with a current glibc version. >> >> Interestingly musl does *not* require _GNU_SOURCE, unistd.h defines >> all SEEK_* macros unconditionally. I did not check since when though, >> I wouldn't be surprised if a 2020 version would fail, too. > Oh, another relevant detail: In uClibc SEEK_DATA support is a fairly > recent addition (commit July 2024, first tag including it is v1.0.50). > So uClibc toolchains from 2020 definitely won't work. See: > https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/include/unistd.h?id=05b11809bd11450aff3d20e43f18415ce58601e7 Thanks for the extra information. Sorry I overlooked that _GNU_SOURCE was already there. This SEEK_DATA usage was introduced in upstream commit: https://github.com/plougher/squashfs-tools/commit/fffbd0b76d529a9e38ce615f73dbcaafad40ae55 first included in squashfs-tools release 4.7.3 (2025-11-06). This definition has been in glibc for quite some time: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=798be72d127adf18f382323d0eed0a1e394967f8 included in glibc-2.15 (2011-12-23). As you pointed out, musl introduced this macro much later, in: https://git.musl-libc.org/cgit/musl/commit/?id=cbacd638e32a02edbe66c48ae3d1361bc06a492a in v1.2.3 (2022-04-07). It was introduced in uclibc in commit: https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/?id=05b11809bd11450aff3d20e43f18415ce58601e7 in v1.0.50 (2024-08-13). squashfs-tools does not test the availability of this SEEK_DATA macro before using it. Since the uclibc and musl introduced it "recently", updating toolchains can be difficult. We could eventually restrict squashfs-tools to glibc only for external toolchains (because we know internal toolchains will have sufficient uclibc or musl versions). Maybe we could also propose an upstream patch to allow squafs-tools to support other libcs. Some packages are providing those definitions, if not available. For example: https://github.com/util-linux/util-linux/blob/v2.41.3/include/c.h#L522 What do you think? > Best regards, > Fiona Best regards, Julien. _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-04 18:46 ` Julien Olivain via buildroot @ 2026-01-04 23:42 ` Fiona Klute via buildroot 2026-01-06 13:52 ` Fiona Klute via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Fiona Klute via buildroot @ 2026-01-04 23:42 UTC (permalink / raw) To: Julien Olivain; +Cc: buildroot, Thomas Petazzoni Hi Julien! Am 04.01.26 um 19:46 schrieb Julien Olivain: > Hi FIona, > > On 04/01/2026 16:34, Fiona Klute wrote: >> Am 04.01.26 um 15:43 schrieb Fiona Klute via buildroot: >>> Hi Julien! >>> >>> Am 04.01.26 um 13:52 schrieb Julien Olivain: >>>> Hi Fiona, >>>> >>>> Thanks for the patch. >>>> >>>> On 03/01/2026 12:40, Fiona Klute via buildroot wrote: >>>>> Upstream changelog: >>>>> https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md >>>>> >>>>> Signed-off-by: Fiona Klute <fiona.klute@gmx.de> >>>>> --- >>>> [...] >>>>> diff --git a/package/squashfs/squashfs.mk b/package/squashfs/ >>>>> squashfs.mk >>>>> index f2cb0ab25e..04b328ccab 100644 >>>>> --- a/package/squashfs/squashfs.mk >>>>> +++ b/package/squashfs/squashfs.mk >>>>> @@ -4,7 +4,7 @@ >>>>> # >>>>> >>>>> ################################################################################ >>>>> >>>>> -SQUASHFS_VERSION = 4.6.1 >>>>> +SQUASHFS_VERSION = 4.7.4 >>>> >>>> This new version is introducing new build failures. See: >>>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 >>>> >>>> For reference, the previous version passes test-pkg: >>>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 >>>> >>>> This is likely due to the new SEEK_DATA usage in lseek(), which >>>> might not be always present or might require _GNU_SOURCE to >>>> be defined. See: >>>> https://man7.org/linux/man-pages/man2/lseek.2.html >>>> >>>> Could you have a look, please? >>> Looks to me like the toolchains need to be updated. The job log >>> clearly shows -D_GNU_SOURCE on the command line. What's noticeable is >>> that the failing builds all use >>> >>> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/ >>> toolchains/ tarballs/$JOB_NAME-2020.11.2.tar.bz2" >>> >>> while the passing ones (didn't check all of them, but a handful) use >>> Bootlin stable toolchains. >>> >>> E.g. in the br-arm-full-static one arm-buildroot-linux-uclibcgnueabi/ >>> sysroot/usr/include/unistd.h does not define SEEK_DATA at all, with >>> or without _GNU_SOURCE, unlike with a current glibc version. >>> >>> Interestingly musl does *not* require _GNU_SOURCE, unistd.h defines >>> all SEEK_* macros unconditionally. I did not check since when though, >>> I wouldn't be surprised if a 2020 version would fail, too. >> Oh, another relevant detail: In uClibc SEEK_DATA support is a fairly >> recent addition (commit July 2024, first tag including it is v1.0.50). >> So uClibc toolchains from 2020 definitely won't work. See: https:// >> cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/include/unistd.h? >> id=05b11809bd11450aff3d20e43f18415ce58601e7 > > Thanks for the extra information. Sorry I overlooked that > _GNU_SOURCE was already there. > > This SEEK_DATA usage was introduced in upstream commit: > https://github.com/plougher/squashfs-tools/commit/ > fffbd0b76d529a9e38ce615f73dbcaafad40ae55 > first included in squashfs-tools release 4.7.3 (2025-11-06). > > This definition has been in glibc for quite some time: > https://sourceware.org/git/? > p=glibc.git;a=commitdiff;h=798be72d127adf18f382323d0eed0a1e394967f8 > included in glibc-2.15 (2011-12-23). > > As you pointed out, musl introduced this macro much later, in: > https://git.musl-libc.org/cgit/musl/commit/? > id=cbacd638e32a02edbe66c48ae3d1361bc06a492a > in v1.2.3 (2022-04-07). > > It was introduced in uclibc in commit: > https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/? > id=05b11809bd11450aff3d20e43f18415ce58601e7 > in v1.0.50 (2024-08-13). > > squashfs-tools does not test the availability of this SEEK_DATA > macro before using it. > > Since the uclibc and musl introduced it "recently", updating > toolchains can be difficult. We could eventually restrict > squashfs-tools to glibc only for external toolchains (because > we know internal toolchains will have sufficient uclibc or musl > versions). > > Maybe we could also propose an upstream patch to allow > squafs-tools to support other libcs. Some > packages are providing those definitions, if not available. > For example: > https://github.com/util-linux/util-linux/blob/v2.41.3/include/c.h#L522 > > What do you think? I've created an upstream issue about the problem, citing your version details (thanks!): https://github.com/plougher/squashfs-tools/issues/338 On the Buildroot side I wonder how old toolchains can reasonably be before we consider them *too old*. So far I thought the Bootlin stable toolchains were the expected baseline, because they're supposed to be used for tests unless there's a good reason not to. Personally, I wouldn't consider musl 1.2.3 "recent", uClibc-ng 1.0.50 maybe kind of, but toolchains from 2020 definitely outdated. I may be influenced by the ~2 year Debian stable cycle. ;-) Best regards, Fiona _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-04 23:42 ` Fiona Klute via buildroot @ 2026-01-06 13:52 ` Fiona Klute via buildroot 2026-01-06 14:47 ` Thomas Petazzoni via buildroot 0 siblings, 1 reply; 8+ messages in thread From: Fiona Klute via buildroot @ 2026-01-06 13:52 UTC (permalink / raw) To: Julien Olivain; +Cc: buildroot, Thomas Petazzoni Am 05.01.26 um 00:42 schrieb Fiona Klute: > Hi Julien! > > Am 04.01.26 um 19:46 schrieb Julien Olivain: >> Hi FIona, >> >> On 04/01/2026 16:34, Fiona Klute wrote: >>> Am 04.01.26 um 15:43 schrieb Fiona Klute via buildroot: >>>> Hi Julien! >>>> >>>> Am 04.01.26 um 13:52 schrieb Julien Olivain: >>>>> Hi Fiona, >>>>> >>>>> Thanks for the patch. >>>>> >>>>> On 03/01/2026 12:40, Fiona Klute via buildroot wrote: >>>>>> Upstream changelog: >>>>>> https://github.com/plougher/squashfs-tools/blob/4.7.4/CHANGES.md >>>>>> >>>>>> Signed-off-by: Fiona Klute <fiona.klute@gmx.de> >>>>>> --- >>>>> [...] >>>>>> diff --git a/package/squashfs/squashfs.mk b/package/squashfs/ >>>>>> squashfs.mk >>>>>> index f2cb0ab25e..04b328ccab 100644 >>>>>> --- a/package/squashfs/squashfs.mk >>>>>> +++ b/package/squashfs/squashfs.mk >>>>>> @@ -4,7 +4,7 @@ >>>>>> # >>>>>> >>>>>> ################################################################################ >>>>>> >>>>>> -SQUASHFS_VERSION = 4.6.1 >>>>>> +SQUASHFS_VERSION = 4.7.4 >>>>> >>>>> This new version is introducing new build failures. See: >>>>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243847808 >>>>> >>>>> For reference, the previous version passes test-pkg: >>>>> https://gitlab.com/jolivain/buildroot/-/pipelines/2243853301 >>>>> >>>>> This is likely due to the new SEEK_DATA usage in lseek(), which >>>>> might not be always present or might require _GNU_SOURCE to >>>>> be defined. See: >>>>> https://man7.org/linux/man-pages/man2/lseek.2.html >>>>> >>>>> Could you have a look, please? >>>> Looks to me like the toolchains need to be updated. The job log >>>> clearly shows -D_GNU_SOURCE on the command line. What's noticeable >>>> is that the failing builds all use >>>> >>>> BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/ >>>> toolchains/ tarballs/$JOB_NAME-2020.11.2.tar.bz2" >>>> >>>> while the passing ones (didn't check all of them, but a handful) use >>>> Bootlin stable toolchains. >>>> >>>> E.g. in the br-arm-full-static one arm-buildroot-linux- >>>> uclibcgnueabi/ sysroot/usr/include/unistd.h does not define >>>> SEEK_DATA at all, with or without _GNU_SOURCE, unlike with a current >>>> glibc version. >>>> >>>> Interestingly musl does *not* require _GNU_SOURCE, unistd.h defines >>>> all SEEK_* macros unconditionally. I did not check since when >>>> though, I wouldn't be surprised if a 2020 version would fail, too. >>> Oh, another relevant detail: In uClibc SEEK_DATA support is a fairly >>> recent addition (commit July 2024, first tag including it is >>> v1.0.50). So uClibc toolchains from 2020 definitely won't work. See: >>> https:// cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/include/ >>> unistd.h? id=05b11809bd11450aff3d20e43f18415ce58601e7 >> >> Thanks for the extra information. Sorry I overlooked that >> _GNU_SOURCE was already there. >> >> This SEEK_DATA usage was introduced in upstream commit: >> https://github.com/plougher/squashfs-tools/commit/ >> fffbd0b76d529a9e38ce615f73dbcaafad40ae55 >> first included in squashfs-tools release 4.7.3 (2025-11-06). >> >> This definition has been in glibc for quite some time: >> https://sourceware.org/git/? >> p=glibc.git;a=commitdiff;h=798be72d127adf18f382323d0eed0a1e394967f8 >> included in glibc-2.15 (2011-12-23). >> >> As you pointed out, musl introduced this macro much later, in: >> https://git.musl-libc.org/cgit/musl/commit/? >> id=cbacd638e32a02edbe66c48ae3d1361bc06a492a >> in v1.2.3 (2022-04-07). >> >> It was introduced in uclibc in commit: >> https://cgit.uclibc-ng.org/cgi/cgit/uclibc-ng.git/commit/? >> id=05b11809bd11450aff3d20e43f18415ce58601e7 >> in v1.0.50 (2024-08-13). >> >> squashfs-tools does not test the availability of this SEEK_DATA >> macro before using it. >> >> Since the uclibc and musl introduced it "recently", updating >> toolchains can be difficult. We could eventually restrict >> squashfs-tools to glibc only for external toolchains (because >> we know internal toolchains will have sufficient uclibc or musl >> versions). >> >> Maybe we could also propose an upstream patch to allow >> squafs-tools to support other libcs. Some >> packages are providing those definitions, if not available. >> For example: >> https://github.com/util-linux/util-linux/blob/v2.41.3/include/c.h#L522 >> >> What do you think? > I've created an upstream issue about the problem, citing your version > details (thanks!): https://github.com/plougher/squashfs-tools/issues/338 Update: The upstream maintainer has added a fallback similar to the util-linux one [1]. However a new issue has been reported since about corrupted images with all-zero files [2], so I think it's best to delay the update until that's resolved. > On the Buildroot side I wonder how old toolchains can reasonably be > before we consider them *too old*. So far I thought the Bootlin stable > toolchains were the expected baseline, because they're supposed to be > used for tests unless there's a good reason not to. Personally, I > wouldn't consider musl 1.2.3 "recent", uClibc-ng 1.0.50 maybe kind of, > but toolchains from 2020 definitely outdated. I may be influenced by the > ~2 year Debian stable cycle. ;-) With the upstream fallback merged the question isn't critical any more, but I think it'd be generally useful to have a documented answer. Best regards, Fiona [1] https://github.com/plougher/squashfs-tools/commit/9ac89115cc0a3acc71c5d34d7e2ee9379159807a [2] https://github.com/plougher/squashfs-tools/issues/339 _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 2026-01-06 13:52 ` Fiona Klute via buildroot @ 2026-01-06 14:47 ` Thomas Petazzoni via buildroot 0 siblings, 0 replies; 8+ messages in thread From: Thomas Petazzoni via buildroot @ 2026-01-06 14:47 UTC (permalink / raw) To: Fiona Klute; +Cc: Julien Olivain, buildroot Hello Fiona, On Tue, 6 Jan 2026 14:52:07 +0100 Fiona Klute <fiona.klute@gmx.de> wrote: > > I've created an upstream issue about the problem, citing your version > > details (thanks!): https://github.com/plougher/squashfs-tools/issues/338 > > Update: The upstream maintainer has added a fallback similar to the > util-linux one [1]. However a new issue has been reported since about > corrupted images with all-zero files [2], so I think it's best to delay > the update until that's resolved. > > > On the Buildroot side I wonder how old toolchains can reasonably be > > before we consider them *too old*. So far I thought the Bootlin stable > > toolchains were the expected baseline, because they're supposed to be > > used for tests unless there's a good reason not to. Personally, I > > wouldn't consider musl 1.2.3 "recent", uClibc-ng 1.0.50 maybe kind of, > > but toolchains from 2020 definitely outdated. I may be influenced by the > > ~2 year Debian stable cycle. ;-) > With the upstream fallback merged the question isn't critical any more, > but I think it'd be generally useful to have a documented answer. On the gcc version, we do have a fairly clear policy, but it's true we don't have such a policy on the C library. We try to reasonably support older toolchains as we recognize people may be using somewhat old toolchains to support specific HW, or just because they "fear" switching to a newer toolchain. So in the case of squashfs, when there is a relatively easy fallback solution, it's always good to have (and good for upstream, as it makes their project more broadly "compatible"). I don't know if we want a policy that says "toolchains with components older than X years are not supported. Can be a topic for the upcoming Buildroot Developers Meeting though. Thomas -- Thomas Petazzoni, co-owner and CEO, Bootlin Embedded Linux and Kernel engineering and training https://bootlin.com _______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2026-01-06 14:48 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-01-03 11:40 [Buildroot] [PATCH 1/1] package/squashfs: bump to version 4.7.4 Fiona Klute via buildroot 2026-01-04 12:52 ` Julien Olivain via buildroot 2026-01-04 14:43 ` Fiona Klute via buildroot 2026-01-04 15:34 ` Fiona Klute via buildroot 2026-01-04 18:46 ` Julien Olivain via buildroot 2026-01-04 23:42 ` Fiona Klute via buildroot 2026-01-06 13:52 ` Fiona Klute via buildroot 2026-01-06 14:47 ` Thomas Petazzoni via buildroot
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox