Skip Menu |

This queue is for tickets about the Unix-Mknod CPAN distribution.

Report information
The Basics
Id: 124687
Status: open
Priority: 0/
Queue: Unix-Mknod

People
Owner: Nobody in particular
Requestors: ppisar [...] redhat.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.04
Fixed in: (no value)



Subject: Tests fail on glibc-2.27.9000: Mknod.so: undefined symbol: minor
glibc-2.27.9000 changed something in header files and minor() symbol is not defined without including <sys/sysmacros.h> now: + make test "/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Mknod.bs blib/arch/auto/Unix/M knod/Mknod.bs 644 PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t Can't load '/home/test/fedora/perl-Unix-Mknod/Unix-Mknod-0.04/blib/arch/auto/Unix/Mknod/Mk nod.so' for module Unix::Mknod: /home/test/fedora/perl-Unix-Mknod/Unix-Mknod-0.04/blib/arc h/auto/Unix/Mknod/Mknod.so: undefined symbol: minor at /usr/lib64/perl5/DynaLoader.pm line 193.
From: ppisar [...] redhat.com
Dne Po 05.bře.2018 11:18:37, ppisar napsal(a): Show quoted text
> glibc-2.27.9000 changed something in header files and minor() symbol > is not defined without including <sys/sysmacros.h> now: >
An attached patch fixes it.
Subject: Unix-Mknod-0.04-Include-sys-sysmacros.h-on-glibc.patch
From 1669d02d5425a01e08aaa4584d0c5fe61a0cb7a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> Date: Mon, 5 Mar 2018 17:14:27 +0100 Subject: [PATCH] Include <sys/sysmacros.h> on glibc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit glibc-2.27.9000 changed something in header files and minor() symbol is not defined without including <sys/sysmacros.h> now: + make test "/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Mknod.bs blib/arch/auto/Unix/M knod/Mknod.bs 644 PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t Can't load '/home/test/fedora/perl-Unix-Mknod/Unix-Mknod-0.04/blib/arch/auto/Unix/Mknod/Mk nod.so' for module Unix::Mknod: /home/test/fedora/perl-Unix-Mknod/Unix-Mknod-0.04/blib/arc h/auto/Unix/Mknod/Mknod.so: undefined symbol: minor at /usr/lib64/perl5/DynaLoader.pm line 193. This patch fixes it by including <sys/sysmacros.h> on systems with glibc. CPAN RT#124687 Signed-off-by: Petr Písař <ppisar@redhat.com> --- Makefile.PL | 2 ++ Mknod.xs | 3 +++ 2 files changed, 5 insertions(+) diff --git a/Makefile.PL b/Makefile.PL index a78f929..f0fe012 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -4,6 +4,8 @@ use Config(%Config); $defines= '-DHAS_SYSMKDEV' if ($Config{osname} eq 'solaris'); +$defines= '-DHAS_SYSSYSMACROS' + if (defined $Config{d_gnulibc}); # See lib/ExtUtils/MakeMaker.pm for details of how to influence # the contents of the Makefile that is written. diff --git a/Mknod.xs b/Mknod.xs index 3b9f55f..263614e 100644 --- a/Mknod.xs +++ b/Mknod.xs @@ -11,6 +11,9 @@ extern "C" { #ifdef HAS_SYSMKDEV #include <sys/mkdev.h> #endif +#ifdef HAS_SYSSYSMACROS +#include <sys/sysmacros.h> +#endif #ifdef __cplusplus } -- 2.13.6
On 2018-03-05 11:27:18, ppisar wrote: Show quoted text
> Dne Po 05.bře.2018 11:18:37, ppisar napsal(a):
> > glibc-2.27.9000 changed something in header files and minor() symbol > > is not defined without including <sys/sysmacros.h> now: > >
> An attached patch fixes it.
CPAN.pm users may use the following distroprefs file for automatic patching: https://github.com/eserte/srezic-cpan-distroprefs/blob/master/Unix-Mknod.yml