summaryrefslogtreecommitdiff
path: root/Build/source/texk/tests/TeXLive
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-02-27 18:45:24 +0000
committerKarl Berry <karl@freefriends.org>2023-02-27 18:45:24 +0000
commit03455e0c2cf3f72d34026071f889510ed47ff98c (patch)
treeb136bfafb0785e02534006dcdf2ac2147431c8dd /Build/source/texk/tests/TeXLive
parent715a7beb52e172f6cb2084f6672935a858b3f4f1 (diff)
linked_scripts updates for context and windows; other syncs,doc
git-svn-id: svn://tug.org/texlive/trunk@66220 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/tests/TeXLive')
-rw-r--r--Build/source/texk/tests/TeXLive/TLConfig.pm12
-rw-r--r--Build/source/texk/tests/TeXLive/TLUtils.pm102
2 files changed, 55 insertions, 59 deletions
diff --git a/Build/source/texk/tests/TeXLive/TLConfig.pm b/Build/source/texk/tests/TeXLive/TLConfig.pm
index 92d32f5638a..64a13f30333 100644
--- a/Build/source/texk/tests/TeXLive/TLConfig.pm
+++ b/Build/source/texk/tests/TeXLive/TLConfig.pm
@@ -1,12 +1,12 @@
# TeXLive::TLConfig.pm - module exporting configuration values
-# Copyright 2007-2023 Norbert Preining
+# Copyright 2007-2022 Norbert Preining
# This file is licensed under the GNU General Public License version 2
# or any later version.
use strict; use warnings;
package TeXLive::TLConfig;
-my $svnrev = '$Revision: 65950 $';
+my $svnrev = '$Revision: 63068 $';
my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
sub module_revision { return $_modulerevision; }
@@ -61,7 +61,7 @@ BEGIN {
# the year of our release, will be used in the location of the
# network packages, and in menu names, and other places.
-our $ReleaseYear = 2023;
+our $ReleaseYear = 2022;
# users can upgrade from this year to the current year; might be the
# same as the release year, or any number of releases earlier.
@@ -118,8 +118,8 @@ our $RelocPrefix = "RELOC";
our @CriticalPackagesList = qw/texlive.infra/;
our $CriticalPackagesRegexp = '^(texlive\.infra)';
if ($^O =~ /^MSWin/i) {
- push (@CriticalPackagesList, "tlperl.windows");
- $CriticalPackagesRegexp = '^(texlive\.infra|tlperl\.windows$)';
+ push (@CriticalPackagesList, "tlperl.win32");
+ $CriticalPackagesRegexp = '^(texlive\.infra|tlperl\.win32$)';
}
@@ -366,7 +366,7 @@ C<systems/texlive/tlnet/>.
=item C<@TeXLive::TLConfig::CriticalPackagesRegexp>
A list of all those packages which we do not update regularly since they
-are too central, currently texlive.infra and (for Windows) tlperl.windows.
+are too central, currently texlive.infra and (for Windows) tlperl.win32.
=item C<@TeXLive::TLConfig::InstallExtraRequiredPackages>
diff --git a/Build/source/texk/tests/TeXLive/TLUtils.pm b/Build/source/texk/tests/TeXLive/TLUtils.pm
index 7b7bb8cc760..12130936c64 100644
--- a/Build/source/texk/tests/TeXLive/TLUtils.pm
+++ b/Build/source/texk/tests/TeXLive/TLUtils.pm
@@ -1,5 +1,5 @@
# TeXLive::TLUtils.pm - the inevitable utilities for TeX Live.
-# Copyright 2007-2023 Norbert Preining, Reinhard Kotucha
+# Copyright 2007-2022 Norbert Preining, Reinhard Kotucha
# This file is licensed under the GNU General Public License version 2
# or any later version.
@@ -7,7 +7,7 @@ use strict; use warnings;
package TeXLive::TLUtils;
-my $svnrev = '$Revision: 65994 $';
+my $svnrev = '$Revision: 64503 $';
my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
sub module_revision { return $_modulerevision; }
@@ -26,7 +26,7 @@ C<TeXLive::TLUtils> - TeX Live infrastructure miscellany
TeXLive::TLUtils::platform();
TeXLive::TLUtils::platform_name($canonical_host);
TeXLive::TLUtils::platform_desc($platform);
- TeXLive::TLUtils::wndws();
+ TeXLive::TLUtils::win32();
TeXLive::TLUtils::unix();
=head2 System tools
@@ -264,7 +264,7 @@ BEGIN {
@EXPORT = qw(setup_programs download_file process_logging_options
tldie tlwarn info log debug ddebug dddebug debug
debug_hash_str debug_hash
- wndws xchdir xsystem run_cmd system_pipe sort_archs);
+ win32 xchdir xsystem run_cmd system_pipe sort_archs);
}
use Cwd;
@@ -284,7 +284,7 @@ our $SshURIRegex = '^((ssh|scp)://([^@]*)@([^/]*)/|([^@]*)@([^:]*):).*$';
=item C<platform>
If C<$^O =~ /MSWin/i> is true we know that we're on
-Windows and we set the global variable C<$::_platform_> to C<windows>.
+Windows and we set the global variable C<$::_platform_> to C<win32>.
Otherwise we call C<platform_name> with the output of C<config.guess>
as argument.
@@ -296,16 +296,13 @@ understands the C<$(...)> construct. This means that on old-enough
systems, such as Solaris, we have to look for a shell. We use the value
of the C<CONFIG_SHELL> environment variable if it is set, else
C</bin/ksh> if it exists, else C</bin/bash> if it exists, else give up.
-Happily, C<config.guess> later reverted this change, but we keep our
-shell-finding code anyway to defend against future mistakes of the same ilk.
=cut
sub platform {
- if (! defined $::_platform_) {
+ unless (defined $::_platform_) {
if ($^O =~ /^MSWin/i) {
- print STDERR "\$^O is $^O\n";
- $::_platform_ = "windows";
+ $::_platform_ = "win32";
} else {
my $config_guess = "$::installerdir/tlpkg/installer/config.guess";
@@ -530,8 +527,7 @@ sub platform_desc {
'sparc-linux' => 'GNU/Linux on Sparc',
'sparc-solaris' => 'Solaris on Sparc',
'universal-darwin' => 'MacOSX current (10.14-) on ARM/x86_64',
- 'win32' => 'Windows (32-bit)',
- 'windows' => 'Windows (64-bit)',
+ 'win32' => 'Windows',
'x86_64-cygwin' => 'Cygwin on x86_64',
'x86_64-darwinlegacy' => 'MacOSX legacy (10.6-) on x86_64',
'x86_64-dragonfly' => 'DragonFlyBSD on x86_64',
@@ -554,21 +550,21 @@ sub platform_desc {
}
-=item C<wndws>
+=item C<win32>
Return C<1> if platform is Windows and C<0> otherwise. The test is
currently based on the value of Perl's C<$^O> variable.
=cut
-sub wndws {
+sub win32 {
if ($^O =~ /^MSWin/i) {
return 1;
} else {
return 0;
}
# the following needs config.guess, which is quite bad ...
- # return (&platform eq "windows")? 1:0;
+ # return (&platform eq "win32")? 1:0;
}
@@ -579,7 +575,7 @@ Return C<1> if platform is UNIX and C<0> otherwise.
=cut
sub unix {
- return (&platform eq "windows")? 0:1;
+ return (&platform eq "win32")? 0:1;
}
@@ -603,7 +599,7 @@ sub getenv {
my $envvar=shift;
my $var=$ENV{"$envvar"};
return 0 unless (defined $var);
- if (&wndws) {
+ if (&win32) {
$var=~s!\\!/!g; # change \ -> / (required by Perl)
}
return "$var";
@@ -625,7 +621,7 @@ sub which {
my @PATH;
my $PATH = getenv('PATH');
- if (&wndws) {
+ if (&win32) {
my @PATHEXT = split (';', getenv('PATHEXT'));
push (@PATHEXT, ''); # in case argument contains an extension
@PATH = split (';', $PATH);
@@ -792,7 +788,7 @@ sub system_pipe {
my ($prog, $infile, $outfile, $removeIn, @extraargs) = @_;
my $progQuote = quotify_path_with_spaces($prog);
- if (wndws()) {
+ if (win32()) {
$infile =~ s!/!\\!g;
$outfile =~ s!/!\\!g;
}
@@ -825,7 +821,7 @@ computing the disk space.
sub diskfree {
my $td = shift;
my ($output, $retval);
- if (wndws()) {
+ if (win32()) {
# the powershell one-liner only works from win8 on.
my @winver = Win32::GetOSVersion();
if ($winver[1]<=6 && $winver[2]<=1) {
@@ -908,7 +904,7 @@ my $user_home_dir;
sub get_user_home {
return $user_home_dir if ($user_home_dir);
- $user_home_dir = getenv (wndws() ? 'USERPROFILE' : 'HOME') || '~';
+ $user_home_dir = getenv (win32() ? 'USERPROFILE' : 'HOME') || '~';
return $user_home_dir;
}
@@ -943,7 +939,7 @@ Return both C<dirname> and C<basename>. Example:
sub dirname_and_basename {
my $path=shift;
my ($share, $base) = ("", "");
- if (wndws()) {
+ if (win32) {
$path=~s!\\!/!g;
}
# do not try to make sense of paths ending with /..
@@ -952,7 +948,7 @@ sub dirname_and_basename {
# eliminate `/.' path components
while ($path =~ s!/\./!/!) {};
# UNC path? => first split in $share = //xxx/yy and $path = /zzzz
- if (wndws() and $path =~ m!^(//[^/]+/[^/]+)(.*)$!) {
+ if (win32() and $path =~ m!^(//[^/]+/[^/]+)(.*)$!) {
($share, $path) = ($1, $2);
if ($path =~ m!^/?$!) {
$path = $share;
@@ -1010,7 +1006,7 @@ sub basename {
sub tl_abs_path {
my $path = shift;
- if (wndws()) {
+ if (win32) {
$path=~s!\\!/!g;
}
if (-e $path) {
@@ -1020,13 +1016,13 @@ sub tl_abs_path {
} else{
# collapse /./ components
$path =~ s!/\./!/!g;
- # no support for .. path components or for windows long-path syntax
+ # no support for .. path components or for win32 long-path syntax
# (//?/ path prefix)
die "Unsupported path syntax" if $path =~ m!/\.\./! || $path =~ m!/\.\.$!
|| $path =~ m!^\.\.!;
- die "Unsupported path syntax" if wndws() && $path =~ m!^//\?/!;
+ die "Unsupported path syntax" if win32() && $path =~ m!^//\?/!;
if ($path !~ m!^(.:)?/!) { # relative path
- if (wndws() && $path =~ /^.:/) { # drive letter
+ if (win32() && $path =~ /^.:/) { # drive letter
my $dcwd;
# starts with drive letter: current dir on drive
$dcwd = Cwd::getdcwd ($1);
@@ -1060,7 +1056,7 @@ sub dir_slash {
sub dir_creatable {
my $path=shift;
#print STDERR "testing $path\n";
- $path =~ s!\\!/!g if wndws;
+ $path =~ s!\\!/!g if win32;
return 0 unless -d $path;
$path .= '/' unless $path =~ m!/$!;
#print STDERR "testing $path\n";
@@ -1102,7 +1098,7 @@ a fileserver.
sub dir_writable {
my ($path) = @_;
return 0 unless -d $path;
- $path =~ s!\\!/!g if wndws;
+ $path =~ s!\\!/!g if win32;
$path .= '/' unless $path =~ m!/$!;
my $i = 0;
my $f;
@@ -1146,9 +1142,9 @@ sub mkdirhier {
$ret = 1;
} else {
my $subdir = "";
- # windows is special as usual: we need to separate //servername/ part
+ # win32 is special as usual: we need to separate //servername/ part
# from the UNC path, since (! -d //servername/) tests true
- $subdir = $& if ( wndws() && ($tree =~ s!^//[^/]+/!!) );
+ $subdir = $& if ( win32() && ($tree =~ s!^//[^/]+/!!) );
my @dirs = split (/[\/\\]/, $tree);
for my $dir (@dirs) {
@@ -1621,13 +1617,13 @@ sub removed_dirs {
# what should we do with not existing entries????
next if (! -r "$f");
my $abs_f = Cwd::abs_path ($f);
- # the following is necessary because on windows,
+ # the following is necessary because on win32,
# abs_path("tl-portable")
# returns
# c:\tl test\...
# and not forward slashes, while, if there is already a forward /
# in the path, also the rest is done with forward slashes.
- $abs_f =~ s!\\!/!g if wndws();
+ $abs_f =~ s!\\!/!g if win32();
if (!$abs_f) {
warn ("oops, no abs_path($f) from " . `pwd`);
next;
@@ -1887,7 +1883,7 @@ sub do_postaction {
sub _do_postaction_fileassoc {
my ($how, $mode, $tlpobj, $pa) = @_;
- return 1 unless wndws();
+ return 1 unless win32();
my ($errors, %keyval) =
parse_into_keywords($pa, qw/extension filetype/);
@@ -1925,7 +1921,7 @@ sub _do_postaction_fileassoc {
sub _do_postaction_filetype {
my ($how, $tlpobj, $pa) = @_;
- return 1 unless wndws();
+ return 1 unless win32();
my ($errors, %keyval) =
parse_into_keywords($pa, qw/name cmd/);
@@ -1970,7 +1966,7 @@ sub _do_postaction_filetype {
# associated program shows up in `open with' menu
sub _do_postaction_progid {
my ($how, $tlpobj, $pa) = @_;
- return 1 unless wndws();
+ return 1 unless win32();
my ($errors, %keyval) =
parse_into_keywords($pa, qw/extension filetype/);
@@ -2020,7 +2016,7 @@ sub _do_postaction_script {
return 0;
}
my $file = $keyval{'file'};
- if (wndws() && defined($keyval{'filew32'})) {
+ if (win32() && defined($keyval{'filew32'})) {
$file = $keyval{'filew32'};
}
my $texdir = `kpsewhich -var-value=TEXMFROOT`;
@@ -2050,7 +2046,7 @@ sub _do_postaction_script {
sub _do_postaction_shortcut {
my ($how, $tlpobj, $do_menu, $do_desktop, $pa) = @_;
- return 1 unless wndws();
+ return 1 unless win32();
my ($errors, %keyval) =
parse_into_keywords($pa, qw/type name icon cmd args hide/);
@@ -2321,7 +2317,7 @@ sub add_remove_symlinks {
my $plat_bindir = "$Master/bin/$arch";
# nothing to do with symlinks on Windows, of course.
- return if wndws();
+ return if win32();
my $info_dir = "$Master/texmf-dist/doc/info";
if ($mode eq "add") {
@@ -2407,7 +2403,7 @@ be called to make the changes immediately visible.
sub w32_add_to_path {
my ($bindir, $multiuser) = @_;
- return if (!wndws());
+ return if (!win32());
my $path = TeXLive::TLWinGoo::get_system_env() -> {'/Path'};
$path =~ s/[\s\x00]+$//;
@@ -2652,7 +2648,7 @@ sub untar {
# on w32 don't extract file modified time, because AV soft can open
# files in the mean time causing time stamp modification to fail
- my $taropt = wndws() ? "xmf" : "xf";
+ my $taropt = win32() ? "xmf" : "xf";
if (system($tar, $taropt, $tarfile) != 0) {
tlwarn("TLUtils::untar: $tar $taropt $tarfile failed (in $targetdir)\n");
$ret = 0;
@@ -3150,7 +3146,7 @@ sub _download_file_lwp {
sub _download_file_program {
my ($url, $dest, $type) = @_;
- if (wndws()) {
+ if (win32()) {
$dest =~ s!/!\\!g;
}
@@ -3199,7 +3195,7 @@ Return C</dev/null> on Unix and C<nul> on Windows.
=cut
sub nulldev {
- return (&wndws()) ? 'nul' : '/dev/null';
+ return (&win32()) ? 'nul' : '/dev/null';
}
=item C<get_full_line ($fh)>
@@ -4062,7 +4058,7 @@ sub texdir_check {
# Unfortunately we have lots of special characters.
# On Windows, backslashes are normal but will already have been changed
# to slashes by tl_abs_path. And we should only check for : on Unix.
- my $colon = wndws() ? "" : ":";
+ my $colon = win32() ? "" : ":";
if ($texdir =~ /[,$colon;\\{}\$]/) {
if ($warn) {
print " !! TEXDIR value has problematic characters: $orig_texdir\n";
@@ -4075,7 +4071,7 @@ sub texdir_check {
return 0;
}
# w32: for now, reject the root of a samba share
- return 0 if wndws() && $texdir =~ m!^//[^/]+/[^/]+$!;
+ return 0 if win32() && $texdir =~ m!^//[^/]+/[^/]+$!;
# if texdir already exists, make sure we can write into it.
return dir_writable($texdir) if (-d $texdir);
@@ -4106,7 +4102,7 @@ are (erroneously) eradicated.
sub quotify_path_with_spaces {
my $p = shift;
- my $m = wndws() ? '[+=^&();,!%\s]' : '.';
+ my $m = win32() ? '[+=^&();,!%\s]' : '.';
if ( $p =~ m/$m/ ) {
$p =~ s/"//g; # remove any existing double quotes
$p = "\"$p\"";
@@ -4154,13 +4150,13 @@ slashes after reading a path. They both are no-ops on Unix.
sub native_slashify {
my ($r) = @_;
- $r =~ s!/!\\!g if wndws();
+ $r =~ s!/!\\!g if win32();
return $r;
}
sub forward_slashify {
my ($r) = @_;
- $r =~ s!\\!/!g if wndws();
+ $r =~ s!\\!/!g if win32();
return $r;
}
@@ -4242,7 +4238,7 @@ END_NO_SSL
#
sub query_ctan_mirror_curl {
my $max_trial = 3;
- my $warg = (wndws() ? '-w "%{url_effective}" ' : "-w '%{url_effective}' ");
+ my $warg = (win32() ? '-w "%{url_effective}" ' : "-w '%{url_effective}' ");
for (my $i = 1; $i <= $max_trial; $i++) {
# -L -> follow redirects
# -s -> silent
@@ -4849,7 +4845,7 @@ sub mktexupd {
die "mktexupd: exec file does not exist: $file" if (! -f $file);
}
}
- my $delim= (&wndws)? ';' : ':';
+ my $delim= (&win32)? ';' : ':';
my $TEXMFDBS;
chomp($TEXMFDBS=`kpsewhich --show-path="ls-R"`);
@@ -4859,8 +4855,8 @@ sub mktexupd {
foreach my $path (keys %files) {
foreach my $db (@texmfdbs) {
$db=substr($db, -1) if ($db=~m|/$|); # strip leading /
- $db = lc($db) if wndws();
- my $up = (wndws() ? lc($path) : $path);
+ $db = lc($db) if win32();
+ my $up = (win32() ? lc($path) : $path);
if (substr($up, 0, length("$db/")) eq "$db/") {
# we appended a / because otherwise "texmf" is recognized as a
# substring of "texmf-dist".
@@ -4992,7 +4988,7 @@ directory for PATH.
sub prepend_own_path {
my $bindir = dirname(Cwd::abs_path(which('kpsewhich')));
- if (wndws()) {
+ if (win32()) {
$bindir =~ s!\\!/!g;
$ENV{'PATH'} = "$bindir;$ENV{PATH}";
} else {