Hello community,
here is the log from the commit of package texlive-bin for openSUSE:Factory
checked in at Mon Nov 22 12:50:45 CET 2010.
--------
--- texlive-bin/texlive-bin.changes 2010-08-11 09:22:17.000000000 +0200
+++ /mounts/work_src_done/STABLE/texlive-bin/texlive-bin.changes 2010-11-18 14:02:36.000000000 +0100
@@ -1,0 +2,51 @@
+Thu Nov 18 14:00:50 CET 2010 - werner@suse.de
+
+- Check permsissions, add shebang lines
+
+-------------------------------------------------------------------
+Thu Nov 18 08:56:43 CET 2010 - werner@suse.de
+
+- Do not stumble across older versions or releases of TeXLive
+
+-------------------------------------------------------------------
+Wed Nov 17 10:20:42 CET 2010 - werner@suse.de
+
+- Split off fontconfig for type1 fonts to avoid slow down of
+ programs like Inkscape and do NOT enable them by default
+ (bnc#635446, bnc#635005, and bnc#613136)
+
+-------------------------------------------------------------------
+Tue Nov 16 14:36:48 CET 2010 - werner@suse.de
+
+- Update to TeXLive 2010
+ * Default version for PDF output is 1.5, enabling more compression.
+ * pdf(La)TeX now automatically converts a requested EPS file to PDF
+ * Support of execution of a very few external commands from TeX,
+ via the \write18 feature, is now enabled by default. These are
+ commands are repstopdf, makeindex, kpsewhich, bibtex, and bibtex8
+ * BibTeX and Makeindex now refuse to write their output files to an
+ arbitrary directory (like TeX itself), by default.
+ * XeTEX now supports margin kerning along the same lines as pdfTEX.
+ * New programs included:
+ - pTEX engine and related utilities for typesetting Japanese
+ - BibTeXU program for Unicode-enabled BibTeX
+ - chktex utility for checking (La)TeX documents
+ - dvisvgm (http://dvisvgm.sourceforge.net) DVI-to-SVG translator
+- Move fontconfig files to texlive-xetex (bnc#635446)
+
+-------------------------------------------------------------------
+Thu Nov 11 13:53:12 CET 2010 - werner@suse.de
+
+- Make sure that asymptote is fully installed (reported by Cristian
+ Morales)
+
+-------------------------------------------------------------------
+Fri Oct 29 15:42:27 CEST 2010 - werner@suse.de
+
+- Do not use link trigger scripts anymore (bnc#608636)
+- Avoid build date as version extension of luatex, use mod time
+ of Changelog of luatex instead.
+- Add nobody C proggy to avoid trouble with pam and su (bnc#626517)
+- Install fontconfig file to /etc/fonts/conf.avail (bnc#635446)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
source-detex.dif
source-fmtutil.dif
source-gcc44.dif
source-libpng14.patch
source-metapost.dif
texlive-20091107-extra.tar.xz
texlive-20091107-source.tar.xz
texlive-20091107-texmf.tar.xz
texmf-geometry.dif.bz2
New:
----
fc-t1-texlive.conf
nobody.8
nobody.c
texlive-20100722-source.tar.xz
texlive-20100722-texmf.tar.xz
texlive-20100826-extra.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ texlive-bin.spec ++++++
++++ 777 lines (skipped)
++++ between texlive-bin/texlive-bin.spec
++++ and /mounts/work_src_done/STABLE/texlive-bin/texlive-bin.spec
++++++ README.import ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:35.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:35.000000000 +0100
@@ -21,6 +21,14 @@
killall -HUP rpc.mountd rpc.nfsd
+* If other an architecture for the binaries are required on the client
+ side as installed on the server, those can be installed by using e.g.
+
+ rpm --excludepath=/usr/bin --ignorearch --nodeps --force \
+ -Uhv texlive-bin-2009-12.11.x86_64.rpm
+
+ on e.g. i686 based NFS server.
+
* Third (of all of the clients): Run the following command:
texlive-import your.texlive.server.here
++++++ do.mklists ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:35.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:35.000000000 +0100
@@ -113,7 +113,7 @@
-e "s@^(/var/lib/texmf(|/dist|/main))/\$@%dir %attr(1755, root, root) \1@g" \
-e "s@^(/var/cache/texmf)/\$@%dir %attr(1755, root, root) \1@g" \
-e "s@^(/var/cache/texmf/fonts(|/pk|/source|/tfm))/\$@%dir %attr(1777, root, root) \1@g" \
- -e "s@^(/usr/bin/[^/]*[^\*])\*\$@%nobin %ghost \1@g" \
+ -e "s@^(/usr/bin/[^/]*[^\*])\*\$@%isbin \1@g" \
-e "s@^([^%].*)/\$@%dir \1@g" \
-e "\@^%(no|is)bin@! s@^(.*[^\*])\$@%nobin \1@g" \
-e "\@^%(no|is)bin@! s@^(.*)\*\$@%isbin \1@g"
++++++ fc-texlive.conf ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:35.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:35.000000000 +0100
@@ -3,15 +3,12 @@
<!-- ************************************************************ -->
<!-- list of font directories of TeXLive packages -->
-<!-- -->
<!-- all subdirectories of these directories are added as well -->
<!-- ************************************************************ -->
<fontconfig>
<dir>/usr/share/texmf/fonts/opentype</dir>
<dir>/usr/share/texmf/fonts/truetype</dir>
- <dir>/usr/share/texmf/fonts/type1</dir>
<dir>/usr/local/share/texmf/fonts/opentype</dir>
<dir>/usr/local/share/texmf/fonts/truetype</dir>
- <dir>/usr/local/share/texmf/fonts/type1</dir>
</fontconfig>
++++++ nobody.8 ++++++
'\" -*- coding: UTF-8 -*-
.\" Copyright (C) 2010 Werner Fink
.\"
.\" This program is free software; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published by
.\" the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.
.\"
.\" This program is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with this program; if not, write to the Free Software
.\" Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
.\"
.TH NOBODY 8 "Jul 30, 2010" "" "Linux System Administrator's Manual"
.SH NAME
nobdy \- for user root run a specific program as user nobody
.SH SYNOPSIS
.B nobdy
.RB [ ls | find | false | true ]
.SH DESCRIPTION
.B Nobody
drops its privileges if called by the user
.I root
by switching over to the user
.I nobdy
in a clean environment.
Currently the following programs are supported:
.IP \fBls\fP
\- list directory contents
.IP \fBtrue\fP
\- do nothing, successfully
.IP \fBfalse\fP
\- do nothing, unsuccessfully
.IP \fBfind\fP
\- search for files in a directory hierarchy
.SH NOTES
For the program \fBfind\fP the options
.IR -exec ,
.IR -execdir ,
.IR -ok ,
.I -okdir
are
.B not
supported.
.SH FILES
.IR /bin/ls ,
.br
.IR /bin/true ,
.br
.IR /bin/false ,
.br
.I /usr/bin/find
.SH AUTHOR
2010 Werner Fink
.SH "SEE ALSO"
.BR ls (1),
.BR find (1),
.BR su (1),
.BR sudo (8).
++++++ nobody.c ++++++
/*
* Nobody For user root run a specific program as user nobody
*
* Usage: nobody [ls|find|false|true]
*
* Copyright (C) 2010 Werner Fink
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
*/
#include
#include
#include
#include
#include
#include
#include
#include
extern char **environ;
/*
* This list is used to authenticate the program running.
* It is fixed at compile time to avoid a full class of
* dangers ...
*/
static struct {
const char *prog;
const char *run;
} *lp, list[] =
{ /* prog run */
{ "ls", "/bin/ls" },
{ "true", "/bin/true" },
{ "false", "/bin/false" },
{ "find", "/usr/bin/find" },
#ifdef DEBUG
{ "id", "/usr/bin/id" },
{ "printenv", "/usr/bin/printenv" },
#endif
{ 0, 0, }};
static struct {
const char *name;
const char *value;
} *ep, envp[] =
{ { "TERM", 0 },
{ "PATH", "/bin:/usr/bin" },
{ "POSIXLY_CORRECT",0 },
{ "NLSPATH", 0 },
{ "LANG", 0 },
{ "LC_ALL", 0 },
{ "LC_CTYPE", 0 },
{ "LC_COLLATE", 0 },
{ "LC_MESSAGES", 0 },
{ "COLUMNS", 0 },
{ "TABSIZE", 0 },
{ "TIME_STYLE", 0 },
{ "LS_COLORS", 0 },
{ "LS_BLOCK_SIZE", 0 },
{ "BLOCK_SIZE", 0 },
{ "BLOCKSIZE", 0 },
{ 0, 0 }};
int main(int argc, char *argv[])
{
char *program_name;
struct passwd *pwd;
uid_t ruid = getuid();
uid_t euid = geteuid();
gid_t rgid = getgid();
if (argc > 1)
program_name = argv[1];
else
program_name = "true";
argv++;
argc--;
if (*program_name == '/') {
for (lp = list; lp->run && strcmp(program_name, lp->run ); lp++) ;
} else {
for (lp = list; lp->prog && strcmp(program_name, lp->prog); lp++) ;
}
if (!lp->prog) {
errno = EBADRQC;
fprintf(stderr, "nobody: Usage:\n");
fprintf(stderr, " nobody [");
for (lp = list; lp->prog; lp++)
fprintf(stderr, "%s%c", lp->prog, (lp+1)->prog ? '|' : '\0');
fprintf(stderr, "]\n");
goto err;
}
if (ruid == 0 || euid == 0) {
int initgrp = 0;
if ((pwd = getpwnam("nobody")) == (struct passwd*)0)
goto err;
if (ruid == 0) {
initgrp = 1;
ruid = pwd->pw_uid;
rgid = pwd->pw_gid;
} else {
pwd->pw_uid = ruid;
pwd->pw_gid = rgid;
}
if (setregid(rgid, pwd->pw_gid))
goto err;
if (initgrp && initgroups(pwd->pw_name, rgid))
goto err;
if (setreuid(ruid, pwd->pw_uid))
goto err;
if (initgrp) {
for (ep = envp; ep->name; ep++) {
if (ep->value)
continue;
ep->value = getenv(ep->name);
}
clearenv();
if (setenv("HOME", pwd->pw_dir, 1) < 0)
goto err;
if (setenv("USER", pwd->pw_name, 1) < 0)
goto err;
if (setenv("LOGNAME", pwd->pw_name, 1) < 0)
goto err;
if (setenv("GROUP", pwd->pw_name, 1) < 0)
goto err;
if (setenv("SHELL", pwd->pw_shell, 1) < 0)
goto err;
for (ep = envp; ep->name; ep++) {
if (!ep->value)
continue;
setenv(ep->name, ep->value, 1);
}
if (strcmp(lp->prog, "find") == 0) {
int n;
for (n = 0; n < argc; n++) {
if (!argv[n] || *argv[n] == '\0')
continue;
if (strncmp(argv[n], "-exec", 5) == 0) {
errno = ENOTSUP;
goto err;
}
if (strncmp(argv[n], "-ok", 3) == 0) {
errno = ENOTSUP;
goto err;
}
}
}
}
}
execve(lp->run, argv, environ);
err:
fprintf(stderr, "nobody: ");
perror(program_name);
return 1;
}
++++++ source-64.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:35.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:35.000000000 +0100
@@ -1,6 +1,6 @@
--- configure
+++ configure 2009-08-28 15:44:29.774401466 +0000
-@@ -11734,6 +11734,10 @@ rm -f core conftest.err conftest.$ac_obj
+@@ -12505,6 +12505,10 @@ rm -f core conftest.err conftest.$ac_obj
# most powerpc-linux boxes support dynamic linking these days and
# people can always --disable-shared, the test was removed, and we
# assume the GNU/Linux dynamic linker is in use.
++++++ source-arraysubs.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:35.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:35.000000000 +0100
@@ -1,6 +1,6 @@
--- texk/afm2pl/afm2pl.c
+++ texk/afm2pl/afm2pl.c 2009-11-11 07:45:42.783429403 +0000
-@@ -2102,7 +2102,7 @@ static void
+@@ -2107,7 +2107,7 @@ static void
readargs(int argc, char **argv)
{
register int i;
@@ -9,35 +9,9 @@
/* skip argv[0] and look at the rest. */
argv++;
---- texk/bibtex8/bibtex.h
-+++ texk/bibtex8/bibtex.h 2009-11-11 08:02:30.683429024 +0000
-@@ -956,9 +956,9 @@
- * |wiz_functions| array.
- ***************************************************************************/
- #define INSERT_FN_LOC(X) {\
-- singl_function[single_ptr] = (X);\
- if (single_ptr == SINGLE_FN_SPACE)\
- {singl_fn_overflow();}\
-+ singl_function[single_ptr] = (X);\
- INCR (single_ptr);}
-
- /***************************************************************************
---- texk/bibtexu/bibtex.h
-+++ texk/bibtexu/bibtex.h 2009-11-11 08:03:10.979429261 +0000
-@@ -956,9 +956,9 @@
- * |wiz_functions| array.
- ***************************************************************************/
- #define INSERT_FN_LOC(X) {\
-- singl_function[single_ptr] = (X);\
- if (single_ptr == SINGLE_FN_SPACE)\
- {singl_fn_overflow();}\
-+ singl_function[single_ptr] = (X);\
- INCR (single_ptr);}
-
- /***************************************************************************
--- texk/web2c/bibtex.web
+++ texk/web2c/bibtex.web 2009-11-12 11:50:51.699429941 +0000
-@@ -4305,9 +4305,9 @@ special markers |quote_next_fn| and |end
+@@ -4309,9 +4309,9 @@ special markers |quote_next_fn| and |end
|wiz_functions| array.
@d insert_fn_loc(#) == begin
@@ -48,133 +22,3 @@
incr(single_ptr);
end
---- texk/web2c/luatexdir/luafontloader/fontforge/Unicode/dump.c
-+++ texk/web2c/luatexdir/luafontloader/fontforge/Unicode/dump.c 2009-11-11 11:43:01.919429571 +0000
-@@ -339,7 +339,7 @@ static void dumpjis(FILE *output,FILE *h
- FILE *file;
- int i,j,k, first, last;
- long _orig, _unicode;
-- unichar_t unicode208[94*94], unicode212[94*94];
-+ unichar_t unicode208[96*94], unicode212[96*94];
- unichar_t *table[256], *plane;
- char buffer[400];
-
-@@ -371,7 +371,7 @@ static void dumpjis(FILE *output,FILE *h
- table[_unicode>>8][_unicode&0xff] = _orig;
- _orig -= 0x2121;
- _orig = (_orig>>8)*94 + (_orig&0xff);
-- if ( _orig>=94*94 )
-+ if ( _orig>=96*94 )
- fprintf( stderr, "Attempt to index with %ld\n", _orig );
- else {
- unicode208[_orig] = _unicode;
-@@ -413,7 +413,7 @@ static void dumpjis(FILE *output,FILE *h
- fprintf( stderr, "JIS clash at JIS212 %lx, unicode %lx\n", _orig, _unicode ); /* there are said to be a few of these, I'll just always map to 208 */
- _orig -= 0x2121;
- _orig = (_orig>>8)*94 + (_orig&0xff);
-- if ( _orig>=94*94 )
-+ if ( _orig>=96*94 )
- fprintf( stderr, "Attempt to index JIS212 with %ld\n", _orig );
- else {
- unicode212[_orig] = _unicode;
-@@ -429,7 +429,7 @@ static void dumpjis(FILE *output,FILE *h
- j=0;
- fprintf( header, "extern const unichar_t unicode_from_%s[];\n", cjknames[j] );
- fprintf( output, "const unichar_t unicode_from_%s[] = {\n", cjknames[j] );
-- for ( i=0; i>8][_unicode&0xff] = _orig;
- _orig -= 0x2121;
- _orig = (_orig>>8)*94 + (_orig&0xff);
-- if ( _orig>=94*94 ) {
-- fprintf( stderr, "Not 94x94\n" );
-+ if ( _orig>=96*94 ) {
-+ fprintf( stderr, "Not 96x94\n" );
- continue;
- }
- unicode[_orig] = _unicode;
-@@ -734,7 +734,7 @@ static void dumpWansung(FILE *output,FIL
- /* First Wansung */
- fprintf( header, "extern const unichar_t unicode_from_%s[];\n", cjknames[j] );
- fprintf( output, "const unichar_t unicode_from_%s[] = {\n", cjknames[j] );
-- for ( i=0; i&2;}
- { (exit 1); exit 1; }; }
++++ configure 2010-11-12 11:02:19.696426715 +0000
+@@ -19716,9 +19716,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ if test "x$syslib_status" = xno; then
+ as_fn_error "some requested system libraries failed" "$LINENO" 5
fi
-if test "x$syslib_used:$enable_native_texlive_build" = xyes:yes; then
-- { { $as_echo "$as_me:$LINENO: error: you can not use system libraries for a native TeX Live build" >&5
--$as_echo "$as_me: error: you can not use system libraries for a native TeX Live build" >&2;}
-- { (exit 1); exit 1; }; }
+- as_fn_error "you can not use system libraries for a native TeX Live build" "$LINENO" 5
-fi
CPPFLAGS=$kpse_save_CPPFLAGS
LIBS=$kpse_save_LIBS
--- configure.ac
-+++ configure.ac 2009-09-02 15:40:14.857901153 +0000
-@@ -104,9 +104,6 @@ KPSE_FOR_PKGS([syslib],
++++ configure.ac 2010-11-12 11:02:58.713177393 +0000
+@@ -129,9 +129,6 @@ KPSE_FOR_PKGS([sys_libs], [m4_sinclude([
if test "x$syslib_status" = xno; then
AC_MSG_ERROR([some requested system libraries failed])
fi
@@ -23,4 +21,4 @@
-fi
KPSE_RESTORE_FLAGS
- AS_IF([test "x$cross_compiling:$enable_xetex" = xyes:yes],
+ dnl AM_CONDITIONAL([build_kpathsea],
++++++ source-dvipng.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -1,151 +1,6 @@
-|
-| Bug fix for bnc#587794 - VUL-0: texlive dvips buffer overflow
-| covers CVE-2010-0827, CVE-2010-0829, and CVE-2010-0739
-|
---- texk/dvipng/draw.c
-+++ texk/dvipng/draw.c 2010-03-17 12:52:15.000000000 +0000
-@@ -18,7 +18,7 @@
- License along with this program. If not, see
- http://www.gnu.org/licenses/.
-
-- Copyright (C) 2002-2008 Jan-�ke Larsson
-+ Copyright (C) 2002-2010 Jan-�ke Larsson
-
- ************************************************************************/
-
-@@ -79,9 +79,15 @@ dviunits SetChar(int32_t c)
-
- if (currentfont==NULL)
- Fatal("faulty DVI, trying to set character from null font");
--
-- if (c>=0 && c<=LASTFNTCHAR)
-- ptr = currentfont->chr[c];
-+ if (c<0 || c>LASTFNTCHAR) {
-+ Warning("glyph index out of range (%d), skipping",c);
-+ return(0);
-+ }
-+ ptr=currentfont->chr[c];
-+ if (ptr==NULL) {
-+ Warning("unable to draw glyph %d, skipping",c);
-+ return(0);
-+ }
- #ifdef DEBUG
- switch (currentfont->type) {
- case FONT_TYPE_VF: DEBUG_PRINT(DEBUG_DVI,("\n VF CHAR:\t")); break;
-@@ -90,15 +96,15 @@ dviunits SetChar(int32_t c)
- case FONT_TYPE_FT: DEBUG_PRINT(DEBUG_DVI,("\n FT CHAR:\t")); break;
- default: DEBUG_PRINT(DEBUG_DVI,("\n NO CHAR:\t"))
- }
-- if (isprint(c))
-+ if (debug & DEBUG_DVI && c>=0 && c<=UCHAR_MAX && isprint(c))
- DEBUG_PRINT(DEBUG_DVI,("'%c' ",c));
- DEBUG_PRINT(DEBUG_DVI,("%d at (%d,%d) tfmw %d", c,
- dvi_stack->hh,dvi_stack->vv,ptr?ptr->tfmw:0));
- #endif
- if (currentfont->type==FONT_TYPE_VF) {
-- return(SetVF(c));
-+ return(SetVF(ptr));
- } else {
-- if (ptr!=NULL && ptr->data == NULL)
-+ if (ptr->data == NULL)
- switch(currentfont->type) {
- case FONT_TYPE_PK: LoadPK(c, ptr); break;
- #ifdef HAVE_LIBT1
-@@ -111,8 +117,8 @@ dviunits SetChar(int32_t c)
- Fatal("undefined fonttype %d",currentfont->type);
- }
- if (page_imagep != NULL)
-- return(SetGlyph(c, dvi_stack->hh, dvi_stack->vv));
-- else if (ptr!=NULL) {
-+ return(SetGlyph(ptr, dvi_stack->hh, dvi_stack->vv));
-+ else {
- /* Expand bounding box if necessary */
- min(x_min,dvi_stack->hh - ptr->xOffset/shrinkfactor);
- min(y_min,dvi_stack->vv - ptr->yOffset/shrinkfactor);
---- texk/dvipng/dvipng.h
-+++ texk/dvipng/dvipng.h 2010-03-18 07:43:26.000000000 +0000
-@@ -18,7 +18,7 @@
- License along with this program. If not, see
- http://www.gnu.org/licenses/.
-
-- Copyright (C) 2002-2008 Jan-�ke Larsson
-+ Copyright (C) 2002-2010 Jan-�ke Larsson
-
- ************************************************************************/
-
-@@ -387,9 +387,9 @@ void DrawPages(void);
- void WriteImage(char*, int);
- void LoadPK(int32_t, register struct char_entry *);
- int32_t SetChar(int32_t);
--dviunits SetGlyph(int32_t c, int32_t hh,int32_t vv);
-+dviunits SetGlyph(struct char_entry *ptr, int32_t hh,int32_t vv);
- void Gamma(double gamma);
--int32_t SetVF(int32_t);
-+int32_t SetVF(struct char_entry *ptr);
- int32_t SetRule(int32_t, int32_t, int32_t, int32_t);
- void SetSpecial(char *, int32_t, int32_t);
- void BeginVFMacro(struct font_entry*);
---- texk/dvipng/set.c
-+++ texk/dvipng/set.c 2010-03-17 12:52:27.000000000 +0000
-@@ -18,7 +18,7 @@
- License along with this program. If not, see
- http://www.gnu.org/licenses/.
-
-- Copyright (C) 2002-2008 Jan-�ke Larsson
-+ Copyright (C) 2002-2010 Jan-�ke Larsson
-
- ************************************************************************/
-
-@@ -203,23 +203,13 @@ void Gamma(double gamma)
- }
- }
-
--dviunits SetGlyph(int32_t c, int32_t hh,int32_t vv)
-+dviunits SetGlyph(struct char_entry *ptr, int32_t hh,int32_t vv)
- /* gdImageChar can only do monochrome glyphs */
- {
-- register struct char_entry *ptr;
- int dst_alpha,dst_weight,tot_weight,alpha;
- int x,y,pos=0;
- int bgColor,pixelgrey,pixelcolor;
-
-- if (c<0 || c>LASTFNTCHAR) {
-- Warning("glyph index too large (%d), skipping",c);
-- return(0);
-- }
-- ptr=currentfont->chr[c];
-- if (ptr==NULL) {
-- Warning("unable to draw glyph %d, skipping",c);
-- return(0);
-- }
- hh -= ptr->xOffset/shrinkfactor;
- vv -= ptr->yOffset/shrinkfactor;
- /* Initialize persistent color cache. Perhaps this should be in
---- texk/dvipng/vf.c
-+++ texk/dvipng/vf.c 2010-04-12 14:35:53.414925428 +0000
-@@ -18,7 +18,7 @@
- License along with this program. If not, see
- http://www.gnu.org/licenses/.
-
-- Copyright (C) 2002-2008 Jan-�ke Larsson
-+ Copyright (C) 2002-2010 Jan-�ke Larsson
-
- ************************************************************************/
-
-@@ -27,11 +27,10 @@
- #define VF_ID 202
- #define LONG_CHAR 242
-
--int32_t SetVF(int32_t c)
-+int32_t SetVF(struct char_entry* ptr)
- {
- struct font_entry* currentvf;
- unsigned char *command,*end;
-- struct char_entry* ptr=currentfont->chr[c];
-
- currentvf=currentfont;
- BeginVFMacro(currentvf);
-@@ -116,7 +115,7 @@ void InitVF(struct font_entry * tfontp)
+--- texk/dvipng/dvipng-1.13/vf.c
++++ texk/dvipng/dvipng-1.13/vf.c 2010-04-12 14:35:53.414925428 +0000
+@@ -115,7 +115,7 @@ void InitVF(struct font_entry * tfontp)
tcharptr->tfmw = (int32_t)
((int64_t) tcharptr->tfmw * tfontp->s / (1 << 20));
DEBUG_PRINT(DEBUG_VF,(" (%d)",tcharptr->tfmw));
@@ -154,86 +9,3 @@
Fatal("VF font %s exceeds char numbering limit",tfontp->name);
tfontp->chr[c] = tcharptr;
tcharptr->data=position;
---- texk/dvipsk/dospecial.c
-+++ texk/dvipsk/dospecial.c 2010-04-29 14:30:10.000000000 +0000
-@@ -333,7 +333,11 @@ predospecial(integer numbytes, Boolean s
- int j ;
- static int omega_specials = 0;
-
-- if (nextstring + numbytes > maxstring) {
-+ if (numbytes < 0 || numbytes > maxstring - nextstring) {
-+ if (numbytes < 0 || numbytes > (INT_MAX - 1000) / 2 ) {
-+ error("! Integer overflow in predospecial");
-+ exit(1);
-+ }
- p = nextstring = mymalloc(1000 + 2 * numbytes) ;
- maxstring = nextstring + 2 * numbytes + 700 ;
- }
-@@ -918,7 +922,11 @@ bbdospecial(int nbytes)
- char seen[NKEYS] ;
- float valseen[NKEYS] ;
-
-- if (nextstring + nbytes > maxstring) {
-+ if (nbytes < 0 || nbytes > maxstring - nextstring) {
-+ if (nbytes < 0 || nbytes > (INT_MAX - 1000) / 2 ) {
-+ error("! Integer overflow in bbdospecial");
-+ exit(1);
-+ }
- p = nextstring = mymalloc(1000 + 2 * nbytes) ;
- maxstring = nextstring + 2 * nbytes + 700 ;
- }
---- texk/dvipsk/virtualfont.c
-+++ texk/dvipsk/virtualfont.c 2010-04-12 14:38:15.699425323 +0000
-@@ -2,6 +2,8 @@
- * Here's the code to load a VF file into memory.
- * Any resemblance between this file and loadfont.c is purely uncoincidental.
- */
-+#include
-+#include
- #include "dvips.h" /* The copyright notice in that file is included too! */
- #ifdef KPATHSEA
- #include
-@@ -21,7 +23,7 @@ extern quarterword *raster ;
- #ifndef KPATHSEA
- extern char *vfpath ;
- #endif
--extern char errbuf[200] ;
-+extern char errbuf[LINE_MAX] ;
- extern real conv ;
- extern real vconv ;
- extern real alpha ;
-@@ -36,11 +38,11 @@ extern Boolean noomega ;
- * Subroutine vfbyte returns the next byte.
- */
- static FILE *vffile ;
--static char name[50] ;
-+static char name[PATH_MAX] ;
- void
- badvf(char *s)
- {
-- (void)sprintf(errbuf,"! Bad VF file %s: %s",name,s) ;
-+ (void)snprintf(errbuf, sizeof(errbuf), "! Bad VF file %s: %s",name,s) ;
- error(errbuf);
- }
-
-@@ -94,9 +96,9 @@ vfopen(register fontdesctype *fd)
- d = vfpath ;
- #endif
- #ifdef MVSXA /* IBM: MVS/XA */
-- (void)sprintf(name, "vf(%s)", n) ;
-+ (void)snprintf(name, sizeof(name), "vf(%s)", n) ;
- #else
-- (void)sprintf(name, "%s.vf", n) ;
-+ (void)snprintf(name, sizeof(name), "%s.vf", n) ;
- #endif
- #ifdef KPATHSEA
- if (0 != (vffile=search(vfpath, name, READBIN)))
-@@ -212,7 +214,7 @@ virtualfont(register fontdesctype *curfn
- check_checksum (k, curfnt->checksum, curfnt->name);
- k = (integer)(alpha * (real)vfquad()) ;
- if (k > curfnt->designsize + 2 || k < curfnt->designsize - 2) {
-- (void)sprintf(errbuf,"Design size mismatch in font %s", name) ;
-+ (void)snprintf(errbuf, sizeof(errbuf), "Design size mismatch in font %s", name) ;
- error(errbuf) ;
- }
- /*
++++++ source-dviutils.dif ++++++
++++ 629 lines (skipped)
++++ between texlive-bin/source-dviutils.dif
++++ and /mounts/work_src_done/STABLE/texlive-bin/source-dviutils.dif
++++++ source-lacheck.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -6,5 +6,5 @@
#include
+#include
- #ifdef WIN32
+ #if defined(WIN32) && !defined(__MINGW32__)
#include
++++++ source-poppler.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -1,70 +1,56 @@
---- configure
-+++ configure 2009-09-04 10:39:18.385901882 +0000
-@@ -20687,7 +20687,8 @@ else
- fi
-
- if $PKG_CONFIG poppler --atleast-version=0.10; then
-- POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-+ POPPLER_VERSION="`$PKG_CONFIG poppler --modversion`"
-+ POPPLER_VERSION='-DPOPPLER_VERSION=\"'$POPPLER_VERSION'\" -DPOPPLER_VERSION_NUM="'$(echo $POPPLER_VERSION|sed -r 's/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/(\1<<16)|(\2<<8)|(\3)/')'"'
- XPDF_INCLUDES="$POPPLER_VERSION `$PKG_CONFIG poppler --cflags`"
- XPDF_LIBS=`$PKG_CONFIG poppler --libs`
- elif test "x$need_xpdf:$with_system_xpdf" = 'xyes:yes'; then
---- m4/kpse-xpdf-flags.m4
-+++ m4/kpse-xpdf-flags.m4 2009-09-04 10:37:49.557901692 +0000
-@@ -33,7 +33,8 @@ AC_DEFUN([KPSE_XPDF_OPTIONS],
- AC_DEFUN([KPSE_XPDF_SYSTEM_FLAGS],
- [AC_REQUIRE([_KPSE_CHECK_PKG_CONFIG])[]dnl
- if $PKG_CONFIG poppler --atleast-version=0.10; then
-- POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-+ POPPLER_VERSION="`$PKG_CONFIG poppler --modversion`"
-+ POPPLER_VERSION='-DPOPPLER_VERSION=\"'$POPPLER_VERSION'\" -DPOPPLER_VERSION_NUM="'$(echo $POPPLER_VERSION|sed -r 's/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/(\1<<16)|(\2<<8)|(\3)/')'"'
- XPDF_INCLUDES="$POPPLER_VERSION `$PKG_CONFIG poppler --cflags`"
- XPDF_LIBS=`$PKG_CONFIG poppler --libs`
- elif test "x$need_xpdf:$with_system_xpdf" = 'xyes:yes'; then
---- texk/web2c/configure
-+++ texk/web2c/configure 2009-09-04 11:30:45.829901924 +0000
-@@ -24171,7 +24171,8 @@ if test "${with_system_xpdf+set}" = set;
- fi
- if test "x$with_system_xpdf" = xyes; then
- if $PKG_CONFIG poppler --atleast-version=0.10; then
-- POPPLER_VERSION='-DPOPPLER_VERSION=\"'`$PKG_CONFIG poppler --modversion`'\"'
-+ POPPLER_VERSION="`$PKG_CONFIG poppler --modversion`"
-+ POPPLER_VERSION='-DPOPPLER_VERSION=\"'$POPPLER_VERSION'\" -DPOPPLER_VERSION_NUM="'$(echo $POPPLER_VERSION|sed -r 's/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/(\1<<16)|(\2<<8)|(\3)/')'"'
- XPDF_INCLUDES="$POPPLER_VERSION `$PKG_CONFIG poppler --cflags`"
- XPDF_LIBS=`$PKG_CONFIG poppler --libs`
- elif test "x$need_xpdf:$with_system_xpdf" = 'xyes:yes'; then
---- texk/web2c/luatexdir/image/pdftoepdf.cc
-+++ texk/web2c/luatexdir/image/pdftoepdf.cc 2009-09-04 10:50:31.721901015 +0000
-@@ -24,6 +24,9 @@
- #include
- #include
- #include
-+extern "C" {
-+#include
-+}
+--- texk/web2c/xetexdir/XeTeX_ext.c
++++ texk/web2c/xetexdir/XeTeX_ext.c 2009-09-04 08:40:23.593902337 +0000
+@@ -39,15 +39,15 @@ authorization from the copyright holders
+ #include
+
+ #ifdef XETEX_OTHER
+-#ifdef POPPLER_VERSION
+-#define xpdfVersion POPPLER_VERSION
+-#define xpdfString "poppler"
+-#include "poppler-config.h"
+-#else
+-#define xpdfString "xpdf"
+-#include "xpdf/config.h"
+-#endif
+-#include "png.h"
++# ifdef POPPLER_VERSION
++# define xpdfVersion POPPLER_VERSION
++# define xpdfString "poppler"
++# include
++# else
++# define xpdfString "xpdf"
++# include "xpdf/config.h"
++# endif
++# include "png.h"
+ #endif
+
+ #include "zlib.h"
+--- texk/web2c/xetexdir/pdfimage.cpp
++++ texk/web2c/xetexdir/pdfimage.cpp 2009-09-04 08:44:54.178401384 +0000
+@@ -33,19 +33,27 @@ authorization from the copyright holders
+ #include "pdfimage.h"
+
#ifdef POPPLER_VERSION
- # define GString GooString
- # include
-@@ -36,20 +39,20 @@
- # include
- # include
- # include
--# include
+-#include
+-#include
+-#include
+-#include
+-#include
+-#define GString GooString
++# include
++# include
++# include
++# include
++# include
++# define GString GooString
+ #else
+-#include "goo/GString.h"
++# include "goo/GString.h"
#endif
--#include "Object.h"
--#include "Stream.h"
--#include "Array.h"
--#include "Dict.h"
--#include "XRef.h"
+-
+-#include "PDFDoc.h"
-#include "Catalog.h"
--#include "Link.h"
-#include "Page.h"
--#include "GfxFont.h"
--#include "PDFDoc.h"
--#include "GlobalParams.h"
--#include "Error.h"
-+#include
+#include
+#include
+#include
@@ -78,34 +64,26 @@
+#include
+#include
- #include "epdf.h"
+ #include "XeTeX_ext.h"
-@@ -666,7 +669,7 @@ static void writeEncodings()
- }
- for (r = encodingList; r != NULL; r = n) {
- n = r->next;
-- delete r->font;
-+ r->font->decRefCnt();
- delete r;
- }
- }
-@@ -720,7 +723,13 @@ read_pdf_info(image_dict * idict, intege
- // this works only for PDF 1.x -- but since any versions of PDF newer
- // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
- // then have to changed drastically anyway.
-+#if !defined(POPPLER_VERSION_NUM) || (POPPLER_VERSION_NUM) < ((0<<16)|(11<<8)|(3))
- pdf_version_found = pdf_doc->doc->getPDFVersion();
+--- texk/web2c/xetexdir/xetexextra.in
++++ texk/web2c/xetexdir/xetexextra.in 2009-09-04 08:46:29.257902488 +0000
+@@ -54,7 +54,11 @@ You should have received a copy of the G
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+-#define BANNER "This is XeTeX, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
++#ifdef POPPLER_VERSION
++# define BANNER "This is XeTeX using libpoppler, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
+#else
-+ int major = pdf_doc->doc->getPDFMajorVersion();
-+ int minor = pdf_doc->doc->getPDFMinorVersion();
-+ pdf_version_found = (float)major + ((float)minor * 0.1);
++# define BANNER "This is XeTeX, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
+#endif
- pdf_version_wanted = 1 + (minor_pdf_version_wanted * 0.1);
- if (pdf_version_found > pdf_version_wanted + 0.01) {
- char msg[] =
---- texk/web2c/luatexdir/utils/utils.c
-+++ texk/web2c/luatexdir/utils/utils.c 2009-09-04 08:37:27.913901096 +0000
-@@ -42,7 +42,7 @@
+ #define COPYRIGHT_HOLDER "SIL International and Jonathan Kew"
+ #define AUTHOR "Jonathan Kew"
+ #define PROGRAM_HELP XETEXHELP
+--- texk/web2c/luatexdir/utils/utils.w
++++ texk/web2c/luatexdir/utils/utils.w 2010-11-12 12:17:52.368425494 +0000
+@@ -51,7 +51,7 @@ static const char _svn_version[] =
#include "png.h"
#ifdef POPPLER_VERSION
# define xpdfString "poppler"
@@ -114,6 +92,52 @@
# define xpdfVersion POPPLER_VERSION
#else
# define xpdfString "xpdf"
+--- texk/web2c/luatexdir/image/epdf.h
++++ texk/web2c/luatexdir/image/epdf.h 2010-11-12 12:13:21.080425485 +0000
+@@ -31,6 +31,9 @@
+ # include
+ # include
+ # include
++extern "C" {
++#include
++}
+ # ifdef POPPLER_VERSION
+ # define GString GooString
+ # include
+@@ -43,20 +46,20 @@
+ # include
+ # include
+ # include
+-# include
+ # endif
+-# include "Object.h"
+-# include "Stream.h"
+-# include "Array.h"
+-# include "Dict.h"
+-# include "XRef.h"
+-# include "Catalog.h"
+-# include "Link.h"
+-# include "Page.h"
+-# include "GfxFont.h"
+-# include "PDFDoc.h"
+-# include "GlobalParams.h"
+-# include "Error.h"
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
++# include
+
+ extern "C" {
+
--- texk/web2c/pdftexdir/pdftexextra.in
+++ texk/web2c/pdftexdir/pdftexextra.in 2009-09-04 08:42:10.857902597 +0000
@@ -25,7 +25,11 @@ Franklin Street, Fifth Floor, Boston, MA
@@ -130,8 +154,16 @@
#define AUTHOR NULL
#define PROGRAM_HELP PDFTEXHELP
--- texk/web2c/pdftexdir/pdftoepdf.cc
-+++ texk/web2c/pdftexdir/pdftoepdf.cc 2009-09-04 10:51:59.757901182 +0000
-@@ -24,33 +24,35 @@ Franklin Street, Fifth Floor, Boston, MA
++++ texk/web2c/pdftexdir/pdftoepdf.cc 2010-11-12 12:15:38.192425700 +0000
+@@ -22,44 +22,41 @@ Franklin Street, Fifth Floor, Boston, MA
+ conflicting with the definition for Pascal's boolean as 'int'
+ in .
+ */
+-#define boolean MINGW32_boolean
+-
+ #include
+ #include
+ #include
#include
#include
#include
@@ -163,6 +195,7 @@
+# include
+# include
#endif
+-
-#include "Object.h"
-#include "Stream.h"
-#include "Array.h"
@@ -175,45 +208,24 @@
-#include "PDFDoc.h"
-#include "GlobalParams.h"
-#include "Error.h"
+-
+-#undef boolean
+#include
+#include
+#include
+#include
+#include
+#include
-+#include
+#include
++#include
+#include
+#include
+#include
+#include
+#include
- #include "epdf.h"
-
-@@ -650,7 +652,7 @@ static void writeEncodings()
- }
- for (r = encodingList; r != 0; r = n) {
- n = r->next;
-- delete r->font;
-+ r->font->decRefCnt();
- delete r;
- }
- }
-@@ -705,7 +707,13 @@ read_pdf_info(char *image_name, char *pa
- // this works only for PDF 1.x -- but since any versions of PDF newer
- // than 1.x will not be backwards compatible to PDF 1.x, pdfTeX will
- // then have to changed drastically anyway.
-+#if !defined(POPPLER_VERSION_NUM) || (POPPLER_VERSION_NUM) < ((0<<16)|(11<<8)|(3))
- pdf_version_found = pdf_doc->doc->getPDFVersion();
-+#else
-+ int major = pdf_doc->doc->getPDFMajorVersion();
-+ int minor = pdf_doc->doc->getPDFMinorVersion();
-+ pdf_version_found = (float)major + ((float)minor * 0.1);
-+#endif
- pdf_version_wanted = 1 + (minor_pdf_version_wanted * 0.1);
- if (pdf_version_found > pdf_version_wanted) {
- char msg[] =
+ // This file is mostly C and not very much C++; it's just used to interface
+ // the functions of xpdf, which happens to be written in C++.
--- texk/web2c/pdftexdir/pdftosrc.cc
+++ texk/web2c/pdftexdir/pdftosrc.cc 2009-09-04 08:56:09.694401252 +0000
@@ -23,33 +23,35 @@ Franklin Street, Fifth Floor, Boston, MA
@@ -278,7 +290,7 @@
--- texk/web2c/pdftexdir/utils.c
+++ texk/web2c/pdftexdir/utils.c 2009-09-04 08:38:04.370467045 +0000
-@@ -44,12 +44,12 @@ Franklin Street, Fifth Floor, Boston, MA
+@@ -43,12 +43,12 @@ Franklin Street, Fifth Floor, Boston, MA
#include "ptexlib.h"
#include "png.h"
#ifdef POPPLER_VERSION
@@ -308,86 +320,3 @@
#include "ptexlib.h"
/**********************************************************************/
---- texk/web2c/xetexdir/XeTeX_ext.c
-+++ texk/web2c/xetexdir/XeTeX_ext.c 2009-09-04 08:40:23.593902337 +0000
-@@ -35,15 +35,15 @@ authorization from the copyright holders
- */
-
- #ifdef XETEX_OTHER
--#ifdef POPPLER_VERSION
--#define xpdfVersion POPPLER_VERSION
--#define xpdfString "poppler"
--#include "poppler-config.h"
--#else
--#define xpdfString "xpdf"
--#include "xpdf/config.h"
--#endif
--#include "png.h"
-+# ifdef POPPLER_VERSION
-+# define xpdfVersion POPPLER_VERSION
-+# define xpdfString "poppler"
-+# include
-+# else
-+# define xpdfString "xpdf"
-+# include "xpdf/config.h"
-+# endif
-+# include "png.h"
- #endif
-
- #include "zlib.h"
---- texk/web2c/xetexdir/pdfimage.cpp
-+++ texk/web2c/xetexdir/pdfimage.cpp 2009-09-04 08:44:54.178401384 +0000
-@@ -33,19 +33,27 @@ authorization from the copyright holders
- #include "pdfimage.h"
-
- #ifdef POPPLER_VERSION
--#include
--#include
--#include
--#include
--#include
--#define GString GooString
-+# include
-+# include
-+# include
-+# include
-+# include
-+# define GString GooString
- #else
--#include "goo/GString.h"
-+# include "goo/GString.h"
- #endif
--
--#include "PDFDoc.h"
--#include "Catalog.h"
--#include "Page.h"
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-
- #include "XeTeX_ext.h"
-
---- texk/web2c/xetexdir/xetexextra.in
-+++ texk/web2c/xetexdir/xetexextra.in 2009-09-04 08:46:29.257902488 +0000
-@@ -54,7 +54,11 @@ You should have received a copy of the G
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-
--#define BANNER "This is XeTeX, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
-+#ifdef POPPLER_VERSION
-+# define BANNER "This is XeTeX using libpoppler, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
-+#else
-+# define BANNER "This is XeTeX, Version 3.1415926-ETEX-VERSION-XETEX-VERSION"
-+#endif
- #define COPYRIGHT_HOLDER "SIL International and Jonathan Kew"
- #define AUTHOR "Jonathan Kew"
- #define PROGRAM_HELP XETEXHELP
++++++ source-texdoc.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -1,6 +1,6 @@
--- texk/texlive/linked_scripts/tetex/texdoctk.pl
+++ texk/texlive/linked_scripts/tetex/texdoctk.pl 2008-09-24 14:56:14.000000000 +0000
-@@ -1398,7 +1398,7 @@ sub writerc {
+@@ -1454,7 +1454,7 @@ sub writerc {
mv $myrc,"$myrc.save" if (-e $myrc);
open(MYRC,">$myrc");
print MYRC "# user's .texdocrc, generated by program\n
@@ -9,7 +9,7 @@
# can be left empty if \$TEXMFHOME is undefined
HOMEDOCPATH=$homedocpath_tmp
# general viewer behaviour (y or yes to make active)
-@@ -1561,9 +1561,9 @@ sub readrc {
+@@ -1617,9 +1617,9 @@ sub readrc {
$localdocpath="$texmflocal/$localdocpath";
}
}
@@ -21,115 +21,19 @@
chomp $texmfhome;
if (length $texmfhome) {
# if HOMEDOCPATH is not explicitly defined, it equals TEXDOCPATH
---- texk/texlive/linked_scripts/texdoc/texdoc.tlu
-+++ texk/texlive/linked_scripts/texdoc/texdoc.tlu 2009-12-22 13:24:42.415430218 +0000
-@@ -77,7 +77,7 @@ err_priority = {
- -- everything works for them (look for support_zipped in the code).
- -- If you use this feature, please let us know: if nobody uses it,
- -- we'll drop it at some point.
--support_zipped = false
-+support_zipped = true
+--- texmf/texdoc/texdoc.cnf
++++ texmf/texdoc/texdoc.cnf 2010-11-12 11:46:52.320054617 +0000
+@@ -57,8 +57,11 @@
+ # For each "ext" in zipext_list, you must define a "unzip_ext" unzipper.
+ # The unzipped data must be printed on stdout. Example:
+ #
+-# zipext_list = gz
+-# unzip_gz = gzip -d -c
++zipext_list = gz, bz2, xz, lzma
++unzip_gz = gzip -d -c
++unzip_bz2 = bzip2 -d -c
++unzip_xz = xz -d -c
++unzip_lzma = lzma -d -c
+ ### Other settings ###
- -- BEGIN function definitions (till the 'END' mark)
-@@ -612,9 +612,8 @@ function setup_config_from_defaults()
- 'dvi,dvi.gz,dvi.bz2, ps,ps.gz,ps.bz2, ,gz,bz2')
- set_config_list {
- unzip_gz = 'gzip -d -c ',
-- unzip_bz2 = 'bzip -d -c ',
-- rm_file = 'rm -f',
-- rm_dir = 'rmdir'
-+ unzip_bz2 = 'bzip2 -d -c ',
-+ rm_dir = 'rm -rf',
- }
- else
- set_config_element('ext_list', 'pdf, html, txt, dvi, ps, ')
-@@ -631,13 +630,10 @@ end
- function how_to_view (filename)
- filename = real_path(filename) -- TODO: if not filename then ...
- if support_zipped then
-- ext = string.match(filename,'.*%.(.*)$')
-- zipext = string.match(ext,'^.*%.(.*)')
-- if zipext then
-+ local basename, zipext = string.match(filename,'.*/(.*)%.(.*)$')
-+ viewext = string.match(basename,'^.*%.(.*)$')
-+ if viewext and zipext then
- unzip_command = config['unzip_'..zipext]
-- viewext = string.match(ext,'^(.*)%..*$')
-- basename_pattern = '.*/(.*%.' .. viewext .. ')'
-- basename = string.match(filename,basename_pattern)
- tmpdir = os.tmpdir("/tmp/texdoc.XXXXXX")
- unzip_commandline = unzip_command .. filename .. " > "
- .. tmpdir .. "/" .. basename
-@@ -646,9 +642,22 @@ function how_to_view (filename)
- else
- print("Error executing \n" .. unzip_commandline)
- end
-- viewer_replacement = filename .. ';' .. config.rm_file
-- .. filename .. ';' .. config.rm_dir .. tmpdir
-- end
-+ viewer_replacement = filename .. ';' .. config.rm_dir .. tmpdir
-+ else
-+ viewer_replacement = filename
-+ -- files without extension are assumed to be text
-+ viewext = string.match(filename,'.*%.(.*)$') or 'txt'
-+ end
-+ if not config['viewer_'..viewext] then
-+ err_print (": cannot determine type of file\n\t"
-+ ..filename.."Assuming text. Set the `viewer_"..viewext..
-+ "' variable in texdoc.cnf to avoid this.", "warning")
-+ viewext = 'txt'
-+ if not config['viewer_'..viewext] then
-+ err_print ("text viewer not found. This "..
-+ "should not happen, sorry. Skipping\n\t"..filename, "error")
-+ end
-+ end -- viewer for ext
- else
- viewer_replacement = filename
- -- files without extension are assumed to be text
-@@ -672,11 +681,23 @@ function try_viewing (view_command, view
- if not view_command then
- view_result = false
- else
-+ if support_zipped then
-+ local filename, trap = string.match(viewer_replacement, "^(.*)%;(.*)$")
-+ if trap and filename then
-+ viewer_replacement = filename
-+ end
-+ viewer_replacement = '"'..viewer_replacement..'"'
-+ if trap and filename then
-+ viewer_replacement = viewer_replacement..';'..trap
-+ end
-+ else
-+ viewer_replacement = '"'..viewer_replacement..'"'
-+ end
- if string.match (view_command, place_holder) then
- view_command = string.gsub(
-- view_command, place_holder, '"'..viewer_replacement..'"')
-+ view_command, place_holder, viewer_replacement)
- else
-- view_command = view_command..' "'..viewer_replacement..'"'
-+ view_command = view_command..' '..viewer_replacement
- end
- err_print(view_command, 'debug1')
- view_result = os.execute(view_command)
-@@ -692,8 +713,17 @@ end
- -- 1. extensions are ordered as in ext_list first,
- -- 2. then filenames lexicograhpicaly.
- function file_order (a, b)
-- local ext_a = string.match (a, '^.*%.(.*)$')
-- local ext_b = string.match (b, '^.*%.(.*)$')
-+ local ext_a = string.match (a, '^[^.]*%.(.*)$')
-+ local ext_b = string.match (b, '^[^.]*%.(.*)$')
-+ local tmp = string.match(ext_a,'^(.*)%..*$')
-+ local tmp = string.match(ext_a,'^(.*)%..*$')
-+ if tmp then
-+ ext_a = tmp
-+ end
-+ tmp = string.match(ext_b,'^(.*)%..*$')
-+ if tmp then
-+ ext_b = tmp
-+ end
- ext_pos_a = config.ext_list_inv[ext_a] or (config.ext_list_max+1)
- ext_pos_b = config.ext_list_inv[ext_b] or (config.ext_list_max+1)
- if ext_pos_a < ext_pos_b then
++++++ source-warns.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -1,17 +1,71 @@
---- libs/teckit/lib/Makefile.am
-+++ libs/teckit/lib/Makefile.am 2009-08-28 15:16:33.130401857 +0000
-@@ -10,6 +10,9 @@ AM_CFLAGS = $(AM_CPPFLAGS)
-
- lib_LTLIBRARIES = libTECkit_Compiler.la libTECkit.la
-
-+libTECkit_Compiler_la_LIBADD = @LDZLIB@
-+libTECkit_la_LIBADD = @LDZLIB@
+--- libs/icu/icu-4.4/i18n/decNumber.h
++++ libs/icu/icu-4.4/i18n/decNumber.h 2010-11-16 10:35:01.943925533 +0000
+@@ -54,26 +54,30 @@
+ /* For ICU, use one digit per byte, to make it easier to emulate the
+ * old DigitList interface on top of a decNumber
+ */
+- #define DECDPUN 1 /* DECimal Digits Per UNit [must be >0 */
++ #define DECDPUN 3 /* DECimal Digits Per UNit [must be >0 */
+ /* and <10; 3 or powers of 2 are best]. */
+
+- /* DECNUMDIGITS is the default number of digits that can be held in */
+- /* the structure. If undefined, 1 is assumed and it is assumed */
+- /* that the structure will be immediately followed by extra space, */
+- /* as required. DECNUMDIGITS is always >0. */
+- #if !defined(DECNUMDIGITS)
+- #define DECNUMDIGITS 1
+- #endif
+-
+ /* The size (integer data type) of each unit is determined by the */
+ /* number of digits it will hold. */
+ #if DECDPUN<=2
+ #define decNumberUnit uint8_t
++ #define DECNUMDIGITS 3
+ #elif DECDPUN<=4
+ #define decNumberUnit uint16_t
++ #define DECNUMDIGITS 2
+ #else
+ #define decNumberUnit uint32_t
++ #define DECNUMDIGITS 1
+ #endif
++
++ /* DECNUMDIGITS is the default number of digits that can be held in */
++ /* the structure. If undefined, 1 is assumed and it is assumed */
++ /* that the structure will be immediately followed by extra space, */
++ /* as required. DECNUMDIGITS is always >0. */
++ #if !defined(DECNUMDIGITS)
++ #define DECNUMDIGITS 1
++ #endif
+
- ## libTECkit_Compiler_la_LIBADD = @LDZLIB@
- ## libTECkit_la_LIBADD = @LDZLIB@
+ /* The number of units needed is ceil(DECNUMDIGITS/DECDPUN) */
+ #define DECNUMUNITS ((DECNUMDIGITS+DECDPUN-1)/DECDPUN)
---- libs/teckit/source/Compiler.cpp
-+++ libs/teckit/source/Compiler.cpp 2009-08-28 15:16:33.150401373 +0000
+--- libs/icu/icu-4.4/i18n/decnumstr.cpp
++++ libs/icu/icu-4.4/i18n/decnumstr.cpp 2010-11-16 10:38:14.859926653 +0000
+@@ -70,7 +70,7 @@ void DecimalNumberString::setLength(int3
+ return;
+ }
+ if (length > fLength) {
+- uprv_memset(&fText[fLength], length - fLength, 0);
++ uprv_memset(&fText[fLength], 0, length - fLength);
+ }
+ fLength = length;
+ fText[fLength] = 0;
+--- libs/icu/icu-4.4/tools/pkgdata/pkgdata.cpp
++++ libs/icu/icu-4.4/tools/pkgdata/pkgdata.cpp 2010-11-16 10:43:54.739926722 +0000
+@@ -1595,8 +1595,8 @@ static void loadLists(UPKGOptions *o, UE
+ /* #1 try the same path where pkgdata was called from. */
+ findDirname(progname, cmdBuf, 1024, &status);
+ if(U_SUCCESS(status)) {
+- uprv_strncat(cmdBuf, U_FILE_SEP_STRING, 1024);
+- uprv_strncat(cmdBuf, cmd, 1024);
++ uprv_strncat(cmdBuf, U_FILE_SEP_STRING, strlen(U_FILE_SEP_STRING));
++ uprv_strncat(cmdBuf, cmd, strlen(cmd));
+
+ if(verbose) {
+ fprintf(stdout, "# Calling icu-config: %s\n", cmdBuf);
+--- libs/teckit/TECkit-2.5.1/source/Compiler.cpp
++++ libs/teckit/TECkit-2.5.1/source/Compiler.cpp 2009-08-28 15:16:33.150401373 +0000
@@ -1451,13 +1451,16 @@ Compiler::Compiler(const char* txt, UInt
if (dest != 0) {
int result = compress2(dest + 8, &destLen, compiledTable, compiledSize, Z_BEST_COMPRESSION);
@@ -36,17 +90,6 @@
}
else
free(dest);
---- texk/kpathsea/xputenv.c
-+++ texk/kpathsea/xputenv.c 2009-08-28 15:16:33.150401373 +0000
-@@ -87,7 +87,7 @@ kpathsea_xputenv(kpathsea kpse, const ch
- if (cur_loc == kpse->saved_count) {
- /* No old string. */
- kpse->saved_count++;
-- kpse->saved_env = XRETALLOC(kpse->saved_env, kpse->saved_count, char *);
-+ XRETALLOC(kpse->saved_env, kpse->saved_count, char *);
- } else {
- /* We owned the old string. */
- free(kpse->saved_env[cur_loc]);
--- texk/makeindexk/genind.h
+++ texk/makeindexk/genind.h 2009-08-28 15:18:03.265996790 +0000
@@ -25,6 +25,20 @@
@@ -81,7 +124,7 @@
--- texk/makeindexk/mkind.h
+++ texk/makeindexk/mkind.h 2009-08-28 15:20:12.530403291 +0000
-@@ -253,6 +253,20 @@
+@@ -244,6 +244,20 @@
#define STREQ(A, B) (strcmp(A, B) == 0)
#define STRNEQ(A, B) (strcmp(A, B) != 0)
@@ -102,7 +145,7 @@
#define MESSAGE(F) { \
if (verbose) \
fprintf(stderr, F); \
-@@ -261,8 +275,8 @@
+@@ -252,8 +266,8 @@
#define MESSAGE1(F, S) { \
if (verbose) \
@@ -113,7 +156,7 @@
}
#if USE_KPATHSEA /* kpathsea defines a different FATAL */
-@@ -280,7 +294,7 @@
+@@ -271,7 +285,7 @@
#endif
#define FATAL1(F, S) { \
@@ -225,58 +268,25 @@
#define ROUND(x) FLOOR((x) + 0.5)
---- texk/web2c/pdftexdir/utils.c
-+++ texk/web2c/pdftexdir/utils.c 2009-08-28 15:16:33.278402328 +0000
-@@ -1387,7 +1387,7 @@ int newcolorstack(integer s, integer lit
- colstacks_size += STACK_INCREMENT;
- /* If (MAX_COLORSTACKS mod STACK_INCREMENT = 0) then we don't
- need to check the case that size overruns MAX_COLORSTACKS. */
-- colstacks = xretalloc(colstacks, colstacks_size, colstack_type);
-+ xretalloc(colstacks, colstacks_size, colstack_type);
- }
- /* claim new color stack */
- colstack_num = colstacks_used++;
---- texk/web2c/luatexdir/utils/utils.c
-+++ texk/web2c/luatexdir/utils/utils.c 2010-05-18 09:15:31.186924563 +0000
-@@ -1319,8 +1319,7 @@ integer colorstackpush(int colstack_no,
- if (page_mode) {
- if (colstack->page_used == colstack->page_size) {
- colstack->page_size += STACK_INCREMENT;
-- colstack->page_stack = xretalloc(colstack->page_stack,
-- colstack->page_size, char *);
-+ xretalloc(colstack->page_stack, colstack->page_size, char *);
- }
- colstack->page_stack[colstack->page_used++] = colstack->page_current;
- str = makecstring(s);
-@@ -1332,8 +1331,7 @@ integer colorstackpush(int colstack_no,
- } else {
- if (colstack->form_used == colstack->form_size) {
- colstack->form_size += STACK_INCREMENT;
-- colstack->form_stack = xretalloc(colstack->form_stack,
-- colstack->form_size, char *);
-+ xretalloc(colstack->form_stack, colstack->form_size, char *);
- }
- colstack->form_stack[colstack->form_used++] = colstack->form_current;
- str = makecstring(s);
---- texk/web2c/pdftexdir/utils.c
-+++ texk/web2c/pdftexdir/utils.c 2010-05-18 09:14:45.210924259 +0000
-@@ -1471,8 +1471,7 @@ integer colorstackpush(int colstack_no,
+--- texk/web2c/luatexdir/pdf/pdfcolorstack.w
++++ texk/web2c/luatexdir/pdf/pdfcolorstack.w 2010-11-16 10:46:58.863925991 +0000
+@@ -207,8 +207,7 @@ static int colorstackpush(int colstack_n
if (page_mode) {
if (colstack->page_used == colstack->page_size) {
colstack->page_size += STACK_INCREMENT;
- colstack->page_stack = xretalloc(colstack->page_stack,
-- colstack->page_size, char *);
-+ xretalloc(colstack->page_stack, colstack->page_size, char *);
+- (unsigned) colstack->page_size,
++ xretalloc(colstack->page_stack, (unsigned) colstack->page_size,
+ char *);
}
colstack->page_stack[colstack->page_used++] = colstack->page_current;
- str = makecstring(s);
-@@ -1484,8 +1483,7 @@ integer colorstackpush(int colstack_no,
+@@ -222,8 +221,7 @@ static int colorstackpush(int colstack_n
} else {
if (colstack->form_used == colstack->form_size) {
colstack->form_size += STACK_INCREMENT;
- colstack->form_stack = xretalloc(colstack->form_stack,
-- colstack->form_size, char *);
-+ xretalloc(colstack->form_stack, colstack->form_size, char *);
+- (unsigned) colstack->form_size,
++ xretalloc(colstack->form_stack, (unsigned) colstack->form_size,
+ char *);
}
colstack->form_stack[colstack->form_used++] = colstack->form_current;
- str = makecstring(s);
++++++ source-xdvizilla.dif ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -1,5 +1,5 @@
--- texk/xdvik/xdvizilla
-+++ texk/xdvik/xdvizilla 2008-09-25 12:38:16.072122050 +0200
++++ texk/xdvik/xdvizilla 2008-09-25 10:38:16.072122050 +0000
@@ -89,12 +89,7 @@ trap 'do_cleanup' 1 2 3 7 13 15
### create a temporary directory only read/writable by user
### try mktemp if it's available
++++++ source.dif ++++++
++++ 1567 lines (skipped)
++++ between texlive-bin/source.dif
++++ and /mounts/work_src_done/STABLE/texlive-bin/source.dif
++++++ texlive-import ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -59,7 +59,7 @@
#
arch="$(uname -i| tr '[:upper:]' '[:lower:]' | sed s/ppc64/ppc/)"
system="$(uname -s| tr '[:upper:]' '[:lower:]')"
-binary=${arch/i386/i?86}-${system}
+binary=${arch/i586/i?86}-${system}
#
# Test the texlive system: Something is already mounted?
#
++++++ texlive-import.8 ++++++
--- /var/tmp/diff_new_pack.cXD3TV/_old 2010-11-22 12:44:36.000000000 +0100
+++ /var/tmp/diff_new_pack.cXD3TV/_new 2010-11-22 12:44:36.000000000 +0100
@@ -47,6 +47,22 @@
Use this machine binary type. Default is
.IR arch-system .
Some example: i386-linux, x86_64-linux.
+If other an architecture type for the binaries is required on the
+current client, this can be installed
+.B on
+the NF server with e.g.
+.sp 1
+.in +1c
+.nf
+rpm --excludepath=/usr/bin --ignorearch --nodeps --force -Uhv texlive-bin-*<version>.<arch>.rpm
+.fi
+.in -1c
+.sp 1
+with
+.B <version>
+the same version installed natively on the server and with
+.B <arch>
+the required architecture type of the client.
.IP
.\"
.SH EXAMPLE
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org