diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2020-05-24 12:23:31 +0200 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2020-05-24 14:43:25 +0200 |
commit | 6b1f2e6058aec4aeed6e359e719f8657babde0f3 (patch) | |
tree | 48ddb562d4279fd01b1a4e8ce2ca4e7b98790a39 | |
parent | 7b3ada8c6df8e0032acabd48ec8bff0d75643759 (diff) | |
download | upstream-6b1f2e6058aec4aeed6e359e719f8657babde0f3.tar.gz upstream-6b1f2e6058aec4aeed6e359e719f8657babde0f3.tar.bz2 upstream-6b1f2e6058aec4aeed6e359e719f8657babde0f3.zip |
squashfs: Fix compile with GCC 10
Fixes the following build error with GCC 10:
/usr/bin/ld: read_fs.o:(.bss+0x0): multiple definition of `swap'; mksquashfs.o:(.bss+0x1b2a88): first defined here
And a compile warning.
Fixes: FS#3104, FS#3119
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit 1bbc1aa884902fd05cc579b53d68b2ba0b18683f)
-rw-r--r-- | tools/squashfs/patches/140-gcc-10-fix.patch | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/squashfs/patches/140-gcc-10-fix.patch b/tools/squashfs/patches/140-gcc-10-fix.patch new file mode 100644 index 0000000000..a02641f307 --- /dev/null +++ b/tools/squashfs/patches/140-gcc-10-fix.patch @@ -0,0 +1,25 @@ +Fixes the following build error with GCC 10: + /usr/bin/ld: read_fs.o:(.bss+0x0): multiple definition of `swap'; mksquashfs.o:(.bss+0x1b2a88): first defined here +And a compile warning. + +--- a/squashfs-tools/read_fs.c ++++ b/squashfs-tools/read_fs.c +@@ -61,7 +61,7 @@ extern int add_file(long long, long long + fprintf(stderr, s, ## args); \ + } while(0) + +-int swap; ++static int swap; + + int read_block(int fd, long long start, long long *next, unsigned char *block, squashfs_super_block *sBlk) + { +--- a/squashfs-tools/mksquashfs.c ++++ b/squashfs-tools/mksquashfs.c +@@ -258,6 +258,7 @@ int read_sort_file(char *filename, int s + void sort_files_and_write(struct dir_info *dir); + struct file_info *duplicate(char *(get_next_file_block)(struct duplicate_buffer_handle *, unsigned int), struct duplicate_buffer_handle *file_start, long long bytes, unsigned int **block_list, long long *start, int blocks, struct fragment **fragment, char *frag_data, int frag_bytes); + struct dir_info *dir_scan1(char *, int (_readdir)(char *, char *, struct dir_info *)); ++int dir_scan2(squashfs_inode *inode, struct dir_info *dir_info); + + #define MKINODE(A) ((squashfs_inode)(((squashfs_inode) inode_bytes << 16) + (((char *)A) - data_cache))) + |