New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[PATCH] remove distros from needing ppport.h in core #16477
Comments
From @bulk88Created by @bulk88See attached patch. This could be for 5.28, but doesn't have to be, Perl Info
|
From @bulk880001-remove-distros-from-needing-ppport.h-in-core.patchFrom db72a10528e9d90789bced4a7bfd01c74040595e Mon Sep 17 00:00:00 2001
From: Daniel Dragan <bulk88@hotmail.com>
Date: Sat, 24 Mar 2018 19:45:51 -0400
Subject: [PATCH] remove distros from needing ppport.h in core
These changes are towards a goal of removing mkppport one day as part of
a optimization for parallel building (less deps needed before XS
extensions are built). This is a follow-on patch to the dummy ppport.h
trick in Perl #128438 ticket that had issues.
-for Time::HiRes the DEFINE() in Makefile.PL can't be be in sub init()
because that sub isn't called on windows
-SLU has not needed ppport.h in core since commit 5e99e069f5
aka 1.47 import from cpan
-Cwd used to be a no ppport.h since 3.25, in 3.30_02 the code (Cwd.xs) was
deleted/broken under commit 9bc94e3dae, or changes file
"Remove more special logic required for core perl.". Put back the Cwd.xs
code and remove Cwd from the ppport.h list
---
dist/PathTools/Cwd.pm | 2 +-
dist/PathTools/Cwd.xs | 12 +++++++-----
dist/Time-HiRes/HiRes.xs | 4 +++-
dist/Time-HiRes/Makefile.PL | 1 +
mkppport.lst | 3 ---
5 files changed, 12 insertions(+), 10 deletions(-)
diff --git a/dist/PathTools/Cwd.pm b/dist/PathTools/Cwd.pm
index 58af935..16d5b11 100644
--- a/dist/PathTools/Cwd.pm
+++ b/dist/PathTools/Cwd.pm
@@ -3,7 +3,7 @@ use strict;
use Exporter;
-our $VERSION = '3.74';
+our $VERSION = '3.75';
my $xs_version = $VERSION;
$VERSION =~ tr/_//d;
diff --git a/dist/PathTools/Cwd.xs b/dist/PathTools/Cwd.xs
index 2ca8acd..8662400 100644
--- a/dist/PathTools/Cwd.xs
+++ b/dist/PathTools/Cwd.xs
@@ -7,11 +7,13 @@
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
-#define NEED_croak_xs_usage
-#define NEED_sv_2pv_flags
-#define NEED_my_strlcpy
-#define NEED_my_strlcat
-#include "ppport.h"
+#ifndef NO_PPPORT_H
+# define NEED_croak_xs_usage
+# define NEED_sv_2pv_flags
+# define NEED_my_strlcpy
+# define NEED_my_strlcat
+# include "ppport.h"
+#endif
#ifdef I_UNISTD
# include <unistd.h>
diff --git a/dist/Time-HiRes/HiRes.xs b/dist/Time-HiRes/HiRes.xs
index 39ac3fd..f9acf2c 100644
--- a/dist/Time-HiRes/HiRes.xs
+++ b/dist/Time-HiRes/HiRes.xs
@@ -18,7 +18,9 @@ extern "C" {
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
-#include "ppport.h"
+#ifdef USE_PPPORT_H
+# include "ppport.h"
+#endif
#if defined(__CYGWIN__) && defined(HAS_W32API_WINDOWS_H)
# include <w32api/windows.h>
# define CYGWIN_WITH_W32API
diff --git a/dist/Time-HiRes/Makefile.PL b/dist/Time-HiRes/Makefile.PL
index 8036fbf..c76c08a 100644
--- a/dist/Time-HiRes/Makefile.PL
+++ b/dist/Time-HiRes/Makefile.PL
@@ -899,6 +899,7 @@ sub doMakefile {
);
DEFINE('ATLEASTFIVEOHOHFIVE');
}
+ DEFINE('USE_PPPORT_H') unless $ENV{PERL_CORE};
push (@makefileopts,
'NAME' => 'Time::HiRes',
diff --git a/mkppport.lst b/mkppport.lst
index ef26eeb..d919206 100644
--- a/mkppport.lst
+++ b/mkppport.lst
@@ -7,7 +7,4 @@
cpan/DB_File
cpan/IPC-SysV
-cpan/Scalar-List-Utils
cpan/Win32API-File
-dist/PathTools
-dist/Time-HiRes
--
1.7.9.msysgit.0
|
From @bulk88On Sat, 24 Mar 2018 16:51:22 -0700, bulk88 wrote:
Bump. |
From @steve-m-hayThanks for the patch. Applied to blead in commit cbc1b41. I had to bump Time::HiRes's $VERSION in a follow-up commit. Also note that mkppport.lst has grown slightly since you wrote this patch: It now also includes IO and Storable. |
The RT System itself - Status changed from 'new' to 'open' |
@steve-m-hay - Status changed from 'open' to 'pending release' |
From @khwilliamsonThank you for filing this report. You have helped make Perl better. With the release today of Perl 5.30.0, this and 160 other issues have been Perl 5.30.0 may be downloaded via: If you find that the problem persists, feel free to reopen this ticket. |
@khwilliamson - Status changed from 'pending release' to 'resolved' |
Migrated from rt.perl.org#133024 (status was 'resolved')
Searchable as RT133024$
The text was updated successfully, but these errors were encountered: