mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
extra/texlive-bin to 2019.51075-1
This commit is contained in:
parent
807edcd0b6
commit
89d5856ca8
6 changed files with 93 additions and 473 deletions
|
@ -8,8 +8,8 @@
|
|||
# drop clisp and ffcall makedepends
|
||||
|
||||
pkgname=('texlive-bin' 'libsynctex')
|
||||
pkgver=2018.48691
|
||||
pkgrel=9
|
||||
pkgver=2019.51075
|
||||
pkgrel=1
|
||||
license=('GPL')
|
||||
arch=('x86_64')
|
||||
makedepends=('git' 'cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler'
|
||||
|
@ -17,49 +17,20 @@ makedepends=('git' 'cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler'
|
|||
'icu' 'harfbuzz' 'harfbuzz-icu' 'gmp' 'mpfr' 'potrace' 'libpaper'
|
||||
'perl')
|
||||
url='http://tug.org/texlive/'
|
||||
_commit=f68b0992e13a2e155d71beb3e016ea4139023224 # texlive-2018.2
|
||||
_commit=74c2495978a4a84ffae10252c0fd244f1140228e # texlive-2019.2 r51075
|
||||
source=("git+https://github.com/Tex-Live/texlive-source.git#commit=${_commit}"
|
||||
"pdftex-poppler0.76.patch"
|
||||
"luatex-poppler-fixes.patch"
|
||||
"xetex-poppler-fixes.patch"
|
||||
"freetype-pkgconfig.patch"
|
||||
"synctex-missing-header.patch")
|
||||
"pdftex-poppler0.76.patch")
|
||||
sha256sums=('SKIP'
|
||||
'0b4070f489edef771f308687d9e99cb54e8a442f0229767c6fda5515045cd797'
|
||||
'6daa9fb9991f34406a0620a7f9185776ce1ac601a9c66a537c4b90ce97c1ffc6'
|
||||
'7deb8bd50640b0f4ff9b4c11985fe6153906384b62cb9b5a3c4b52397fb941ca'
|
||||
'bed44f4ccda369410e90eac527cf44b8c1afda7d987ae521b4fd5edb425eef3e'
|
||||
'b6c81eb091b5910226e0359768edd178680debee56b63ab0a3753c3429c28ab0')
|
||||
'5da9f5356ca14d950c222108b431baaf5c27667460ffab9597b29ef11b426c0f')
|
||||
|
||||
prepare() {
|
||||
cd "$srcdir/texlive-source"
|
||||
|
||||
# Synctex "make install" misses synctex_version.h
|
||||
patch -Np1 -i "${srcdir}/synctex-missing-header.patch"
|
||||
|
||||
# Freetype2 2.9.1 package no longer has freetype-config
|
||||
patch -Np1 -i "${srcdir}/freetype-pkgconfig.patch"
|
||||
|
||||
./reautoconf
|
||||
|
||||
# t4ht expects to be un /usr/share/texmf/bin/t4ht (FS#27251)
|
||||
sed -i s/SELFAUTOPARENT/TEXMFROOT/ texk/tex4htk/t4ht.c
|
||||
|
||||
# luatex switched from poppler to pplib in newer versions so
|
||||
# upstream fixes aren't available; hopefully this is correct
|
||||
patch -Np1 -i "${srcdir}/luatex-poppler-fixes.patch"
|
||||
find texk/web2c/luatexdir -type f -exec sed -i \
|
||||
-e 's|gTrue|true|g' \
|
||||
-e 's|gFalse|false|g' \
|
||||
-e 's|GBool|bool|g' \
|
||||
-e 's|getCString|c_str|g' \
|
||||
-e 's|Guint|unsigned int|g' \
|
||||
-e 's|Guchar|unsigned char|g' \
|
||||
{} +
|
||||
# xetex poppler compatibility
|
||||
patch -Np1 -i "${srcdir}/xetex-poppler-fixes.patch"
|
||||
# pdftex poppler compatibility (upstream patches)
|
||||
patch -Np1 -i "${srcdir}/pdftex-poppler0.76.patch"
|
||||
patch -Np1 -i "$srcdir/pdftex-poppler0.76.patch"
|
||||
cp -pv texk/web2c/pdftexdir/pdftoepdf{-poppler0.76.0,}.cc
|
||||
cp -pv texk/web2c/pdftexdir/pdftosrc{-poppler0.76.0,}.cc
|
||||
}
|
||||
|
@ -220,8 +191,10 @@ checkcites
|
|||
checklistings
|
||||
chkweb
|
||||
cjk-gs-integrate
|
||||
cluttex
|
||||
context
|
||||
contextjit
|
||||
ctanbib
|
||||
ctanify
|
||||
ctanupload
|
||||
ctan-o-mat
|
||||
|
@ -302,6 +275,7 @@ pdfjoin
|
|||
pdflatexpicscale
|
||||
pdfnup
|
||||
pdfpun
|
||||
pdftex-quiet
|
||||
pdfxup
|
||||
pfarrei
|
||||
pkfix
|
||||
|
@ -346,6 +320,7 @@ updmap-user
|
|||
vpl2ovp
|
||||
vpl2vpl
|
||||
xhlatex
|
||||
xindex
|
||||
"
|
||||
_games_scripts="rubikrotation"
|
||||
_humanities_scripts="diadia"
|
||||
|
@ -372,6 +347,7 @@ ps4pdf
|
|||
splitindex
|
||||
svn-multi
|
||||
vpe
|
||||
webquiz
|
||||
wordcount
|
||||
yplan"
|
||||
_music_scripts="lily-glyph-commands lily-image-commands lily-rebuild-pdfs
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
--- source/m4/kpse-freetype2-flags.m4.orig 2015-06-16 01:27:13.292945838 +0200
|
||||
+++ source/m4/kpse-freetype2-flags.m4 2018-05-26 23:51:50.567080501 +0200
|
||||
@@ -21,17 +21,9 @@
|
||||
|
||||
# KPSE_FREETYPE2_OPTIONS([WITH-SYSTEM])
|
||||
# -------------------------------------
|
||||
-AC_DEFUN([KPSE_FREETYPE2_OPTIONS], [_KPSE_LIB_OPTIONS([freetype2], [$1], [freetype-config])])
|
||||
+AC_DEFUN([KPSE_FREETYPE2_OPTIONS], [_KPSE_LIB_OPTIONS([freetype2], [$1], [pkg-config])])
|
||||
|
||||
# KPSE_FREETYPE2_SYSTEM_FLAGS
|
||||
# ---------------------------
|
||||
AC_DEFUN([KPSE_FREETYPE2_SYSTEM_FLAGS], [dnl
|
||||
-AC_REQUIRE([AC_CANONICAL_HOST])[]dnl
|
||||
-AC_CHECK_TOOL([FT2_CONFIG], [freetype-config], [false])[]dnl
|
||||
-if $FT2_CONFIG --ftversion >/dev/null 2>&1; then
|
||||
- FREETYPE2_INCLUDES=`$FT2_CONFIG --cflags`
|
||||
- FREETYPE2_LIBS=`$FT2_CONFIG --libs`
|
||||
-elif test "x$need_freetype2:$with_system_freetype2" = xyes:yes; then
|
||||
- AC_MSG_ERROR([did not find freetype-config required for system freetype2 library])
|
||||
-fi
|
||||
-]) # KPSE_FREETYPE2_SYSTEM_FLAGS
|
||||
+_KPSE_PKG_CONFIG_FLAGS([freetype2], [freetype2], [])])
|
|
@ -1,352 +0,0 @@
|
|||
From 69c061f2071d5826fee7940ce7f83ae4a1c8fc2e Mon Sep 17 00:00:00 2001
|
||||
From: Akira Kakuto <kakuto@fuk.kindai.ac.jp>
|
||||
Date: Sat, 28 Apr 2018 07:36:22 +0000
|
||||
Subject: [PATCH] support poppler-0.64.0
|
||||
|
||||
git-svn-id: svn://tug.org/texlive/trunk/Build/source@47470 c570f23f-e606-0410-a88d-b1316a301751
|
||||
---
|
||||
texk/web2c/luatexdir/image/pdftoepdf.w | 4 ++--
|
||||
texk/web2c/luatexdir/lua/lepdflib.cc | 4 ++--
|
||||
texk/web2c/pdftexdir/ChangeLog | 5 +++++
|
||||
texk/web2c/pdftexdir/pdftoepdf-newpoppler.cc | 14 +++++++-------
|
||||
texk/web2c/pdftexdir/pdftosrc-newpoppler.cc | 2 +-
|
||||
5 files changed, 17 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/texk/web2c/luatexdir/image/pdftoepdf.w b/texk/web2c/luatexdir/image/pdftoepdf.w
|
||||
index 7ba29731c..d69795926 100644
|
||||
--- a/texk/web2c/luatexdir/image/pdftoepdf.w
|
||||
+++ b/texk/web2c/luatexdir/image/pdftoepdf.w
|
||||
@@ -472,10 +472,10 @@ static void copyObject(PDF pdf, PdfDocument * pdf_doc, Object * obj)
|
||||
break;
|
||||
*/
|
||||
case objString:
|
||||
- copyString(pdf, obj->getString());
|
||||
+ copyString(pdf, (GooString *)obj->getString());
|
||||
break;
|
||||
case objName:
|
||||
- copyName(pdf, obj->getName());
|
||||
+ copyName(pdf, (char *)obj->getName());
|
||||
break;
|
||||
case objNull:
|
||||
pdf_add_null(pdf);
|
||||
diff --git a/texk/web2c/luatexdir/lua/lepdflib.cc b/texk/web2c/luatexdir/lua/lepdflib.cc
|
||||
index a16bf3bd4..32bcdab01 100644
|
||||
--- a/texk/web2c/luatexdir/lua/lepdflib.cc
|
||||
+++ b/texk/web2c/luatexdir/lua/lepdflib.cc
|
||||
@@ -674,7 +674,7 @@ static int m_##in##_##function(lua_State * L) \
|
||||
uin = (udstruct *) luaL_checkudata(L, 1, M_##in); \
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc) \
|
||||
pdfdoc_changed_error(L); \
|
||||
- gs = ((in *) uin->d)->function(); \
|
||||
+ gs = (GooString *)((in *) uin->d)->function(); \
|
||||
if (gs != NULL) \
|
||||
lua_pushlstring(L, gs->getCString(), gs->getLength()); \
|
||||
else \
|
||||
@@ -1813,7 +1813,7 @@ static int m_Object_getString(lua_State * L)
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
if (((Object *) uin->d)->isString()) {
|
||||
- gs = ((Object *) uin->d)->getString();
|
||||
+ gs = (GooString *)((Object *) uin->d)->getString();
|
||||
lua_pushlstring(L, gs->getCString(), gs->getLength());
|
||||
} else
|
||||
lua_pushnil(L);
|
||||
|
||||
Luatex poppler 0.70 const fixes
|
||||
|
||||
diff -upr source.orig/texk/web2c/luatexdir/image/pdftoepdf.w source/texk/web2c/luatexdir/image/pdftoepdf.w
|
||||
--- source.orig/texk/web2c/luatexdir/image/pdftoepdf.w 2018-10-28 14:14:32.961111369 +0200
|
||||
+++ source/texk/web2c/luatexdir/image/pdftoepdf.w 2018-10-28 14:24:21.735889333 +0200
|
||||
@@ -363,7 +363,7 @@ void copyReal(PDF pdf, double d)
|
||||
|
||||
static void copyString(PDF pdf, GooString * string)
|
||||
{
|
||||
- char *p;
|
||||
+ const char *p;
|
||||
unsigned char c;
|
||||
size_t i, l;
|
||||
p = string->getCString();
|
||||
@@ -393,7 +393,7 @@ static void copyString(PDF pdf, GooStrin
|
||||
pdf->cave = true;
|
||||
}
|
||||
|
||||
-static void copyName(PDF pdf, char *s)
|
||||
+static void copyName(PDF pdf, const char *s)
|
||||
{
|
||||
pdf_out(pdf, '/');
|
||||
for (; *s != 0; s++) {
|
||||
@@ -475,7 +475,7 @@ static void copyObject(PDF pdf, PdfDocum
|
||||
copyString(pdf, (GooString *)obj->getString());
|
||||
break;
|
||||
case objName:
|
||||
- copyName(pdf, (char *)obj->getName());
|
||||
+ copyName(pdf, obj->getName());
|
||||
break;
|
||||
case objNull:
|
||||
pdf_add_null(pdf);
|
||||
@@ -531,22 +531,22 @@ static PDFRectangle *get_pagebox(Page *
|
||||
{
|
||||
switch (pagebox_spec) {
|
||||
case PDF_BOX_SPEC_MEDIA:
|
||||
- return page->getMediaBox();
|
||||
+ return (PDFRectangle *) page->getMediaBox();
|
||||
break;
|
||||
case PDF_BOX_SPEC_CROP:
|
||||
- return page->getCropBox();
|
||||
+ return (PDFRectangle *) page->getCropBox();
|
||||
break;
|
||||
case PDF_BOX_SPEC_BLEED:
|
||||
- return page->getBleedBox();
|
||||
+ return (PDFRectangle *) page->getBleedBox();
|
||||
break;
|
||||
case PDF_BOX_SPEC_TRIM:
|
||||
- return page->getTrimBox();
|
||||
+ return (PDFRectangle *) page->getTrimBox();
|
||||
break;
|
||||
case PDF_BOX_SPEC_ART:
|
||||
- return page->getArtBox();
|
||||
+ return (PDFRectangle *) page->getArtBox();
|
||||
break;
|
||||
default:
|
||||
- return page->getMediaBox();
|
||||
+ return (PDFRectangle *) page->getMediaBox();
|
||||
break;
|
||||
}
|
||||
}
|
||||
diff -upr source.orig/texk/web2c/luatexdir/lua/lepdflib.cc source/texk/web2c/luatexdir/lua/lepdflib.cc
|
||||
--- source.orig/texk/web2c/luatexdir/lua/lepdflib.cc 2018-10-28 14:14:32.961111369 +0200
|
||||
+++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2018-10-28 14:19:28.093424519 +0200
|
||||
@@ -596,7 +596,7 @@ static int m_##in##_##function(lua_State
|
||||
uin = (udstruct *) luaL_checkudata(L, 1, M_##in); \
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc) \
|
||||
pdfdoc_changed_error(L); \
|
||||
- o = ((in *) uin->d)->function(); \
|
||||
+ o = (out *) ((in *) uin->d)->function(); \
|
||||
if (o != NULL) { \
|
||||
uout = new_##out##_userdata(L); \
|
||||
uout->d = o; \
|
||||
@@ -1125,12 +1125,12 @@ m_poppler_get_INT(Dict, getLength);
|
||||
|
||||
static int m_Dict_add(lua_State * L)
|
||||
{
|
||||
- char *s;
|
||||
+ const char *s;
|
||||
udstruct *uin, *uobj;
|
||||
uin = (udstruct *) luaL_checkudata(L, 1, M_Dict);
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
- s = copyString(luaL_checkstring(L, 2));
|
||||
+ s = luaL_checkstring(L, 2);
|
||||
uobj = (udstruct *) luaL_checkudata(L, 3, M_Object);
|
||||
((Dict *) uin->d)->add(s, std::move(*((Object *) uobj->d)));
|
||||
return 0;
|
||||
@@ -2051,7 +2051,7 @@ static int m_Object_dictAdd(lua_State *
|
||||
pdfdoc_changed_error(L);
|
||||
if (!((Object *) uin->d)->isDict())
|
||||
luaL_error(L, "Object is not a Dict");
|
||||
- ((Object *) uin->d)->dictAdd(copyString(s), std::move(*((Object *) uobj->d)));
|
||||
+ ((Object *) uin->d)->dictAdd(s, std::move(*((Object *) uobj->d)));
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2470,7 +2470,7 @@ static int m_PDFDoc_getFileName(lua_Stat
|
||||
uin = (udstruct *) luaL_checkudata(L, 1, M_PDFDoc);
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
- gs = ((PdfDocument *) uin->d)->doc->getFileName();
|
||||
+ gs = (GooString *) ((PdfDocument *) uin->d)->doc->getFileName();
|
||||
if (gs != NULL)
|
||||
lua_pushlstring(L, gs->getCString(), gs->getLength());
|
||||
else
|
||||
@@ -2559,7 +2559,7 @@ static int m_PDFDoc_readMetadata(lua_Sta
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) {
|
||||
- gs = ((PdfDocument *) uin->d)->doc->readMetadata();
|
||||
+ gs = (GooString *) ((PdfDocument *) uin->d)->doc->readMetadata();
|
||||
if (gs != NULL)
|
||||
lua_pushlstring(L, gs->getCString(), gs->getLength());
|
||||
else
|
||||
@@ -2577,7 +2577,7 @@ static int m_PDFDoc_getStructTreeRoot(lu
|
||||
if (uin->pd != NULL && uin->pd->pc != uin->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) {
|
||||
- obj = ((PdfDocument *) uin->d)->doc->getStructTreeRoot();
|
||||
+ obj = (StructTreeRoot *) ((PdfDocument *) uin->d)->doc->getStructTreeRoot();
|
||||
uout = new_StructTreeRoot_userdata(L);
|
||||
uout->d = obj;
|
||||
uout->pc = uin->pc;
|
||||
|
||||
Luatex fixes for poppler 0.71
|
||||
|
||||
--- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2018-11-01 22:46:43.868534355 +0000
|
||||
+++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2018-11-01 22:48:17.358815525 +0000
|
||||
@@ -240,7 +240,7 @@
|
||||
if (uobj->pd != NULL && uobj->pd->pc != uobj->pc)
|
||||
pdfdoc_changed_error(L);
|
||||
uout = new_Attribute_userdata(L);
|
||||
- uout->d = new Attribute(n, nlen, (Object *)uobj->d);
|
||||
+ uout->d = new Attribute((GooString)n, (Object *)uobj->d);
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uobj->pc;
|
||||
uout->pd = uobj->pd;
|
||||
|
||||
--- source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2019-03-22 11:02:34.966605737 +0000
|
||||
+++ source/texk/web2c/luatexdir/lua/lepdflib.cc 2019-03-22 11:09:27.894599672 +0000
|
||||
@@ -496,7 +496,7 @@
|
||||
double numA = lua_tonumber(L,1);
|
||||
double genA = lua_tonumber(L,2);
|
||||
if ( ((numA)==(int)(numA)) && ((genA)==(int)(genA)) ){
|
||||
- uout->d = new Object((int)(numA), (int)(genA));
|
||||
+ uout->d = new Object({(int)(numA), (int)(genA)});
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = 0;
|
||||
uout->pd = NULL;
|
||||
@@ -889,7 +889,7 @@
|
||||
if (i > 0 && i <= len) {
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Array *) uin->d)->getNF(i - 1);
|
||||
+ *((Object *) uout->d) = ((Array *) uin->d)->getNF(i - 1).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
@@ -1190,7 +1190,7 @@
|
||||
s = luaL_checkstring(L, 2);
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Dict *) uin->d)->lookupNF(s);
|
||||
+ *((Object *) uout->d) = ((Dict *) uin->d)->lookupNF(s).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
@@ -1263,7 +1263,7 @@
|
||||
if (i > 0 && i <= len) {
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Dict *) uin->d)->getValNF(i - 1);
|
||||
+ *((Object *) uout->d) = ((Dict *) uin->d)->getValNF(i - 1).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
@@ -1653,7 +1653,7 @@
|
||||
pdfdoc_changed_error(L);
|
||||
num = luaL_checkint(L, 2);
|
||||
gen = luaL_checkint(L, 3);
|
||||
- *((Object *) uin->d) = Object(num, gen);
|
||||
+ *((Object *) uin->d) = Object({num, gen});
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2011,7 +2011,7 @@
|
||||
if (i > 0 && i <= len) {
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Object *) uin->d)->arrayGetNF(i - 1);
|
||||
+ *((Object *) uout->d) = ((Object *) uin->d)->arrayGetNF(i - 1).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
@@ -2104,7 +2104,7 @@
|
||||
if (((Object *) uin->d)->isDict()) {
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Object *) uin->d)->dictLookupNF(s);
|
||||
+ *((Object *) uout->d) = ((Object *) uin->d)->dictLookupNF(s).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
@@ -2169,7 +2169,7 @@
|
||||
if (i > 0 && i <= len) {
|
||||
uout = new_Object_userdata(L);
|
||||
uout->d = new Object();
|
||||
- *((Object *) uout->d) = ((Object *) uin->d)->dictGetValNF(i - 1);
|
||||
+ *((Object *) uout->d) = ((Object *) uin->d)->dictGetValNF(i - 1).copy();
|
||||
uout->atype = ALLOC_LEPDF;
|
||||
uout->pc = uin->pc;
|
||||
uout->pd = uin->pd;
|
||||
--- texlive-source/texk/web2c/luatexdir/image/pdftoepdf.w.orig 2019-03-22 19:17:32.861362965 +0000
|
||||
+++ texlive-source/texk/web2c/luatexdir/image/pdftoepdf.w 2019-03-22 19:20:22.906973305 +0000
|
||||
@@ -412,7 +412,7 @@
|
||||
Object obj1;
|
||||
pdf_begin_array(pdf);
|
||||
for (i = 0, l = array->getLength(); i < l; ++i) {
|
||||
- obj1 = array->getNF(i);
|
||||
+ obj1 = array->getNF(i).copy();
|
||||
copyObject(pdf, pdf_doc, &obj1);
|
||||
}
|
||||
pdf_end_array(pdf);
|
||||
@@ -425,7 +425,7 @@
|
||||
pdf_begin_dict(pdf);
|
||||
for (i = 0, l = dict->getLength(); i < l; ++i) {
|
||||
copyName(pdf, dict->getKey(i));
|
||||
- obj1 = dict->getValNF(i);
|
||||
+ obj1 = dict->getValNF(i).copy();
|
||||
copyObject(pdf, pdf_doc, &obj1);
|
||||
}
|
||||
pdf_end_dict(pdf);
|
||||
@@ -788,12 +788,12 @@
|
||||
Now all relevant parts of the Page dictionary are copied. Metadata validity
|
||||
check is needed(as a stream it must be indirect).
|
||||
*/
|
||||
- obj1 = pageDict->lookupNF("Metadata");
|
||||
+ obj1 = pageDict->lookupNF("Metadata").copy();
|
||||
if (!obj1.isNull() && !obj1.isRef())
|
||||
formatted_warning("pdf inclusion","/Metadata must be indirect object");
|
||||
/* copy selected items in Page dictionary */
|
||||
for (i = 0; pagedictkeys[i] != NULL; i++) {
|
||||
- obj1 = pageDict->lookupNF(pagedictkeys[i]);
|
||||
+ obj1 = pageDict->lookupNF(pagedictkeys[i]).copy();
|
||||
if (!obj1.isNull()) {
|
||||
pdf_add_name(pdf, pagedictkeys[i]);
|
||||
/* preserves indirection */
|
||||
@@ -806,13 +806,13 @@
|
||||
PDF file, climbing up the tree until the Resources are found.
|
||||
(This fixes a problem with Scribus 1.3.3.14.)
|
||||
*/
|
||||
- obj1 = pageDict->lookupNF("Resources");
|
||||
+ obj1 = pageDict->lookupNF("Resources").copy();
|
||||
if (obj1.isNull()) {
|
||||
op1 = &pagesobj1;
|
||||
op2 = &pagesobj2;
|
||||
*op1 = pageDict->lookup("Parent");
|
||||
while (op1->isDict()) {
|
||||
- obj1 = op1->dictLookupNF("Resources");
|
||||
+ obj1 = op1->dictLookupNF("Resources").copy();
|
||||
if (!obj1.isNull()) {
|
||||
pdf_add_name(pdf, "Resources");
|
||||
copyObject(pdf, pdf_doc, &obj1);
|
||||
--- texlive-source/texk/web2c/luatexdir/lua/lepdflib.cc.orig 2019-04-24 09:41:05.090522664 +0000
|
||||
+++ texlive-source/texk/web2c/luatexdir/lua/lepdflib.cc 2019-04-24 09:43:37.119184926 +0000
|
||||
@@ -994,7 +994,8 @@
|
||||
pdfdoc_changed_error(L);
|
||||
num = luaL_checkint(L, 2);
|
||||
gen = luaL_checkint(L, 3);
|
||||
- i = ((Catalog *) uin->d)->findPage(num, gen);
|
||||
+ Ref numgen = {num, gen};
|
||||
+ i = ((Catalog *) uin->d)->findPage(numgen);
|
||||
if (i > 0)
|
||||
lua_pushinteger(L, i);
|
||||
else
|
||||
@@ -2596,8 +2597,9 @@
|
||||
pdfdoc_changed_error(L);
|
||||
num = luaL_checkint(L, 2);
|
||||
gen = luaL_checkint(L, 3);
|
||||
+ Ref numgen = {num, gen};
|
||||
if (((PdfDocument *) uin->d)->doc->getCatalog()->isOk()) {
|
||||
- i = ((PdfDocument *) uin->d)->doc->findPage(num, gen);
|
||||
+ i = ((PdfDocument *) uin->d)->doc->findPage(numgen);
|
||||
if (i > 0)
|
||||
lua_pushinteger(L, i);
|
||||
else
|
||||
--- texlive-source/texk/web2c/luatexdir/image/pdftoepdf.w.orig 2019-04-24 09:56:38.406498975 +0000
|
||||
+++ texlive-source/texk/web2c/luatexdir/image/pdftoepdf.w 2019-04-24 09:56:57.020081327 +0000
|
||||
@@ -630,7 +630,7 @@
|
||||
if (link == NULL || !link->isOk())
|
||||
formatted_error("pdf inclusion","invalid destination '%s'",img_pagename(idict));
|
||||
Ref ref = link->getPageRef();
|
||||
- img_pagenum(idict) = catalog->findPage(ref.num, ref.gen);
|
||||
+ img_pagenum(idict) = catalog->findPage(ref);
|
||||
if (img_pagenum(idict) == 0)
|
||||
formatted_error("pdf inclusion","destination is not a page '%s'",img_pagename(idict));
|
||||
delete link;
|
|
@ -1,15 +1,74 @@
|
|||
commit 67290f70d8143b18f24ffd6a1827def9bdc21108
|
||||
commit 473d82b2e33621d51f5c961baf8b42cdb4c955eb
|
||||
Author: Akira Kakuto <kakuto@fuk.kindai.ac.jp>
|
||||
Date: Thu Dec 6 23:31:33 2018 +0000
|
||||
Date: Fri May 3 04:05:07 2019 +0000
|
||||
|
||||
support system poppler 0.72.0
|
||||
support system poppler 0.76.[01]
|
||||
|
||||
git-svn-id: svn://tug.org/texlive/trunk/Build/source@49336 c570f23f-e606-0410-a88d-b1316a301751
|
||||
|
||||
git-svn-id: svn://tug.org/texlive/trunk/Build/source@50960 c570f23f-e606-0410-a88d-b1316a301751
|
||||
|
||||
diff --git a/texk/web2c/pdftexdir/ChangeLog b/texk/web2c/pdftexdir/ChangeLog
|
||||
index 8af394342..0a43b927c 100644
|
||||
--- a/texk/web2c/pdftexdir/ChangeLog
|
||||
+++ b/texk/web2c/pdftexdir/ChangeLog
|
||||
@@ -1,3 +1,8 @@
|
||||
+2019-05-03 Akira Kakuto <kakuto@w32tex.org>
|
||||
+
|
||||
+ * pdftosrc-poppler0.76.0.cc, pdftoepdf-poppler0.76.0.cc:
|
||||
+ Added to support system poppler 0.76.[01].
|
||||
+
|
||||
2019-04-07 Karl Berry <karl@freefriends.org>
|
||||
|
||||
* TeX Live 2019.
|
||||
diff --git a/texk/web2c/pdftexdir/NEWS b/texk/web2c/pdftexdir/NEWS
|
||||
index c21898395..ddc933be4 100644
|
||||
--- a/texk/web2c/pdftexdir/NEWS
|
||||
+++ b/texk/web2c/pdftexdir/NEWS
|
||||
@@ -28,13 +28,15 @@ pdfTeX 3.14159265-2.6-1.40.19 (TeX Live 2018) (April 14, 2018)
|
||||
Provide new files:
|
||||
pdftosrc-newpoppler.cc for poppler-0.59.0 upto poppler-0.70.1.
|
||||
pdftosrc-poppler0.71.0 for poppler-0.71.0.
|
||||
- pdftosrc-poppler0.72.0 for poppler-0.72.0 and newer.
|
||||
+ pdftosrc-poppler0.72.0 for poppler-0.72.0 upto poppler-0.75.0.
|
||||
+ pdftosrc-poppler0.76.0 for poppler-0.76.0 and newer.
|
||||
pdftoepdf-poppler0.68.0.cc for poppler-0.59.0 upto poppler-0.68.0.
|
||||
pdftoepdf-poppler0.69.0.cc for poppler-0.69.0.
|
||||
pdftoepdf-poppler0.70.0.cc for poppler-0.70.0 and poppler-0.70.1.
|
||||
pdftoepdf-poppler0.71.0.cc for poppler-0.71.0.
|
||||
pdftoepdf-poppler0.72.0.cc for poppler-0.72.0 upto poppler-0.74.0.
|
||||
- pdftoepdf-poppler0.75.0.cc for poppler-0.75.0 and newer.
|
||||
+ pdftoepdf-poppler0.75.0.cc for poppler-0.75.0.
|
||||
+ pdftoepdf-poppler0.76.0.cc for poppler-0.76.0 and newer.
|
||||
Note that pdftosrc-*.cc and pdftoepdf-*.cc should be
|
||||
renamed as pdftosrc.cc, and pdftoepdf.cc, respectively, before
|
||||
compilation.
|
||||
diff --git a/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc b/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
index 630d3366d..6617cfe8b 100644
|
||||
--- a/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftoepdf-poppler0.72.0.cc
|
||||
@@ -23,6 +23,7 @@ https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
|
||||
by Arch Linux. A little modifications are made to avoid a crash for
|
||||
some kind of pdf images, such as figure_missing.pdf in gnuplot.
|
||||
The poppler should be 0.72.0 or newer versions.
|
||||
+It is tested upto the poppler 0.74.0.
|
||||
POPPLER_VERSION should be defined.
|
||||
*/
|
||||
|
||||
diff --git a/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc b/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc
|
||||
index 13c3bd5ef..30f8fed58 100644
|
||||
--- a/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftoepdf-poppler0.75.0.cc
|
||||
@@ -22,7 +22,7 @@ This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
|
||||
https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
|
||||
by Arch Linux. A little modifications are made to avoid a crash for
|
||||
some kind of pdf images, such as figure_missing.pdf in gnuplot.
|
||||
-The poppler should be 0.75.0 or newer versions.
|
||||
+The poppler should be 0.75.0.
|
||||
POPPLER_VERSION should be defined.
|
||||
*/
|
||||
|
||||
diff --git a/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc b/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc
|
||||
new file mode 100644
|
||||
index 000000000..630d3366d
|
||||
index 000000000..e7614aa5c
|
||||
--- /dev/null
|
||||
+++ b/texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc
|
||||
@@ -0,0 +1,1113 @@
|
||||
|
@ -37,7 +96,7 @@ index 000000000..630d3366d
|
|||
+https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
|
||||
+by Arch Linux. A little modifications are made to avoid a crash for
|
||||
+some kind of pdf images, such as figure_missing.pdf in gnuplot.
|
||||
+The poppler should be 0.72.0 or newer versions.
|
||||
+The poppler should be 0.76.0 or newer versions.
|
||||
+POPPLER_VERSION should be defined.
|
||||
+*/
|
||||
+
|
||||
|
@ -880,7 +939,7 @@ index 000000000..630d3366d
|
|||
+ pdf_printf("/%s.PageNumber %i\n", pdfkeyprefix, (int) epdf_selected_page);
|
||||
+ }
|
||||
+ if ((suppress_ptex_info & MASK_SUPPRESS_PTEX_INFODICT) == 0) {
|
||||
+ info = pdf_doc->doc->getDocInfoNF();
|
||||
+ info = pdf_doc->doc->getDocInfoNF().copy();
|
||||
+ if (info.isRef()) {
|
||||
+ // the info dict must be indirect (PDF Ref p. 61)
|
||||
+ pdf_printf("/%s.InfoDict ", pdfkeyprefix);
|
||||
|
@ -1126,12 +1185,24 @@ index 000000000..630d3366d
|
|||
+ delete globalParams;
|
||||
+ }
|
||||
+}
|
||||
diff --git a/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc b/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc
|
||||
index d4e247ef6..34bad9ccf 100644
|
||||
--- a/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc
|
||||
+++ b/texk/web2c/pdftexdir/pdftosrc-poppler0.72.0.cc
|
||||
@@ -21,6 +21,7 @@ with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
|
||||
https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
|
||||
by Arch Linux. The poppler should be 0.72.0 or newer versions.
|
||||
+It is tested upto the poppler 0.75.0.
|
||||
POPPLER_VERSION should be defined.
|
||||
*/
|
||||
|
||||
diff --git a/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc b/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc
|
||||
new file mode 100644
|
||||
index 000000000..6089e68d9
|
||||
index 000000000..3599b5318
|
||||
--- /dev/null
|
||||
+++ b/texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc
|
||||
@@ -0,0 +1,207 @@
|
||||
@@ -0,0 +1,206 @@
|
||||
+/*
|
||||
+Copyright 1996-2017 Han The Thanh, <thanh@pdftex.org>
|
||||
+
|
||||
|
@ -1154,7 +1225,7 @@ index 000000000..6089e68d9
|
|||
+/*
|
||||
+This is based on the patch texlive-poppler-0.59.patch <2017-09-19> at
|
||||
+https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk
|
||||
+by Arch Linux. The poppler should be 0.72.0 or newer versions.
|
||||
+by Arch Linux. The poppler should be 0.76.0 or newer versions.
|
||||
+POPPLER_VERSION should be defined.
|
||||
+*/
|
||||
+
|
||||
|
@ -1308,7 +1379,6 @@ index 000000000..6089e68d9
|
|||
+ // parse the header: object numbers and offsets
|
||||
+ objStr.streamReset();
|
||||
+ str = new EmbedStream(objStr.getStream(), Object(objNull), true, first);
|
||||
+ lexer = new Lexer(xref, str);
|
||||
+ parser = new Parser(xref, str, false);
|
||||
+ for (n = 0; n < nObjects; ++n) {
|
||||
+ obj1 = parser->getObj();
|
||||
|
|
|
@ -1,12 +0,0 @@
|
|||
--- source.orig/texk/web2c/synctexdir/am/synctex.am 2016-05-08 19:08:26.231570952 +0200
|
||||
+++ source/texk/web2c/synctexdir/am/synctex.am 2018-05-27 00:14:26.011125669 +0200
|
||||
@@ -55,7 +55,8 @@
|
||||
if SYNCTEX
|
||||
syncinclude_HEADERS = \
|
||||
synctexdir/synctex_parser.h \
|
||||
- synctexdir/synctex_parser_utils.h
|
||||
+ synctexdir/synctex_parser_utils.h \
|
||||
+ synctexdir/synctex_version.h
|
||||
|
||||
pkgconfig_DATA = synctexdir/synctex.pc
|
||||
endif SYNCTEX
|
|
@ -1,40 +0,0 @@
|
|||
From 729755bcb60695221cb368202822fc3181197ef7 Mon Sep 17 00:00:00 2001
|
||||
From: Akira Kakuto <kakuto@fuk.kindai.ac.jp>
|
||||
Date: Mon, 22 Oct 2018 04:01:42 +0000
|
||||
Subject: [PATCH] cast types to support new poppler
|
||||
|
||||
git-svn-id: svn://tug.org/texlive/trunk/Build/source@48969 c570f23f-e606-0410-a88d-b1316a301751
|
||||
---
|
||||
texk/web2c/xetexdir/ChangeLog | 4 ++++
|
||||
texk/web2c/xetexdir/pdfimage.cpp | 10 +++++-----
|
||||
2 files changed, 9 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/texk/web2c/xetexdir/pdfimage.cpp b/texk/web2c/xetexdir/pdfimage.cpp
|
||||
index fc3e32693..8a38f1ee5 100644
|
||||
--- a/texk/web2c/xetexdir/pdfimage.cpp
|
||||
+++ b/texk/web2c/xetexdir/pdfimage.cpp
|
||||
@@ -82,19 +82,19 @@ pdf_get_rect(char* filename, int page_num, int pdf_box, realrect* box)
|
||||
switch (pdf_box) {
|
||||
default:
|
||||
case pdfbox_crop:
|
||||
- r = page->getCropBox();
|
||||
+ r = (PDFRectangle *)page->getCropBox();
|
||||
break;
|
||||
case pdfbox_media:
|
||||
- r = page->getMediaBox();
|
||||
+ r = (PDFRectangle *)page->getMediaBox();
|
||||
break;
|
||||
case pdfbox_bleed:
|
||||
- r = page->getBleedBox();
|
||||
+ r = (PDFRectangle *)page->getBleedBox();
|
||||
break;
|
||||
case pdfbox_trim:
|
||||
- r = page->getTrimBox();
|
||||
+ r = (PDFRectangle *)page->getTrimBox();
|
||||
break;
|
||||
case pdfbox_art:
|
||||
- r = page->getArtBox();
|
||||
+ r = (PDFRectangle *)page->getArtBox();
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in a new issue