diff options
Diffstat (limited to 'Master/tlpkg')
-rwxr-xr-x | Master/tlpkg/bin/tlpkg-ctan-check | 2 | ||||
-rwxr-xr-x | Master/tlpkg/bin/tlpkginfo | 37 | ||||
-rwxr-xr-x | Master/tlpkg/libexec/ctan2tds | 35 |
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 = ©_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"; |