summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-03-20 18:33:50 +0000
committerKarl Berry <karl@freefriends.org>2011-03-20 18:33:50 +0000
commit83f853b5069bf9abe30cbbfa23e39c267f2ec57e (patch)
tree15cfa1522a64d8e862ea8ba90bd91fd8b893c2b0 /Master
parentda20bc65e955ee5695f0aca3fc6aff4a528a7fcd (diff)
biber darwin/cygwin updates
git-svn-id: svn://tug.org/texlive/trunk@21769 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rwxr-xr-xMaster/bin/i386-cygwin/biber.exe (renamed from Master/bin/i386-cygwin/biber)bin12461935 -> 12461938 bytes
-rwxr-xr-xMaster/bin/universal-darwin/biberbin11009046 -> 11009034 bytes
-rw-r--r--Master/texmf-dist/source/bibtex/biber/biblatex-biber-v0.8.3.tar.gzbin1607454 -> 0 bytes
-rw-r--r--Master/texmf-dist/source/bibtex/biber/biblatex-biber.tar.gzbin0 -> 1612870 bytes
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds16
-rwxr-xr-xMaster/tlpkg/libexec/place63
6 files changed, 51 insertions, 28 deletions
diff --git a/Master/bin/i386-cygwin/biber b/Master/bin/i386-cygwin/biber.exe
index e2ba13b631a..e4822fa35fd 100755
--- a/Master/bin/i386-cygwin/biber
+++ b/Master/bin/i386-cygwin/biber.exe
Binary files differ
diff --git a/Master/bin/universal-darwin/biber b/Master/bin/universal-darwin/biber
index a3da74900d8..5a27e8b5fb6 100755
--- a/Master/bin/universal-darwin/biber
+++ b/Master/bin/universal-darwin/biber
Binary files differ
diff --git a/Master/texmf-dist/source/bibtex/biber/biblatex-biber-v0.8.3.tar.gz b/Master/texmf-dist/source/bibtex/biber/biblatex-biber-v0.8.3.tar.gz
deleted file mode 100644
index a802ddee385..00000000000
--- a/Master/texmf-dist/source/bibtex/biber/biblatex-biber-v0.8.3.tar.gz
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/source/bibtex/biber/biblatex-biber.tar.gz b/Master/texmf-dist/source/bibtex/biber/biblatex-biber.tar.gz
new file mode 100644
index 00000000000..0004d8f6f9c
--- /dev/null
+++ b/Master/texmf-dist/source/bibtex/biber/biblatex-biber.tar.gz
Binary files differ
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 0231167f90e..81ccef25ddd 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -4099,16 +4099,13 @@ sub POSTbabelbib {
}
sub POSTbiber {
- print "POST$package - move doc, unpack and install binaries\n";
+ print "POST$package - unpack and install binaries\n";
# we've started with everything under source/.
&xchdir ("$DEST/source/bibtex/biber");
- my $biber_tar = glob ("biblatex-biber-*.tar.gz");
- (my $biber_rel = $biber_tar) =~ s/.tar.gz$//;
- &SYSTEM ("tar xf $biber_tar --strip-components=2 $biber_rel/doc/biber.pdf");
# move doc pdf.
&SYSTEM ("$MV biber.pdf $DOCDIR/");
-
+
# biber uses different platform names.
my %tl_platform = (
"MSWIN" => "win32",
@@ -4135,7 +4132,7 @@ sub POSTbiber {
# each .tar.gz unpacks into a single file named biber,
# .zip unpacks into biber.exe.
my $biber_binary = "biber";
- $biber_binary .= ".exe" if $archive =~ /MSWIN/i;
+ $biber_binary .= ".exe" if $archive =~ /MSWIN|cygwin/i;
# Put the executable in both the
# (a) Master bin directory and
@@ -4147,11 +4144,12 @@ sub POSTbiber {
my $builddir = "$BUILDDEST/utils/biber/bin/$tl_platform";
&SYSTEM ("mkdir -p $builddir/");
- &SYSTEM ("$MV $biber_binary $builddir/$biber_binary");
+ &SYSTEM ("$CP $biber_binary $builddir/$biber_binary");
#
- # really need to do svn cp here.
+ # really need to do svn cp for this (in place, can't do it here).
my $bindir = "$TOPDEST/bin/$tl_platform";
- &SYSTEM ("$CP $biber_binary $bindir/"); # bindir should already exist
+ &SYSTEM ("mkdir -p $bindir/");
+ &SYSTEM ("$MV $biber_binary $bindir/"); # bindir should already exist
}
# don't keep binary archive around in Master tree.
diff --git a/Master/tlpkg/libexec/place b/Master/tlpkg/libexec/place
index 6da0194d942..8c932529a9e 100755
--- a/Master/tlpkg/libexec/place
+++ b/Master/tlpkg/libexec/place
@@ -33,7 +33,8 @@ print "place: chicken mode = $chicken\n";
die "usage: $0 PKGNAME\n" unless @ARGV == 1;
$package = $ARGV[0];
-my $is_new_package = 0;
+# $::opt_verbosity = 3; # debug tlpdb reading
+
%dirs = (); # dirs we make changes in
$TMP = $ENV{"TMPDIR"} || "/tmp";
$tmpfile = "$TMP/$>.tlplace"; # use effective uid in temp file names
@@ -65,22 +66,10 @@ else { die "$cooked_master: no top level texmf or texmf-dist"; }
die "top-level README in $Root, that can't be right" if <*/README>;
-# initialize TLPDB.
-my $tlpdb = new TeXLive::TLPDB ("root" => $M);
-# create TLTREE from stuff in cooked
-my $tltree = TeXLive::TLTREE->new ("svnroot" => $cooked_master);
-$tltree->init_from_files;
-
-# get existing package from TLPDB.
-my %Old;
-my $tlpold = $tlpdb->get_package ($package);
-if (defined($tlpold)) {
- foreach ($tlpold->all_files) {
- $Old{$_} = 1;
- }
-} else {
- $is_new_package = 1;
-}
+# get all files in the existing package, if there is one.
+# In the unusual case when we have both Master and Build, we'll assume
+# we also want all the platform-specific files under bin/; else not.
+our %Old = &find_old_files ($package, $DEST eq $TOP ? "with-arch" : "");
# create new tlpsrc.
my $tlpsrc = TeXLive::TLPSRC;
@@ -103,6 +92,9 @@ if (! -r $tlpsrcfile) {
}
# make the new tlpobj.
+# create TLTREE from stuff in cooked.
+my $tltree = TeXLive::TLTREE->new ("svnroot" => $cooked_master);
+$tltree->init_from_files;
my $tlpnew = $tlpsrc->make_tlpobj($tltree, $M);
@@ -158,7 +150,7 @@ for my $file (sort keys %New) {
&add_file ("$M/$file") if ! $Old{$file};
}
-if ($is_new_package) {
+if (keys %Old == 0) { # new package
&add_file ("$M/tlpkg/tlpsrc/$package.tlpsrc");
}
@@ -194,6 +186,39 @@ exit (0);
+# return hash whose keys are all the files in PACKAGE from the main
+# tlpdb. If second arg is "with-arch", include platform-specific
+# files. If PACKAGE is not defined, return undef or the empty list.
+#
+sub find_old_files {
+ my ($package,$control) = @_;
+ my %ret;
+
+ # initialize TLPDB.
+ my $tlpdb = new TeXLive::TLPDB ("root" => $M);
+
+ my $tlpold = $tlpdb->get_package ($package);
+ if (defined($tlpold)) {
+ my @oldpkgs;
+ if ($control eq "with-arch") {
+ # also retrieve the platform-specific files, which are dependencies.
+ @oldpkgs = $tlpdb->expand_dependencies ("-only-arch", $tlpdb,($package));
+ } else {
+ @oldpkgs = ($package);
+ }
+ for my $oldpkgname (@oldpkgs) {
+ my $oldp = $tlpdb->get_package ($oldpkgname);
+ for my $f ($oldp->all_files) {
+ $ret{$f} = 1;
+ }
+ }
+ }
+
+ return %ret;
+}
+
+
+
# add a file to the repository. for svn, we also have to add the
# containing dir, and the parent of that dir, if they are new.
#
@@ -259,7 +284,7 @@ sub compare_disk_vs_tlpobj {
#
sub show_tlp_diffs {
my ($tlpnew, %Old) = @_;
- if (!defined ($tlpold)) {
+ if (keys %Old == 0) {
print "place: $package not present in $M/$InfraLocation/$DatabaseName\n\n";
} else {
print "new vs. present $package (present is indented)\n";