Alien::cmake3(3) User Contributed Perl Documentation Alien::cmake3(3)
NAME
Alien::cmake3 - Find or download or build cmake 3 or better
VERSION
version 0.08
SYNOPSIS
From Perl:
use Alien::cmake3;
use Env qw( @PATH );
unshift @PATH, Alien::cmake3->bin_dir;
system 'cmake', ...;
From alienfile
use alienfile;
share {
# Build::CMake plugin pulls in Alien::cmake3 automatically
plugin 'Build::CMake';
build [
# this is the default build step, if you do not specify one.
[ '%{cmake3}', -G => '%{cmake_generator}', '-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true', '-DCMAKE_INSTALL_PREFIX:PATH=%{.install.prefix}', '.' ],
'%{make}',
'%{make} install',
];
};
DESCRIPTION
This Alien distribution provides an external dependency on the build
tool "cmake" version 3.0.0 or better. "cmake" is a popular alternative
to autoconf.
METHODS
bin_dir
my @dirs = Alien::cmake3->bin_dir;
List of directories that need to be added to the "PATH" in order for
"cmake" to work.
exe
my $exe = Alien::cmake3->exe;
The name of the "cmake" executable.
HELPERS
cmake3
%{cmake3}
The name of the "cmake" executable.
SEE ALSO
Alien::Build::Plugin::Build::CMake(3)
Alien::Build plugin for "cmake" This will automatically pull in
Alien::cmake3 if you need it.
Alien::CMake(3)
This is an older distribution that provides an alienized "cmake".
It is different in these ways:
Alien::cmake3 is based on alienfile and Alien::Build
It integrates better with Aliens that are based on that
technology.
Alien::cmake3 will provide version 3.0.0 or better
Alien::CMake will provide 2.x.x on some platforms where more
recent binaries are not available.
Alien::cmake3 will install on platforms where there is no system
"cmake" and no binary "cmake" provided by cmake.org
It does this by building "cmake" from source.
Alien::cmake3 is preferred
In the opinion of the maintainer of both Alien::cmake3 and
Alien::CMake for these reasons.
ENVIRONMENT
ALIEN_INSTALL_TYPE
This is the normal Alien::Build environment variable and you can
set it to one of "share", "system" or "default".
ALIEN_CMAKE_FROM_SOURCE
If set to true, and if a share install is attempted, Alien::cmake3
will not try a binary share install (even if available), and
instead a source share install.
CAVEATS
If you do not have a system "cmake" of at least 3.0.0 available, then a
share install will be attempted.
Binary share installs are attempted on platforms for which the latest
version of "cmake" are provided. As of this writing, this includes:
Windows (32/64 bit), macOS (intel/arm universal) and Linux (intel/arm
64 bit). No checks are made to ensure that your platform is supported
by this binary installs. Typically the same versions supported by the
operating system vendor and supported by "cmake", so that should not be
a problem. If you are using an operating system not supported by its
vendor Please Stop That, this is almost certainly a security
vulnerability.
That said if you really do need Alien::cmake3 on an unsupported system,
you have some options:
Install system version of "cmake"
If you can find an older version better than 3.0.0 that is
supported by your operating system.
Force a source code install
Set the "ALIEN_CMAKE_FROM_SOURCE" environment variable to a true
value to build a share install from source.
Source share installs are attempted on platforms for which the latest
version of "cmake" are not available, like the various flavours of
*BSD. This may not be ideal, and if you can install a system version
of "cmake" it may work better.
AUTHOR
Author: Graham Ollis <plicease@cpan.org>
Contributors:
Adriano Ferreira (FERREIRA)
COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Graham Ollis.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
perl v5.34.3 2021-07-16 Alien::cmake3(3)
alien-cmake3 0.80.0 - Generated Sat Apr 13 06:53:31 CDT 2024
