[OpenWrt-Devel] [PATCH] tools: squashfskit4: fix build with GCC10

Paul Spooren mail at aparcar.org
Fri Mar 20 17:09:56 EDT 2020


Hi,

wan't squashfskit4 created as a workaround for an inactive upstream
maintainer? Wouldn't it make sense to move back to upstream now that it
is more up to date than our fork?

Best,
Paul

On Thu Mar 19, 2020 at 2:22 AM PST, Robert Marko wrote:
> From: Robert Marko <robert.marko at sartura.hr>
>
> In order to build squashfskit with GCC10, this backport from upstream is
> needed.
>
> Signed-off-by: Robert Marko <robert.marko at sartura.hr>
> ---
> ...002-fix-build-failure-against-gcc-10.patch | 43 +++++++++++++++++++
> 1 file changed, 43 insertions(+)
> create mode 100644
> tools/squashfskit4/patches/0002-fix-build-failure-against-gcc-10.patch
>
> diff --git
> a/tools/squashfskit4/patches/0002-fix-build-failure-against-gcc-10.patch
> b/tools/squashfskit4/patches/0002-fix-build-failure-against-gcc-10.patch
> new file mode 100644
> index 0000000000..46c6a5ea0f
> --- /dev/null
> +++
> b/tools/squashfskit4/patches/0002-fix-build-failure-against-gcc-10.patch
> @@ -0,0 +1,43 @@
> +From fe2f5da4b0f8994169c53e84b7cb8a0feefc97b5 Mon Sep 17 00:00:00 2001
> +From: Sergei Trofimovich <slyfox at gentoo.org>
> +Date: Sun, 26 Jan 2020 18:35:13 +0000
> +Subject: [PATCH] squashfs-tools: fix build failure against gcc-10
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +On gcc-10 (and gcc-9 -fno-common) build fails as:
> +
> +```
> +cc ... -o mksquashfs
> +ld: read_fs.o:(.bss+0x0):
> + multiple definition of `fwriter_buffer'; mksquashfs.o:(.bss+0x400c90):
> first defined here
> +ld: read_fs.o:(.bss+0x8):
> + multiple definition of `bwriter_buffer'; mksquashfs.o:(.bss+0x400c98):
> first defined here
> +```
> +
> +gcc-10 will change the default from -fcommon to fno-common:
> +https://gcc.gnu.org/PR85678.
> +
> +The error also happens if CFLAGS=-fno-common passed explicitly.
> +
> +Reported-by: Toralf Förster
> +Bug: https://bugs.gentoo.org/706456
> +Signed-off-by: Sergei Trofimovich <slyfox at gentoo.org>
> +---
> + squashfs-tools/mksquashfs.h | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h
> +index 1beefef7..b6503063 100644
> +--- a/squashfs-tools/mksquashfs.h
> ++++ b/squashfs-tools/mksquashfs.h
> +@@ -143,7 +143,7 @@ struct append_file {
> + #endif
> +
> + extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache;
> +-struct cache *bwriter_buffer, *fwriter_buffer;
> ++extern struct cache *bwriter_buffer, *fwriter_buffer;
> + extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer,
> + *to_frag, *locked_fragment, *to_process_frag;
> + extern struct append_file **file_mapping;
> --
> 2.26.0.rc2
>
>
> _______________________________________________
> openwrt-devel mailing list
> openwrt-devel at lists.openwrt.org
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list