Compare commits
	
		
			No commits in common. "c8-stream-5.3" and "c8-beta" have entirely different histories.
		
	
	
		
			c8-stream-
			...
			c8-beta
		
	
		
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -1 +1 @@ | ||||
| SOURCES/Module-Build-0.4229.tar.gz | ||||
| SOURCES/Module-Build-0.4224.tar.gz | ||||
|  | ||||
| @ -1 +1 @@ | ||||
| a31d20eb918870732b3974b0c9f680adbd5b0b20 SOURCES/Module-Build-0.4229.tar.gz | ||||
| 4f78f28187d6525a59cc2e1887e4788964c8029c SOURCES/Module-Build-0.4224.tar.gz | ||||
|  | ||||
| @ -1,145 +0,0 @@ | ||||
| From 6b096ea5670ed291abac632b296222b56d9fadb4 Mon Sep 17 00:00:00 2001 | ||||
| From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> | ||||
| Date: Thu, 1 Mar 2018 14:44:40 +0100 | ||||
| Subject: [PATCH] Do not need a compiler if c_source is an empty list | ||||
| MIME-Version: 1.0 | ||||
| Content-Type: text/plain; charset=UTF-8 | ||||
| Content-Transfer-Encoding: 8bit | ||||
| 
 | ||||
| c_source used to be string, then it allowed a reference to an array. | ||||
| But in case the array was empty, auto_require() still enabled | ||||
| needs_compiler property and thus implied probing a compiler and | ||||
| a failure if none was available. | ||||
| 
 | ||||
| Minilla generates these Build.PLs for pure-Perl distributions. See | ||||
| KAZUHO/Server-Starter-0.34. | ||||
| 
 | ||||
| This patch makes Module::Build not require C compiler for | ||||
| c_source = []. | ||||
| 
 | ||||
| Petr Písař: Ported to 0.4224. | ||||
| 
 | ||||
| Signed-off-by: Petr Písař <ppisar@redhat.com> | ||||
| ---
 | ||||
|  lib/Module/Build/API.pod      |  8 ++++---- | ||||
|  lib/Module/Build/Base.pm      |  6 +++++- | ||||
|  t/properties/needs_compiler.t | 46 ++++++++++++++++++++++++++++++++++++++++--- | ||||
|  3 files changed, 52 insertions(+), 8 deletions(-) | ||||
| 
 | ||||
| diff --git a/lib/Module/Build/API.pod b/lib/Module/Build/API.pod
 | ||||
| index cd2021a..c9be539 100644
 | ||||
| --- a/lib/Module/Build/API.pod
 | ||||
| +++ b/lib/Module/Build/API.pod
 | ||||
| @@ -209,10 +209,10 @@ created by Module::Build.
 | ||||
|   | ||||
|  [version 0.04] | ||||
|   | ||||
| -An optional C<c_source> argument specifies a directory which contains
 | ||||
| -C source files that the rest of the build may depend on.  Any C<.c>
 | ||||
| -files in the directory will be compiled to object files.  The
 | ||||
| -directory will be added to the search path during the compilation and
 | ||||
| +An optional C<c_source> argument specifies a directory or a reference to array
 | ||||
| +of directories which contain C source files that the rest of the build may
 | ||||
| +depend on.  Any C<.c> files in the directory will be compiled to object files.
 | ||||
| +The directory will be added to the search path during the compilation and
 | ||||
|  linking phases of any C or XS files. | ||||
|   | ||||
|  [version 0.3604] | ||||
| diff --git a/lib/Module/Build/Base.pm b/lib/Module/Build/Base.pm
 | ||||
| index 984810a..a29c664 100644
 | ||||
| --- a/lib/Module/Build/Base.pm
 | ||||
| +++ b/lib/Module/Build/Base.pm
 | ||||
