[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
branch master updated: Unconditionally use / as directory separator
From: |
Gavin D. Smith |
Subject: |
branch master updated: Unconditionally use / as directory separator |
Date: |
Sun, 15 Dec 2024 08:34:07 -0500 |
This is an automated email from the git hooks/post-receive script.
gavin pushed a commit to branch master
in repository texinfo.
The following commit(s) were added to refs/heads/master by this push:
new 8a0005d422 Unconditionally use / as directory separator
8a0005d422 is described below
commit 8a0005d422ece280497dd1e9c648ffcc5cfd4fa4
Author: Patrice Dumas <pertusus@free.fr>
AuthorDate: Sun Dec 15 13:32:30 2024 +0000
Unconditionally use / as directory separator
* tp/texi2any.pl,
* tp/Texinfo/ModulePath.pm.in (init),
* tp/Texinfo/Common.pm
(locate_file_in_dirs, locate_include_file),
* tp/Texinfo/Convert/Converter.pm
(set_file_path, determine_files_and_directory),
* tp/Texinfo/Convert/HTML.pm
(_load_htmlxref_files, _do_jslicenses_file, _do_js_files)
(_node_redirections),
* tp/Texinfo/Convert/Plaintext.pm (output),
* tp/Texinfo/Convert/Text.pm (output),
* tp/ext/epub3.pm
(epub_convert_image_command, epub_setup, epub_finish),
* tp/ext/latex2html.pm
(l2h_process, l2h_retrieve_from_html, l2h_init_cache, l2h_from_cache),
* tp/ext/tex4ht.pm (tex4ht_prepare),
* tp/init/chm.pm (chm_init),
* tp/t/test_utils.pl:
Concatenate directory components of file
name with '/' separator rather than calling File::Spec->catdir.
---
ChangeLog | 25 ++++++++++++
tp/Texinfo/Common.pm | 13 ++++---
tp/Texinfo/Convert/Converter.pm | 4 +-
tp/Texinfo/Convert/HTML.pm | 26 ++++++-------
tp/Texinfo/Convert/Plaintext.pm | 4 +-
tp/Texinfo/Convert/Text.pm | 2 +-
tp/Texinfo/ModulePath.pm.in | 17 ++++-----
tp/ext/epub3.pm | 58 ++++++++++++----------------
tp/ext/latex2html.pm | 16 +++-----
tp/ext/tex4ht.pm | 4 +-
tp/init/chm.pm | 6 +--
tp/t/test_utils.pl | 14 +++----
tp/texi2any.pl | 84 ++++++++++++++++++++---------------------
13 files changed, 142 insertions(+), 131 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index e2bee29155..6c135168bc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,28 @@
+2024-12-15 Patrice Dumas <pertusus@free.fr>
+
+ Unconditionally use / as directory separator
+
+ * tp/texi2any.pl,
+ * tp/Texinfo/ModulePath.pm.in (init),
+ * tp/Texinfo/Common.pm
+ (locate_file_in_dirs, locate_include_file),
+ * tp/Texinfo/Convert/Converter.pm
+ (set_file_path, determine_files_and_directory),
+ * tp/Texinfo/Convert/HTML.pm
+ (_load_htmlxref_files, _do_jslicenses_file, _do_js_files)
+ (_node_redirections),
+ * tp/Texinfo/Convert/Plaintext.pm (output),
+ * tp/Texinfo/Convert/Text.pm (output),
+ * tp/ext/epub3.pm
+ (epub_convert_image_command, epub_setup, epub_finish),
+ * tp/ext/latex2html.pm
+ (l2h_process, l2h_retrieve_from_html, l2h_init_cache, l2h_from_cache),
+ * tp/ext/tex4ht.pm (tex4ht_prepare),
+ * tp/init/chm.pm (chm_init),
+ * tp/t/test_utils.pl:
+ Concatenate directory components of file
+ name with '/' separator rather than calling File::Spec->catdir.
+
2024-12-13 Gavin Smith <gavinsmith0123@gmail.com>
pretest 7.1.92
diff --git a/tp/Texinfo/Common.pm b/tp/Texinfo/Common.pm
index 449498c3ef..34df538e03 100644
--- a/tp/Texinfo/Common.pm
+++ b/tp/Texinfo/Common.pm
@@ -1018,7 +1018,7 @@ sub locate_file_in_dirs($$$;$)
my @files;
foreach my $dir (@$directories) {
next unless (-d $dir);
- my $possible_file = File::Spec->catfile($dir, $input_file_path);
+ my $possible_file = "$dir/$input_file_path";
if (-e $possible_file and -r $possible_file) {
if ($deprecated_dirs and $deprecated_dirs->{$dir}) {
$deprecated_dirs_used = [] if (!defined($deprecated_dirs_used));
@@ -1130,17 +1130,18 @@ sub locate_include_file($;$)
return undef;
}
foreach my $include_dir (@$include_directories) {
- my ($include_volume, $include_dir_path, $include_filename)
- = File::Spec->splitpath($include_dir, 1);
+ #my ($include_volume, $include_dir_path, $include_filename)
+ # = File::Spec->splitpath($include_dir, 1);
# catpath/catdir remove leading . and remove empty directories
# within paths. To be more like XS/C output, we do it more simply
#my $possible_file = File::Spec->catpath($include_volume,
# File::Spec->catdir(File::Spec->splitdir($include_dir_path),
# @directories), $filename);
- my $filepath = $directories . $filename;
- my $possible_file = File::Spec->catpath($include_volume,
- $include_dir_path, $filepath);
+ #my $filepath = $directories . $filename;
+ #my $possible_file = File::Spec->catpath($include_volume,
+ # $include_dir_path, $filepath);
+ my $possible_file = "$include_dir/$input_file_path";
if (-e $possible_file and -r $possible_file) {
return $possible_file;
}
diff --git a/tp/Texinfo/Convert/Converter.pm b/tp/Texinfo/Convert/Converter.pm
index 07df6963c6..2a78f1f140 100644
--- a/tp/Texinfo/Convert/Converter.pm
+++ b/tp/Texinfo/Convert/Converter.pm
@@ -826,7 +826,7 @@ sub set_file_path($$$;$)
if (not defined($filepath)) {
if (defined($destination_directory) and $destination_directory ne '') {
- $filepath = File::Spec->catfile($destination_directory, $filename);
+ $filepath = join('/', ($destination_directory, $filename));
} else {
$filepath = $filename;
}
@@ -1127,7 +1127,7 @@ sub determine_files_and_directory($$)
}
if (defined($self->get_conf('SUBDIR')) and $output_file ne '') {
my $dir = File::Spec->canonpath($self->get_conf('SUBDIR'));
- $output_file = File::Spec->catfile($dir, $output_file);
+ $output_file = join('/', ($dir, $output_file));
}
} else {
$document_path = $self->get_conf('OUTFILE');
diff --git a/tp/Texinfo/Convert/HTML.pm b/tp/Texinfo/Convert/HTML.pm
index 64c0f7879d..3dc4a492eb 100644
--- a/tp/Texinfo/Convert/HTML.pm
+++ b/tp/Texinfo/Convert/HTML.pm
@@ -8523,11 +8523,11 @@ sub _load_htmlxref_files {
my $curdir = File::Spec->curdir();
# to have reproducible tests, do not use system or user
# directories if TEST is set.
- @htmlxref_dirs = File::Spec->catdir($curdir, '.texinfo');
+ @htmlxref_dirs = join('/', ($curdir, '.texinfo'));
if ($Texinfo::ModulePath::texinfo_uninstalled) {
- unshift @htmlxref_dirs, File::Spec->catdir(
- $Texinfo::ModulePath::top_srcdir, 'tp', 't', 'input_files');
+ unshift @htmlxref_dirs, join('/', (
+ $Texinfo::ModulePath::top_srcdir, 'tp', 't', 'input_files'));
}
} elsif ($self->get_conf('TEXINFO_LANGUAGE_DIRECTORIES')
and scalar(@{$self->get_conf('TEXINFO_LANGUAGE_DIRECTORIES')}) > 0) {
@@ -11801,7 +11801,7 @@ sub _do_jslicenses_file {
my $license_file;
if ($destination_directory ne '') {
- $license_file = File::Spec->catdir($destination_directory, $path);
+ $license_file = join('/', ($destination_directory, $path));
} else {
$license_file = $path;
}
@@ -12499,7 +12499,7 @@ sub _do_js_files($$)
my $info_js_dir = $self->get_conf('INFO_JS_DIR');
my $jsdir;
if ($destination_directory ne '') {
- $jsdir = File::Spec->catdir($destination_directory, $info_js_dir);
+ $jsdir = join('/', ($destination_directory, $info_js_dir));
} else {
$jsdir = $info_js_dir;
}
@@ -12512,14 +12512,14 @@ sub _do_js_files($$)
if (!$self->get_conf('TEST')) {
my $jssrcdir;
if (!$Texinfo::ModulePath::texinfo_uninstalled) {
- $jssrcdir = File::Spec->catdir(
- $Texinfo::ModulePath::converterdatadir, 'js');
+ $jssrcdir = join('/', (
+ $Texinfo::ModulePath::converterdatadir, 'js'));
} else {
- $jssrcdir = File::Spec->catdir(
- $Texinfo::ModulePath::top_srcdir, 'js');
+ $jssrcdir = join('/', (
+ $Texinfo::ModulePath::top_srcdir, 'js'));
}
for my $f ('info.js', 'modernizr.js', 'info.css') {
- my $from = File::Spec->catfile($jssrcdir, $f);
+ my $from = join('/', ($jssrcdir, $f));
if (!copy($from, $jsdir)) {
$self->converter_document_error(
@@ -12529,7 +12529,7 @@ sub _do_js_files($$)
} else {
# create empty files for tests to keep results stable.
for my $f ('info.js', 'modernizr.js', 'info.css') {
- my $filename = File::Spec->catfile($jsdir, $f);
+ my $filename = join('/', ($jsdir, $f));
if (!open(FH, '>', $filename)) {
$self->converter_document_error(
sprintf(__("error on creating empty %s: %s"),
@@ -12999,8 +12999,8 @@ sub _node_redirections($$$$)
my $out_filepath;
if ($destination_directory ne '') {
- $out_filepath = File::Spec->catfile($destination_directory,
- $redirection_filename);
+ $out_filepath = join('/', ($destination_directory,
+ $redirection_filename));
} else {
$out_filepath = $redirection_filename;
}
diff --git a/tp/Texinfo/Convert/Plaintext.pm b/tp/Texinfo/Convert/Plaintext.pm
index cc905efac9..e8b083acf4 100644
--- a/tp/Texinfo/Convert/Plaintext.pm
+++ b/tp/Texinfo/Convert/Plaintext.pm
@@ -720,8 +720,8 @@ sub output($$)
if ($self->get_conf('SPLIT')) {
my $top_node_file_name = $self->top_node_filename($document_name);
if ($destination_directory ne '') {
- $outfile_name = File::Spec->catfile($destination_directory,
- $top_node_file_name);
+ $outfile_name = join('/', ($destination_directory,
+ $top_node_file_name));
} else {
$outfile_name = $top_node_file_name;
}
diff --git a/tp/Texinfo/Convert/Text.pm b/tp/Texinfo/Convert/Text.pm
index 7bf5a6bfcd..563c3dca71 100644
--- a/tp/Texinfo/Convert/Text.pm
+++ b/tp/Texinfo/Convert/Text.pm
@@ -993,7 +993,7 @@ sub output($$)
return undef;
}
}
- $outfile = File::Spec->catfile($destination_directory, $outfile);
+ $outfile = join('/', ($destination_directory, $outfile));
}
} else {
$outfile = $self->{'OUTFILE'};
diff --git a/tp/Texinfo/ModulePath.pm.in b/tp/Texinfo/ModulePath.pm.in
index 4ad6acffa6..82c7b3f5b8 100644
--- a/tp/Texinfo/ModulePath.pm.in
+++ b/tp/Texinfo/ModulePath.pm.in
@@ -68,14 +68,14 @@ sub init {
my $count = $named_args{'updirs'};
$top_srcdir = $command_directory;
while ($count-- > 0) {
- $top_srcdir = File::Spec->catdir($top_srcdir, $updir);
+ $top_srcdir = join('/', ($top_srcdir, $updir));
}
}
if (defined($top_srcdir)) {
# For Texinfo::Parser and the rest.
- unshift @INC, File::Spec->catdir($top_srcdir, 'tp');
- $lib_dir = File::Spec->catdir($top_srcdir, 'tp', 'maintain');
+ unshift @INC, "$top_srcdir/tp";
+ $lib_dir = join('/', ($top_srcdir, 'tp', 'maintain'));
}
# Find XS modules in the build directory
@@ -86,10 +86,9 @@ sub init {
$top_builddir = $top_srcdir;
}
if (defined($top_builddir)) {
- unshift @INC, File::Spec->catdir($top_builddir, 'tp',
- 'Texinfo', 'XS');
+ unshift @INC, join('/', ($top_builddir, 'tp', 'Texinfo', 'XS'));
- $tp_builddir = File::Spec->catdir($top_builddir, 'tp');
+ $tp_builddir = "$top_builddir/tp";
}
} else {
@@ -109,13 +108,13 @@ sub init {
# Bundled libraries
# '@USE_EXTERNAL_LIBINTL @' and similar are substituted
if ('@USE_EXTERNAL_LIBINTL@' ne 'yes') {
- unshift @INC, (File::Spec->catdir($lib_dir, 'lib', 'libintl-perl',
'lib'));
+ unshift @INC, join('/', ($lib_dir, 'lib', 'libintl-perl', 'lib'));
}
if ('@USE_EXTERNAL_EASTASIANWIDTH@' ne 'yes') {
- unshift @INC, (File::Spec->catdir($lib_dir, 'lib',
'Unicode-EastAsianWidth', 'lib'));
+ unshift @INC, join('/', ($lib_dir, 'lib', 'Unicode-EastAsianWidth',
'lib'));
}
if ('@USE_EXTERNAL_UNIDECODE@' ne 'yes') {
- unshift @INC, (File::Spec->catdir($lib_dir, 'lib', 'Text-Unidecode',
'lib'));
+ unshift @INC, join('/', ($lib_dir, 'lib', 'Text-Unidecode', 'lib'));
}
}
}
diff --git a/tp/ext/epub3.pm b/tp/ext/epub3.pm
index 07da9bcfe0..966a3b5992 100644
--- a/tp/ext/epub3.pm
+++ b/tp/ext/epub3.pm
@@ -320,8 +320,8 @@ sub epub_convert_image_command($$$$)
$image_basefile));
} else {
my $images_destination_dir
- = File::Spec->catdir($epub_destination_directory,
- $epub_document_dir_name,
$epub_images_dir_name);
+ = join('/', ($epub_destination_directory,
+ $epub_document_dir_name, $epub_images_dir_name));
my ($encoded_images_destination_dir, $images_destination_dir_encoding)
= $self->encoded_output_file_name($images_destination_dir);
my $error_creating_dir;
@@ -335,8 +335,8 @@ sub epub_convert_image_command($$$$)
}
if (not $error_creating_dir) {
my $image_destination_path_name
- = File::Spec->catfile($images_destination_dir,
- $destination_basefile_name);
+ = join('/', ($images_destination_dir,
+ $destination_basefile_name));
my ($encoded_image_dest_path_name, $image_dest_path_encoding)
= $self->encoded_output_file_name($image_destination_path_name);
my $copy_succeeded = copy($image_path,
$encoded_image_dest_path_name);
@@ -492,16 +492,8 @@ sub epub_setup($)
# css files in a directory rooted at $epub_document_dir_name
$epub_info_js_dir_name = $self->get_conf('INFO_JS_DIR');
my $updir = File::Spec->updir();
- # FIXME INFO_JS_DIR is used both as a filesystem directory name
- # and as path in HTML files. As a path in HTML, / should always be
- # used. File::Spec->catdir is better for filesystem paths. We finally
- # hardocde '/' as separator because it is needed for HTML paths and it
- # works for both for Unix and Windows filesystems, but it is not
- # clean.
- #$self->force_conf('INFO_JS_DIR', File::Spec->catdir($updir,
- # $epub_info_js_dir_name));
$self->force_conf('INFO_JS_DIR', join('/', ($updir,
- $epub_info_js_dir_name)));
+ $epub_info_js_dir_name)));
# TODO make sure it is SPLIT and set SPLIT if not?
}
@@ -527,16 +519,16 @@ sub epub_setup($)
# so we try to set it to a directory that the user would not create
# nor populate with files.
if (defined($self->get_conf('SUBDIR'))) {
- $epub_destination_directory = File::Spec->catdir($self->get_conf('SUBDIR'),
- $document_name . '_epub_package');
+ $epub_destination_directory = join('/', ($self->get_conf('SUBDIR'),
+ $document_name . '_epub_package'));
} elsif ($split) {
$epub_destination_directory = $destination_directory;
} else {
$epub_destination_directory = $document_name . '_epub_package';
}
$epub_document_destination_directory
- = File::Spec->catdir($epub_destination_directory,
- $epub_document_dir_name, $epub_xhtml_dir);
+ = join('/', ($epub_destination_directory,
+ $epub_document_dir_name, $epub_xhtml_dir));
# set for XHTML conversion
if ($split) {
$self->force_conf('SUBDIR', $epub_document_destination_directory);
@@ -551,7 +543,7 @@ sub epub_setup($)
$nav_filename = 'Gtexinfo_' . $default_nav_filename;
}
$self->force_conf('OUTFILE',
- File::Spec->catfile($epub_document_destination_directory,
$xhtml_output_file));
+ join('/', ($epub_document_destination_directory, $xhtml_output_file)));
}
my $epub_destination_dir_encoding;
@@ -608,8 +600,8 @@ sub epub_finish($$)
}
my $meta_inf_directory_name = 'META-INF';
- my $meta_inf_directory = File::Spec->catdir($epub_destination_directory,
- $meta_inf_directory_name);
+ my $meta_inf_directory = join('/', ($epub_destination_directory,
+ $meta_inf_directory_name));
my ($encoded_meta_inf_directory, $meta_inf_directory_encoding)
= $self->encoded_output_file_name($meta_inf_directory);
if (!mkdir($encoded_meta_inf_directory, oct(755))) {
@@ -618,8 +610,8 @@ sub epub_finish($$)
$meta_inf_directory, $!));
return 1;
}
- my $container_file_path_name = File::Spec->catfile($meta_inf_directory,
- 'container.xml');
+ my $container_file_path_name = join('/', ($meta_inf_directory,
+ 'container.xml'));
my ($encoded_container_file_path_name, $container_path_encoding)
= $self->encoded_output_file_name($container_file_path_name);
my ($container_fh, $error_message_container)
@@ -659,8 +651,8 @@ EOT
}
my $mimetype_filename = 'mimetype';
- my $mimetype_file_path_name =
File::Spec->catfile($epub_destination_directory,
- $mimetype_filename);
+ my $mimetype_file_path_name = join('/', ($epub_destination_directory,
+ $mimetype_filename));
my ($encoded_mimetype_file_path_name, $mimetype_path_encoding)
= $self->encoded_output_file_name($mimetype_file_path_name);
my ($mimetype_fh, $error_message_mimetype)
@@ -696,7 +688,7 @@ EOT
if ($sections_list) {
$nav_file_path_name
- = File::Spec->catfile($epub_document_destination_directory,
$nav_filename);
+ = join('/', ($epub_document_destination_directory, $nav_filename));
my ($encoded_nav_file_path_name, $nav_path_encoding)
= $self->encoded_output_file_name($nav_file_path_name);
my ($nav_fh, $error_message_nav)
@@ -827,8 +819,8 @@ EOT
# Cf TODO, publication date
# <dc:date>
- my $opf_file_path_name = File::Spec->catfile($epub_destination_directory,
- $epub_document_dir_name,
$opf_filename);
+ my $opf_file_path_name = join('/', ($epub_destination_directory,
+ $epub_document_dir_name, $opf_filename));
my ($encoded_opf_file_path_name, $opf_path_encoding)
= $self->encoded_output_file_name($opf_file_path_name);
my ($opf_fh, $error_message_opf)
@@ -912,8 +904,8 @@ EOT
my $js_weblabels_id;
if (defined($self->get_conf('JS_WEBLABELS_FILE'))) {
my $js_weblabels_file_name = $self->get_conf('JS_WEBLABELS_FILE');
- my $js_licenses_file_path =
File::Spec->catfile($epub_document_destination_directory,
- $js_weblabels_file_name);
+ my $js_licenses_file_path = join('/',
($epub_document_destination_directory,
+ $js_weblabels_file_name));
if (-e $js_licenses_file_path) {
$js_weblabels_id = 'jsweblabels';
print $opf_fh " <item id=\"${js_weblabels_id}\" "
@@ -937,8 +929,8 @@ EOT
}
if (defined($epub_info_js_dir_name)) {
my $info_js_destination_dir
- = File::Spec->catdir($epub_destination_directory,
- $epub_document_dir_name,
$epub_info_js_dir_name);
+ = join('/', ($epub_destination_directory,
+ $epub_document_dir_name, $epub_info_js_dir_name));
my $opendir_success = opendir(JSPATH, $info_js_destination_dir);
if (not $opendir_success) {
$self->converter_document_error(
@@ -1024,8 +1016,8 @@ EOT
return 1;
}
- my $epub_document_dir_path =
File::Spec->catdir($epub_destination_directory,
- $epub_document_dir_name);
+ my $epub_document_dir_path = join('/', ($epub_destination_directory,
+ $epub_document_dir_name));
my ($encoded_epub_document_dir_path, $epub_document_dir_path_encoding)
= $self->encoded_output_file_name($epub_document_dir_path);
my $epub_document_dir_name_ret_code
diff --git a/tp/ext/latex2html.pm b/tp/ext/latex2html.pm
index 719dd4a664..345ed2f001 100644
--- a/tp/ext/latex2html.pm
+++ b/tp/ext/latex2html.pm
@@ -233,8 +233,7 @@ sub l2h_process($$)
my $encoded_l2h_latex_file_name = encode('UTF-8', $l2h_latex_file_name);
my $l2h_latex_path_string =
File::Spec->catfile($destination_directory_string,
$encoded_l2h_latex_file_name);
- $l2h_cache_path_name = File::Spec->catfile($destination_directory,
- "${docu_name}-l2h_cache.pm");
+ $l2h_cache_path_name = "$destination_directory/${docu_name}-l2h_cache.pm";
# set consistently with $l2h_latex_file_name to ensure that
# latex2html will create a file with this name.
my $l2h_html_file_name = "${l2h_name}.html";
@@ -573,11 +572,10 @@ sub l2h_retrieve_from_html($$)
my @html_retrieved_text_indices; # the text indices retrieved
- my $l2h_html_path_name = File::Spec->catfile($destination_directory,
- $l2h_html_file_name);
+ my $l2h_html_path_name = "$destination_directory/$l2h_html_file_name";
my $encoded_l2h_html_file_name = encode('UTF-8', $l2h_html_file_name);
- my $l2h_html_path_string = File::Spec->catfile($destination_directory_string,
- $encoded_l2h_html_file_name);
+ my $l2h_html_path_string
+ = "$destination_directory_string/$encoded_l2h_html_file_name";
if (! open(L2H_HTML, "<$l2h_html_path_string")) {
$self->converter_document_error(
@@ -778,8 +776,7 @@ sub l2h_init_cache($)
my $loaded_path;
# do require a relative path, or to have . in INC
if (not File::Spec->file_name_is_absolute($l2h_cache_path_name)) {
- $loaded_path = File::Spec->catfile(File::Spec->curdir(),
- $encoded_l2h_cache_path_name);
+ $loaded_path = File::Spec->curdir()."/$encoded_l2h_cache_path_name";
} else {
$loaded_path = $encoded_l2h_cache_path_name;
}
@@ -861,8 +858,7 @@ sub l2h_from_cache($$)
my $encoded_cached_image_file_name
= encode('UTF-8', $cached_image_file_name);
my $cached_image_path_string
- = File::Spec->catfile($destination_directory_string,
- $encoded_cached_image_file_name);
+ = "$destination_directory_string/$encoded_cached_image_file_name";
unless (-e $cached_image_path_string) {
return undef;
}
diff --git a/tp/ext/tex4ht.pm b/tp/ext/tex4ht.pm
index 7e5492e664..01dbb0d734 100644
--- a/tp/ext/tex4ht.pm
+++ b/tp/ext/tex4ht.pm
@@ -196,8 +196,8 @@ sub tex4ht_prepare($$)
=
$self->encoded_output_file_name($formats{$format}->{'html_basefile_name'});
$formats{$format}->{'html_basefile_path'} = $encoded_html_basefile_name;
- my $tex4ht_file_path_name = File::Spec->catfile($tex4ht_out_dir,
- $formats{$format}->{'basefile_name'});
+ my $tex4ht_file_path_name
+ = "$tex4ht_out_dir/$formats{$format}->{'basefile_name'}";
my ($encoded_tex4ht_file_path_name, $tex4ht_path_encoding)
= $self->encoded_output_file_name($tex4ht_file_path_name);
$formats{$format}->{'counter'} = 0;
diff --git a/tp/init/chm.pm b/tp/init/chm.pm
index c63e4509bc..17faceb98a 100644
--- a/tp/init/chm.pm
+++ b/tp/init/chm.pm
@@ -214,7 +214,7 @@ sub chm_init($)
$outdir = File::Spec->curdir() if ($outdir eq '');
my $hhk_filename = $document_name . ".hhk";
- my $hhk_file_path_name = File::Spec->catfile($outdir, $hhk_filename);
+ my $hhk_file_path_name = join('/', ($outdir, $hhk_filename));
my ($encoded_hhk_file_path_name, $hhk_path_encoding)
= $self->encoded_output_file_name($hhk_file_path_name);
my ($hhk_fh, $hhk_error_message)
@@ -296,7 +296,7 @@ sub chm_init($)
}
my $hhc_filename = $document_name . ".hhc";
- my $hhc_file_path_name = File::Spec->catfile($outdir, $hhc_filename);
+ my $hhc_file_path_name = join('/', ($outdir, $hhc_filename));
my ($encoded_hhc_file_path_name, $hhc_path_encoding)
= $self->encoded_output_file_name($hhc_file_path_name);
my ($hhc_fh, $hhc_error_message)
@@ -378,7 +378,7 @@ sub chm_init($)
}
my $hhp_filename = $document_name . ".hhp";
- my $hhp_file_path_name = File::Spec->catfile($outdir, $hhp_filename);
+ my $hhp_file_path_name = join('/', ($outdir, $hhp_filename));
my ($encoded_hhp_file_path_name, $hhp_path_encoding)
= $self->encoded_output_file_name($hhp_file_path_name);
my ($hhp_fh, $hhp_error_message)
diff --git a/tp/t/test_utils.pl b/tp/t/test_utils.pl
index cde82b9b72..509ab51266 100644
--- a/tp/t/test_utils.pl
+++ b/tp/t/test_utils.pl
@@ -98,7 +98,7 @@ Locale::Messages->select_package('gettext_pp');
my $srcdir = $ENV{'srcdir'};
# fallback based on Texinfo::ModulePath $top_srcdir
if (!defined($srcdir) and defined($Texinfo::ModulePath::top_srcdir)) {
- $srcdir = File::Spec->catdir($Texinfo::ModulePath::top_srcdir, 'tp');
+ $srcdir = join('/', ($Texinfo::ModulePath::top_srcdir, 'tp'));
}
my $locales_srcdir;
@@ -1722,16 +1722,14 @@ sub test($$)
foreach my $dir_name (@epub_package_dirs) {
my $reference_EPUB_dir;
my $reference_xhtml_dir;
- my $ref_epub_package = File::Spec->catdir($reference_dir,
- $dir_name);
+ my $ref_epub_package = join('/', ($reference_dir, $dir_name));
if (-r $ref_epub_package and -d $ref_epub_package) {
- $reference_EPUB_dir = File::Spec->catdir($ref_epub_package,
- 'EPUB');
+ $reference_EPUB_dir = join('/', ($ref_epub_package, 'EPUB'));
if (-r $reference_EPUB_dir and -d $reference_EPUB_dir) {
$used_dir = 1;
my $results_EPUB_dir
- = File::Spec->catdir($results_dir, $dir_name, 'EPUB');
+ = join('/', ($results_dir, $dir_name, 'EPUB'));
my $EPUB_dir_errors
= compare_dirs_files($reference_EPUB_dir,
$results_EPUB_dir);
@@ -1743,10 +1741,10 @@ sub test($$)
}
$reference_xhtml_dir
- = File::Spec->catdir($reference_EPUB_dir, 'xhtml');
+ = join('/', ($reference_EPUB_dir, 'xhtml'));
if (-r $reference_xhtml_dir and -d $reference_xhtml_dir) {
my $results_xhtml_dir
- = File::Spec->catdir($results_EPUB_dir, 'xhtml');
+ = join('/', ($results_EPUB_dir, 'xhtml'));
my $xhtml_dir_errors
= compare_dirs_files($reference_xhtml_dir,
$results_xhtml_dir);
diff --git a/tp/texi2any.pl b/tp/texi2any.pl
index ab015139a2..85d69d1081 100755
--- a/tp/texi2any.pl
+++ b/tp/texi2any.pl
@@ -80,34 +80,34 @@ BEGIN
# To find Texinfo::ModulePath
if (defined($ENV{'top_builddir'})) {
- unshift @INC, File::Spec->catdir($ENV{'top_builddir'}, 'tp');
+ unshift @INC, join('/', ($ENV{'top_builddir'}, 'tp'));
} else {
- unshift @INC, File::Spec->catdir($command_directory);
+ unshift @INC, $command_directory;
}
require Texinfo::ModulePath;
Texinfo::ModulePath::init(undef, undef, undef, 'updirs' => 1);
} else {
# Look for modules in their installed locations.
- my $modules_dir = File::Spec->catdir($datadir, $converter);
+ my $modules_dir = join('/', ($datadir, $converter));
# look for package data in the installed location.
# actually the same as $converterdatadir in main program below, but use
# another name to avoid confusion.
my $modules_converterdatadir = $modules_dir;
- $xsdir = File::Spec->catdir($libdir, $converter);
+ $xsdir = join('/', ($libdir, $converter));
# try to make package relocatable, will only work if
# standard relative paths are used
- if (! -f File::Spec->catfile($modules_dir, 'Texinfo', 'Parser.pm')
- and -f File::Spec->catfile($command_directory, $updir, 'share',
- $converter, 'Texinfo', 'Parser.pm')) {
- $modules_dir = File::Spec->catdir($command_directory, $updir,
- 'share', $converter);
+ if (! -f join('/', ($modules_dir, 'Texinfo', 'Parser.pm'))
+ and -f join('/', ($command_directory, $updir, 'share',
+ $converter, 'Texinfo', 'Parser.pm'))) {
+ $modules_dir = join('/', ($command_directory, $updir,
+ 'share', $converter));
$modules_converterdatadir
- = File::Spec->catdir($command_directory, $updir,
- 'share', $converter);
- $xsdir = File::Spec->catdir($command_directory, $updir,
- 'lib', $converter);
+ = join('/', ($command_directory, $updir,
+ 'share', $converter));
+ $xsdir = join('/', ($command_directory, $updir,
+ 'lib', $converter));
}
unshift @INC, $modules_dir;
@@ -156,6 +156,9 @@ my $sysconfdir;
#my $pkgdatadir;
my $converter;
+# the result is not good when using rootdir, maybe using a concatenation
+# of rootdir would be better.
+#my $fallback_prefix = join('/', (File::Spec->rootdir(), 'usr', 'local'));
my $fallback_prefix = File::Spec->catdir(File::Spec->rootdir(), 'usr',
'local');
# We need to eval as $prefix has to be expanded. However when we haven't
@@ -164,33 +167,30 @@ my $fallback_prefix =
File::Spec->catdir(File::Spec->rootdir(), 'usr', 'local');
if ('@sysconfdir@' ne '@' . 'sysconfdir@') {
$sysconfdir = eval '"@sysconfdir@"';
} else {
- $sysconfdir = File::Spec->catdir($fallback_prefix, 'etc');
+ $sysconfdir = "$fallback_prefix/etc";
}
if ('@datarootdir@' ne '@' . 'datarootdir@') {
$datarootdir = eval '"@datarootdir@"';
} else {
- $datarootdir = File::Spec->catdir($fallback_prefix, 'share');
+ $datarootdir = "$fallback_prefix/share";
}
if ('@datadir@' ne '@' . 'datadir@' and '@PACKAGE@' ne '@' . 'PACKAGE@') {
$datadir = eval '"@datadir@"';
my $package = '@PACKAGE@';
$converter = '@CONVERTER@';
- #$pkgdatadir = File::Spec->catdir($datadir, $package);
} else {
- $datadir = File::Spec->catdir($fallback_prefix, 'share');
- #$pkgdatadir = File::Spec->catdir($datadir, 'texinfo');
+ $datadir = "$fallback_prefix/share";
$converter = 'texi2any';
}
my $extensions_dir;
if ($Texinfo::ModulePath::texinfo_uninstalled) {
- $extensions_dir = File::Spec->catdir($Texinfo::ModulePath::top_srcdir,
- 'tp', 'ext');
+ $extensions_dir = join('/', ($Texinfo::ModulePath::top_srcdir, 'tp', 'ext'));
} else {
$extensions_dir
- = File::Spec->catdir($Texinfo::ModulePath::converterdatadir, 'ext');
+ = join('/', ($Texinfo::ModulePath::converterdatadir, 'ext'));
}
my $internal_extension_dirs = [$extensions_dir];
@@ -417,7 +417,7 @@ sub add_config_paths($$$$;$$) {
if (defined($ENV{$env_string}) and $ENV{$env_string} ne '') {
foreach my $dir (split(':', $ENV{$env_string})) {
if ($dir ne '') {
- push @xdg_result_dirs, File::Spec->catdir($dir, $subdir);
+ push @xdg_result_dirs, "$dir/$subdir";
$used_xdg_base_dirs{$dir} = 1;
}
}
@@ -426,12 +426,12 @@ sub add_config_paths($$$$;$$) {
my %used_base_dirs;
if (defined($installation_dir)) {
#and not $used_base_dirs{$installation_dir}) {
- my $install_result_dir = File::Spec->catdir($installation_dir, $subdir);
+ my $install_result_dir = "$installation_dir/$subdir";
push @result_dirs, $install_result_dir;
$used_base_dirs{$installation_dir} = 1;
if ($overriding_dirs and $overriding_dirs->{$installation_dir}) {
my $deprecated_dir
- = File::Spec->catdir($overriding_dirs->{$installation_dir}, $subdir);
+ = "$overriding_dirs->{$installation_dir}/$subdir";
if (not $used_xdg_base_dirs{$deprecated_dir}) {
$deprecated_dirs->{$deprecated_dir} = $install_result_dir;
push @result_dirs, $deprecated_dir;
@@ -442,7 +442,7 @@ sub add_config_paths($$$$;$$) {
foreach my $dir (@xdg_result_dirs) {
if (!$used_base_dirs{$dir}) {
- push @result_dirs, File::Spec->catdir($dir, $subdir);
+ push @result_dirs, "$dir/$subdir";
$used_base_dirs{$dir} = 1;
}
}
@@ -450,7 +450,7 @@ sub add_config_paths($$$$;$$) {
# to also use XDG Base Directory Specification defaults
#foreach my $dir (@$default_base_dirs) {
# if (!$used_base_dirs{$dir}) {
- # push @result_dirs, File::Spec->catdir($dir, $subdir);
+ # push @result_dirs, "$dir/$subdir";
# }
#}
return \@result_dirs;
@@ -460,16 +460,16 @@ sub set_subdir_directories($$) {
my $subdir = shift;
my $deprecated_dirs = shift;
- my @result = File::Spec->catdir('.'.$subdir);
+ my @result = ('.'."/$subdir");
my $config_home;
my $deprecated_config_home;
if (defined($ENV{'XDG_CONFIG_HOME'}) and $ENV{'XDG_CONFIG_HOME'} ne '') {
- $config_home = File::Spec->catdir($ENV{'XDG_CONFIG_HOME'}, $subdir);
+ $config_home = $ENV{'XDG_CONFIG_HOME'}."/$subdir";
} else {
if (defined($ENV{'HOME'})) {
- $config_home = File::Spec->catdir($ENV{'HOME'}, '.config', $subdir);
- $deprecated_config_home = File::Spec->catdir($ENV{'HOME'}, '.'.$subdir);
+ $config_home = join('/', ($ENV{'HOME'}, '.config', $subdir));
+ $deprecated_config_home = $ENV{'HOME'}.'/.'.$subdir;
$deprecated_dirs->{$deprecated_config_home} = $config_home;
}
}
@@ -479,12 +479,12 @@ sub set_subdir_directories($$) {
push @result, $deprecated_config_home
if (defined($deprecated_config_home));
- my $sysconf_install_dir = File::Spec->catdir($sysconfdir, 'xdg');
+ my $sysconf_install_dir = "$sysconfdir/xdg";
# associate new location to deprecated location
my $overriding_dirs = {$sysconf_install_dir => $sysconfdir};
# in 2024, mark $sysconfdir overriden by $sysconfdir/xdg.
my $config_dirs = add_config_paths('XDG_CONFIG_DIRS', $subdir,
- ['/etc/xdg'], File::Spec->catdir($sysconfdir, 'xdg'),
+ ['/etc/xdg'], "$sysconfdir/xdg",
$overriding_dirs, $deprecated_dirs);
push @result, @$config_dirs;
@@ -498,7 +498,7 @@ sub set_subdir_directories($$) {
# datadir, there is no need for customization of those directories
# since the sysconfdir directories are already customized, just use
# the installation directory.
- push @result, File::Spec->catdir($datadir, $subdir);
+ push @result, "$datadir/$subdir";
return \@result;
}
@@ -510,9 +510,9 @@ my $language_config_dirs
= set_subdir_directories('texinfo', \%deprecated_directories);
my @texinfo_language_config_dirs = @$language_config_dirs;
-#push @texinfo_language_config_dirs, File::Spec->catdir($sysconfdir, 'texinfo')
+#push @texinfo_language_config_dirs, "$sysconfdir/texinfo"
# if (defined($sysconfdir));
-#push @texinfo_language_config_dirs, File::Spec->catdir($datadir, 'texinfo')
+#push @texinfo_language_config_dirs, "$datadir/texinfo"
# if (defined($datadir));
# these variables are used as part of binary strings.
@@ -525,21 +525,21 @@ my $converter_config_dirs_array_ref
@converter_config_dirs = ($curdir, @$converter_config_dirs_array_ref);
#@converter_config_dirs
-# = ($curdir, File::Spec->catdir($curdir, ".$converter"));
-#push @converter_config_dirs, File::Spec->catdir($ENV{'HOME'}, ".$converter")
+# = ($curdir, "$curdir/.$converter");
+#push @converter_config_dirs, $ENV{'HOME'}."/.$converter")
# if (defined($ENV{'HOME'}));
-#push @converter_config_dirs, File::Spec->catdir($sysconfdir, $converter)
+#push @converter_config_dirs, "$sysconfdir/$converter"
# if (defined($sysconfdir));
-#push @converter_config_dirs, File::Spec->catdir($datadir, $converter)
+#push @converter_config_dirs, "$datadir/$converter"
# if (defined($datadir));
@converter_init_dirs = @converter_config_dirs;
foreach my $texinfo_config_dir (@texinfo_language_config_dirs) {
- my $init_dir = File::Spec->catdir($texinfo_config_dir, 'init');
+ my $init_dir = "$texinfo_config_dir/init";
push @converter_init_dirs, $init_dir;
if ($deprecated_directories{$texinfo_config_dir}) {
$deprecated_directories{$init_dir}
- = File::Spec->catdir($deprecated_directories{$texinfo_config_dir}, 'init');
+ = "$deprecated_directories{$texinfo_config_dir}/init";
}
}
@@ -1527,7 +1527,7 @@ Texinfo::Convert::Utils->import();
if (not get_conf('TEST') and $Texinfo::ModulePath::texinfo_uninstalled) {
push @texinfo_language_config_dirs,
- File::Spec->catdir($Texinfo::ModulePath::top_srcdir, 'util');
+ join('/', ($Texinfo::ModulePath::top_srcdir, 'util'));
}
if ($Texinfo::ModulePath::texinfo_uninstalled) {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- branch master updated: Unconditionally use / as directory separator,
Gavin D. Smith <=