pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/print/web2c web2c: update to 2018



details:   https://anonhg.NetBSD.org/pkgsrc/rev/fe7f3e844ce8
branches:  trunk
changeset: 307795:fe7f3e844ce8
user:      markd <markd%pkgsrc.org@localhost>
date:      Sun May 13 13:01:02 2018 +0000
description:
web2c: update to 2018

texlive 2018 version

diffstat:

 print/web2c/Makefile                                        |   16 +-
 print/web2c/distinfo                                        |   14 +-
 print/web2c/patches/patch-pdftexdir_pdftoepdf-newpoppler.cc |   44 +
 print/web2c/patches/patch-pdftexdir_pdftoepdf.cc            |  435 ------------
 print/web2c/patches/patch-pdftexdir_pdftosrc-newpoppler.cc  |   15 +
 print/web2c/patches/patch-pdftexdir_pdftosrc.cc             |   99 --
 6 files changed, 77 insertions(+), 546 deletions(-)

diffs (truncated from 673 to 300 lines):

diff -r e5bd3d0a56e3 -r fe7f3e844ce8 print/web2c/Makefile
--- a/print/web2c/Makefile      Sun May 13 12:55:10 2018 +0000
+++ b/print/web2c/Makefile      Sun May 13 13:01:02 2018 +0000
@@ -1,10 +1,9 @@
-# $NetBSD: Makefile,v 1.70 2018/04/28 20:19:12 wiz Exp $
+# $NetBSD: Makefile,v 1.71 2018/05/13 13:01:02 markd Exp $
 
-DISTNAME=      texlive-20170524-source
-PKGNAME=       web2c-2017
-PKGREVISION=   10
+DISTNAME=      texlive-20180414-source
+PKGNAME=       web2c-2018
 CATEGORIES=    print
-MASTER_SITES=  ftp://tug.org/historic/systems/texlive/2017/
+MASTER_SITES=  ftp://tug.org/historic/systems/texlive/2018/
 EXTRACT_SUFX=  .tar.xz
 
 MAINTAINER=    minskim%NetBSD.org@localhost
@@ -29,6 +28,7 @@
 PKGCONFIG_OVERRIDE=    synctexdir/synctex.pc.in
 
 CONFIGURE_ARGS+=       --disable-luatex
+CONFIGURE_ARGS+=       --disable-luatex53
 CONFIGURE_ARGS+=       --disable-luajittex
 CONFIGURE_ARGS+=       --disable-mflua
 CONFIGURE_ARGS+=       --disable-mfluajit
@@ -51,11 +51,17 @@
 CONFIGURE_ARGS+=       --with-system-zlib \
                        --with-zlib-includes=${BUILDLINK_PREFIX.zlib}/include \
                        --with-zlib-libdir=${BUILDLINK_PREFIX.zlib}/lib
+CONFIGURE_ARGS+=       --with-system-zziplib
 LIBTOOL_OVERRIDE=      ../*/libtool */libtool
 
 CONFIGURE_DIRS=                ${WRKDIR}/${DISTNAME}/texk/web2c
 INSTALL_DIRS=  ${WRKDIR}/${DISTNAME}/texk/web2c
 
+pre-configure:
+       cp ${WRKSRC}/pdftexdir/pdftoepdf-newpoppler.cc  ${WRKSRC}/pdftexdir/pdftoepdf.cc
+       cp ${WRKSRC}/pdftexdir/pdftosrc-newpoppler.cc  ${WRKSRC}/pdftexdir/pdftosrc.cc
+
+.include "../../archivers/zziplib/buildlink3.mk"
 .include "../../devel/zlib/buildlink3.mk"
 .include "../../graphics/cairo/buildlink3.mk"
 .include "../../graphics/png/buildlink3.mk"
diff -r e5bd3d0a56e3 -r fe7f3e844ce8 print/web2c/distinfo
--- a/print/web2c/distinfo      Sun May 13 12:55:10 2018 +0000
+++ b/print/web2c/distinfo      Sun May 13 13:01:02 2018 +0000
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.25 2018/04/29 20:58:29 ryoon Exp $
+$NetBSD: distinfo,v 1.26 2018/05/13 13:01:02 markd Exp $
 
