From d4eefe7213116b2b11dbfa09d39b54d6470203ca Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 16 Jun 2007 16:22:16 +0000 Subject: move new-infra to Master/tlpkg rename stuff create list files tlsrc for all packages (also schemes) git-svn-id: svn://tug.org/texlive/trunk@4439 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/bin/tlsrc2tldb.pl | 110 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 Master/tlpkg/bin/tlsrc2tldb.pl (limited to 'Master/tlpkg/bin/tlsrc2tldb.pl') diff --git a/Master/tlpkg/bin/tlsrc2tldb.pl b/Master/tlpkg/bin/tlsrc2tldb.pl new file mode 100644 index 00000000000..197c1bfbb09 --- /dev/null +++ b/Master/tlpkg/bin/tlsrc2tldb.pl @@ -0,0 +1,110 @@ +#!/usr/bin/env perl -w +# +# tlsrc2tldb.pl +# convert a set of tlsrc files (given as arguments) into tldb +# Copyright 2007 Norbert Preining +# +# This file is licensed under the GNU General Public Licence version 2 +# or any later version +# + +BEGIN { + ($mydir = $0) =~ s,/[^/]*$,,; + unshift (@INC, "$mydir/.."); +} + +use strict; + +use TeXLive::TLPSRC; +use TeXLive::TLPOBJ; +use TeXLive::TLPDB; +use TeXLive::TLTREE; +use Getopt::Long; +use Pod::Usage; +use File::Path; + + +my $opt_master = "/src/TeX/texlive-svn/Master"; +our $opt_debug = 0; +my $man = 0; +my $help = 0; + +GetOptions("debug!", # debug mode + "master=s" => \$opt_master, # location of the tree + 'help|?' => \$help, man => \$man + ) or pod2usage(2); + +pod2usage(1) if $help; +pod2usage(-exitstatus => 0, -verbose => 2) if $man; + +if (! -d "$opt_master") { + die "Master $opt_master does not exists!"; +} + +my $tltree = TeXLive::TLTREE->new( 'svnroot' => "$opt_master" ); +$tltree->init_from_svn; + +my $tldb = TeXLive::TLPDB->new; + +foreach my $f (@ARGV) { + my $tlsrc = new TeXLive::TLPSRC; + $tlsrc->from_file($f); + my $tlp = $tlsrc->make_tlpobj($tltree); + $tldb->add_tlpobj($tlp); +} + +$tldb->writeout; + +__END__ + +=head1 NAME + +tlsrc2tldb - Converting tlsrc files into tldb file + +=head1 SYNOPSIS + +tlsrc2tldb [options] [tlsrcfiles ...] + + Options: + -help brief help message + -man full documentation + -master=s set Master of TeX Live tree + -debug get debug messages from TL* modules + +=head1 OPTIONS + +=over 8 + +=item B<-help> + +Print a brief help message and exits. + +=item B<-man> + +Prints the manual page and exits. + +=item B<-master> + +The location given by B<-master> must point to a valid svn repository +of TeX Live Master direcory. Defaults to /src/TeX/texlive-svn/Master + +=item B<-debug> + +Give debug messages from the TeX Live modules + +=back + +=head1 DESCRIPTION + +B converts TeX Live Source (tlsrc) files into TeX Live Database +(tldb). + +=head1 AUTHORS AND COPYRIGHT + +This script and its documentation was written by +Norbert Preining > for the TeX Live distribution and both +are licensed under the GNU General Public License Version 2 or later. + +=cut + + -- cgit v1.2.3