]>
Commit | Line | Data |
---|---|---|
1 | From 0c4f97b2dd22365d32b865dd002282e454a7edf0 Mon Sep 17 00:00:00 2001 | |
2 | From: Martin Jansa <Martin.Jansa@gmail.com> | |
3 | Date: Sat, 6 Aug 2022 11:53:55 +0000 | |
4 | Subject: [PATCH] libinstaller: Fix build with glibc-2.36 | |
5 | ||
6 | * add only necessary definitions from linux/fs.h, because including whole | |
7 | causes conflicts with sys/mount.h: | |
8 | http://errors.yoctoproject.org/Errors/Details/664535/ | |
9 | ||
10 | In file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/fs.h:19, | |
11 | from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/linuxioctl.h:19, | |
12 | from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/syslxcom.c:34: | |
13 | TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/mount.h:95:6: error: redeclaration of 'enum fsconfig_command' | |
14 | 95 | enum fsconfig_command { | |
15 | | ^~~~~~~~~~~~~~~~ | |
16 | In file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/syslinux-6.04-pre2/linux/../libinstaller/syslxcom.c:31: | |
17 | TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/sys/mount.h:189:6: note: originally defined here | |
18 | 189 | enum fsconfig_command | |
19 | | ^~~~~~~~~~~~~~~~ | |
20 | TOPDIR/tmp-glibc/work/core2-64-oe-linux/syslinux/6.04-pre2-r1/recipe-sysroot/usr/include/linux/mount.h:96:9: error: redeclaration of enumerator 'FSCONFIG_SET_FLAG' | |
21 | 96 | FSCONFIG_SET_FLAG = 0, /* Set parameter, supplying no value */ | |
22 | | ^~~~~~~~~~~~~~~~~ | |
23 | ... | |
24 | ||
25 | Upstream-Status: Pending | |
26 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | |
27 | --- | |
28 | libinstaller/linuxioctl.h | 15 ++++++++++++++- | |
29 | 1 file changed, 14 insertions(+), 1 deletion(-) | |
30 | ||
31 | diff --git a/libinstaller/linuxioctl.h b/libinstaller/linuxioctl.h | |
32 | index e2731c7..f4a6703 100644 | |
33 | --- a/libinstaller/linuxioctl.h | |
34 | +++ b/libinstaller/linuxioctl.h | |
35 | @@ -16,7 +16,20 @@ | |
36 | #include <linux/fd.h> /* Floppy geometry */ | |
37 | #include <linux/hdreg.h> /* Hard disk geometry */ | |
38 | ||
39 | -#include <linux/fs.h> /* FIGETBSZ, FIBMAP, FS_IOC_* */ | |
40 | +// #include <linux/fs.h> /* FIGETBSZ, FIBMAP, FS_IOC_* */ | |
41 | +// linux/fs.h unfortunately causes conflict with sys/mount.h since glibc-2.36 | |
42 | +// https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E | |
43 | +// add the necessary definitions | |
44 | + | |
45 | +#define FS_IOC_GETFLAGS _IOR('f', 1, long) | |
46 | +#define FS_IOC_SETFLAGS _IOW('f', 2, long) | |
47 | +#define FIBMAP _IO(0x00,1) /* bmap access */ | |
48 | +#define FIGETBSZ _IO(0x00,2) /* get the block size used for bmap */ | |
49 | +#define FS_IMMUTABLE_FL 0x00000010 /* Immutable file */ | |
50 | +#define BLKGETSIZE _IO(0x12,96) /* return device size /512 (long *arg) */ | |
51 | + | |
52 | +// for musl we also need limits.h for PATH_MAX | |
53 | +#include <linux/limits.h> | |
54 | ||
55 | #undef SECTOR_SIZE /* Defined in msdos_fs.h for no good reason */ | |
56 | #undef SECTOR_BITS |