-SHA1 (texlive-20170524-source.tar.xz) = 1c1383ddb1b871c6b8ce49a4ae3c1a33d454a7b6
-RMD160 (texlive-20170524-source.tar.xz) = a8430c19fe1727cf308fe03e5838105260c0d71e
-SHA512 (texlive-20170524-source.tar.xz) = 18c18940992ab94ce22e22ccd4ad798253ea14ac2ab296a10ea5e9a8da9f33989f2e2641b42b564d1d5fb53bd371da3e68726b676d706b469016ad146cd19daa
-Size (texlive-20170524-source.tar.xz) = 63483372 bytes
+SHA1 (texlive-20180414-source.tar.xz) = 81bdd9999b6ab860d1d3c388cf27062aba960255
+RMD160 (texlive-20180414-source.tar.xz) = 0ff63bbd7f8a0fb6417089f5d1ae1e4124a1dd95
+SHA512 (texlive-20180414-source.tar.xz) = ecac9b8203d2747be7ba7f82d68096d859fb35713276106d7049035dd3a8cfca07f8a8648982f0317b3812f8480db7326714de32f95998e3e6f73571de2aa140
+Size (texlive-20180414-source.tar.xz) = 49770944 bytes
 SHA1 (patch-am) = b7b81b1161a2117e756b25b80f9a676575267bdd
