summaryrefslogtreecommitdiff
path: root/Master/tlpkg
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg')
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/bin/tlpkginfo37
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds35
3 files changed, 46 insertions, 28 deletions
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index ae5d1b3c23a..c56bfc94e07 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -173,7 +173,7 @@ my @TLP_working = qw(
elbioimp electrum eledform eledmac ellipsis elmath elpres elsarticle
elteikthesis eltex elvish
emarks embedall embrac emptypage emulateapj emp
- encxvlna endfloat endheads endiagram endnotes
+ enctex encxvlna endfloat endheads endiagram endnotes
engpron engrec engtlc enigma enotez
enumitem enumitem-zref envbig environ envlab
epigrafica epigram epigraph epiolmec eplain
diff --git a/Master/tlpkg/bin/tlpkginfo b/Master/tlpkg/bin/tlpkginfo
index 2f1829e61db..df1fd3081e4 100755
--- a/Master/tlpkg/bin/tlpkginfo
+++ b/Master/tlpkg/bin/tlpkginfo
@@ -59,8 +59,8 @@ sub main {
}
#
-# Return 0 for success if we find a path (and print it on stdout), else
-# return 1.
+# Return 0 for success if we find a path (and print it on stdout),
+# else return 1.
#
sub find_ctan_dir {
my ($pkgname) = @_;
@@ -197,8 +197,8 @@ sub find_ctan_dir {
-# If the .tlpsrc file for ME has a catalogue entry, return it.
-# Else return empty string.
+# If the .tlpsrc file for ME has a catalogue entry, return it,
+# else return empty string.
#
sub tlpsrc_find_catalogue {
my ($me) = @_;
@@ -217,7 +217,7 @@ sub tlpsrc_find_catalogue {
-# look up ctan path for given package name in catalogue entry.
+# Look up ctan path for given package name in catalogue entry.
# xml is too hard to parse, so just look for the <ctan path...> entry.
#
# Return the ctan path if found (without leading /), or undef.
@@ -231,7 +231,7 @@ sub catalogue_find_ctan_path {
return undef unless -r $catfile;
# get the raw tag from the catalogue file.
- open (CATFILE, "<$catfile") || die "Cannot read $catfile: $!\nFix me!\n";
+ open (CATFILE, "<$catfile") || die "open($catfile) failed, fixme: $!";
while ($ctan_path = <CATFILE>) {
last if $ctan_path =~ /<ctan /;
}
@@ -244,9 +244,9 @@ sub catalogue_find_ctan_path {
$ctan_path .= <CATFILE>;
}
close CATFILE;
- $ctan_path =~ s/\n/ /g;
- ($ctan_path) = ($ctan_path =~ m,(<.*?/>),);
- return undef unless $ctan_path; # in case it's not present at all
+ $ctan_path =~ s/\n/ /g; # put it on one line
+ ($ctan_path) = ($ctan_path =~ m,(<.*?/>),); # remove angle brackets
+ return undef unless $ctan_path; # if it's not present at all
# extract just the dir or file name, without options, etc.
$ctan_path =~ m,path=(["'])/(.*?)\1,;
@@ -300,6 +300,11 @@ sub prepare {
} elsif ($pkg eq "context") {
$tds_path = "/home/ftp/mirror/www.pragma-ade.com/context/current/cont-tmf.zip";
+ } elsif ($pkg eq "enctex") {
+ # not tds, but we omit the TDS_READY below
+ # and do the rest in ctan2tds as usual.
+ $tds_path = "$CTAN/systems/enctex/enctex.tar.gz";
+
} elsif ($pkg eq "hfoldsty") {
$tds_path = glob ("$CTAN/fonts/hfoldsty/hfoldsty-v*.zip");
@@ -322,13 +327,16 @@ sub prepare {
# now we have a tds, so unzip it in a tmpdir and be sure it's readable.
my $tmpdir = &copy_to_tmpdir ($pkg);
- system ("unzip -q $tds_path -d $tmpdir");
+ my $unpack = ($tds_path =~ /zip$/)
+ ? "unzip -q $tds_path -d $tmpdir"
+ : "tar -C $tmpdir -xf $tds_path";
+ system ($unpack) == 0 || die "unpack failed: $!\n($unpack)";
system ("chmod -R a+rX $tmpdir");
- # put a flag for ctan2tds' donormal() to work
+ # put a flag for ctan2tds' donormal() to work.
system ("echo $tds_path >$tmpdir/TDS_READY");
- # problems with amslatex packages: they are all bundled together,
+ # fixups ... the amslatex packages are all bundled together,
# we now have to remove the unwanted ones.
if ($pkg =~ /^($amslatex_tds_pkgs)$/) {
chdir ($tmpdir) || die "chdir($tmpdir) failed: $!";
@@ -341,6 +349,11 @@ sub prepare {
push (@deldir, $dir);
}
system ("rm -rf @deldir"); # discard the rest
+
+ } elsif ($pkg eq "enctex") {
+ unlink ("$tmpdir/TDS_READY"); # not tds
+ # one more file not in tarball
+ system ("cp -p $CTAN/systems/enctex/utf8warn.tex $tmpdir/");
}
return $tmpdir;
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 75469de3096..f94802b5768 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -357,7 +357,6 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'em', "die 'skipping, european modern fonts too old, not packaged'",
'emerald', "die 'skipping, nonfree fonts'",
'empheq', "die 'skipping, use mh'",
- 'enctex', "die 'skipping, needs compilation (plus csplain macros)'",
'encxvlna', "&MAKEcopy",
'enpassant', "die 'skipping, license unknown'",
'epic', "die 'skipping, license unknown and replaced by eepic'",
@@ -1107,6 +1106,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`);
'concrete' => '&PREHOOK_concrete',
'download' => '&PREHOOK_savepdf',
'dynblocks' => '&PREHOOK_flatten1',
+ 'enctex', => '&PREHOOK_flatten1',
'fixme' => '&PREHOOK_fixme',
'fontools' => '&PREHOOK_fontools',
'ibygrk' => '&PREHOOK_ibygrk',
@@ -1246,6 +1246,7 @@ $standarddest = "texmf-dist";
'dratex', 'generic',
'edmac', 'generic',
'eijkhout', 'generic',
+ 'enctex', 'generic',
'epigram', 'generic',
'eplain', 'eplain',
'epsf', 'generic',
@@ -1400,6 +1401,8 @@ $standardtex='\.(.bx|cfg|sty|clo|ldf|cls|def|fd|cmap|4ht)$';
'easy', 'easy.*\.sty', # no mydoc.sty
'ecv', '\.sty|\.cls|\.ldf', # no docstrip.cfg, else system-wide
'edmac', 'edmac.tex|edstanza.tex|\.sty',
+ 'enctex', '(1250-|852-|csfmacro|enc-u|encmacro|il2-|kam-'
+ . '|mixcodes|noprefnt|plain-|polyset|t1macro|utf8).*\.tex',
'esami', '\.sty|\.lng', # no example .cfg
'expex', '\.tex|' . $standardtex,
'exsheets', 'dicts|' . $standardtex,
@@ -2605,6 +2608,7 @@ $standardclean = '\.head|\.tmp|\.dvi|\.log|\.out|\.aux|\.toc|\.lof|\.lot'
'cprotect' => $standardclean . '|\.cpt', # temp files for doc
'dateiliste' => $standardclean . '|dateiliste.README*', # already in dist
'elvish' => '\.pk3', # no pk files
+ 'enctex' => '\.ch|\.patch', # binary-related
'findhyph' => 'findhyph.pdf', # we generate
'fundus' => $standardclean . '|outline.sty', # in own package
'gentle' => 'gentle.ps.gz', # pdf is enough
@@ -4792,6 +4796,11 @@ sub PREHOOK_concrete {
# symlinks will get removed afterward by MAKEflatten.
}
+sub PREHOOK_enctex {
+ print "PREHOOK_$package - up a level\n";
+ &SYSTEM ("$MV enctex/* .");
+}
+
sub PREHOOK_fixme {
print "PREHOOK_$package - create dtx subdirs\n";
&xmkdir ("themes", "layouts", "layouts/env", "layouts/target");
@@ -5242,20 +5251,6 @@ sub POSTcoordsys {
&SYSTEM ("$MV putfile. putfile.maple");
}
-sub POST_cstexpkgs {
- print "POST_cstexpkgs (for $package) - untar\n";
- # used for csplain and cslatex
- my $tarfile = -r "$package.tar.gz" ? "$package.tar.gz" : "somethingwrong";
- my $untar = "tar -C $DEST --strip-components=1 -x -f $tarfile";
- $untar .= " --exclude=texmf/doc/cstex"; # handled in its own package
- $untar .= " --exclude=texmf/tex/generic/enctex"; # must do by hand
- &SYSTEM ($untar);
- &SYSTEM ("$RM $tarfile");
-}
-
-# update enctex files from csplain
-# updmap to remake *dl_14.map, etc.
-
sub POSTcs {
print "POST$package - untar and combine\n";
#
@@ -5308,6 +5303,16 @@ sub POSTcstex {
&SYSTEM ("$RM $DEST/doc/cstex/*.ps $DEST/doc/cstex/*.dvi");
}
+sub POST_cstexpkgs { # used for csplain and cslatex
+ print "POST_cstexpkgs (for $package) - untar\n";
+ my $tarfile = -r "$package.tar.gz" ? "$package.tar.gz" : "somethingwrong";
+ my $untar = "tar -C $DEST --strip-components=1 -x -f $tarfile";
+ $untar .= " --exclude=texmf/doc/cstex"; # handled in its own package
+ $untar .= " --exclude=texmf/tex/generic/enctex"; # must do by hand
+ &SYSTEM ($untar);
+ &SYSTEM ("$RM $tarfile");
+}
+
sub POSTctex {
print "POST$package - move subdirectories\n";
my $dstdir = "$DEST/tex/latex/$package";