From 393d6d06e24b64afbfd69018124b4bab980999ea Mon Sep 17 00:00:00 2001 From: Manuel Pégourié-Gonnard Date: Sat, 3 May 2008 14:19:25 +0000 Subject: tds ready packages handling git-svn-id: svn://tug.org/texlive/trunk@7820 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/bin/ctan2tds | 22 +++++++++++----------- Master/tlpkg/bin/ctan2tl | 2 +- Master/tlpkg/bin/tlpkg-ctan-check | 2 +- Master/tlpkg/bin/tlpkginfo | 25 +++++++++++++++++-------- 4 files changed, 30 insertions(+), 21 deletions(-) (limited to 'Master/tlpkg/bin') diff --git a/Master/tlpkg/bin/ctan2tds b/Master/tlpkg/bin/ctan2tds index ee23f45a737..13f993a982d 100755 --- a/Master/tlpkg/bin/ctan2tds +++ b/Master/tlpkg/bin/ctan2tds @@ -47,7 +47,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'LingTrees', "die 'skipping, requires python'", 'SIstyle', '&MAKEflatten', 'aastex', "&MAKEflatten", - 'acronym', "&MAKEunzip", 'active-conf', "&MAKEactive_conf", 'aeb_pro', "die 'skipping, requires new acrobat + complicated'", 'arabxetex', '&MAKEflatten', @@ -120,7 +119,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'ctib', "&MAKEflatten", 'cweb', "die 'skipping, programs'", 'cyrillic', "&MAKEcopy", # we use latex-tds/cyrillic.zip - 'dashrule', "&MAKEunzip", 'datetime', "&MAKEflatten", 'deleq', "die 'skipping, nosell license'", 'devanagr', "&MAKEdevanagr", @@ -136,7 +134,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'dropping', "die 'skipping, nosell license'", 'dtk', "&MAKEflatten", 'dtxtut', "&setup", # straight copy - 'dvdcoll', "&MAKEunzip", 'easy', "&MAKEeasy", 'ebib', "die 'skipping, as it is Emacs'", 'ebong', "&MAKEebong", @@ -195,7 +192,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'grtimes', "die 'skipping, requires nonfree monotype times'", 'hfbright', "&MAKEflatten", 'hfoldsty', "&MAKEflatten", - 'hyperref', "&MAKEunzip", 'hyphen-german',"die 'please install hyphen-german by hand, sorry'", 'ibycus-babel',"&MAKEibycusbabel", 'ibygrk', "&MAKEflatten", @@ -209,7 +205,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'jsclasses', "die 'skipping, requires nonfree ptex/platex'", 'kerkis', "&MAKEflatten", 'koma-script', "&MAKEkoma", - 'kpfonts', "&MAKEunzip", 'kurier', "&MAKEcopy", 'kuvio', "die 'skipping, nonfree license'", 'latex', "&MAKEcopy", # we use latex-tds/base.zip @@ -220,7 +215,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'leading', "&MAKEleading", 'leawood', "&MAKEflatten", 'lettre', "&MAKEflatten", - 'lettrine', "&MAKEunzip", 'lexitex', "die 'skipping, camel has replaced'", 'lfb', "&MAKElfb", 'lh', "&MAKEcopy", @@ -250,7 +244,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'manjutex', "die 'skipping, obsolete on CTAN'", #"&MAKEflatten", 'manpage', "die 'skipping, nonfree license'", 'mathdesign', "&MAKEmathdesign", - 'marginnote', "&MAKEunzip", 'mathexam', "&MAKEflatten", 'mathmode', "&setup", 'mathpazo', "&MAKEmathpazo", @@ -261,7 +254,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'mflogo', "&MAKEmflogo", 'mfpic', "&MAKEflatten", 'minionpro', "die 'skipping, requires nonfree minion'", - 'minitoc', "&MAKEunzip", 'misc', "&MAKEmisc", 'mkbangtex', "die 'skipping, no copyright (and python)'", 'mlbib', "die 'skipping, bib file names are too generic'", @@ -297,7 +289,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'pdf-forms-tutorial', "die 'use pdf-forms-tutorial-de or -en'", 'pdf-forms-tutorial-de', "&MAKEpdf_forms_tutorial", 'pdf-forms-tutorial-en', "&MAKEpdf_forms_tutorial", - 'pdfpages', "&MAKEunzip", 'pgf', "&MAKEcopy", 'pgfplots', "&MAKEflatten", # .sty's claimed generic aren't, keep latex 'phaistos', "&MAKEflatten", @@ -386,7 +377,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'stellenbosch',"&MAKEcopy", 'symbolindex', "die 'skipping, requires binary'", 't2', "&MAKEt2", - 'tabvar', "&MAKEunzip", 'tamethebeast',"&MAKEtamethebeast", 'tamil-omega', "die 'skipping, supports nonfree ISM fonts'", #"&MAKEflatten", 'taylor', "die 'skipping, nonfree license'", @@ -399,7 +389,6 @@ chdir $startdir || die "chdir($startdir) failed: $!"; # back to raw 'thaifonts-scalable', "die 'Thai, fontforge format only, skip'", 'thailatex', "die 'Thai, requires preprocessor (?), skip'", 'thsmc', "die 'skipping, requires nonfree font'", - 'thumbpdf', "&MAKEunzip", 'ticket', "&MAKEflatten", 'tipa', "&MAKEtipa", 'titlepage-uni-dortmund', "die 'needs graphics (too short names) in .'", @@ -1542,6 +1531,17 @@ sub donormal { my ($ctrl) = @_; print "doing donormal($ctrl)...\n"; + + # check for tds-ready packages + if ( -e "$startdir/$packagedir/TDS_READY" ) { + print "using tds-ready tree :)\n"; + &SYSTEM ("$RM $startdir/$packagedir/TDS_READY"); + &SYSTEM ("mkdir -p $DEST"); + &xchdir ($DEST); + &SYSTEM ("$CP -r $startdir/$packagedir/* ."); + return 0; + } + &setup unless $ctrl eq "nosetup"; &xchdir("$DEST/doc/$whichdocformat/$package"); &buildfilelist; diff --git a/Master/tlpkg/bin/ctan2tl b/Master/tlpkg/bin/ctan2tl index b6b9000c522..8f1f6896d31 100755 --- a/Master/tlpkg/bin/ctan2tl +++ b/Master/tlpkg/bin/ctan2tl @@ -51,7 +51,7 @@ if test -z "$pkg"; then exit 1 fi -ctan_dir1=`tlpkginfo --ctan-dir $pkg` +ctan_dir1=`tlpkginfo --ctan-dir-tds $pkg` if test -z "$ctan_dir1"; then echo "$0: can't find CTAN directory for $pkg." >&2 exit 1 diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 6cdc35d3766..73e1f9aad9b 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -257,7 +257,7 @@ sub do_tlp return 1; } - chomp (my $ctan_dir = `$mydir/tlpkginfo --ctan-dir '$tlpn'`); + chomp (my $ctan_dir = `$mydir/tlpkginfo --ctan-dir-tds '$tlpn'`); if (! $ctan_dir) { warn "$0: oops, no CTAN directory for $tlpn, fix fix\n"; return (); diff --git a/Master/tlpkg/bin/tlpkginfo b/Master/tlpkg/bin/tlpkginfo index 1bfe5709ad8..ea9eb27d462 100755 --- a/Master/tlpkg/bin/tlpkginfo +++ b/Master/tlpkg/bin/tlpkginfo @@ -19,12 +19,16 @@ sub main if ($ARGV[0] eq "--ctan-dir") { return &find_ctan_dir ($ARGV[1]); + } elsif ($ARGV[0] eq "--ctan-dir-tds") { + $want_tds = 1; + return &find_ctan_dir ($ARGV[1]); + } elsif ($ARGV[0] eq "--ctan-root") { print "$CTAN\n"; return 0; } else { - die "Usage: $0 --ctan-dir PKGNAME or --ctan-root (not \"@ARGV\").\n"; + die "Usage: $0 --ctan-dir[-tds] PKGNAME or --ctan-root (not \"@ARGV\").\n"; } } @@ -177,12 +181,18 @@ sub catalogue_find_ctan_path chomp ($ctan_loc); # if the package claims to have tds-ready .zip file, use it. - # except when it's erroneous. - my $tds_path = "$CTAN/install/$ctan_loc.tds.zip"; - if (-s $tds_path && $pkgname !~ /^(lcyw)$/) { - $ctan_loc = ©_to_tmpdir ($pkgname, $tds_path); - system ("unzip -q -a $ctan_loc/$pkgname.tds.zip -d $ctan_loc"); - return $ctan_loc; + if ($want_tds) { + my $tds_path = "$CTAN/install/$ctan_loc.tds.zip"; + # don't use erroneous tds. + if (-s $tds_path && $pkgname !~ /^(lcyw)$/) { + $ctan_loc = ©_to_tmpdir ($pkgname, $tds_path); + # unzip it so that tlpkg-ctan-check has files to compare. + system ("unzip -q -a $ctan_loc/$pkgname.tds.zip -d $ctan_loc"); + # remove the zip and put a flag for ctan2tds to know. + system ("rm $ctan_loc/$pkgname.tds.zip"); + system ("touch $ctan_loc/TDS_READY"); + return $ctan_loc; + } } # if the Catalogue lists the path as a single file, there are two @@ -203,7 +213,6 @@ sub catalogue_find_ctan_path return $ctan_loc; } - # copy file to temp dir and return that for ctan2tl to use. # sub copy_to_tmpdir -- cgit v1.2.3