[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: find_configure_ac
From: |
Akim Demaille |
Subject: |
FYI: find_configure_ac |
Date: |
Thu, 21 Aug 2003 09:15:18 +0200 |
User-agent: |
Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux) |
Index: ChangeLog
from Akim Demaille <address@hidden>
* lib/Autom4te/Configure_ac.pm (&find_configure_ac)
(&require_configure_ac): Accept an optional directory argument.
($configure_ac): Remove.
* lib/Autom4te/General.pm (&find_configure_ac, &canonfile)
(&catfile): Remove.
* bin/autoheader.in, bin/autoreconf.in, bin/autoupdate.in,
* bin/autoscan.in: Adjust.
Index: bin/autoheader.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoheader.in,v
retrieving revision 1.132
diff -u -u -r1.132 autoheader.in
--- bin/autoheader.in 20 Aug 2003 17:22:07 -0000 1.132
+++ bin/autoheader.in 21 Aug 2003 06:54:18 -0000
@@ -41,6 +41,7 @@
use Autom4te::ChannelDefs;
use Autom4te::Channels;
+use Autom4te::Configure_ac;
use Autom4te::FileUtils;
use Autom4te::General;
use Autom4te::XFile;
@@ -121,9 +122,7 @@
if (! @ARGV)
{
- my $configure_ac = find_configure_ac;
- error "no input file"
- unless $configure_ac;
+ my $configure_ac = require_configure_ac;
push @ARGV, $configure_ac;
}
}
Index: bin/autoreconf.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoreconf.in,v
retrieving revision 1.115
diff -u -u -r1.115 autoreconf.in
--- bin/autoreconf.in 20 Aug 2003 12:52:18 -0000 1.115
+++ bin/autoreconf.in 21 Aug 2003 06:54:18 -0000
@@ -39,6 +39,7 @@
$ENV{'SHELL'} = '@SHELL@' if ($^O eq 'dos');
}
+use Autom4te::Configure_ac;
use Autom4te::FileUtils;
use Autom4te::General;
use Autom4te::XFile;
@@ -290,9 +291,7 @@
# -----------------------------
sub autoreconf_current_directory ()
{
- my $configure_ac = find_configure_ac;
- error "cannot find `configure.ac'"
- unless $configure_ac;
+ my $configure_ac = require_configure_ac;
# ---------------------- #
# Is it using Autoconf? #
Index: bin/autoscan.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoscan.in,v
retrieving revision 1.92
diff -u -u -r1.92 autoscan.in
--- bin/autoscan.in 2 Jun 2003 06:55:04 -0000 1.92
+++ bin/autoscan.in 21 Aug 2003 06:54:18 -0000
@@ -36,6 +36,7 @@
$ENV{'SHELL'} = '@SHELL@' if ($^O eq 'dos');
}
+use Autom4te::Configure_ac;
use Autom4te::General;
use Autom4te::XFile;
use File::Basename;
Index: bin/autoupdate.in
===================================================================
RCS file: /cvsroot/autoconf/autoconf/bin/autoupdate.in,v
retrieving revision 1.45
diff -u -u -r1.45 autoupdate.in
--- bin/autoupdate.in 20 Aug 2003 12:52:18 -0000 1.45
+++ bin/autoupdate.in 21 Aug 2003 06:54:20 -0000
@@ -39,6 +39,7 @@
use Autom4te::ChannelDefs;
use Autom4te::Channels;
+use Autom4te::Configure_ac;
use Autom4te::FileUtils;
use Autom4te::General;
use Autom4te::XFile;
@@ -108,9 +109,7 @@
if (! @ARGV)
{
- my $configure_ac = find_configure_ac;
- error "no input file"
- unless $configure_ac;
+ my $configure_ac = require_configure_ac;
push @ARGV, $configure_ac;
}
}
Index: lib/Autom4te/Configure_ac.pm
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/Autom4te/Configure_ac.pm,v
retrieving revision 1.1
diff -u -u -r1.1 Configure_ac.pm
--- lib/Autom4te/Configure_ac.pm 20 Aug 2003 06:51:34 -0000 1.1
+++ lib/Autom4te/Configure_ac.pm 21 Aug 2003 06:54:20 -0000
@@ -25,7 +25,7 @@
use vars qw (@ISA @EXPORT);
@ISA = qw (Exporter);
address@hidden = qw ($configure_ac &find_configure_ac &require_configure_ac);
address@hidden = qw (&find_configure_ac &require_configure_ac);
=head1 NAME
@@ -42,37 +42,45 @@
# Likewise, but bomb out if the file does not exist.
my $filename = require_configure_ac;
-In both cases, the name of the file found is also put in the
-C<$configure_ac> global variable.
+ # Likewise, but in $dir.
+ my $filename = find_configure_ac ($dir);
+ my $filename = require_configure_ac ($dir);
=cut
-use vars '$configure_ac';
-
-sub find_configure_ac ()
+sub find_configure_ac (;@)
{
- if (-f 'configure.ac')
+ my ($directory) = @_;
+ $directory ||= '.';
+ my $configure_ac =
+ File::Spec->canonpath (File::Spec->catfile ($directory, 'configure.ac'));
+ my $configure_in =
+ File::Spec->canonpath (File::Spec->catfile ($directory, 'configure.in'));
+
+ if (-f $configure_ac)
{
- if (-f 'configure.in')
+ if (-f $configure_in)
{
msg ('unsupported',
- "`configure.ac' and `configure.in' both present.\n"
- . "proceeding with `configure.ac'.");
+ "`$configure_ac' and `$configure_in' both present.\n"
+ . "proceeding with `$configure_ac'.");
}
- $configure_ac = 'configure.ac';
+ return $configure_ac
}
elsif (-f 'configure.in')
{
- $configure_ac = 'configure.in';
+ return $configure_in;
}
return $configure_ac;
}
-sub require_configure_ac ()
+
+sub require_configure_ac (;$)
{
+ my $res = find_configure_ac (@_);
fatal "`configure.ac' or `configure.in' is required"
- unless find_configure_ac;
- return $configure_ac;
+ unless defined $res;
+ return $res
}
1;
Index: lib/Autom4te/General.pm
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/Autom4te/General.pm,v
retrieving revision 1.29
diff -u -u -r1.29 General.pm
--- lib/Autom4te/General.pm 20 Aug 2003 12:52:19 -0000 1.29
+++ lib/Autom4te/General.pm 21 Aug 2003 06:54:20 -0000
@@ -53,8 +53,8 @@
# Functions we define and export.
my @export_subs =
- qw (&catfile &canonpath &debug &error
- &file_name_is_absolute &find_configure_ac
+ qw (&debug &error
+ &file_name_is_absolute
&getopt &mktmpdir
&uniq &verbose);
@@ -229,43 +229,6 @@
## Functions. ##
## ----------- ##
-=item C<catfile ()>
-
-Wrapper around C<File::Spec->catfile>. Concatenate one or more
-directory names and a filename to form a complete path ending with a
-filename.
-
-=cut
-
-# $FILE
-# &catfile (@COMPONENT)
-# ---------------------
-sub catfile (@)
-{
- my (@component) = @_;
- return File::Spec->catfile (@component);
-}
-
-
-=item C<canonpath ()>
-
-Wrapper around C<File::Spec->canonpath>. No physical check on the
-filesystem, but a logical cleanup of a path. On UNIX eliminates
-successive slashes and successive "/.".
-
- $cpath = canonpath ($path) ;
-
-=cut
-
-# $FILE
-# &canonpath ($FILE)
-# ------------------
-sub canonpath ($)
-{
- my ($file) = @_;
- return File::Spec->canonpath ($file);
-}
-
=item C<debug (@message)>
@@ -299,42 +262,6 @@
my ($file) = @_;
return File::Spec->file_name_is_absolute ($file);
}
-
-
-=item C<find_configure_ac ([$directory = C<.>])>
-
-Look for C<configure.ac> or C<configure.in> in the C<$directory> and
-return the one which should be used. Report ambiguities to the user,
-but prefer C<configure.ac>.
-
-=cut
-
-# $CONFIGURE_AC
-# &find_configure_ac ([$DIRECTORY = `.'])
-# ---------------------------------------
-sub find_configure_ac (;$)
-{
- my ($directory) = @_;
- $directory ||= '.';
- my $configure_ac = canonpath (catfile ($directory, 'configure.ac'));
- my $configure_in = canonpath (catfile ($directory, 'configure.in'));
-
- if (-f $configure_ac)
- {
- if (-f $configure_in)
- {
- carp "$me: warning: `$configure_ac' and `$configure_in' both
present.\n";
- carp "$me: warning: proceeding with `$configure_ac'.\n";
- }
- return $configure_ac;
- }
- elsif (-f $configure_in)
- {
- return $configure_in;
- }
- return;
-}
-
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- FYI: find_configure_ac,
Akim Demaille <=