Alien-Build
view release on metacpan or search on metacpan
start_url property. Can be set by an alienfile or plugin.
platform
Hash reference. Contains information about the platform beyond just
$^O.
platform.compiler_type
Refers to the type of flags that the compiler accepts. May be
expanded in the future, but for now, will be one of:
microsoft
On Windows when using Microsoft Visual C++
unix
Virtually everything else, including gcc on windows.
The main difference is that with Visual C++ -LIBPATH should be used
Contains a non-negative integer of available (possibly virtual)
CPUs on the system. This can be used by build plugins to build in
parallel. The environment variable ALIEN_CPU_COUNT can be set to
override the CPU count.
platform.cpu.arch.name
Contains a normalized name for the architecture of the current
Perl. This can be used by fetch plugins to determine which binary
packages to download. The value may be one of the following, but
this list will be expanded as needed.
armel
32-bit ARM soft-float
armhf
32-bit ARM hard-float
aarch64
lib/Alien/Build.pm view on Meta::CPAN
property. Can be set by an L<alienfile> or plugin.
=item platform
Hash reference. Contains information about the platform beyond just C<$^O>.
=over 4
=item platform.compiler_type
Refers to the type of flags that the compiler accepts. May be expanded in the
future, but for now, will be one of:
=over 4
=item microsoft
On Windows when using Microsoft Visual C++
=item unix
lib/Alien/Build.pm view on Meta::CPAN
=item platform.cpu.count
Contains a non-negative integer of available (possibly virtual) CPUs on the
system. This can be used by build plugins to build in parallel. The environment
variable C<ALIEN_CPU_COUNT> can be set to override the CPU count.
=item platform.cpu.arch.name
Contains a normalized name for the architecture of the current Perl. This can
be used by fetch plugins to determine which binary packages to download.
The value may be one of the following, but this list will be expanded as
needed.
=over 4
=item C<armel>
32-bit ARM soft-float
=item C<armhf>
lib/Alien/Build/Manual/Contributing.pod view on Meta::CPAN
package Alien::libfoo;
use parent qw( Alien::Base );
1;
The detection logic should be done by the installer code (L<alienfile>
and L<Alien::Build>) and saved into runtime properties (see
L<Alien::Build/runtime_prop>). And as much as
possible the runtime should be implemented in the base class (L<Alien::Base>).
Where reasonable, the base class should be expanded to meet the needs
of this arrangement.
=head3 when downloading a package grab the latest version
If the maintainer of an L<Alien> disappears for a while, and if the
version downloaded during a "share" install is hardcoded in the
L<alienfile>, it can be problematic for end-users.
There are exceptions, of course, in particular when a package provides
a very unstable interface from version to version it makes sense
( run in 0.570 second using v1.01-cache-2.11-cpan-5b529ec07f3 )