commit:     6c663abb66064ad670526a0765ea16e081ba0bcc
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 24 17:42:15 2021 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Wed Nov 24 17:44:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6c663abb

dev-libs/lockdev: do not hardcode glibc-specific major() and minor()

Bug: https://bugs.gentoo.org/718062
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 .../files/lockdev-1.0.3-add-autotools.patch        |  5 ++++-
 .../lockdev/files/lockdev-1.0.3-major-minor.patch  | 24 ++++++++++++++++++++++
 dev-libs/lockdev/lockdev-1.0.3.1.2-r4.ebuild       |  1 +
 3 files changed, 29 insertions(+), 1 deletion(-)

diff --git a/dev-libs/lockdev/files/lockdev-1.0.3-add-autotools.patch 
b/dev-libs/lockdev/files/lockdev-1.0.3-add-autotools.patch
index 4343528d9860..01551f56295d 100644
--- a/dev-libs/lockdev/files/lockdev-1.0.3-add-autotools.patch
+++ b/dev-libs/lockdev/files/lockdev-1.0.3-add-autotools.patch
@@ -30,7 +30,7 @@ Updated by Jonathan Callen <a...@gentoo.org> 2009-09-11
 +      done
 --- a/configure.ac
 +++ b/configure.ac
-@@ -0,0 +1,22 @@
+@@ -0,0 +1,25 @@
 +AC_INIT([lockdev], [1.0.3], [BUG-REPORT-ADDRESS])
 +AC_CONFIG_AUX_DIR([scripts])
 +AM_INIT_AUTOMAKE
@@ -51,5 +51,8 @@ Updated by Jonathan Callen <a...@gentoo.org> 2009-09-11
 +# Checks for programs.
 +AC_PROG_LN_S
 +
++AC_HEADER_MAJOR
++
++AC_CONFIG_HEADERS([config.h])
 +AC_CONFIG_FILES([Makefile])
 +AC_OUTPUT

diff --git a/dev-libs/lockdev/files/lockdev-1.0.3-major-minor.patch 
b/dev-libs/lockdev/files/lockdev-1.0.3-major-minor.patch
new file mode 100644
index 000000000000..8a47137f8aee
--- /dev/null
+++ b/dev-libs/lockdev/files/lockdev-1.0.3-major-minor.patch
@@ -0,0 +1,24 @@
+--- a/src/lockdev.c
++++ b/src/lockdev.c
+@@ -123,13 +123,17 @@
+ #include <sys/param.h>
+ #include <sys/stat.h>
+ #include <sys/file.h>
+-#if defined (__GNU_LIBRARY__)
++
++#include "config.h"
++#if defined (MAJOR_IN_MKDEV)
++# include <sys/mkdev.h>
++#elif defined (MAJOR_IN_SYSMACROS)
+ # include <sys/sysmacros.h>
+-# define MAJOR(dev) gnu_dev_major (dev)
+-# define MINOR(dev) gnu_dev_minor (dev)
+ #else
+-#  error "put here a define for MAJOR and MINOR"
++# error "include here the header file defining major() and minor()"
+ #endif
++#define MAJOR(dev) major (dev)
++#define MINOR(dev) minor (dev)
+ 
+ #include "lockdev.h"
+ 

diff --git a/dev-libs/lockdev/lockdev-1.0.3.1.2-r4.ebuild 
b/dev-libs/lockdev/lockdev-1.0.3.1.2-r4.ebuild
index c19c3c4a5609..49560227160a 100644
--- a/dev-libs/lockdev/lockdev-1.0.3.1.2-r4.ebuild
+++ b/dev-libs/lockdev/lockdev-1.0.3.1.2-r4.ebuild
@@ -30,6 +30,7 @@ PATCHES=(
        "${WORKDIR}/${DEB_P}.diff"
        "${FILESDIR}/${MY_P}-add-autotools.patch"
        "${FILESDIR}/${MY_P}-fix-perl.patch"
+       "${FILESDIR}/${MY_P}-major-minor.patch"
 )
 
 PERL_S=./LockDev

Reply via email to