-
-
21 Dec 2017 01:43:27 UTC
- Distribution: ExtUtils-MakeMaker-Attributes
- Module version: 0.001
- Source (raw)
- Browse (raw)
- Changes
- Homepage
- How to Contribute
- Repository
- Issues (2)
- Testers (674 / 0 / 0)
- Kwalitee
Bus factor: 1- 77.67% Coverage
- License: artistic_2
- Perl: v5.6.0
- Activity
24 month- Tools
- Download (16.08KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
NAME
ExtUtils::MakeMaker::Attributes - Determine when ExtUtils::MakeMaker attributes are available
SYNOPSIS
use ExtUtils::MakeMaker::Attributes ':all'; my @eumm_available = eumm_version_supported_attributes(ExtUtils::MakeMaker->VERSION); my @core_available = perl_version_supported_attributes($]); unless (perl_version_supports_attribute('v5.10.1', 'TEST_REQUIRES')) { ... } my $fallback = eumm_attribute_fallback('TEST_REQUIRES'); my $required_eumm = eumm_attribute_requires_version('TEST_REQUIRES'); unless (eval { ExtUtils::MakeMaker->VERSION($required_eumm); 1 }) { ... }
DESCRIPTION
This module provides an API to determine what attributes are available to a particular version of ExtUtils::MakeMaker, and conversely, what version of ExtUtils::MakeMaker is required for a particular attribute. See "Using Attributes and Parameters" in ExtUtils::MakeMaker for more details on the available attributes.
FUNCTIONS
All functions are exported on demand, and can be exported individually or via the
:all
tag.known_eumm_attributes
my @attributes = known_eumm_attributes;
Returns a list of attributes known to be accepted by the latest version of ExtUtils::MakeMaker.
is_known_eumm_attribute
my $boolean = is_known_eumm_attribute($attribute);
Returns a boolean whether the attribute is known to be accepted by the latest version of ExtUtils::MakeMaker.
eumm_attribute_requires_version
my $version = eumm_attribute_requires_version($attribute);
Returns the minimum version of ExtUtils::MakeMaker that accepts the attribute.
eumm_attribute_fallback
my $hashref = eumm_attribute_fallback($attribute);
In cases where the active version of ExtUtils::MakeMaker does not support an attribute, the attribute should be deleted from the options passed to
WriteMakefile
. However, some attributes may still be useful in other ways, as indicated by this function. If the attribute has an associated fallback method, it returns a hashref containing amethod
and possibly other related keys. Otherwise, it returnsundef
. Currently it may return these methods:- merge_prereqs
-
The key's contents (as a hashref of prerequisites) should be merged into the
merge_target
(returned in the fallback hashref), ideally using "add_requirements" in CPAN::Meta::Requirements.
eumm_version_supports_attribute
my $boolean = eumm_version_supports_attribute($attribute, $eumm_version);
Returns a boolean whether the ExtUtils::MakeMaker supports the attribute at the specified version.
perl_version_supports_attribute
my $boolean = perl_version_supports_attribute($attribute, $perl_version);
Returns a boolean whether the version of ExtUtils::MakeMaker shipped in the specified version of Perl supports the attribute.
eumm_version_supported_attributes
my @attributes = eumm_version_supported_attributes($eumm_version);
Returns a list of all attributes supported by the specified version of ExtUtils::MakeMaker.
perl_version_supported_attributes
my @attributes = perl_version_supported_attributes($perl_version);
Returns a list of all attributes supported by the version of ExtUtils::MakeMaker shipped in the specified version of Perl.
BUGS
Report any issues on the public bugtracker.
AUTHOR
Dan Book <dbook@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2017 by Dan Book.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)
SEE ALSO
Module Install Instructions
To install ExtUtils::MakeMaker::Attributes, copy and paste the appropriate command in to your terminal.
cpanm ExtUtils::MakeMaker::Attributes
perl -MCPAN -e shell install ExtUtils::MakeMaker::Attributes
For more information on module installation, please visit the detailed CPAN module installation guide.