[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
texinfo Pod-Simple-Texinfo/pod2texi.pl util/txi...
From: |
Patrice Dumas |
Subject: |
texinfo Pod-Simple-Texinfo/pod2texi.pl util/txi... |
Date: |
Tue, 20 Nov 2012 02:34:40 +0000 |
CVSROOT: /sources/texinfo
Module name: texinfo
Changes by: Patrice Dumas <pertusus> 12/11/20 02:34:40
Modified files:
Pod-Simple-Texinfo: pod2texi.pl
util : txixml2texi.pl
Log message:
Make the scripts relocatable.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/texinfo/Pod-Simple-Texinfo/pod2texi.pl?cvsroot=texinfo&r1=1.19&r2=1.20
http://cvs.savannah.gnu.org/viewcvs/texinfo/util/txixml2texi.pl?cvsroot=texinfo&r1=1.4&r2=1.5
Patches:
Index: Pod-Simple-Texinfo/pod2texi.pl
===================================================================
RCS file: /sources/texinfo/texinfo/Pod-Simple-Texinfo/pod2texi.pl,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -b -r1.19 -r1.20
--- Pod-Simple-Texinfo/pod2texi.pl 19 Nov 2012 23:54:09 -0000 1.19
+++ Pod-Simple-Texinfo/pod2texi.pl 20 Nov 2012 02:34:40 -0000 1.20
@@ -29,34 +29,48 @@
BEGIN
{
- my $dir;
+ my $updir = File::Spec->updir();
+ my ($real_command_name, $command_directory, $command_suffix)
+ = fileparse($0, '.pl');
+
+ my $maintain_dir;
+ my $modules_dir;
if ('@datadir@' ne '@' . 'datadir@') {
my $package = '@PACKAGE@';
my $datadir = eval '"@datadir@"';
if ($datadir ne '') {
- $dir = File::Spec->catdir($datadir, $package);
- unshift @INC, (File::Spec->catdir($dir, 'Pod-Simple-Texinfo'), $dir);
+ # try to find modules in directories relative to the script
+ $modules_dir = File::Spec->catdir($datadir, $package);
+ if (! -f File::Spec->catfile($modules_dir, 'Texinfo', 'Parser.pm')
+ and -f File::Spec->catfile($command_directory, $updir, 'share',
+ 'texinfo', 'Texinfo', 'Parser.pm')) {
+ $modules_dir = File::Spec->catdir($command_directory,
+ $updir, 'share', 'texinfo');
+ }
+ $maintain_dir = $modules_dir;
+ unshift @INC, (File::Spec->catdir($modules_dir, 'Pod-Simple-Texinfo'),
$modules_dir);
}
} elsif (($0 =~ /\.pl$/ and !(defined($ENV{'TEXINFO_DEV_SOURCE'})
and $ENV{'TEXINFO_DEV_SOURCE'} eq 0)) or $ENV{'TEXINFO_DEV_SOURCE'}) {
- my $srcdir = defined $ENV{'srcdir'} ? $ENV{'srcdir'} : dirname $0;
- my $tpdir = File::Spec->catdir($srcdir, File::Spec->updir(), 'tp');
- $dir = File::Spec->catdir($tpdir, 'maintain');
- unshift @INC, (File::Spec->catdir($srcdir, 'lib'), $tpdir);
+ my $srcdir = defined $ENV{'srcdir'} ? $ENV{'srcdir'} : $command_directory;
+ $modules_dir = File::Spec->catdir($srcdir, File::Spec->updir(), 'tp');
+ $maintain_dir = File::Spec->catdir($modules_dir, 'maintain');
+ unshift @INC, (File::Spec->catdir($srcdir, 'lib'), $modules_dir);
}
- if (defined($dir)) {
+ if (defined($maintain_dir)) {
if ('@USE_EXTERNAL_LIBINTL@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib', 'libintl-perl', 'lib');
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib', 'libintl-perl',
'lib');
}
if ('@USE_EXTERNAL_EASTASIANWIDTH@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib',
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib',
'Unicode-EastAsianWidth', 'lib');
}
if ('@USE_EXTERNAL_UNIDECODE@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib', 'Text-Unidecode', 'lib');
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib', 'Text-Unidecode',
'lib');
}
}
}
+
use Pod::Simple::Texinfo;
use Texinfo::Common;
use Texinfo::Parser;
Index: util/txixml2texi.pl
===================================================================
RCS file: /sources/texinfo/texinfo/util/txixml2texi.pl,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- util/txixml2texi.pl 19 Nov 2012 23:54:09 -0000 1.4
+++ util/txixml2texi.pl 20 Nov 2012 02:34:40 -0000 1.5
@@ -27,32 +27,46 @@
Getopt::Long::Configure("gnu_getopt");
-BEGIN {
- my $dir;
+BEGIN
+{
+ my $updir = File::Spec->updir();
+ my ($real_command_name, $command_directory, $command_suffix)
+ = fileparse($0, '.pl');
+
+ my $maintain_dir;
+ my $modules_dir;
if ('@datadir@' ne '@' . 'datadir@') {
my $package = '@PACKAGE@';
my $datadir = eval '"@datadir@"';
if ($datadir ne '') {
- $dir = File::Spec->catdir($datadir, $package);
- unshift @INC, ($dir);
+ # try to find modules in directories relative to the script
+ $modules_dir = File::Spec->catdir($datadir, $package);
+ if (! -f File::Spec->catfile($modules_dir, 'Texinfo', 'Parser.pm')
+ and -f File::Spec->catfile($command_directory, $updir, 'share',
+ 'texinfo', 'Texinfo', 'Parser.pm')) {
+ $modules_dir = File::Spec->catdir($command_directory,
+ $updir, 'share', 'texinfo');
+ }
+ $maintain_dir = $modules_dir;
+ unshift @INC, $modules_dir;
}
} elsif (($0 =~ /\.pl$/ and !(defined($ENV{'TEXINFO_DEV_SOURCE'})
and $ENV{'TEXINFO_DEV_SOURCE'} eq 0)) or $ENV{'TEXINFO_DEV_SOURCE'}) {
- my $srcdir = defined $ENV{'srcdir'} ? $ENV{'srcdir'} : dirname $0;
- my $tpdir = File::Spec->catdir($srcdir, File::Spec->updir(), 'tp');
- $dir = File::Spec->catdir($tpdir, 'maintain');
- unshift @INC, $tpdir;
+ my $srcdir = defined $ENV{'srcdir'} ? $ENV{'srcdir'} : $command_directory;
+ $modules_dir = File::Spec->catdir($srcdir, File::Spec->updir(), 'tp');
+ $maintain_dir = File::Spec->catdir($modules_dir, 'maintain');
+ unshift @INC, $modules_dir;
}
- if (defined($dir)) {
+ if (defined($maintain_dir)) {
if ('@USE_EXTERNAL_LIBINTL@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib', 'libintl-perl', 'lib');
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib', 'libintl-perl',
'lib');
}
if ('@USE_EXTERNAL_EASTASIANWIDTH@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib',
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib',
'Unicode-EastAsianWidth', 'lib');
}
if ('@USE_EXTERNAL_UNIDECODE@' ne 'yes') {
- unshift @INC, File::Spec->catdir($dir, 'lib', 'Text-Unidecode', 'lib');
+ unshift @INC, File::Spec->catdir($maintain_dir, 'lib', 'Text-Unidecode',
'lib');
}
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- texinfo Pod-Simple-Texinfo/pod2texi.pl util/txi...,
Patrice Dumas <=