-SHA1 (patch-pdftexdir_pdftoepdf.cc) = 24ff0639b236c87aa24b4ffb8f90520d9a4e092f
-SHA1 (patch-pdftexdir_pdftosrc.cc) = d951a2c83adfc28e58e6963f38e4ce5f35fc5bb8
+SHA1 (patch-pdftexdir_pdftoepdf-newpoppler.cc) = 6d778c1b493d1f498c07ea49a41a9f15d3f8d570
+SHA1 (patch-pdftexdir_pdftosrc-newpoppler.cc) = 6601ac14720cc36321d3da70359218182f98915b
diff -r e5bd3d0a56e3 -r fe7f3e844ce8 print/web2c/patches/patch-pdftexdir_pdftoepdf-newpoppler.cc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/print/web2c/patches/patch-pdftexdir_pdftoepdf-newpoppler.cc       Sun May 13 13:01:02 2018 +0000
@@ -0,0 +1,44 @@
+$NetBSD: patch-pdftexdir_pdftoepdf-newpoppler.cc,v 1.1 2018/05/13 13:01:02 markd Exp $
+
+Build with poppler 0.64
+
+--- pdftexdir/pdftoepdf-newpoppler.cc.orig     2018-04-04 04:08:11.000000000 +0000
++++ pdftexdir/pdftoepdf-newpoppler.cc
+@@ -275,7 +275,7 @@ static int getNewObjectNumber(Ref ref)
+ 
+ static void copyObject(Object *);
+ 
+-static void copyName(char *s)
++static void copyName(const char *s)
+ {
+     pdf_puts("/");
+     for (; *s != 0; s++) {
+@@ -418,7 +418,7 @@ static void copyFont(char *tag, Object *
+         && fontdescRef.isRef()
+         && fontdesc.isDict()
+         && embeddableFont(&fontdesc)
+-        && (fontmap = lookup_fontmap(basefont.getName())) != NULL) {
++        && (fontmap = lookup_fontmap((char *)basefont.getName())) != NULL) {
+         // round /StemV value, since the PDF input is a float
+         // (see Font Descriptors in PDF reference), but we only store an
+         // integer, since we don't want to change the struct.
+@@ -427,7 +427,7 @@ static void copyFont(char *tag, Object *
+         charset = fontdesc.dictLookup("CharSet");
+         if (!charset.isNull() &&
+             charset.isString() && is_subsetable(fontmap))
+-            epdf_mark_glyphs(fd, charset.getString()->getCString());
++            epdf_mark_glyphs(fd, (char *)charset.getString()->getCString());
+         else
+             embed_whole_font(fd);
+         addFontDesc(fontdescRef.getRef(), fd);
+@@ -554,8 +554,8 @@ static void copyObject(Object * obj)
+     Object obj1;
+     int i, l, c;
+     Ref ref;
+-    char *p;
+-    GString *s;
++    const char *p;
++    const GString *s;
+     if (obj->isBool()) {
+         pdf_printf("%s", obj->getBool()? "true" : "false");
+     } else if (obj->isInt()) {
diff -r e5bd3d0a56e3 -r fe7f3e844ce8 print/web2c/patches/patch-pdftexdir_pdftoepdf.cc
--- a/print/web2c/patches/patch-pdftexdir_pdftoepdf.cc  Sun May 13 12:55:10 2018 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,435 +0,0 @@
-$NetBSD: patch-pdftexdir_pdftoepdf.cc,v 1.4 2018/04/29 20:58:29 ryoon Exp $
-
-Allow recent poppler - from ArchLinux
-
---- pdftexdir/pdftoepdf.cc.orig        2016-11-25 18:09:21.000000000 +0000
-+++ pdftexdir/pdftoepdf.cc
-@@ -84,31 +84,6 @@ extern integer zround(double);
- #define MASK_SUPPRESS_PTEX_PAGENUMBER 0x04
- #define MASK_SUPPRESS_PTEX_INFODICT   0x08
- 
--// PdfObject encapsulates the xpdf Object type,
--// and properly frees its resources on destruction.
--// Use obj-> to access members of the Object,
--// and &obj to get a pointer to the object.
--// It is no longer necessary to call Object::free explicitely.
--
--class PdfObject {
--  public:
--    PdfObject() {               // nothing
--    } ~PdfObject() {
--        iObject.free();
--    }
--    Object *operator->() {
--        return &iObject;
--    }
--    Object *operator&() {
--        return &iObject;
--    }
--  private:                     // no copying or assigning
--    PdfObject(const PdfObject &);
--    void operator=(const PdfObject &);
--  public:
--    Object iObject;
--};
--
- // When copying the Resources of the selected page, all objects are copied
- // recusively top-down. Indirect objects however are not fetched during
- // copying, but get a new object number from pdfTeX and then will be
-@@ -212,18 +187,6 @@ static void delete_document(PdfDocument 
-     delete pdf_doc;
- }
- 
--// Replacement for
--//      Object *initDict(Dict *dict1){ initObj(objDict); dict = dict1; return this; }
--
--static void initDictFromDict(PdfObject & obj, Dict * dict)
--{
--    obj->initDict(xref);
--    for (int i = 0, l = dict->getLength(); i < l; i++) {
--        Object obj1;
--        obj->dictAdd(copyString(dict->getKey(i)), dict->getValNF(i, &obj1));
--    }
--}
--
- // --------------------------------------------------------------------
- 
- static int addEncoding(GfxFont * gfont)
-@@ -320,10 +283,10 @@ static void copyName(char *s)
- 
- static void copyDictEntry(Object * obj, int i)
- {
--    PdfObject obj1;
-+    Object obj1;
-     copyName(obj->dictGetKey(i));
-     pdf_puts(" ");
--    obj->dictGetValNF(i, &obj1);
-+    obj1 = obj->dictGetValNF(i);
-     copyObject(&obj1);
-     pdf_puts("\n");
- }
-@@ -376,17 +339,17 @@ static void copyStream(Stream * str)
- static void copyProcSet(Object * obj)
- {
-     int i, l;
--    PdfObject procset;
-+    Object procset;
-     if (!obj->isArray())
-         pdftex_fail("PDF inclusion: invalid ProcSet array type <%s>",
-                     obj->getTypeName());
-     pdf_puts("/ProcSet [ ");
-     for (i = 0, l = obj->arrayGetLength(); i < l; ++i) {
--        obj->arrayGetNF(i, &procset);
--        if (!procset->isName())
-+        procset = obj->arrayGetNF(i);
-+        if (!procset.isName())
-             pdftex_fail("PDF inclusion: invalid ProcSet entry type <%s>",
--                        procset->getTypeName());
--        copyName(procset->getName());
-+                        procset.getTypeName());
-+        copyName(const_cast<char*>(procset.getName()));
-         pdf_puts(" ");
-     }
-     pdf_puts("]\n");
-@@ -394,10 +357,29 @@ static void copyProcSet(Object * obj)
- 
- #define REPLACE_TYPE1C true
- 
-+static bool embeddableFont(Object * fontdesc)
-+{
-+    Object fontfile, ffsubtype;
-+
-+    if (!fontdesc->isDict())
-+        return false;
-+    fontfile = fontdesc->dictLookup("FontFile");
-+    if (fontfile.isStream())
-+        return true;
-+    if (REPLACE_TYPE1C) {
-+        fontfile = fontdesc->dictLookup("FontFile3");
-+        if (!fontfile.isStream())
-+            return false;
-+        ffsubtype = fontfile.streamGetDict()->lookup("Subtype");
-+        return ffsubtype.isName() && !strcmp(ffsubtype.getName(), "Type1C");
-+    }
-+    return false;
-+}
-+
- static void copyFont(char *tag, Object * fontRef)
- {
--    PdfObject fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
--        fontfile, ffsubtype, stemV;
-+    Object fontdict, subtype, basefont, fontdescRef, fontdesc, charset,
-+        stemV;
-     GfxFont *gfont;
-     fd_entry *fd;
-     fm_entry *fontmap;
-@@ -413,33 +395,39 @@ static void copyFont(char *tag, Object *
-     }
-     // Only handle included Type1 (and Type1C) fonts; anything else will be copied.
-     // Type1C fonts are replaced by Type1 fonts, if REPLACE_TYPE1C is true.
--    if (!fixedinclusioncopyfont && fontRef->fetch(xref, &fontdict)->isDict()
--        && fontdict->dictLookup("Subtype", &subtype)->isName()
--        && !strcmp(subtype->getName(), "Type1")
--        && fontdict->dictLookup("BaseFont", &basefont)->isName()
--        && fontdict->dictLookupNF("FontDescriptor", &fontdescRef)->isRef()
--        && fontdescRef->fetch(xref, &fontdesc)->isDict()
--        && (fontdesc->dictLookup("FontFile", &fontfile)->isStream()
--            || (REPLACE_TYPE1C
--                && fontdesc->dictLookup("FontFile3", &fontfile)->isStream()
--                && fontfile->streamGetDict()->lookup("Subtype",
--                                                     &ffsubtype)->isName()
--                && !strcmp(ffsubtype->getName(), "Type1C")))
--        && (fontmap = lookup_fontmap(basefont->getName())) != NULL) {
-+    fontdict = fontRef->fetch(xref);
-+    fontdesc = Object(objNull);
-+    if (fontdict.isDict()) {
-+        subtype = fontdict.dictLookup("Subtype");
-+        basefont = fontdict.dictLookup("BaseFont");
-+        fontdescRef = fontdict.dictLookupNF("FontDescriptor");
-+        if (fontdescRef.isRef()) {
-+            fontdesc = fontdescRef.fetch(xref);
-+        }
-+    }
-+    if (!fixedinclusioncopyfont && fontdict.isDict()
-+        && subtype.isName()
-+        && !strcmp(subtype.getName(), "Type1")
-+        && basefont.isName()
-+        && fontdescRef.isRef()
-+        && fontdesc.isDict()
-+        && embeddableFont(&fontdesc)
-+        && (fontmap = lookup_fontmap(const_cast<char*>(basefont.getName()))) != NULL) {
-         // round /StemV value, since the PDF input is a float
-         // (see Font Descriptors in PDF reference), but we only store an
-         // integer, since we don't want to change the struct.
--        fontdesc->dictLookup("StemV", &stemV);
--        fd = epdf_create_fontdescriptor(fontmap, zround(stemV->getNum()));
--        if (fontdesc->dictLookup("CharSet", &charset) &&
--            charset->isString() && is_subsetable(fontmap))
--            epdf_mark_glyphs(fd, charset->getString()->getCString());
-+        stemV = fontdesc.dictLookup("StemV");
-+        fd = epdf_create_fontdescriptor(fontmap, zround(stemV.getNum()));
-+        charset = fontdesc.dictLookup("CharSet");
-+        if (!charset.isNull() &&
-+            charset.isString() && is_subsetable(fontmap))
-+            epdf_mark_glyphs(fd, const_cast<char*>(charset.getString()->getCString()));
-         else
-             embed_whole_font(fd);
--        addFontDesc(fontdescRef->getRef(), fd);
-+        addFontDesc(fontdescRef.getRef(), fd);
-         copyName(tag);
-         gfont = GfxFont::makeFont(xref, tag, fontRef->getRef(),
--                                  fontdict->getDict());
-+                                  fontdict.getDict());
-         pdf_printf(" %d 0 R ", addFont(fontRef->getRef(), fd,
-                                        addEncoding(gfont)));



Home | Main Index | Thread Index | Old Index