boot/syslinux: Fix build with glibc 2.28+
PATCH v2 1/1 boot/syslinux: Fix build with glibc 2.28+
When building with glibc 2.28+, the "major", "minor" and "makedev" functions are defined in "sys/sysmacros.h". The patch "extlinux: pull in sys/sysmacros.h for major/minor/makedev", applied to Syslinux during 2016Apr, should help. Please note that not only Syslinux is affected by this change in glibc.
---
Changelog:
v2:
- Commit message: 2.23 -> 2.28
...-sysmacros-h-for-major-minor-makedev.patch | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 boot/syslinux/0012-pull-in-sys-sysmacros-h-for-major-minor-makedev.patch
boot/syslinux/0012-pull-in-sys-sysmacros-h-for-major-minor-makedev.patch new file +34 -0
@@ -0,0 +1,34 @@ +From 1a74985b2a404639b08882c57f3147229605dfd5 Mon Sep 17 00:00:00 2001 +From: Mike Frysinger <[email protected]> +Date: Tue, 19 Apr 2016 06:50:31 -0400 +Subject: [PATCH] extlinux: pull in sys/sysmacros.h for major/minor/makedev + +These functions are defined in sys/sysmacros.h, so add the include to +main.c. This is already handled correctly in mountinfo.c. Otherwise +we get build failures like: + +main.o: In function 'find_device_sysfs': +extlinux/main.c:1131: undefined reference to 'minor' + +Signed-off-by: Mike Frysinger <[email protected]> +Signed-off-by: Gene Cumm <[email protected]> +Signed-off-by: Alexander Sverdlin <[email protected]> +--- + extlinux/main.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/extlinux/main.c b/extlinux/main.c +index a7ebd49..ebff7ea 100644 +--- a/extlinux/main.c ++++ b/extlinux/main.c +@@ -38,6 +38,7 @@ + #include <sysexits.h> + #include <sys/ioctl.h> + #include <sys/stat.h> ++#include <sys/sysmacros.h> + #include <sys/types.h> + #include <sys/mount.h> + #include <sys/vfs.h> +-- +2.10.5.GIT +
Signature · 1 line
2.19.1
Thomas Petazzoni
AppliedPATCH v2 1/1 boot/syslinux: Fix build with glibc 2.28+
Hello,
Quoted 9 lines · Alexander Sverdlin
When building with glibc 2.28+, the "major", "minor" and "makedev" functions are defined in "
sys/sysmacros.h". The patch "extlinux: pull insys/sysmacros.hfor major/minor/makedev", applied to Syslinux during 2016Apr, should help. Please note that not only Syslinux is affected by this change in glibc.Signed-off-by Alexander Sverdlin <[email protected]>---
Applied to master, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com