forked from pool/texlive
Update to TeXLive 2020
OBS-URL: https://build.opensuse.org/package/show/Publishing:TeXLive/texlive?expand=0&rev=356
This commit is contained in:
parent
41d895c2fc
commit
26c5b4cb53
File diff suppressed because it is too large
Load Diff
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:24f95d778ed4278c936f58c32508b9a74927da8061f57affa09f9b956a81c42b
|
||||
size 795988
|
3
biber-2.14.tar.xz
Normal file
3
biber-2.14.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:28e0a2780511c906f9c4554b2226acb50840c93cf73e579e1f2d05ea9e4c6736
|
||||
size 994392
|
@ -4,18 +4,18 @@
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- Build.PL
|
||||
+++ Build.PL 2018-04-12 12:07:59.531719830 +0000
|
||||
@@ -54,7 +54,6 @@ my $builder = $class->new(
|
||||
+++ Build.PL 2020-03-20 11:01:12.391105105 +0100
|
||||
@@ -55,7 +55,6 @@ my $builder = $class->new(
|
||||
'List::AllUtils' => 0,
|
||||
'List::MoreUtils' => 0,
|
||||
'List::MoreUtils::XS' => 0,
|
||||
- 'Mozilla::CA' => '20160104',
|
||||
'Regexp::Common' => 0,
|
||||
'Log::Log4perl' => 0,
|
||||
'Unicode::Collate' => '1.25',
|
||||
'Unicode::Collate' => '1.27',
|
||||
--- bin/biber
|
||||
+++ bin/biber 2018-04-12 12:06:39.913188617 +0000
|
||||
@@ -116,6 +116,8 @@ GetOptions(
|
||||
@@ -123,6 +123,8 @@ GetOptions(
|
||||
) or pod2usage(-verbose => 0,
|
||||
-exitval => EXIT_ERROR);
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
--- configure
|
||||
+++ configure 2018-04-10 08:58:00.463820598 +0000
|
||||
@@ -20674,6 +20674,10 @@ fi
|
||||
@@ -20747,6 +20747,10 @@ fi
|
||||
# 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.
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
--- texk/texlive/linked_scripts/a2ping/a2ping.pl
|
||||
+++ texk/texlive/linked_scripts/a2ping/a2ping.pl 2018-04-10 09:00:52.856579965 +0000
|
||||
@@ -1676,7 +1676,7 @@ showpage quit
|
||||
@@ -1677,7 +1677,7 @@ showpage quit
|
||||
## print STDERR $res;
|
||||
error $?==11 ? "segmentation fault in $GS" : "not a GS output from $GS ($?)"
|
||||
if !defined $res # BUGFIX at Sun Mar 7 18:51:34 CET 2004
|
||||
|
@ -1,25 +0,0 @@
|
||||
---
|
||||
utils/autosp/autosp-src/utils.c | 1 +
|
||||
utils/autosp/autosp-src/utils.h | 2 +-
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- utils/autosp/autosp-src/utils.c
|
||||
+++ utils/autosp/autosp-src/utils.c 2020-01-09 11:48:29.954763221 +0000
|
||||
@@ -23,6 +23,7 @@
|
||||
*/
|
||||
|
||||
# include "utils.h"
|
||||
+int lineno;
|
||||
|
||||
void
|
||||
warning (const char msg[]) /* output warning message msg to stderr */
|
||||
--- utils/autosp/autosp-src/utils.h
|
||||
+++ utils/autosp/autosp-src/utils.h 2020-01-09 11:48:01.819295851 +0000
|
||||
@@ -61,6 +61,6 @@ extern size_t append (char *dst, char **
|
||||
extern bool prefix (const char *cs, const char *ct); /* is string cs[] a prefix of ct[]? */
|
||||
extern bool suffix (const char *cs, const char *ct); /* is string cs[] a suffix of ct[]? */
|
||||
|
||||
-int lineno;
|
||||
+extern int lineno;
|
||||
extern void error (const char msg[]); /* abort with stderr message msg */
|
||||
extern void warning (const char msg[]); /* output warning message msg to stderr */
|
@ -30,13 +30,13 @@
|
||||
ac_configure_args="$ac_configure_args '--enable-native-texlive-build'"])
|
||||
AS_CASE([$enable_largefile],
|
||||
--- texk/dvipdfm-x/configure.ac
|
||||
+++ texk/dvipdfm-x/configure.ac 2019-05-13 10:27:04.041797653 +0000
|
||||
@@ -7,7 +7,7 @@ dnl This file is free software; the co
|
||||
+++ texk/dvipdfm-x/configure.ac 2020-03-19 13:15:34.631031066 +0000
|
||||
@@ -8,7 +8,7 @@ dnl This file is free software; the co
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
dnl
|
||||
-AC_INIT([dvipdfm-x (TeX Live)], [20190225], [tex-k@tug.org])
|
||||
+AC_INIT([dvipdfmx (TeX Live)], [20190225], [tex-k@tug.org])
|
||||
-AC_INIT([dvipdfm-x (TeX Live)], [20200315], [dvipdfmx@tug.org])
|
||||
+AC_INIT([dvipdfm (TeX Live)], [20200315], [dvipdfmx@tug.org])
|
||||
AC_PREREQ([2.65])
|
||||
AC_CONFIG_SRCDIR([agl.c])
|
||||
AC_CONFIG_AUX_DIR([../../build-aux])
|
||||
|
@ -1,550 +0,0 @@
|
||||
Part of 9216833a3888a4105a18e8c349f65b045ddb1079 Mon Sep 17 00:00:00 2001
|
||||
From: Akira Kakuto <kakuto@fuk.kindai.ac.jp>
|
||||
Date: Fri, 6 Sep 2019 22:26:30 +0000
|
||||
Subject: [PATCH] axohelp 1.3
|
||||
|
||||
---
|
||||
utils/axodraw2/axodraw2-src/axohelp.c | 233 ++++++++++++++++++++--------------
|
||||
1 file changed, 142 insertions(+), 91 deletions(-)
|
||||
|
||||
--- utils/axodraw2/axodraw2-src/axohelp.c
|
||||
+++ utils/axodraw2/axodraw2-src/axohelp.c 2019-10-31 12:23:51.285129661 +0000
|
||||
@@ -1,7 +1,12 @@
|
||||
/*
|
||||
+
|
||||
+ Need to do:
|
||||
+ 1. Fix reporting of number of object to in-file number
|
||||
+ 2. Or Don't require object 0 for ID line
|
||||
+
|
||||
#[ License :
|
||||
|
||||
- (C) 2016-2018 by authors:
|
||||
+ (C) 2016-2019 by authors:
|
||||
John Collins (jcc8 at psu dot edu)
|
||||
Jos Vermaseren (t68 at nikhef dot nl)
|
||||
|
||||
@@ -60,6 +65,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
+#include <ctype.h>
|
||||
|
||||
/*
|
||||
#] Includes :
|
||||
@@ -67,9 +73,9 @@
|
||||
*/
|
||||
|
||||
#define NAME "axohelp"
|
||||
-#define VERSIONDATE "2018 Feb 20"
|
||||
+#define VERSIONDATE "2019 Aug 28"
|
||||
#define VERSION 1
|
||||
-#define SUBVERSION 2
|
||||
+#define SUBVERSION 3
|
||||
|
||||
#define COMMENTCHAR '%'
|
||||
#define TERMCHAR ';'
|
||||
@@ -110,7 +116,10 @@ double linesep = 0;
|
||||
int flip = 0;
|
||||
int clockwise = 0;
|
||||
|
||||
-void OutputString(char *);
|
||||
+void CleanupOutput(char *str);
|
||||
+void send( char* str );
|
||||
+void sendClean( char* str );
|
||||
+
|
||||
void ArrowHead();
|
||||
void GetArrow(double *);
|
||||
void BezierArrow(double *);
|
||||
@@ -329,40 +338,43 @@ double mod( double x, int n ) {
|
||||
#[ PDF utilities :
|
||||
|
||||
These routines are included to make the program more readable and easier
|
||||
- to write. It also allows the easy use of the OutputString routine that
|
||||
+ to write. It also allows the easy use of the OutputString?? OLD name routine that
|
||||
compactifies the output.
|
||||
*/
|
||||
|
||||
-#define Stroke outpos += sprintf(outpos," S")
|
||||
-#define CloseAndStroke outpos += sprintf(outpos," h S")
|
||||
-#define Fill outpos += sprintf(outpos," f")
|
||||
-#define CloseAndFill outpos += sprintf(outpos," h f")
|
||||
-#define SaveGraphicsState outpos += sprintf(outpos," q")
|
||||
-#define RestoreGraphicsState outpos += sprintf(outpos," Q")
|
||||
+#define Stroke send(" S")
|
||||
+#define CloseAndStroke send(" h S")
|
||||
+#define Fill send(" f")
|
||||
+#define CloseAndFill send(" h f")
|
||||
+#define SaveGraphicsState send(" q")
|
||||
+#define RestoreGraphicsState send(" Q")
|
||||
|
||||
void Bezier(double x1,double y1,double x2,double y2,double x3,double y3) {
|
||||
- outpos +=
|
||||
- sprintf(outpos,"\n %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f c",x1,y1,x2,y2,x3,y3);
|
||||
+ sprintf(outputbuffer,"\n %12.3f %12.3f %12.3f %12.3f %12.3f %12.3f c",x1,y1,x2,y2,x3,y3);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void LineTo(double x1,double y1) {
|
||||
- outpos +=
|
||||
- sprintf(outpos,"\n %12.3f %12.3f l",x1,y1);
|
||||
+ sprintf(outputbuffer,"\n %12.3f %12.3f l",x1,y1);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void MoveTo(double x1,double y1) {
|
||||
- outpos +=
|
||||
- sprintf(outpos,"\n %12.3f %12.3f m",x1,y1);
|
||||
+ sprintf(outputbuffer,"\n %12.3f %12.3f m",x1,y1);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void SetLineWidth(double w) {
|
||||
- outpos +=
|
||||
- sprintf(outpos," %12.3f w",w);
|
||||
+ sprintf(outputbuffer," %12.3f w",w);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void SetDashSize(double dashsize,double phase) {
|
||||
- if ( dashsize ) outpos += sprintf(outpos," [%12.3f] %12.3f d",dashsize,phase);
|
||||
- else outpos += sprintf(outpos," [] 0 d");
|
||||
+ if ( dashsize ) {
|
||||
+ sprintf(outputbuffer," [%12.3f] %12.3f d",dashsize,phase);
|
||||
+ sendClean(outputbuffer);
|
||||
+ }
|
||||
+ else send(" [] 0 d");
|
||||
}
|
||||
|
||||
void SetTransferMatrix(double x11,double x12,double x21,double x22,double x,double y)
|
||||
@@ -370,8 +382,8 @@ void SetTransferMatrix(double x11,double
|
||||
if ( ( fabs(x11-1.) > 0.001 ) || ( fabs(x22-1.) > 0.001 )
|
||||
|| ( fabs(x12) > 0.001 ) || ( fabs(x21) > 0.001 )
|
||||
|| ( fabs(x) > 0.001 ) || ( fabs(y) > 0.001 ) ) {
|
||||
- outpos +=
|
||||
- sprintf(outpos,"%12.3f %12.3f %12.3f %12.3f %12.3f %12.3f cm\n",x11,x12,x21,x22,x,y);
|
||||
+ sprintf(outputbuffer,"%12.3f %12.3f %12.3f %12.3f %12.3f %12.3f cm\n",x11,x12,x21,x22,x,y);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -379,6 +391,7 @@ static double BzK;
|
||||
|
||||
void BezierCircle(double r,char *action)
|
||||
{
|
||||
+ char *outpos = outputbuffer;
|
||||
outpos +=
|
||||
sprintf(outpos," %12.3f 0 m %12.3f %12.3f %12.3f %12.3f 0 %12.3f c\n",-r,-r,r*BzK,-r*BzK,r,r);
|
||||
outpos +=
|
||||
@@ -387,10 +400,12 @@ void BezierCircle(double r,char *action)
|
||||
sprintf(outpos," %12.3f %12.3f %12.3f %12.3f 0 %12.3f c\n",r,-r*BzK,r*BzK,-r,-r);
|
||||
outpos +=
|
||||
sprintf(outpos," %12.3f %12.3f %12.3f %12.3f %12.3f 0 c %s\n",-r*BzK,-r,-r,-r*BzK,-r,action);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void BezierOval(double w, double h, char *action)
|
||||
{
|
||||
+ char *outpos = outputbuffer;
|
||||
outpos +=
|
||||
sprintf(outpos," %12.3f 0 m %12.3f %12.3f %12.3f %12.3f 0 %12.3f c\n",-w,-w,h*BzK,-w*BzK,h,h);
|
||||
outpos +=
|
||||
@@ -399,41 +414,45 @@ void BezierOval(double w, double h, char
|
||||
sprintf(outpos," %12.3f %12.3f %12.3f %12.3f 0 %12.3f c\n",w,-h*BzK,w*BzK,-h,-h);
|
||||
outpos +=
|
||||
sprintf(outpos," %12.3f %12.3f %12.3f %12.3f %12.3f 0 c %s\n",-w*BzK,-h,-w,-h*BzK,-w,action);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void SetGray(double grayscale,int par)
|
||||
{
|
||||
if ( par == STROKING ) {
|
||||
- outpos += sprintf(outpos," %12.3f G",grayscale);
|
||||
+ sprintf(outputbuffer," %12.3f G",grayscale);
|
||||
}
|
||||
else {
|
||||
- outpos += sprintf(outpos," %12.3f g",grayscale);
|
||||
+ sprintf(outputbuffer," %12.3f g",grayscale);
|
||||
}
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void SetColor(double c, double m, double y, double k,int par)
|
||||
{
|
||||
if ( par == STROKING ) {
|
||||
- outpos += sprintf(outpos," %12.3f %12.3f %12.3f %12.3f K",c,m,y,k);
|
||||
+ sprintf(outputbuffer," %12.3f %12.3f %12.3f %12.3f K",c,m,y,k);
|
||||
}
|
||||
else {
|
||||
- outpos += sprintf(outpos," %12.3f %12.3f %12.3f %12.3f k",c,m,y,k);
|
||||
+ sprintf(outputbuffer," %12.3f %12.3f %12.3f %12.3f k",c,m,y,k);
|
||||
}
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void SetBackgroundColor(int par)
|
||||
{
|
||||
- if ( par == STROKING ) { outpos += sprintf(outpos," 0 0 0 0 K"); }
|
||||
- else { outpos += sprintf(outpos," 0 0 0 0 k"); }
|
||||
+ if ( par == STROKING ) { send(" 0 0 0 0 K"); }
|
||||
+ else { send(" 0 0 0 0 k"); }
|
||||
}
|
||||
|
||||
void Rectangle(double x,double y,double w,double h) {
|
||||
- outpos += sprintf(outpos,"\n %12.3f %12.3f %12.3f %12.3f re",x,y,w,h);
|
||||
+ sprintf(outputbuffer,"\n %12.3f %12.3f %12.3f %12.3f re",x,y,w,h);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
void Triangle(double x1,double y1,double x2,double y2,double x3,double y3) {
|
||||
- outpos +=
|
||||
- sprintf(outpos,"\n %12.3f %12.3f m %12.3f %12.3f l %12.3f %12.3f l h",x1,y1,x2,y2,x3,y3);
|
||||
+ sprintf(outputbuffer,"\n %12.3f %12.3f m %12.3f %12.3f l %12.3f %12.3f l h",x1,y1,x2,y2,x3,y3);
|
||||
+ sendClean(outputbuffer);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -503,10 +522,10 @@ void ArrowHead()
|
||||
LineTo(-length*0.5,-arrow.width);
|
||||
if (k == 1) {
|
||||
SetBackgroundColor(NONSTROKING);
|
||||
- outpos += sprintf(outpos," h f");
|
||||
+ send(" h f");
|
||||
}
|
||||
else {
|
||||
- outpos += sprintf(outpos," s");
|
||||
+ send(" s");
|
||||
}
|
||||
RestoreGraphicsState;
|
||||
}
|
||||
@@ -516,7 +535,7 @@ void ArrowHead()
|
||||
LineTo(-length*0.5,arrow.width);
|
||||
LineTo(-length*0.5+length*arrow.inset,0);
|
||||
LineTo(-length*0.5,-arrow.width);
|
||||
- outpos += sprintf(outpos," h f");
|
||||
+ send(" h f");
|
||||
}
|
||||
RestoreGraphicsState;
|
||||
}
|
||||
@@ -928,17 +947,17 @@ char *ReadInput(char *filename)
|
||||
char *buffer;
|
||||
if ( ( finput = fopen(filename,"r") ) == 0 ) {
|
||||
fprintf(stderr,"%s: Cannot open file %s\n",axohelp,filename);
|
||||
- exit(-1);
|
||||
+ exit(1);
|
||||
}
|
||||
if ( ( fseek(finput,0,SEEK_END) != 0 )
|
||||
|| ( ( filesize = ftell(finput) ) < 0 )
|
||||
|| ( fseek(finput,0,SEEK_SET) != 0 ) ) {
|
||||
fprintf(stderr,"%s: File error in file %s\n",axohelp,filename);
|
||||
- exit(-1);
|
||||
+ exit(1);
|
||||
}
|
||||
if ( ( buffer = malloc((filesize+1)*sizeof(char)) ) == 0 ) {
|
||||
fprintf(stderr,"%s: Error allocating %ld bytes of memory",axohelp,filesize+1);
|
||||
- exit(-1);
|
||||
+ exit(1);
|
||||
}
|
||||
/*
|
||||
Assume character in file is 1 byte, which is true for all cases
|
||||
@@ -947,7 +966,7 @@ char *ReadInput(char *filename)
|
||||
num = fread( buffer, 1, filesize, finput );
|
||||
if ( ferror(finput) ) {
|
||||
fprintf(stderr,"%s: Error reading file %s\n",axohelp,filename);
|
||||
- exit(-1);
|
||||
+ exit(1);
|
||||
}
|
||||
/*
|
||||
By definition, fread reads ALL the items specified, or it gets to
|
||||
@@ -974,31 +993,37 @@ void CleanupOutput(char *str)
|
||||
char *s, *t;
|
||||
int period = 0;
|
||||
s = t = str;
|
||||
- while ( *s && *s != '}' ) {
|
||||
- if ( *s == '\n' ) *s = ' ';
|
||||
- if ( ( *s == ' ' || *s == '\n' ) && ( s[1] == ' ' || s[1] == '\n' ) ) s++;
|
||||
- else *t++ = *s++;
|
||||
+ // Collapse multiple white space (' ' and '\n') to one. Remove trailing space.
|
||||
+ while ( *s ) {
|
||||
+ if ( *s == '\n' ) {*s = ' '; }
|
||||
+ if ( (*s == ' ') && ( s[1] == ' ' || s[1] == '\n' || s[1] == 0 ) ) { s++;}
|
||||
+ else { *t++ = *s++; }
|
||||
}
|
||||
- while ( *s ) *t++ = *s++;
|
||||
*t = 0;
|
||||
+
|
||||
+ // Optimize format of numbers:
|
||||
s = t = str;
|
||||
while ( *s ) {
|
||||
if ( *s == '.' ) { period = 1; *t++ = *s++; }
|
||||
- else if ( *s == '-' && s[1] == '0' && s[2] == ' ' ) { s++; }
|
||||
- else if ( *s <= '9' && *s >= '0' ) { *t++ = *s++; }
|
||||
- else if ( *s == '\n' && ( t > str && t[-1] == '\n' ) ) { s++; }
|
||||
+ else if ( isdigit(*s) ) { *t++ = *s++; }
|
||||
else if ( period ) {
|
||||
- while ( t > str && t[-1] == '0' ) t--;
|
||||
- if ( t > str && t[-1] == '.' ) t--;
|
||||
- while ( *s == ' ' && s[1] == ' ' ) s++;
|
||||
+ while ( t > str && t[-1] == '0' ) { t--; }
|
||||
+ if ( t > str && t[-1] == '.' ) {
|
||||
+ t--;
|
||||
+ // Handle case that number is .000, not e.g. 9.000
|
||||
+ if (t > str && ! isdigit(t[-1]) ) {
|
||||
+ *t++ = '0';
|
||||
+ }
|
||||
+ }
|
||||
period = 0; *t++ = *s++;
|
||||
}
|
||||
- else if ( *s == ' ' && s[1] == ' ' ) s++;
|
||||
else {
|
||||
period = 0; *t++ = *s++;
|
||||
}
|
||||
}
|
||||
*t = 0;
|
||||
+
|
||||
+ // Collapse '-0' to '0'
|
||||
s = t = str;
|
||||
while ( *s ) {
|
||||
if ( *s == '-' && s[1] == '0' && s[2] == ' ' ) { s++; }
|
||||
@@ -1008,65 +1033,87 @@ void CleanupOutput(char *str)
|
||||
}
|
||||
|
||||
/*
|
||||
- #] CleanupOutput :
|
||||
+ #] CleanupOutput :
|
||||
+ #[ send :
|
||||
+*/
|
||||
+
|
||||
+void send( char* str ) {
|
||||
+ fprintf(outfile, "%s",str);
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ #] CleanupOutput :
|
||||
+ #[ sendClean :
|
||||
+*/
|
||||
+
|
||||
+void sendClean( char* str ) {
|
||||
+ CleanupOutput(str);
|
||||
+ send(str);
|
||||
+}
|
||||
+
|
||||
+/*
|
||||
+ #] sendClean :
|
||||
#[ DoOneObject :
|
||||
*/
|
||||
|
||||
int DoOneObject(char *cinput)
|
||||
{
|
||||
- int num, i, num1, num2;
|
||||
- char *s, *t, *StartClean;
|
||||
+ // Single point for exit, to ensure proper clean up.
|
||||
+ int num, i, num1, num2, retcode;
|
||||
+ char *s, *t;
|
||||
double *argbuf = 0;
|
||||
+ retcode = -1;
|
||||
SetDefaults();
|
||||
+
|
||||
+ // Locate number of object:
|
||||
s = cinput; while ( *s != '[' ) s++;
|
||||
s++; t = s; while ( *t != ']' ) t++;
|
||||
*t++ = 0; while ( *t == ' ' || *t == '\t' || *t == '\n' ) t++;
|
||||
+
|
||||
+ fprintf(outfile,"\\axo@setObject{%s}%%\n{%s%c}%%\n{",s,t,TERMCHAR);
|
||||
outpos = outputbuffer;
|
||||
- outpos += sprintf(outpos,"\\axo@setObject{%s}%%\n{%s%c}%%\n{",s,t,TERMCHAR);
|
||||
- if ( *s == '0' && s[1] == ']' ) {
|
||||
+
|
||||
+ nameobject = t; while ( *t != ' ' && *t != '\t' && *t != '\n' && *t ) t++;
|
||||
+ *t++ = 0; while ( *t == ' ' || *t == '\t' || *t == '\n' ) t++;
|
||||
+/*
|
||||
+ Now nameobject is the name of the command and t points at the first parameter.
|
||||
+*/
|
||||
+
|
||||
+ if ( *s == '0' && s[1] == 0 ) {
|
||||
/*
|
||||
The identification line.
|
||||
In due time we might add more options here.
|
||||
*/
|
||||
if ( strcmp(nameobject,"AxodrawWantsPDF") == 0 ) {
|
||||
identification = 1;
|
||||
- outpos += sprintf(outpos,"Axohelp version %d.%d. PDF output.}",VERSION,SUBVERSION);
|
||||
- fprintf(outfile,"%s",outputbuffer);
|
||||
- return(0);
|
||||
+ fprintf(outfile,"Axohelp version %d.%d. PDF output.",VERSION,SUBVERSION);
|
||||
+ goto SUCCESS;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr,"%s: Illegal request in identification string [0]: %s\n"
|
||||
,axohelp,nameobject);
|
||||
- if ( argbuf ) free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
}
|
||||
/*
|
||||
if ( identification == 0 ) {
|
||||
fprintf(stderr,"%s: No identification string. Check versions.\n",axohelp);
|
||||
- if ( argbuf ) free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
*/
|
||||
- StartClean = outpos;
|
||||
|
||||
- nameobject = t; while ( *t != ' ' && *t != '\t' && *t != '\n' && *t ) t++;
|
||||
- *t++ = 0; while ( *t == ' ' || *t == '\t' || *t == '\n' ) t++;
|
||||
-/*
|
||||
- Now nameobject is the name of the command and t points at the first parameter.
|
||||
-*/
|
||||
if ( ( strcmp(nameobject,"Curve") == 0 )
|
||||
|| ( strcmp(nameobject,"Polygon") == 0 )
|
||||
|| ( strcmp(nameobject,"FilledPolygon") == 0 ) ) {
|
||||
/*
|
||||
#[ Curve,Polygons :
|
||||
*/
|
||||
- if ( ( argbuf = ReadArray(t,&num1,&num2) ) == 0 ) return(-1);
|
||||
+ if ( ( argbuf = ReadArray(t,&num1,&num2) ) == 0 )
|
||||
+ goto EXIT;
|
||||
if ( num2-1 != 0 ) {
|
||||
fprintf(stderr,"%s: Command %s should have no extra numbers in %s.\n",
|
||||
axohelp,nameobject,inname);
|
||||
- free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
else {
|
||||
/*
|
||||
@@ -1087,6 +1134,7 @@ int DoOneObject(char *cinput)
|
||||
Polygon(argbuf,num1,1);
|
||||
}
|
||||
free(argbuf);
|
||||
+ argbuf = 0;
|
||||
}
|
||||
/*
|
||||
#] Curve,Polygons :
|
||||
@@ -1096,12 +1144,12 @@ int DoOneObject(char *cinput)
|
||||
/*
|
||||
#[ DashCurve :
|
||||
*/
|
||||
- if ( ( argbuf = ReadArray(t,&num1,&num2) ) == 0 ) return(-1);
|
||||
+ if ( ( argbuf = ReadArray(t,&num1,&num2) ) == 0 )
|
||||
+ goto EXIT;
|
||||
if ( num2 != 2 ) {
|
||||
fprintf(stderr,"%s: Command %s does not have two numbers after the coordinates\n in file %s.\n",
|
||||
axohelp,nameobject,inname);
|
||||
- free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
else {
|
||||
/*
|
||||
@@ -1114,6 +1162,7 @@ int DoOneObject(char *cinput)
|
||||
SetLineWidth(axolinewidth);
|
||||
DashCurve(argbuf,num1);
|
||||
free(argbuf);
|
||||
+ argbuf = 0;
|
||||
}
|
||||
/*
|
||||
#] DashCurve :
|
||||
@@ -1123,7 +1172,8 @@ int DoOneObject(char *cinput)
|
||||
/*
|
||||
#[ Regular command :
|
||||
*/
|
||||
- if ( ( argbuf = ReadTail(t,&num) ) == 0 ) return(-1);
|
||||
+ if ( ( argbuf = ReadTail(t,&num) ) == 0 )
|
||||
+ goto EXIT;
|
||||
for ( i = 0; i < sizeof(commands)/sizeof(KEYWORD); i++ ) {
|
||||
if ( strcmp(nameobject,commands[i].name) == 0 ) {
|
||||
if ( num == commands[i].numargs+1 ) {
|
||||
@@ -1137,13 +1187,13 @@ int DoOneObject(char *cinput)
|
||||
SetLineWidth(axolinewidth);
|
||||
(*(commands[i].func))(argbuf);
|
||||
free(argbuf);
|
||||
+ argbuf = 0;
|
||||
break;
|
||||
}
|
||||
else {
|
||||
fprintf(stderr,"%s: Command %s should have %d(+1) arguments in %s.\n"
|
||||
,axohelp,nameobject,commands[i].numargs,inname);
|
||||
- free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1153,14 +1203,15 @@ int DoOneObject(char *cinput)
|
||||
if ( i >= sizeof(commands)/sizeof(KEYWORD) ) {
|
||||
fprintf(stderr,"%s: Command %s not recognized in file %s.\n",
|
||||
axohelp,nameobject,inname);
|
||||
- free(argbuf);
|
||||
- return(-1);
|
||||
+ goto EXIT;
|
||||
}
|
||||
}
|
||||
- outpos += sprintf(outpos,"}\n");
|
||||
- CleanupOutput(StartClean);
|
||||
- fprintf(outfile,"%s",outputbuffer);
|
||||
- return(0);
|
||||
+ SUCCESS:
|
||||
+ retcode = 0;
|
||||
+ EXIT:
|
||||
+ if (argbuf) { free(argbuf); }
|
||||
+ fprintf(outfile,"}\n");
|
||||
+ return(retcode);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1219,7 +1270,7 @@ int main(int argc,char **argv)
|
||||
axohelp = *argv++;
|
||||
if ( argc <= 0 ) {
|
||||
PrintHelp(axohelp);
|
||||
- return -1;
|
||||
+ return 1;
|
||||
}
|
||||
while ( (*argv)[0] == '-' ) { /* we have options */
|
||||
s = *argv;
|
||||
@@ -1246,19 +1297,19 @@ int main(int argc,char **argv)
|
||||
else {
|
||||
fprintf(stderr,"%s: Illegal option %s\n", axohelp, *argv);
|
||||
PrintHelpPrompt(axohelp);
|
||||
- return -1;
|
||||
+ return 1;
|
||||
}
|
||||
argc--; argv++;
|
||||
if ( argc <= 0 ) {
|
||||
fprintf(stderr,"%s: Not enough arguments\n",axohelp);
|
||||
PrintHelpPrompt(axohelp);
|
||||
- return -1;
|
||||
+ return 1;
|
||||
}
|
||||
}
|
||||
if ( argc != 1 ) {
|
||||
fprintf(stderr,"%s: Too many arguments\n",axohelp);
|
||||
PrintHelpPrompt(axohelp);
|
||||
- return -1;
|
||||
+ return 1;
|
||||
}
|
||||
/*
|
||||
The filename is now in s. We copy it to a separate string and
|
||||
@@ -1276,10 +1327,10 @@ int main(int argc,char **argv)
|
||||
strcpy( inname+length, ".ax1" );
|
||||
strcpy( outname+length, ".ax2" );
|
||||
}
|
||||
- if ( ( inbuffer = ReadInput(inname) ) == 0 ) return(-1);
|
||||
+ if ( ( inbuffer = ReadInput(inname) ) == 0 ) return(1);
|
||||
if ( ( outfile = fopen(outname,"w") ) == 0 ) {
|
||||
fprintf(stderr,"%s: Cannot create file %s\n",axohelp,outname);
|
||||
- exit(-1);
|
||||
+ exit(1);
|
||||
}
|
||||
num = ScanForObjects(inbuffer);
|
||||
for ( i = 0; i < num; i++ ) {
|
||||
@@ -1290,7 +1341,7 @@ int main(int argc,char **argv)
|
||||
if ( error > 0 ) {
|
||||
fprintf(stderr,"%s: %d objects in %s were not translated correctly.\n",
|
||||
axohelp,error,inname);
|
||||
- return(-1);
|
||||
+ return(1);
|
||||
}
|
||||
return(0);
|
||||
}
|
@ -80,7 +80,7 @@ diff --git a/texk/web2c/pdftexdir/pdftosrc.cc b/texk/web2c/pdftexdir/pdftosrc.cc
|
||||
index 3b1d250..7dbee00 100644
|
||||
--- a/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
@@ -178,9 +178,9 @@ int main(int argc, char *argv[])
|
||||
@@ -174,9 +174,9 @@ int main(int argc, char *argv[])
|
||||
|
||||
// parse the header: object numbers and offsets
|
||||
objStr.streamReset();
|
||||
|
@ -16,7 +16,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
===================================================================
|
||||
--- texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
+++ texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
@@ -73,7 +73,7 @@ int main(int argc, char *argv[])
|
||||
@@ -69,7 +69,7 @@ int main(int argc, char *argv[])
|
||||
Stream *s;
|
||||
Object srcStream, srcName, catalogDict;
|
||||
FILE *outfile;
|
||||
@ -437,7 +437,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
int rotate;
|
||||
--- texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
+++ texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc 2019-05-13 08:38:55.432114555 +0000
|
||||
@@ -275,7 +275,7 @@ static int getNewObjectNumber(Ref ref)
|
||||
@@ -276,7 +276,7 @@ static int getNewObjectNumber(Ref ref)
|
||||
|
||||
static void copyObject(Object *);
|
||||
|
||||
@ -446,7 +446,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
{
|
||||
pdf_puts("/");
|
||||
for (; *s != 0; s++) {
|
||||
@@ -287,7 +287,7 @@ static void copyName(char *s)
|
||||
@@ -288,7 +288,7 @@ static void copyName(char *s)
|
||||
}
|
||||
}
|
||||
|
||||
@ -455,7 +455,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
{
|
||||
Object obj1;
|
||||
copyName((char *)obj->dictGetKey(i));
|
||||
@@ -297,7 +297,7 @@ static void copyDictEntry(Object * obj,
|
||||
@@ -298,7 +298,7 @@ static void copyDictEntry(Object * obj,
|
||||
pdf_puts("\n");
|
||||
}
|
||||
|
||||
@ -464,7 +464,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
{
|
||||
int i, l;
|
||||
if (!obj->isDict())
|
||||
@@ -307,10 +307,10 @@ static void copyDict(Object * obj)
|
||||
@@ -308,10 +308,10 @@ static void copyDict(Object * obj)
|
||||
copyDictEntry(obj, i);
|
||||
}
|
||||
|
||||
@ -477,7 +477,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
if (!obj->isDict())
|
||||
pdftex_fail("PDF inclusion: invalid dict type <%s>",
|
||||
obj->getTypeName());
|
||||
@@ -382,7 +382,7 @@ static bool embeddableFont(Object * font
|
||||
@@ -383,7 +383,7 @@ static bool embeddableFont(Object * font
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -486,7 +486,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
{
|
||||
Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
|
||||
stemV;
|
||||
@@ -467,7 +467,7 @@ static void copyFontResources(Object * o
|
||||
@@ -468,7 +468,7 @@ static void copyFontResources(Object * o
|
||||
pdf_puts(">>\n");
|
||||
}
|
||||
|
||||
@ -495,7 +495,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
{
|
||||
// copies all other resources (write_epdf handles Fonts and ProcSets),
|
||||
|
||||
@@ -554,8 +554,8 @@ static void copyObject(Object * obj)
|
||||
@@ -555,8 +555,8 @@ static void copyObject(Object * obj)
|
||||
Object obj1;
|
||||
int i, l, c;
|
||||
Ref ref;
|
||||
@ -506,7 +506,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
if (obj->isBool()) {
|
||||
pdf_printf("%s", obj->getBool()? "true" : "false");
|
||||
} else if (obj->isInt()) {
|
||||
@@ -655,7 +655,7 @@ static void writeRefs()
|
||||
@@ -656,7 +656,7 @@ static void writeRefs()
|
||||
static void writeEncodings()
|
||||
{
|
||||
UsedEncoding *r, *n;
|
||||
@ -515,7 +515,7 @@ Index: texk/web2c/pdftexdir/pdftosrc.cc
|
||||
int i;
|
||||
for (r = encodingList; r != 0; r = r->next) {
|
||||
for (i = 0; i < 256; i++) {
|
||||
@@ -822,7 +822,7 @@ void write_epdf(void)
|
||||
@@ -823,7 +823,7 @@ void write_epdf(void)
|
||||
Object groupDict;
|
||||
bool writeSepGroup = false;
|
||||
Object info;
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
--- utils/lacheck/lacheck.l
|
||||
+++ utils/lacheck/lacheck.l 2016-01-28 12:07:17.472961598 +0000
|
||||
@@ -119,6 +119,7 @@
|
||||
@@ -121,6 +121,7 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
@ -50,7 +50,7 @@ diff --git a/texk/web2c/pdftexdir/pdftoepdf-poppler0.71.0.cc b/texk/web2c/pdftex
|
||||
diff --git a/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc b/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
--- a/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
@@ -977,7 +977,7 @@ The changes below seem to work fine.
|
||||
@@ -978,7 +978,7 @@ The changes below seem to work fine.
|
||||
}
|
||||
l = dic1.getLength();
|
||||
for (i = 0; i < l; i++) {
|
||||
|
@ -11,7 +11,7 @@ diff --git a/texk/web2c/pdftexdir/pdftosrc.cc b/texk/web2c/pdftexdir/pdftosrc.cc
|
||||
index 7dbee00..cc44daf 100644
|
||||
--- a/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftosrc-newpoppler.cc
|
||||
@@ -114,7 +114,7 @@ int main(int argc, char *argv[])
|
||||
@@ -110,7 +110,7 @@ int main(int argc, char *argv[])
|
||||
fprintf(stderr, "No SourceName found\n");
|
||||
exit(1);
|
||||
}
|
||||
@ -20,7 +20,7 @@ index 7dbee00..cc44daf 100644
|
||||
// We cannot free srcName, as objname shares its string.
|
||||
// srcName.free();
|
||||
} else if (objnum > 0) {
|
||||
@@ -123,7 +123,7 @@ int main(int argc, char *argv[])
|
||||
@@ -119,7 +119,7 @@ int main(int argc, char *argv[])
|
||||
fprintf(stderr, "Not a Stream object\n");
|
||||
exit(1);
|
||||
}
|
||||
@ -29,7 +29,7 @@ index 7dbee00..cc44daf 100644
|
||||
if ((p = strrchr(buf, '.')) == 0)
|
||||
p = strchr(buf, 0);
|
||||
if (objgen == 0)
|
||||
@@ -133,7 +133,7 @@ int main(int argc, char *argv[])
|
||||
@@ -129,7 +129,7 @@ int main(int argc, char *argv[])
|
||||
outname = buf;
|
||||
} else { // objnum < 0 means we are extracting the XRef table
|
||||
extract_xref_table = true;
|
||||
|
@ -1,31 +0,0 @@
|
||||
pdfTeX 3.14159265-2.6-1.40.18 (TeX Live 2017) (April 27, 2017)
|
||||
diff --git a/texk/web2c/pdftexdir/utils.c b/texk/web2c/pdftexdir/utils.c
|
||||
index c93a87819..7f5e50416 100644
|
||||
--- a/texk/web2c/pdftexdir/utils.c
|
||||
+++ b/texk/web2c/pdftexdir/utils.c
|
||||
@@ -33,7 +33,7 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#include "ptexlib.h"
|
||||
#include <png.h>
|
||||
#ifdef POPPLER_VERSION
|
||||
-#include <poppler-config.h>
|
||||
+/* POPPLER_VERSION should be a proper version string */
|
||||
#define xpdfVersion POPPLER_VERSION
|
||||
#define xpdfString "poppler"
|
||||
#else
|
||||
|
||||
diff --git a/texk/web2c/xetexdir/XeTeX_ext.c b/texk/web2c/xetexdir/XeTeX_ext.c
|
||||
index 4968ee41e..0aee4ee38 100644
|
||||
--- a/texk/web2c/xetexdir/XeTeX_ext.c
|
||||
+++ b/texk/web2c/xetexdir/XeTeX_ext.c
|
||||
@@ -38,7 +38,10 @@ authorization from the copyright holders.
|
||||
|
||||
#include <w2c/config.h>
|
||||
|
||||
+#ifndef POPPLER_VERSION
|
||||
#include <poppler-config.h>
|
||||
+#endif
|
||||
+
|
||||
#include <png.h>
|
||||
#include <zlib.h>
|
||||
#include <graphite2/Font.h>
|
||||
|
42
source-psutils-kpathsea.dif
Normal file
42
source-psutils-kpathsea.dif
Normal file
@ -0,0 +1,42 @@
|
||||
---
|
||||
texk/psutils/tests/playnup.2 | 8 ++++++++
|
||||
texk/psutils/tests/playnup1.2 | 8 ++++++++
|
||||
texk/psutils/tests/playps.2 | 8 ++++++++
|
||||
3 files changed, 24 insertions(+)
|
||||
|
||||
--- texk/psutils/tests/playnup.2
|
||||
+++ texk/psutils/tests/playnup.2 2020-03-20 12:06:37.965805617 +0000
|
||||
@@ -1 +1,9 @@
|
||||
+warning: kpathsea: /etc/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/lib/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /usr/share/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/cache/texmf/fonts/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
[1] [2] [3] [4] [5] [6] Wrote 6 pages, 16644 bytes
|
||||
--- texk/psutils/tests/playnup1.2
|
||||
+++ texk/psutils/tests/playnup1.2 2020-03-20 12:07:21.136995637 +0000
|
||||
@@ -1 +1,9 @@
|
||||
+warning: kpathsea: /etc/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/lib/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /usr/share/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/cache/texmf/fonts/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
[1] Wrote 1 pages, 19503 bytes
|
||||
--- texk/psutils/tests/playps.2
|
||||
+++ texk/psutils/tests/playps.2 2020-03-20 12:08:02.816213645 +0000
|
||||
@@ -1 +1,9 @@
|
||||
+warning: kpathsea: /etc/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/lib/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /usr/share/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
+warning: kpathsea: /var/cache/texmf/fonts/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
[1] [2] [3] [4] [5] [6] Wrote 6 pages, 16696 bytes
|
@ -1,9 +1,9 @@
|
||||
---
|
||||
texk/psutils/psutils-1.23/epsffit.c | 13 +++++++++----
|
||||
texk/psutils/psutils-src/epsffit.c | 13 +++++++++----
|
||||
1 file changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
--- texk/psutils/psutils-1.23/epsffit.c
|
||||
+++ texk/psutils/psutils-1.23/epsffit.c 2009-08-28 14:47:37.000000000 +0000
|
||||
--- texk/psutils/psutils-src/epsffit.c
|
||||
+++ texk/psutils/psutils-src/epsffit.c 2009-08-28 14:47:37.000000000 +0000
|
||||
@@ -147,9 +147,14 @@ main(int argc, char **argv)
|
||||
yoffset -= lly * yscale;
|
||||
}
|
||||
|
@ -1,20 +0,0 @@
|
||||
---
|
||||
texk/web2c/synctexdir/ac/synctex.ac | 2 +-
|
||||
texk/web2c/synctexdir/synctex_parser_api_level | 1 +
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- texk/web2c/synctexdir/ac/synctex.ac
|
||||
+++ texk/web2c/synctexdir/ac/synctex.ac 2019-04-18 07:52:09.402744074 +0000
|
||||
@@ -6,7 +6,7 @@ dnl
|
||||
dnl Additional code for synctex
|
||||
dnl
|
||||
m4_define([synctex_version],
|
||||
- m4_chomp(m4_include([synctexdir/synctex_parser_api_level.txt])))
|
||||
+ m4_chomp(m4_include([synctexdir/synctex_parser_api_level])))
|
||||
AC_SUBST([SYNCTEXVERSION], [synctex_version])
|
||||
KPSE_LT_VERSION([synctex])
|
||||
|
||||
--- texk/web2c/synctexdir/synctex_parser_api_level
|
||||
+++ texk/web2c/synctexdir/synctex_parser_api_level 2018-04-23 11:57:26.371746955 +0000
|
||||
@@ -0,0 +1 @@
|
||||
+2.0
|
@ -1,19 +1,18 @@
|
||||
---
|
||||
libs/gmp/Makefile.in | 2 +-
|
||||
libs/icu/icu-src/source/i18n/decNumber.h | 22 +++++++++++++---------
|
||||
libs/lua52/Makefile.in | 4 ++--
|
||||
libs/lua53/Makefile.in | 4 ++--
|
||||
libs/mpfr/Makefile.in | 2 +-
|
||||
libs/teckit/TECkit-src/source/Compiler.cpp | 17 ++++++++++-------
|
||||
libs/teckit/TECkit-src/source/Compiler.cpp | 12 +++++++-----
|
||||
texk/makeindexk/genind.h | 16 +++++++++++++++-
|
||||
texk/makeindexk/mkind.h | 20 +++++++++++++++++---
|
||||
texk/makeindexk/scanid.h | 16 +++++++++++++++-
|
||||
texk/makeindexk/scanst.h | 16 +++++++++++++++-
|
||||
10 files changed, 93 insertions(+), 32 deletions(-)
|
||||
9 files changed, 86 insertions(+), 24 deletions(-)
|
||||
|
||||
--- libs/gmp/Makefile.in
|
||||
+++ libs/gmp/Makefile.in 2016-06-07 13:29:33.925651292 +0000
|
||||
@@ -480,7 +480,7 @@ am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||
@@ -484,7 +484,7 @@ am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
|
||||
am__v_lt_0 = --silent
|
||||
am__v_lt_1 =
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
@ -66,7 +65,7 @@
|
||||
|
||||
--- libs/lua53/Makefile.in
|
||||
+++ libs/lua53/Makefile.in 2016-06-07 13:29:33.925651292 +0000
|
||||
@@ -238,11 +238,11 @@ depcomp = $(SHELL) $(top_srcdir)/../../b
|
||||
@@ -238,11 +238,11 @@ am__depfiles_remade = ./$(DEPDIR)/luates
|
||||
@LUA53_TREE@/src/$(DEPDIR)/lzio.Plo
|
||||
am__mv = mv -f
|
||||
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
|
||||
@ -92,28 +91,23 @@
|
||||
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
|
||||
am__v_CC_0 = @echo " CC " $@;
|
||||
--- libs/teckit/TECkit-src/source/Compiler.cpp
|
||||
+++ libs/teckit/TECkit-src/source/Compiler.cpp 2016-06-07 13:29:51.653318024 +0000
|
||||
@@ -1449,13 +1449,16 @@ Compiler::Compiler(const char* txt, UInt
|
||||
if (dest != 0) {
|
||||
int result = compress2(dest + 8, &destLen, compiledTable, compiledSize, Z_BEST_COMPRESSION);
|
||||
+++ libs/teckit/TECkit-src/source/Compiler.cpp 2020-03-19 13:42:03.021195717 +0000
|
||||
@@ -1451,11 +1451,13 @@ Compiler::Compiler(const char* txt, UInt
|
||||
if (result == Z_OK) {
|
||||
- destLen += 8;
|
||||
- dest = (Byte*)realloc(dest, destLen); // shrink dest to fit
|
||||
- WRITE(((FileHeader*)dest)->type, kMagicNumberCmp);
|
||||
- WRITE(((FileHeader*)dest)->version, compiledSize);
|
||||
destLen += 8;
|
||||
dest = static_cast<Byte*>(realloc(dest, destLen)); // shrink dest to fit
|
||||
- WRITE(reinterpret_cast<FileHeader*>(dest)->type, kMagicNumberCmp);
|
||||
- WRITE(reinterpret_cast<FileHeader*>(dest)->version, compiledSize);
|
||||
- free(compiledTable);
|
||||
- compiledTable = dest;
|
||||
- compiledSize = destLen;
|
||||
+ if ((dest = (Byte*)realloc(dest, destLen+8)) != NULL) {
|
||||
+ destLen += 8;
|
||||
+ WRITE(((FileHeader*)dest)->type, kMagicNumberCmp);
|
||||
+ WRITE(((FileHeader*)dest)->version, compiledSize);
|
||||
+ if (dest != NULL) {
|
||||
+ WRITE(reinterpret_cast<FileHeader*>(dest)->type, kMagicNumberCmp);
|
||||
+ WRITE(reinterpret_cast<FileHeader*>(dest)->version, compiledSize);
|
||||
+ free(compiledTable);
|
||||
+ compiledTable = dest;
|
||||
+ compiledSize = destLen;
|
||||
+ }
|
||||
+ else
|
||||
+ free(dest);
|
||||
}
|
||||
else
|
||||
free(dest);
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
--- texk/xdvik/xdvi.h
|
||||
+++ texk/xdvik/xdvi.h 2016-01-28 12:20:33.976881969 +0000
|
||||
@@ -194,6 +194,12 @@ extern unsigned long time_start, time_en
|
||||
@@ -182,6 +182,12 @@ extern unsigned long time_start, time_en
|
||||
#include <inttypes.h>
|
||||
#endif
|
||||
|
||||
|
667
source.dif
667
source.dif
@ -6,8 +6,6 @@
|
||||
texk/kpathsea/c-memstr.h | 3
|
||||
texk/kpathsea/cnf-to-paths.awk | 2
|
||||
texk/kpathsea/db.c | 13 -
|
||||
texk/kpathsea/mktex.opt | 39 ++-
|
||||
texk/kpathsea/mktexlsr | 52 +++-
|
||||
texk/kpathsea/progname.c | 4
|
||||
texk/kpathsea/texmf.cnf | 140 +++++++-----
|
||||
texk/lcdf-typetools/lcdf-typetools-src/otftotfm/otftotfm.cc | 3
|
||||
@ -16,33 +14,15 @@
|
||||
texk/texlive/linked_scripts/texlive/fmtutil-sys.sh | 1
|
||||
texk/texlive/linked_scripts/texlive/fmtutil.pl | 24 +-
|
||||
texk/texlive/linked_scripts/texlive/updmap-sys.sh | 1
|
||||
texk/texlive/tl_scripts/fmtutil.cnf | 17 -
|
||||
texk/texlive/tl_scripts/texconfig-dialog.sh | 14 -
|
||||
texk/texlive/tl_scripts/texconfig-sys.sh | 1
|
||||
texk/texlive/tl_scripts/texconfig.sh | 35 ---
|
||||
texk/texlive/tl_scripts/texlinks.sh | 53 +++-
|
||||
texk/web2c/Makefile.in | 7
|
||||
texk/web2c/luatexdir/luapplib/ppheap.c | 61 ++---
|
||||
texk/web2c/luatexdir/luapplib/ppload.c | 4
|
||||
texk/web2c/uptexdir/tests/gkhugeng.err | 8
|
||||
texk/web2c/window/regis.c | 8
|
||||
texk/web2c/window/x11-Xlib.c | 8
|
||||
texk/web2c/window/x11-Xt.c | 4
|
||||
texk/xdvik/psgs.c | 22 +
|
||||
texk/xdvik/xdvi-sh.in | 19 +
|
||||
31 files changed, 393 insertions(+), 190 deletions(-)
|
||||
22 files changed, 224 insertions(+), 83 deletions(-)
|
||||
|
||||
--- libs/icu/icu-src/source/common/Makefile.in
|
||||
+++ libs/icu/icu-src/source/common/Makefile.in 2018-04-10 09:02:17.774983801 +0000
|
||||
@@ -69,7 +69,7 @@ DEFS += -DU_COMMON_IMPLEMENTATION
|
||||
LDFLAGS += $(LDFLAGSICUUC)
|
||||
|
||||
# for plugin configuration
|
||||
-CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"$(libdir)/icu\" "
|
||||
+CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"/usr/lib/icu\" "
|
||||
|
||||
# for icu data location
|
||||
ifeq ($(PKGDATA_MODE),common)
|
||||
--- reautoconf
|
||||
+++ reautoconf 2018-04-10 09:02:17.774983801 +0000
|
||||
@@ -83,7 +83,7 @@ echo "$0: TL_AUTOHEADER, T
|
||||
@ -54,6 +34,17 @@
|
||||
|
||||
AUTOCONF=$TL_AUTOCONF
|
||||
AUTOHEADER=$TL_AUTOHEADER
|
||||
--- libs/icu/icu-src/source/common/Makefile.in
|
||||
+++ libs/icu/icu-src/source/common/Makefile.in 2018-04-10 09:02:17.774983801 +0000
|
||||
@@ -69,7 +69,7 @@ DEFS += -DU_COMMON_IMPLEMENTATION
|
||||
LDFLAGS += $(LDFLAGSICUUC)
|
||||
|
||||
# for plugin configuration
|
||||
-CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"$(libdir)/icu\" "
|
||||
+CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"/usr/lib/icu\" "
|
||||
|
||||
# for icu data location
|
||||
ifeq ($(PKGDATA_MODE),common)
|
||||
--- texk/dviljk/dvi2xx.c
|
||||
+++ texk/dviljk/dvi2xx.c 2018-04-10 09:02:17.858982223 +0000
|
||||
@@ -168,7 +168,18 @@ main(int argc, char *argv[])
|
||||
@ -155,190 +146,6 @@
|
||||
while ((line = read_line (db_file)) != NULL) {
|
||||
len = strlen (line);
|
||||
|
||||
--- texk/kpathsea/mktex.opt
|
||||
+++ texk/kpathsea/mktex.opt 2018-04-10 09:02:17.858982223 +0000
|
||||
@@ -38,10 +38,11 @@ if test "$DOSISH" = "no"; then SEP=':';
|
||||
# TEMPDIR needs to be unique to each process because of the possibility of two
|
||||
# people running dvips (or whatever) simultaneously.
|
||||
if test -n "$TMPDIR"; then
|
||||
- TEMPDIR="${TMPDIR}/mt$$.tmp"
|
||||
+ TEMPDIR="${TMPDIR}/.mtXXXXXXXXXX"
|
||||
else
|
||||
- TEMPDIR="/tmp/mt$$.tmp"
|
||||
+ TEMPDIR="/tmp/.mtXXXXXXXXXX"
|
||||
fi
|
||||
+TEMPDIR=$(mktemp -d "$TEMPDIR") || exit 1
|
||||
|
||||
# We want to output only filenames to standard output, but it's too
|
||||
# error-prone to write the scripts that way, so we direct stdout here.
|
||||
@@ -49,17 +50,23 @@ STDOUT="$TEMPDIR/mt$$.out"
|
||||
|
||||
# We will change search paths to include $KPSE_DOT. This is necessary
|
||||
# since we cd to $TEMPDIR.
|
||||
-: ${KPSE_DOT=`pwd`}; export KPSE_DOT
|
||||
+: ${KPSE_DOT=${PWD}}; export KPSE_DOT
|
||||
|
||||
# Clean up on normal or abnormal exit.
|
||||
# The "cd /" is for MS-DOS and MS-Windows, where there is a separate
|
||||
# current directory on each drive, and therefore "cd $KPSE_DOT" might
|
||||
# still leave $TMPDIR current directory on its drive, in which case it
|
||||
# cannot be removed.
|
||||
-trap 'rc=$?; cd /; cd "$KPSE_DOT"; test -f "$STDOUT" && cat "$STDOUT"; rm -rf "$TEMPDIR"; exit $rc' \
|
||||
- 0 1 2 3 7 13 15
|
||||
+atexit ()
|
||||
+{
|
||||
+ local rc=$?
|
||||
+ cd "$KPSE_DOT"
|
||||
+ test -n "$STDOUT" -a -f "$STDOUT" && cat "$STDOUT"
|
||||
+ test -n "$TEMPDIR" -a -d "$TEMPDIR" && rm -rf "$TEMPDIR"
|
||||
+ exit $rc
|
||||
+}
|
||||
+trap 'atexit' EXIT SIGHUP SIGINT SIGQUIT SIGBUS SIGPIPE SIGTERM
|
||||
|
||||
-(umask 077 && mkdir "$TEMPDIR") || exit 1
|
||||
cd "$TEMPDIR" || exit 1
|
||||
|
||||
# The alternative location for fonts. The directory need not exist,
|
||||
@@ -69,6 +76,11 @@ if test -z "$MT_VARTEXFONTS"; then
|
||||
echo "$0: VARTEXFONTS is not defined. Defaulting to \`$KPSE_DOT'." >&2
|
||||
MT_VARTEXFONTS='$KPSE_DOT'
|
||||
fi
|
||||
+: ${MT_TEXMFVAR=`kpsewhich --expand-var='$TEXMFVAR' | sed 's%^!!%%'`}
|
||||
+if test -z "$MT_TEXMFVAR"; then
|
||||
+ echo "$0: TEXMFVAR is not defined. Defaulting to \`$KPSE_DOT'." >&2
|
||||
+ MT_TEXMFVAR='$KPSE_DOT'
|
||||
+fi
|
||||
|
||||
# The supporting scripts:
|
||||
: ${MT_MKTEXNAM=`kpsewhich --format='web2c files' mktexnam`}
|
||||
@@ -109,9 +121,18 @@ fi
|
||||
: ${MAG=1.0}
|
||||
: ${ps_to_pk=gsftopk} # some prefer ps2pk
|
||||
|
||||
-# Allow fonts to be read and written (especially in case we make
|
||||
-# directories) by everyone.
|
||||
-umask 0
|
||||
+case ":${MT_FEATURES}:" in
|
||||
+*:varfonts:*)
|
||||
+ if test -w "$MT_VARTEXFONTS" ; then
|
||||
+ # Allow fonts to be read and written (especially in case we make
|
||||
+ # directories) by everyone.
|
||||
+ umask 0
|
||||
+ else
|
||||
+ umask 022
|
||||
+ MT_VARTEXFONTS=$HOME/.cache/texmf/fonts
|
||||
+ test -d $MT_VARTEXFONTS || mkdir -p $MT_VARTEXFONTS
|
||||
+ fi
|
||||
+esac
|
||||
|
||||
# Cache values that may be useful for recursive calls.
|
||||
export MT_MKTEX_OPT MT_MKTEX_CNF
|
||||
--- texk/kpathsea/mktexlsr
|
||||
+++ texk/kpathsea/mktexlsr 2018-04-10 09:02:17.858982223 +0000
|
||||
@@ -58,6 +58,9 @@ if test "$DOSISH" = "no"; then SEP=':';
|
||||
# be done before kpsewhich can be called, and thus cannot be put into
|
||||
# mktex.opt.
|
||||
dirname=`echo $0 | sed 's%/*[^/][^/]*$%%'`
|
||||
+case "$SEP$PATH$SEP" in
|
||||
+ *$SEP$dirname$SEP*) dirname="" ;;
|
||||
+esac
|
||||
case $dirname in
|
||||
"") # Do nothing
|
||||
;;
|
||||
@@ -152,6 +155,16 @@ old_ls_R_magic='% ls-R -- maintained by
|
||||
shift
|
||||
}
|
||||
|
||||
+cache="`kpsewhich --expand-var='$VARTEXFONTS'`"
|
||||
+{
|
||||
+ saveIFS=$IFS
|
||||
+ IFS=:
|
||||
+ for c in ${cache}; do
|
||||
+ test -w "$c" || continue
|
||||
+ cache=$c
|
||||
+ done
|
||||
+ IFS=$saveIFS
|
||||
+}
|
||||
for TEXMFLS_R in "$@"; do
|
||||
# Prepend cwd if the directory was relative.
|
||||
case "$TEXMFLS_R" in
|
||||
@@ -181,12 +194,23 @@ for TEXMFLS_R in "$@"; do
|
||||
# want to be silent if the directory doesn't exist, since the ls-R
|
||||
# path ordinarily contains many nonexistent directories.
|
||||
test -d "$db_dir" || continue
|
||||
- test -w "$db_dir" || { echo "$progname: $db_dir: directory not writable. Skipping..." >&2; continue; }
|
||||
+ if test -w "$db_dir" ; then
|
||||
+ # default
|
||||
+ db_dir_tmp="$db_dir/.lsR.XXXXXX"
|
||||
+ else
|
||||
+ # Escape to writable cache directory
|
||||
+ test -w "$cache" || { echo "$progname: $db_dir: directory not writable. Skipping..." >&2; continue; }
|
||||
+ db_dir_tmp="$cache/.lsR.XXXXXX"
|
||||
+ fi
|
||||
|
||||
if test ! -f "$db_file"; then
|
||||
- cp /dev/null "$db_file"
|
||||
+ # Note: this script has set the noclobber option at line 40
|
||||
+ > "$db_file" \
|
||||
+ || { echo "$progname: could not create file '$db_file'. Skipping..." >&2; continue; }
|
||||
# Use same permissions as parent directory, minus x,s, or t bits.
|
||||
chmod `kpsestat -xst "$db_dir"` "$db_file"
|
||||
+ elif test -w $db_file -a ! -s $db_file ; then
|
||||
+ : Is writable but empty
|
||||
elif test -s "$db_file" \
|
||||
&& test "x`sed '1s/
$//;1q' \"$db_file\"`" != "x$ls_R_magic" \
|
||||
&& test "x`sed '1s/
$//;1q' \"$db_file\"`" != "x$old_ls_R_magic"; then
|
||||
@@ -197,8 +221,13 @@ for TEXMFLS_R in "$@"; do
|
||||
# Skip if we cannot write the file:
|
||||
kpseaccess -w "$db_file" || { echo "$progname: $db_file: no write permission, skipping..." >&2; continue; }
|
||||
|
||||
- db_dir_tmp="$db_dir/lsR$$.tmp"
|
||||
- (umask 077 && mkdir "$db_dir_tmp" ) \
|
||||
+ until PERMS=`kpsestat = "$db_file"`; do sleep 1; done
|
||||
+ if test "$PERMS" = "666" -a ! -k "$db_dir" ; then
|
||||
+ echo "$progname: $db_file: world writable but '$db_dir' not sticky, skipping..." >&2
|
||||
+ continue
|
||||
+ fi
|
||||
+
|
||||
+ db_dir_tmp=$(mktemp -d "$db_dir_tmp") \
|
||||
|| { echo "$progname: $db_dir_tmp: could not create directory, skipping..." >&2; continue; }
|
||||
db_file_tmp="$db_dir_tmp/lsR$$.tmp"
|
||||
rm -f "$db_file_tmp"
|
||||
@@ -206,7 +235,9 @@ for TEXMFLS_R in "$@"; do
|
||||
$verbose && echo "$progname: Updating $db_file... "
|
||||
$dry_run && continue
|
||||
|
||||
- echo "$ls_R_magic" >"$db_file_tmp"
|
||||
+ # Note: this script has set the noclobber option at line 40
|
||||
+ echo "$ls_R_magic" >"$db_file_tmp" \
|
||||
+ || { echo "$progname: $db_file_tmp: could not create file, skipping..." >&2; continue; }
|
||||
|
||||
# The main task. We put ./: in the output, so top-level files can be
|
||||
# found via ls-R. Probably irrelevant in practice. The sed command
|
||||
@@ -220,15 +251,20 @@ for TEXMFLS_R in "$@"; do
|
||||
vc_dirs='\.\(bzr\|git\|hg\|svn\)\|_darcs'
|
||||
(cd "$TEXMFLS_R" && \ls -LRa 2>/dev/null) \
|
||||
| sed -e '/^$/{n;s%^\./%%;s%^%./%;}; /^\.$/d; /^\.\.$/d; /^'$vc_dirs'$/d;' \
|
||||
- -e '/^[\.\/]*lsR[0-9]*\.tmp:*$/d' \
|
||||
+ -e '/^[\.\/]*lsR[0-9]*\.tmp:*$/d;/^[\.\/]*'${db_dir_tmp##*/}':*$/d' \
|
||||
| sed -e /$vc_dirs'.*:$/,/^$/d' \
|
||||
>>"$db_file_tmp"
|
||||
|
||||
# To be really safe, a loop.
|
||||
until PERMS=`kpsestat = "$db_file"`; do sleep 1; done
|
||||
chmod $PERMS "$db_file_tmp"
|
||||
- rm -f "$db_file"
|
||||
- mv "$db_file_tmp" "$db_file"
|
||||
+ if test -w "$db_file" ; then
|
||||
+ # Sticky bit is set see line 200
|
||||
+ # Temporary unset the noclobber option at line 40
|
||||
+ set +o noclobber
|
||||
+ cat "$db_file_tmp" > "$db_file"
|
||||
+ set -o noclobber
|
||||
+ fi
|
||||
rm -rf "$db_dir_tmp"
|
||||
done
|
||||
|
||||
--- texk/kpathsea/progname.c
|
||||
+++ texk/kpathsea/progname.c 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -662,9 +662,9 @@ kpathsea_set_program_name (kpathsea kpse
|
||||
@ -354,8 +161,8 @@
|
||||
sdir_greatgrandparent = xdirname (sdir_grandparent);
|
||||
kpathsea_xputenv (kpse, "SELFAUTOGRANDPARENT", fix_selfdir (sdir_greatgrandparent));
|
||||
--- texk/kpathsea/texmf.cnf
|
||||
+++ texk/kpathsea/texmf.cnf 2019-05-29 06:12:28.489081219 +0000
|
||||
@@ -61,20 +61,20 @@
|
||||
+++ texk/kpathsea/texmf.cnf 2020-03-20 09:47:16.242820144 +0000
|
||||
@@ -62,20 +62,20 @@
|
||||
TEXMFROOT = $SELFAUTOPARENT
|
||||
|
||||
% The main tree of distributed packages and programs:
|
||||
@ -380,20 +187,20 @@
|
||||
|
||||
% Per-user texmf tree(s) -- organized per the TDS, as usual. To define
|
||||
% more than one per-user tree, set this to a list of directories in
|
||||
@@ -83,10 +83,10 @@ TEXMFSYSCONFIG = $TEXMFROOT/texmf-config
|
||||
@@ -84,10 +84,10 @@ TEXMFSYSCONFIG = $TEXMFROOT/texmf-config
|
||||
TEXMFHOME = ~/texmf
|
||||
|
||||
% TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data.
|
||||
-TEXMFVAR = ~/.texlive2019/texmf-var
|
||||
-TEXMFVAR = ~/.texlive2020/texmf-var
|
||||
+TEXMFVAR = ${TEXMFSYSVAR}
|
||||
|
||||
% TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data.
|
||||
-TEXMFCONFIG = ~/.texlive2019/texmf-config
|
||||
-TEXMFCONFIG = ~/.texlive2020/texmf-config
|
||||
+TEXMFCONFIG = ${TEXMFSYSCONFIG}
|
||||
|
||||
% This is the value manipulated by tlmgr's auxtrees subcommand in the
|
||||
% root texmf.cnf. Kpathsea warns about a literally empty string for a
|
||||
@@ -107,7 +107,7 @@ TEXMFAUXTREES = {}
|
||||
@@ -108,7 +108,7 @@ TEXMFAUXTREES = {}
|
||||
% The odd-looking $TEXMFAUXTREES$TEXMF... construct is so that if no auxtree is
|
||||
% ever defined (the 99% common case), no extra elements will be added to
|
||||
% the search paths. tlmgr takes care to end any value with a trailing comma.
|
||||
@ -402,7 +209,7 @@
|
||||
|
||||
% Where to look for, and where mktexlsr creates, ls-R files. By default,
|
||||
% this is all and only the !! elements of TEXMF, so that mktexlsr does not
|
||||
@@ -115,24 +115,23 @@ TEXMF = {$TEXMFAUXTREES$TEXMFCONFIG,$TEX
|
||||
@@ -116,24 +116,23 @@ TEXMF = {$TEXMFAUXTREES$TEXMFCONFIG,$TEX
|
||||
% present, it will be used, and the disk will not (usually) be searched,
|
||||
% regardless of !!. Although in principle a directory listed here need
|
||||
% not contain an ls-R file, in practice they all should.
|
||||
@ -430,7 +237,7 @@
|
||||
|
||||
% On some systems, there will be a system tree which contains all the font
|
||||
% files that may be created as well as the formats. For example
|
||||
@@ -143,7 +142,8 @@ VARTEXFONTS = $TEXMFVAR/fonts
|
||||
@@ -144,7 +143,8 @@ VARTEXFONTS = $TEXMFVAR/fonts
|
||||
%
|
||||
% Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below
|
||||
% one of the TEXMF directories (avoids overlapping ls-R files).
|
||||
@ -440,7 +247,7 @@
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Usually you will not need to edit any of the following variables.
|
||||
@@ -151,7 +151,7 @@ VARTEXFONTS = $TEXMFVAR/fonts
|
||||
@@ -152,7 +152,7 @@ VARTEXFONTS = $TEXMFVAR/fonts
|
||||
|
||||
% WEB2C is for Web2C specific files. The current directory may not be
|
||||
% a good place to look for them.
|
||||
@ -449,7 +256,7 @@
|
||||
|
||||
% This variable exists only to be redefined; it is used in nearly all
|
||||
% search paths. If a document has source files not only in the current
|
||||
@@ -285,7 +285,7 @@ TEXINPUTS = $TEXMFDOTDIR;$
|
||||
@@ -307,7 +307,7 @@ TEXINPUTS = $TEXMFDOTDIR;$
|
||||
TTF2TFMINPUTS = $TEXMFDOTDIR;$TEXMF/ttf2pk//
|
||||
|
||||
% Metafont, MetaPost inputs.
|
||||
@ -458,7 +265,7 @@
|
||||
MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost//
|
||||
|
||||
% Dump files (fmt/base/mem) for vir{tex,mf,mp} to read.
|
||||
@@ -295,31 +295,31 @@ MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost/
|
||||
@@ -317,31 +317,31 @@ MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost/
|
||||
% We repeat the same definition three times because of the way fmtutil
|
||||
% is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats
|
||||
% will not be found.
|
||||
@ -497,7 +304,7 @@
|
||||
|
||||
% Similarly for the GF format, which only remains in existence because
|
||||
% Metafont outputs it (and MF isn't going to change).
|
||||
@@ -415,8 +415,8 @@ MPSUPPORT = $TEXMFDOTDIR;$TEXMF/metapost
|
||||
@@ -437,8 +437,8 @@ MPSUPPORT = $TEXMFDOTDIR;$TEXMF/metapost
|
||||
% For xdvi to find mime.types and .mailcap, if they do not exist in
|
||||
% ~. These are single directories, not paths.
|
||||
% (But the default mime.types, at least, may well suffice.)
|
||||
@ -508,7 +315,7 @@
|
||||
|
||||
% Default settings for the fontconfig library as used by the Windows
|
||||
% versions of xetex/xdvipdfmx. Not used by xetex on Unixish systems.
|
||||
@@ -440,10 +440,10 @@ WEBINPUTS = $TEXMFDOTDIR;$TEXMF/web//
|
||||
@@ -462,10 +462,10 @@ WEBINPUTS = $TEXMFDOTDIR;$TEXMF/web//
|
||||
CWEBINPUTS = $TEXMFDOTDIR;$TEXMF/cweb//
|
||||
|
||||
% Omega-related fonts and other files.
|
||||
@ -523,7 +330,7 @@
|
||||
OTPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/otp//
|
||||
OCPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/ocp//
|
||||
|
||||
@@ -526,32 +526,38 @@ RUBYINPUTS = $TEXMFDOTDIR;$TEXMF/scrip
|
||||
@@ -558,32 +558,38 @@ RUBYINPUTS = $TEXMFDOTDIR;$TEXMF/scrip
|
||||
% explicitly list every directory. Arguably more understandable anyway.
|
||||
%
|
||||
TEXMFCNF = {\
|
||||
@ -587,10 +394,10 @@
|
||||
%
|
||||
% For reference, here is the old brace-using definition:
|
||||
%TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web2c}
|
||||
@@ -836,3 +842,33 @@ max_cols.gftype = 8191
|
||||
% Guess input encoding (SJIS vs. Unicode, etc.) in pTeX and friends?
|
||||
% Default is 1, to guess. Used on Windows only.
|
||||
guess_input_kanji_encoding = 1
|
||||
@@ -894,3 +900,33 @@ guess_input_kanji_encoding = 1
|
||||
% command_line_encoding = none
|
||||
% in a texmf.cnf prefered, for example $TEXMFLOCAL/web2c/texmf.cnf.
|
||||
command_line_encoding = utf-8
|
||||
+
|
||||
+% These are xmltex specific
|
||||
+main_memory.xmltex = 1500000
|
||||
@ -635,7 +442,7 @@
|
||||
#define VERSION_OPT 301
|
||||
--- texk/ps2pk/pk2bm.c
|
||||
+++ texk/ps2pk/pk2bm.c 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -103,7 +102,7 @@ int main(int argc, char *argv[])
|
||||
@@ -103,7 +103,7 @@ invalid:
|
||||
}
|
||||
}
|
||||
|
||||
@ -685,7 +492,7 @@
|
||||
+umask 022
|
||||
exec fmtutil --sys ${1+"$@"}
|
||||
--- texk/texlive/linked_scripts/texlive/fmtutil.pl
|
||||
+++ texk/texlive/linked_scripts/texlive/fmtutil.pl 2018-04-10 09:02:17.862982147 +0000
|
||||
+++ texk/texlive/linked_scripts/texlive/fmtutil.pl 2020-03-20 09:50:01.803710617 +0000
|
||||
@@ -10,16 +10,16 @@
|
||||
# History:
|
||||
# Original shell script (C) 2001 Thomas Esser, public domain
|
||||
@ -732,7 +539,7 @@
|
||||
}
|
||||
# set up destination directory
|
||||
$opts{'fmtdir'} ||= "$texmfvar/web2c";
|
||||
@@ -597,6 +604,7 @@ sub rebuild_one_format {
|
||||
@@ -599,6 +606,7 @@ sub rebuild_one_format {
|
||||
# check for existence of ini file before doing anything else
|
||||
if (system("kpsewhich -progname=$fmt -format=$kpsefmt $inifile >$nul 2>&1") != 0) {
|
||||
# we didn't find the ini file, skip
|
||||
@ -740,12 +547,12 @@
|
||||
print_deferred_warning("inifile $inifile for $fmt/$eng not found.\n");
|
||||
# The original script just skipped it but in TeX Live we expect that
|
||||
# all activated formats are also buildable, thus return failure.
|
||||
@@ -656,11 +664,15 @@ sub rebuild_one_format {
|
||||
@@ -658,11 +666,15 @@ sub rebuild_one_format {
|
||||
",$opts{'no-error-if-no-engine'}," =~ m/,$eng,/) {
|
||||
return $FMT_NOTAVAIL;
|
||||
} else {
|
||||
+ return $FMT_NOTAVAIL if (!$opts{'no-error-if-no-engine'});
|
||||
print_deferred_error("not building $fmt due to missing engine $eng.\n");
|
||||
print_deferred_error("not building $fmt due to missing engine: $eng\n");
|
||||
return $FMT_FAILURE;
|
||||
}
|
||||
}
|
||||
@ -764,248 +571,9 @@
|
||||
|
||||
+umask 022
|
||||
exec updmap --sys ${1+"$@"}
|
||||
--- texk/texlive/tl_scripts/fmtutil.cnf
|
||||
+++ texk/texlive/tl_scripts/fmtutil.cnf 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -46,10 +46,11 @@ amstex pdftex - -translate-file=cp227.tc
|
||||
# from context:
|
||||
cont-en pdftex cont-usr.tex -8bit *cont-en.mkii
|
||||
cont-en xetex cont-usr.tex -8bit *cont-en.mkii
|
||||
-#! cont-fr pdftex cont-usr.tex -8bit *cont-fr.mkii
|
||||
-#! cont-it pdftex cont-usr.tex -8bit *cont-it.mkii
|
||||
-#! cont-nl pdftex cont-usr.tex -8bit *cont-nl.mkii
|
||||
-#! cont-ro pdftex cont-usr.tex -8bit *cont-ro.mkii
|
||||
+cont-de pdftex cont-usr.tex -8bit *cont-fr.mkii
|
||||
+cont-fr pdftex cont-usr.tex -8bit *cont-fr.mkii
|
||||
+cont-it pdftex cont-usr.tex -8bit *cont-it.mkii
|
||||
+cont-nl pdftex cont-usr.tex -8bit *cont-nl.mkii
|
||||
+cont-ro pdftex cont-usr.tex -8bit *cont-ro.mkii
|
||||
#
|
||||
# from cslatex:
|
||||
cslatex pdftex - -etex cslatex.ini
|
||||
@@ -66,8 +67,8 @@ pdfcsplain luatex - -etex csplain.ini
|
||||
eplain pdftex language.dat -translate-file=cp227.tcx *eplain.ini
|
||||
#
|
||||
# from jadetex:
|
||||
-jadetex pdftex language.dat *jadetex.ini
|
||||
-pdfjadetex pdftex language.dat *pdfjadetex.ini
|
||||
+jadetex pdftex language.dat -translate-file=cp227.tcx *jadetex.ini
|
||||
+pdfjadetex pdftex language.dat -translate-file=cp227.tcx *pdfjadetex.ini
|
||||
#
|
||||
# from latex-bin:
|
||||
latex pdftex language.dat -translate-file=cp227.tcx *latex.ini
|
||||
@@ -132,5 +133,5 @@ xetex xetex language.def -etex xetex.ini
|
||||
xelatex xetex language.dat -etex xelatex.ini
|
||||
#
|
||||
# from xmltex:
|
||||
-xmltex pdftex language.dat *xmltex.ini
|
||||
-pdfxmltex pdftex language.dat *pdfxmltex.ini
|
||||
+xmltex pdftex language.dat -translate-file=cp227.tcx *xmltex.ini
|
||||
+pdfxmltex pdftex language.dat -translate-file=cp227.tcx *pdfxmltex.ini
|
||||
--- texk/texlive/tl_scripts/texconfig-dialog.sh
|
||||
+++ texk/texlive/tl_scripts/texconfig-dialog.sh 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -157,7 +157,14 @@ termCtl()
|
||||
###############################################################################
|
||||
menuMain()
|
||||
{
|
||||
- cat <<-'eof'
|
||||
+ rows="$(stty size)"
|
||||
+ columns=${rows##* }
|
||||
+ rows=${rows%% *}
|
||||
+ test -n "$rows" || rows=0
|
||||
+ test -n "$columns" || columns=0
|
||||
+
|
||||
+ if test $rows -lt 24 -a $columns -lt 80 ; then
|
||||
+ cat <<-'eof'
|
||||
The interactive texconfig utility will be started now. Make sure
|
||||
your screen has at least 24 rows and 80 columns. If texconfig
|
||||
crashes now, you can still set up your TeX system using the
|
||||
@@ -169,8 +176,9 @@ menuMain()
|
||||
|
||||
More likely these days, you're better off using tlmgr.
|
||||
See http://tug.org/texlive/tlmgr.html.
|
||||
-eof
|
||||
- termCtl readln
|
||||
+ eof
|
||||
+ termCtl readln
|
||||
+ fi
|
||||
|
||||
while :; do
|
||||
logMessage='view logfile'
|
||||
--- texk/texlive/tl_scripts/texconfig-sys.sh
|
||||
+++ texk/texlive/tl_scripts/texconfig-sys.sh 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -30,4 +30,5 @@ TEXMFVAR="$v"
|
||||
TEXMFCONFIG="$c"
|
||||
export TEXMFVAR TEXMFCONFIG
|
||||
|
||||
+umask 022
|
||||
exec texconfig ${1+"$@"}
|
||||
--- texk/texlive/tl_scripts/texconfig.sh
|
||||
+++ texk/texlive/tl_scripts/texconfig.sh 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -40,7 +40,7 @@ envVars="
|
||||
TEXMFDBS TEXMFINI TEXMFSCRIPTS TEXPICTS TEXPKS TEXPOOL TEXPSHEADERS
|
||||
TEXSOURCES TFMFONTS TRFONTS TTFONTS VFFONTS WEB2C WEBINPUTS
|
||||
"
|
||||
-tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/tctmp.$$
|
||||
+tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/tctmp.$$.$RANDOM
|
||||
needsCleanup=false
|
||||
lastUpdatedFile=
|
||||
|
||||
@@ -997,21 +997,6 @@ For more information about these \`featu
|
||||
;;
|
||||
|
||||
formats)
|
||||
- cat >&2 <<EOM
|
||||
-texconfig formats is no longer supported, because manual edits of
|
||||
-fmtutil.cnf will be overwritten by the new TeX Live package manager,
|
||||
-tlmgr, which regenerates that file as needed upon package changes.
|
||||
-Thus, to add or remove formats, the recommended method is to use tlmgr
|
||||
-to add or remove the appropriate package.
|
||||
-
|
||||
-If you need to make manual additions, you can edit the file
|
||||
-fmtutil-local.cnf under TEXMFLOCAL. Further information with
|
||||
-tlmgr --help and at http://tug.org/texlive/tlmgr.html.
|
||||
-
|
||||
-Exiting.
|
||||
-EOM
|
||||
- exit 1 # but leave the real code for posterity
|
||||
-
|
||||
setupTmpDir
|
||||
echo "$progname: analyzing old configuration..." >&2
|
||||
fmtutil --catcfg > $tmpdir/pre
|
||||
@@ -1037,22 +1022,6 @@ EOM
|
||||
|
||||
# "hyphen FORMAT"
|
||||
hyphen)
|
||||
- cat >&2 <<EOM
|
||||
-texconfig hyphen is no longer supported, because manual edits of
|
||||
-language.dat (or language.def) will be overwritten by the new TeX Live
|
||||
-package manager, tlmgr, which regenerates those configuration files as
|
||||
-needed upon package changes. Thus, to add or remove hyphenation
|
||||
-patterns, the recommended method is to use tlmgr to add or remove the
|
||||
-appropriate package.
|
||||
-
|
||||
-If you need to make manual additions, you can edit the files
|
||||
-language-local.dat and language-local.def under TEXMFLOCAL. Further
|
||||
-information with tlmgr --help and at http://tug.org/texlive/tlmgr.html.
|
||||
-
|
||||
-Exiting.
|
||||
-EOM
|
||||
- exit 1 # but leave the real code for posterity
|
||||
-
|
||||
tcBatchHyphenFormat=$2
|
||||
formatsForHyphen=`getFormatsForHyphen`
|
||||
formatsForHyphenFmt=`echo "$formatsForHyphen" | myFmt | sed 's@^@ @'`
|
||||
@@ -1301,7 +1270,7 @@ Valid PAPER settings:
|
||||
;;
|
||||
|
||||
rehash)
|
||||
- mktexlsr
|
||||
+ ( unset KPSE_DOT; mktexlsr )
|
||||
;;
|
||||
|
||||
#
|
||||
--- texk/texlive/tl_scripts/texlinks.sh
|
||||
+++ texk/texlive/tl_scripts/texlinks.sh 2018-04-10 09:02:17.862982147 +0000
|
||||
@@ -100,7 +100,7 @@ setupTmpDir()
|
||||
|
||||
trap 'cleanup 1' 1 2 3 7 13 15
|
||||
needsCleanup=true
|
||||
- (umask 077; mkdir "$tmpdir") \
|
||||
+ (umask 077; mkdir -m 0700 "$tmpdir") \
|
||||
|| abort "could not create directory \`$tmpdir'"
|
||||
}
|
||||
|
||||
@@ -108,16 +108,18 @@ setupTmpDir()
|
||||
# search a binary along $PATH:
|
||||
check_for_binary()
|
||||
{
|
||||
- testbin=$1
|
||||
- set x `echo "$PATH" | sed 's/^:/.:/; s/:$/:./; s/::/:.:/g; s/:/ /g'`; shift
|
||||
- for i
|
||||
- do
|
||||
- if [ -x "$i/$testbin" ]; then
|
||||
- echo "$i/$testbin"
|
||||
- return 0
|
||||
- fi
|
||||
- done
|
||||
- return 1
|
||||
+# testbin=$1
|
||||
+# set x `echo "$PATH" | sed 's/^:/.:/; s/:$/:./; s/::/:.:/g; s/:/ /g'`; shift
|
||||
+# for i
|
||||
+# do
|
||||
+# if [ -x "$i/$testbin" ]; then
|
||||
+# echo "$i/$testbin"
|
||||
+# return 0
|
||||
+# fi
|
||||
+# done
|
||||
+# return 1
|
||||
+
|
||||
+ type -p $1
|
||||
}
|
||||
|
||||
|
||||
@@ -208,8 +210,22 @@ search_symlinkdir()
|
||||
upd_symlinkdir()
|
||||
{
|
||||
search_symlinkdir || return 0
|
||||
- for i in `sed 's@ .*@@' cnf_file_ln.$$`; do
|
||||
- install_link "$selfautoloc/$i" "$symlinkdir/$i"
|
||||
+ set x `cat cnf_file_ln.$$` ; shift
|
||||
+ while test $# != 0; do
|
||||
+ fmt=$1; ini=$3; shift; shift; shift
|
||||
+
|
||||
+ # Some broken shells destroy the positional arguments when calling a
|
||||
+ # shellfunction. Therefore, we save and restore them "by hand" in the
|
||||
+ # main_args_while variable.
|
||||
+ main_args_while="$@"
|
||||
+
|
||||
+ kpsewhich -progname=$fmt -format=tex $ini >/dev/null 2>&1
|
||||
+ test $? -ne 0 && continue
|
||||
+
|
||||
+ install_link "$selfautoloc/$fmt" "$symlinkdir/$fmt"
|
||||
+
|
||||
+ # restore positional arguments:
|
||||
+ set x $main_args_while; shift
|
||||
done
|
||||
}
|
||||
|
||||
@@ -274,12 +290,12 @@ main()
|
||||
test -f "$cnf_file" || abort "config file \`$cnf' not found"
|
||||
|
||||
|
||||
- tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/texlinks.$$
|
||||
+ tmpdir=${TMPDIR-${TEMP-${TMP-/tmp}}}/texlinks.$$.$RANDOM
|
||||
setupTmpDir
|
||||
cd "$tmpdir" || cleanup 1
|
||||
|
||||
- sed '/^[ ]*#/d; /^[ ]*$/d' $cnf_file \
|
||||
- | awk '{print $1, $2}' > cnf_file_ln.$$
|
||||
+ sed '/^[ ]*#/d; /^[ ]*$/d; s%\*%%' $cnf_file \
|
||||
+ | awk '{print $1, $2, $NF}' > cnf_file_ln.$$
|
||||
|
||||
if test -z "$dirs"; then
|
||||
if test $multiplatform = true; then
|
||||
@@ -300,13 +316,16 @@ main()
|
||||
# cnf_file_ln.$$ has lines with "format engine" pairs
|
||||
set x `cat cnf_file_ln.$$`; shift
|
||||
while test $# != 0; do
|
||||
- fmt=$1; engine=$2; shift; shift
|
||||
+ fmt=$1; engine=$2; ini=$3; shift; shift; shift
|
||||
|
||||
# Some broken shells destroy the positional arguments when calling a
|
||||
# shellfunction. Therefore, we save and restore them "by hand" in the
|
||||
# main_args_while variable.
|
||||
main_args_while="$@"
|
||||
|
||||
+ kpsewhich -progname=$fmt -format=tex $ini >/dev/null 2>&1
|
||||
+ test $? -ne 0 && continue
|
||||
+
|
||||
test "x$fmt" = "x$engine" && continue
|
||||
if test -f "$d/$engine$exeext"; then
|
||||
case $unlink in
|
||||
--- texk/web2c/Makefile.in
|
||||
+++ texk/web2c/Makefile.in 2018-04-10 09:02:17.870981997 +0000
|
||||
@@ -4947,7 +4947,7 @@ libmd5_a_SOURCES = libmd5/md5.c libmd5/m
|
||||
@@ -5085,7 +5085,7 @@ libmd5_a_SOURCES = libmd5/md5.c libmd5/m
|
||||
md5main_CPPFLAGS = -I$(srcdir)/libmd5
|
||||
md5main_SOURCES = libmd5/md5main.c
|
||||
md5main_LDADD = libmd5.a
|
||||
@ -1014,7 +582,7 @@
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
@@ -4994,6 +4994,11 @@ w2c/c-auto.h: w2c/stamp-h1
|
||||
@@ -5132,6 +5132,11 @@ w2c/c-auto.h: w2c/stamp-h1
|
||||
w2c/stamp-h1: $(srcdir)/c-auto.in $(top_builddir)/config.status
|
||||
@rm -f w2c/stamp-h1
|
||||
cd $(top_builddir) && $(SHELL) ./config.status w2c/c-auto.h
|
||||
@ -1026,165 +594,8 @@
|
||||
$(srcdir)/c-auto.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
($(am__cd) $(top_srcdir) && $(AUTOHEADER))
|
||||
rm -f w2c/stamp-h1
|
||||
--- texk/web2c/luatexdir/luapplib/ppheap.c
|
||||
+++ texk/web2c/luatexdir/luapplib/ppheap.c 2019-05-20 12:04:35.067508800 +0000
|
||||
@@ -101,21 +101,25 @@
|
||||
#endif
|
||||
|
||||
typedef struct _simplereg {
|
||||
- size_t bucket_pos;
|
||||
+ int heap_instance;
|
||||
+ int bucket_pos;
|
||||
size_t bucket_size;
|
||||
- size_t heap_instance;
|
||||
- aligned_data **align_data_set ;
|
||||
-} simplereg;
|
||||
+ union {
|
||||
+ void *_area;
|
||||
+ aligned_data **_set;
|
||||
+ } align_data __attribute__ ((aligned(__alignof__(void*))));
|
||||
+} simplereg __attribute__ ((aligned(__alignof__(void*))));
|
||||
|
||||
/* By default static vars are initialized to NULL, but to be clear.. */
|
||||
static simplereg *align_set = NULL ;
|
||||
|
||||
static void align_init_set(void){
|
||||
size_t size ;
|
||||
+ int p;
|
||||
|
||||
if (align_set) {
|
||||
align_set->heap_instance++;
|
||||
- return ;
|
||||
+ return;
|
||||
}
|
||||
|
||||
align_set = malloc(sizeof(simplereg));
|
||||
@@ -125,8 +129,8 @@
|
||||
}
|
||||
|
||||
size = SIZE_OF_POINTER*ALIGN_BUFF_BUCKET_SIZE;
|
||||
- align_set->align_data_set = malloc(size);
|
||||
- if (!align_set->align_data_set) {
|
||||
+ align_set->align_data._area = malloc(size);
|
||||
+ if (!align_set->align_data._area) {
|
||||
fprintf(stderr,"! fatal error: unable to setup register for aligned pointers\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
@@ -134,37 +138,40 @@
|
||||
align_set->bucket_pos = 0;
|
||||
align_set->bucket_size = ALIGN_BUFF_BUCKET_SIZE;
|
||||
align_set->heap_instance = 1;
|
||||
- memset(align_set->align_data_set, 0UL,size);
|
||||
+ memset(align_set->align_data._area, 0, size);
|
||||
+ p = align_set->bucket_size;
|
||||
+ while (p-- > 0){
|
||||
+ align_set->align_data._set[p] = NULL;
|
||||
+ }
|
||||
}
|
||||
|
||||
static void align_save_into_set(aligned_data *p){
|
||||
if (align_set->bucket_pos >= align_set->bucket_size) {
|
||||
size_t new_size;
|
||||
- aligned_data **align_data_set_new;
|
||||
+ void *align_data_area_new;
|
||||
|
||||
- if(!align_set->align_data_set){
|
||||
+ if(!align_set->align_data._area){
|
||||
fprintf(stderr,"! fatal error: unable to save aligned pointer,corrupted set\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
new_size = (ALIGN_BUFF_BUCKET_SIZE+align_set->bucket_size)*SIZE_OF_POINTER;
|
||||
- align_data_set_new = malloc(new_size);
|
||||
- if (!align_data_set_new) {
|
||||
+ align_data_area_new = malloc(new_size);
|
||||
+ if (!align_data_area_new) {
|
||||
fprintf(stderr,"! fatal error: unable to save aligned pointer\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
- memset(align_data_set_new,0,new_size);
|
||||
- memcpy(align_data_set_new, align_set->align_data_set, align_set->bucket_size*SIZE_OF_POINTER);
|
||||
- free(align_set->align_data_set);
|
||||
- align_set->align_data_set = align_data_set_new ;
|
||||
+ memset(align_data_area_new,0,new_size);
|
||||
+ memcpy(align_data_area_new, align_set->align_data._area, align_set->bucket_size*SIZE_OF_POINTER);
|
||||
+ free(align_set->align_data._area);
|
||||
+ align_set->align_data._area = align_data_area_new ;
|
||||
align_set->bucket_size += ALIGN_BUFF_BUCKET_SIZE;
|
||||
}
|
||||
if (align_set->bucket_pos>align_set->bucket_size){
|
||||
fprintf(stderr,"! fatal error: unable to save aligned pointer, wrong position\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
- align_set->align_data_set[align_set->bucket_pos] = p ;
|
||||
+ align_set->align_data._set[align_set->bucket_pos] = p ;
|
||||
align_set->bucket_pos++;
|
||||
-
|
||||
}
|
||||
|
||||
static void align_free_set(void){
|
||||
@@ -174,15 +181,16 @@
|
||||
if (align_set->heap_instance>1) {
|
||||
align_set->heap_instance--;
|
||||
} else if (align_set->heap_instance ==1) {
|
||||
- if (align_set->align_data_set){
|
||||
- size_t p;
|
||||
- for(p=1;p<align_set->bucket_pos;p++){
|
||||
- if (align_set->align_data_set[p]) {
|
||||
- free(align_set->align_data_set[p]);
|
||||
+ if (align_set->align_data._area){
|
||||
+ int p = align_set->bucket_pos;
|
||||
+ while (p-- > 0){
|
||||
+ if (align_set->align_data._set[p]) {
|
||||
+ free(align_set->align_data._set[p]);
|
||||
+ align_set->align_data._set[p] = NULL;
|
||||
}
|
||||
}
|
||||
- free(align_set->align_data_set);
|
||||
- align_set->align_data_set = NULL;
|
||||
+ free(align_set->align_data._area);
|
||||
+ align_set->align_data._area = NULL;
|
||||
}
|
||||
align_set->heap_instance=0;
|
||||
free(align_set);
|
||||
@@ -225,7 +233,6 @@
|
||||
#ifdef PPHEAP_NEED_ALIGNMENT
|
||||
align_free_set();
|
||||
#endif
|
||||
-
|
||||
}
|
||||
|
||||
void ppheap_renew (ppheap *heap)
|
||||
@@ -415,7 +422,7 @@
|
||||
// iof_close(O);
|
||||
#ifdef PPHEAP_NEED_ALIGNMENT
|
||||
/* Todo: only if data%sizeof(aligned_data) != 0 */
|
||||
- p_aligned_data = malloc(size);
|
||||
+ p_aligned_data = (aligned_data*)malloc(size);
|
||||
if (!p_aligned_data) {
|
||||
fprintf(stderr,"! fatal error: unable to setup aligned pointer for ppheap_flush\n");
|
||||
exit(EXIT_FAILURE);
|
||||
--- texk/web2c/luatexdir/luapplib/ppload.c
|
||||
+++ texk/web2c/luatexdir/luapplib/ppload.c 2019-05-20 11:59:47.417508800 +0000
|
||||
@@ -60,7 +60,7 @@
|
||||
ghost->size = siz - sizeof(_ppname) - 1, \
|
||||
(ppname)(ghost + 1))
|
||||
|
||||
-#if ARM_COMPLAINT
|
||||
+#if ARM_COMPLIANT
|
||||
#define ppname_flush_with_ego(O, ghost, siz, flgs) \
|
||||
(iof_put(O, '\0'), \
|
||||
pad=(O->pos - pos_begin)%(sizeof(ppname*)), \
|
||||
@@ -270,7 +270,7 @@
|
||||
|
||||
|
||||
|
||||
-#if ARM_COMPLIANT
|
||||
+#if 0 // ARM_COMPLIANT /* Invalid write of size 8 */
|
||||
#define ppstring_set_alter_ego(string, ghost, ego) do{ \
|
||||
size_t t = ((ghost)->size + 1); \
|
||||
t = (t%sizeof(ppstring *))==0?t: (t/sizeof(ppstring *)+1)*sizeof(ppstring *); \
|
||||
--- texk/web2c/uptexdir/tests/gkhugeng.err
|
||||
+++ texk/web2c/uptexdir/tests/gkhugeng.err 2019-05-13 11:22:35.158192154 +0000
|
||||
+++ texk/web2c/uptexdir/tests/gkhugeng.err 2019-05-13 11:22:35.158192154 +0000
|
||||
@@ -1,3 +1,11 @@
|
||||
+warning: kpathsea: /etc/texmf/ls-R: No usable entries in ls-R.
|
||||
+warning: kpathsea: See the manual for how to generate ls-R.
|
||||
@ -1268,7 +679,7 @@
|
||||
|
||||
/* Condition for retrying a write */
|
||||
#include <errno.h>
|
||||
@@ -625,6 +627,26 @@ initGS(void)
|
||||
@@ -619,6 +621,26 @@ initGS(void)
|
||||
perror("[xdvik] pipe");
|
||||
return False;
|
||||
}
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:78d4810ab8acf4bd2cd2899b8fc4a263b7c54e556c49da7349eb3bcd1607608e
|
||||
size 44061908
|
3
texlive-20200327-source.tar.xz
Normal file
3
texlive-20200327-source.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:08101d413463d361bc07678ecad2bafe767c3a2f20df259d7e011a7b25b8839b
|
||||
size 55412152
|
@ -1,8 +1,42 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 20 07:02:13 UTC 2020 - Dr. Werner Fink <werner@suse.de>
|
||||
|
||||
- Update to TeXLive 2020
|
||||
* Version based on texlive-20200327-source and biber-2.14
|
||||
* Remove patches now fixed upstream
|
||||
0001-Updated-tests-after-U-C-upgrade-changed-sortinit-hashes.patch
|
||||
source-poppler0.84.0.patch
|
||||
source-common.patch
|
||||
source-fix-axohelp.patch
|
||||
source-synctex-bump-soname.dif
|
||||
* Ported patches
|
||||
biber-certs.dif
|
||||
source-64.dif
|
||||
source-a2ping.dif
|
||||
source-configure.dif
|
||||
source-fix-bool-poppler.patch
|
||||
source-fix-const-poppler0.66.0.patch
|
||||
source-lacheck.dif
|
||||
source-poppler-fix-dict-memleak.patch
|
||||
source-poppler-use-std_string.patch
|
||||
source-psutils-kpathsea.dif
|
||||
source-psutils.dif
|
||||
source-warns.dif
|
||||
source-x11r7.dif
|
||||
source.dif
|
||||
* New patch source-psutils-kpathsea.dif to avoid false positiv
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 27 01:39:45 UTC 2020 - Michael Gorse <mgorse@suse.com>
|
||||
|
||||
- Add source-poppler0.86.0.patch: fix build with poppler 0.86.0.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 20 12:12:25 UTC 2020 - Dr. Werner Fink <werner@suse.de>
|
||||
|
||||
- Add patch source-psutils-kpathsea.dif to ignore warning from
|
||||
kpathsea due missing ls-R files
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 11 16:16:55 UTC 2020 - Dr. Werner Fink <werner@suse.de>
|
||||
|
||||
|
674
texlive.spec
674
texlive.spec
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user