Build and install the GNU build system.
From Perl:
use Alien::Autotools;
use Env qw( @PATH @ACLOCAL_PATH );
unshift @PATH, Alien::Autotools->bin_dir;
unshift @ACLOCAL_PATH, Alien::Autotools->aclocal_dir;
system 'autoconf', ...;
From alienfile:
use alienfile;
share {
# Alien::Autotools will pull in:
# - Alien::autoconf
# - Alien::automake
# - Alien::m4
# - Alien::libtool
# all of which you will likely need.
requires 'Alien::Autotools';
plugin 'Build::Autoconf';
build [
'%{autoreconf} -vfi',
'%{configure}',
'%{make}',
'%{make} install',
];
};
This Alien provides the minimum tools requires for building autoconf
based projects
which do not come bundled with a working configure
script. It currently delegates
most of its responsibilities to Alien::autoconf, Alien::automake, Alien::libtool,
and Alien::m4.
The most common use case from an alienfile is shown above where autoreconf
is called
from this Alien, which allows the Alien::Build::Plugin::Build::Autoconf to then
configure and build the alienized package.
my @dirs = Alien::Autotools->bin_dir;
Returns the list of directories that need to be added to PATH
in order for the autotools
to work correctly.
my @dirs = Alien::Autotools->aclocal_dir;
Returns the list of directories that need to be added to ACLOCAL_PATH
in order for the
autotools to work correctly.
my %versions = Alien::Autotools->versions;
Returns the versions of the various autotools that are available.
# legacy interface
use Alien:::Autotools qw( autoconf_dir );
my $dir = autoconf_dir;
Returns the directory path to autoconf
# legacy interface
use Alien:::Autotools qw( automake_dir );
my $dir = automake_dir;
Returns the directory path to automake
# legacy interface
use Alien:::Autotools qw( libtool_dir );
my $dir = libtool_dir;
Returns the directory path to libtool
This module is typically needed for other Aliens for a share install that use the
autotools / GNU build system without bundling a pre-built configure
script. If
possible it is better to use a version of the alienized package that includes a
pre-built configure
script.
If you are a system vendor, then you should typically not need to package this module, check to see if the dependency that requires it can be built as a system install instead.
This Alien provides all of the helpers provides by Alien::m4, Alien::autoconf, Alien::automake and Alien::libtool. Each helper will execute the corresponding command. You will want to sue the helpers instead of using the command names directly because they will use the correct incantation on Windows. The following list is a subset of all of the helpers provided by this alien that are probably the most useful.
- m4
- autoreconf
- automake
- libtool
- libtoolize
Original author: Richard Simões
Current maintainer: Graham Ollis [email protected]
This software is Copyright (c) 2012-2022 by Richard Simões.
This is free software, licensed under:
The GNU Lesser General Public License, Version 3, June 2007