| @@ -1520,7 +1520,11 @@ sub auto_require {
 | ||||
|      if ( $self->pureperl_only && $self->allow_pureperl ) { | ||||
|        $self->needs_compiler( 0 ); | ||||
|      } else { | ||||
| -      $self->needs_compiler( keys %$xs_files || defined $self->c_source );
 | ||||
| +      $self->needs_compiler( keys %$xs_files ||
 | ||||
| +        ( defined $self->c_source &&
 | ||||
| +          ( ref($self->c_source) ne 'ARRAY' || @{$self->c_source} )
 | ||||
| +        )
 | ||||
| +      );
 | ||||
|      } | ||||
|    } | ||||
|    if ($self->needs_compiler) { | ||||
| diff --git a/t/properties/needs_compiler.t b/t/properties/needs_compiler.t
 | ||||
| index f616dfc..c76d38f 100644
 | ||||
| --- a/t/properties/needs_compiler.t
 | ||||
| +++ b/t/properties/needs_compiler.t
 | ||||
| @@ -5,7 +5,7 @@ use lib 't/lib';
 | ||||
|  use MBTest; | ||||
|  use DistGen; | ||||
|   | ||||
| -plan tests => 19;
 | ||||
| +plan tests => 27;
 | ||||
|   | ||||
|  # Ensure any Module::Build modules are loaded from correct directory | ||||
|  blib_load('Module::Build'); | ||||
| @@ -24,7 +24,7 @@ ok( ! exists $mb->{properties}{build_requires}{'ExtUtils::CBuilder'},
 | ||||
|  ); | ||||
|   | ||||
|  #--------------------------------------------------------------------------# | ||||
| -# try with c_source
 | ||||
| +# try with c_source as a string
 | ||||
|  #--------------------------------------------------------------------------# | ||||
|  $dist->change_build_pl({ | ||||
|      module_name => $dist->name, | ||||
| @@ -34,7 +34,7 @@ $dist->change_build_pl({
 | ||||
|  $dist->regen; | ||||
|  stderr_of(sub { | ||||
|    ok( $mb = $dist->new_from_context, | ||||
| -    "Build.PL with c_source"
 | ||||
| +    "Build.PL with string c_source"
 | ||||
|    ); | ||||
|  }); | ||||
|  is( $mb->c_source, 'src', "c_source is set" ); | ||||
| @@ -44,6 +44,46 @@ ok( exists $mb->{properties}{build_requires}{'ExtUtils::CBuilder'},
 | ||||
|  ); | ||||
|   | ||||
|  #--------------------------------------------------------------------------# | ||||
| +# try with c_source as an array
 | ||||
| +#--------------------------------------------------------------------------#
 | ||||
| +$dist->change_build_pl({
 | ||||
| +    module_name => $dist->name,
 | ||||
| +    license => 'perl',
 | ||||
| +    c_source => ['src'],
 | ||||
| +});
 | ||||
| +$dist->regen;
 | ||||
| +stderr_of(sub {
 | ||||
| +  ok( $mb = $dist->new_from_context,
 | ||||
| +    "Build.PL with non-empty array c_source"
 | ||||
| +  );
 | ||||
| +});
 | ||||
| +is_deeply( $mb->c_source, ['src'], "c_source is set" );
 | ||||
| +ok( $mb->needs_compiler, "needs_compiler is true" );
 | ||||
| +ok( exists $mb->{properties}{build_requires}{'ExtUtils::CBuilder'},
 | ||||
| +  "ExtUtils::CBuilder was added to build_requires"
 | ||||
| +);
 | ||||
| +
 | ||||
| +#--------------------------------------------------------------------------#
 | ||||
| +# try with c_source as an empty array
 | ||||
| +#--------------------------------------------------------------------------#
 | ||||
| +$dist->change_build_pl({
 | ||||
| +    module_name => $dist->name,
 | ||||
| +    license => 'perl',
 | ||||
| +    c_source => [],
 | ||||
| +});
 | ||||
| +$dist->regen;
 | ||||
| +stderr_of(sub {
 | ||||
| +  ok( $mb = $dist->new_from_context,
 | ||||
| +    "Build.PL with empty array c_source"
 | ||||
| +  );
 | ||||
| +});
 | ||||
| +is_deeply( $mb->c_source, [], "c_source is set" );
 | ||||
| +ok( ! $mb->needs_compiler, "needs_compiler is false" );
 | ||||
| +ok( ! exists $mb->{properties}{build_requires}{'ExtUtils::CBuilder'},
 | ||||
| +  "ExtUtils::CBuilder is not in build_requires"
 | ||||
| +);
 | ||||
| +
 | ||||
| +#--------------------------------------------------------------------------#
 | ||||
|  # try with xs files | ||||
|  #--------------------------------------------------------------------------# | ||||
|  $dist = DistGen->new(dir => 'MBTest', xs => 1); | ||||
| -- 
 | ||||
| 2.13.6 | ||||
| 
 | ||||
| @ -1,22 +1,22 @@ | ||||
| %global cpan_version_major 0.42 | ||||
| %global cpan_version_minor 29 | ||||
| %global cpan_version_minor 24 | ||||
| %global cpan_version %{cpan_version_major}%{?cpan_version_minor} | ||||
| 
 | ||||
| # Run optional tests | ||||
| %if ! (0%{?rhel}) | ||||
| %bcond_without perl_Module_Build_enables_optional_test | ||||
| %else | ||||
| %bcond_with perl_Module_Build_enables_optional_test | ||||
| %endif | ||||
| 
 | ||||
| Name:           perl-Module-Build | ||||
| Epoch:          2 | ||||
| Version:        %{cpan_version_major}%{?cpan_version_minor:.%cpan_version_minor} | ||||
| Release:        4%{?dist} | ||||
| Release:        5%{?dist} | ||||
| Summary:        Build and install Perl modules | ||||
| License:        GPL+ or Artistic | ||||
| URL:            https://metacpan.org/release/Module-Build | ||||
| Source0:        https://cpan.metacpan.org/authors/id/L/LE/LEONT/Module-Build-%{cpan_version}.tar.gz | ||||
| # Do not require a compiler if c_source is an empty list, bug #1547165, | ||||
| # CPAN RT#124625, | ||||
| # <https://lists.fedoraproject.org/archives/list/perl-devel@lists.fedoraproject.org/message/UWQ6SDRKNTX6SM6RBJ35CDBGRCV3ZSKP/> | ||||
| Patch0:         Module-Build-0.4224-Do-not-need-a-compiler-if-c_source-is-an-empty-list.patch | ||||
| URL:            http://search.cpan.org/dist/Module-Build/ | ||||
| Source0:        http://www.cpan.org/authors/id/L/LE/LEONT/Module-Build-%{cpan_version}.tar.gz | ||||
| BuildArch:      noarch | ||||
| BuildRequires:  coreutils | ||||
| BuildRequires:  perl-interpreter | ||||
| @ -82,11 +82,7 @@ Requires:       perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version)) | ||||
| Requires:       perl(CPAN::Meta) >= 2.142060 | ||||
| Requires:       perl(CPAN::Meta::Converter) >= 2.141170 | ||||
| Requires:       perl(CPAN::Meta::Merge) | ||||
| # Do not hard-require ExtUtils::CBuilder to allow installing Module::Build | ||||
| # without gcc, bug #1547165. Module::Build users have to require | ||||
| # ExtUtils::CBuilder explicitly according to "XS Extensions" section in | ||||
| # Module::Build::Authoring POD. | ||||
| Recommends:     perl(ExtUtils::CBuilder) >= 0.27 | ||||
| Requires:       perl(ExtUtils::CBuilder) >= 0.27 | ||||
| Requires:       perl(ExtUtils::Install) >= 0.3 | ||||
| Requires:       perl(ExtUtils::Manifest) >= 1.54 | ||||
| Requires:       perl(ExtUtils::Mkbootstrap) | ||||
| @ -132,7 +128,6 @@ works fine on perl 5.005 if you can install a few additional modules. | ||||
| 
 | ||||
| %prep | ||||
| %setup -q -n Module-Build-%{cpan_version} | ||||
| %patch0 -p1 | ||||
| 
 | ||||
| %build | ||||
| perl Build.PL installdirs=vendor | ||||
| @ -155,36 +150,6 @@ LANG=C TEST_SIGNATURE=1 MB_TEST_EXPERIMENTAL=1 ./Build test | ||||
| %{_mandir}/man3/* | ||||
| 
 | ||||
| %changelog | ||||
| * Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2:0.42.29-4 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild | ||||
| 
 | ||||
| * Sun Jun 02 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2:0.42.29-3 | ||||
| - Perl 5.30 re-rebuild of bootstrapped packages | ||||
| 
 | ||||
| * Fri May 31 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2:0.42.29-2 | ||||
| - Perl 5.30 rebuild | ||||
| 
 | ||||
| * Tue Apr 16 2019 Jitka Plesnikova <jplesnik@redhat.com> - 2:0.42.29-1 | ||||
| - 0.4229 bump | ||||
| 
 | ||||
| * Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2:0.42.24-11 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild | ||||
| 
 | ||||
| * Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2:0.42.24-10 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild | ||||
| 
 | ||||
| * Sun Jul 01 2018 Jitka Plesnikova <jplesnik@redhat.com> - 2:0.42.24-9 | ||||
| - Perl 5.28 re-rebuild of bootstrapped packages | ||||
| 
 | ||||
| * Thu Jun 28 2018 Jitka Plesnikova <jplesnik@redhat.com> - 2:0.42.24-8 | ||||
| - Perl 5.28 rebuild | ||||
| 
 | ||||
| * Thu Mar 01 2018 Petr Pisar <ppisar@redhat.com> - 2:0.42.24-7 | ||||
| - Do not require a compiler if c_source is an empty list (bug #1547165) | ||||
| 
 | ||||
| * Fri Feb 23 2018 Petr Pisar <ppisar@redhat.com> - 2:0.42.24-6 | ||||
| - Do not hard-require ExtUtils::CBuilder (bug #1547165) | ||||
| 
 | ||||
| * Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2:0.42.24-5 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user