diff options
author | markd <markd@pkgsrc.org> | 2018-05-13 12:46:27 +0000 |
---|---|---|
committer | markd <markd@pkgsrc.org> | 2018-05-13 12:46:27 +0000 |
commit | efa81812204ba5ff14ecabbe7cb37f2a6644abef (patch) | |
tree | 9eac9c214f5554b5ac41732d194c5d90dd293a37 /print | |
parent | 670972bbfe000719f703e4c130820c6f0900158a (diff) | |
download | pkgsrc-efa81812204ba5ff14ecabbe7cb37f2a6644abef.tar.gz |
luatex: update to 1.07.0
texlive 2018 version
Diffstat (limited to 'print')
-rw-r--r-- | print/luatex/Makefile | 11 | ||||
-rw-r--r-- | print/luatex/distinfo | 17 | ||||
-rw-r--r-- | print/luatex/patches/patch-texk_web2c_luatexdir_image_pdftoepdf.w | 232 | ||||
-rw-r--r-- | print/luatex/patches/patch-texk_web2c_luatexdir_lua_lepdflib.cc | 461 | ||||
-rw-r--r-- | print/luatex/patches/patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc | 15 | ||||
-rw-r--r-- | print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ctype.c | 16 | ||||
-rw-r--r-- | print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ffi.h | 14 |
7 files changed, 47 insertions, 719 deletions
diff --git a/print/luatex/Makefile b/print/luatex/Makefile index 82c4b064e40..8d887b12f36 100644 --- a/print/luatex/Makefile +++ b/print/luatex/Makefile @@ -1,10 +1,9 @@ -# $NetBSD: Makefile,v 1.70 2018/04/28 20:19:11 wiz Exp $ +# $NetBSD: Makefile,v 1.71 2018/05/13 12:46:27 markd Exp $ -DISTNAME= texlive-20170524-source -PKGNAME= luatex-1.0.4 -PKGREVISION= 11 +DISTNAME= texlive-20180414-source +PKGNAME= luatex-1.07.0 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 @@ -24,7 +23,7 @@ USE_TOOLS+= gmake gsed lex perl pkg-config yacc CONFIGURE_ARGS+= --disable-aleph --disable-etex --disable-pdftex \ --enable-luatex --disable-mf --disable-mf-nowin \ --with-x=no \ - --disable-luajittex --disable-mfluajit \ + --disable-luatex53 --disable-luajittex --disable-mfluajit \ --disable-mp --disable-pmp --disable-upmp \ --disable-ptex --disable-eptex --disable-uptex --disable-euptex \ --disable-web-progs \ diff --git a/print/luatex/distinfo b/print/luatex/distinfo index d2abf77a340..6dfac8d52bc 100644 --- a/print/luatex/distinfo +++ b/print/luatex/distinfo @@ -1,14 +1,11 @@ -$NetBSD: distinfo,v 1.29 2018/04/29 20:57:26 ryoon Exp $ +$NetBSD: distinfo,v 1.30 2018/05/13 12:46:27 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-ac) = 1ee83833a03eace2eada892130ddb2198e829f3d SHA1 (patch-libs_luajit_LuaJIT-src_src_host_buildvm__asm.c) = 34fa742ed696f97df637c5086bf1faf3d718cb69 SHA1 (patch-libs_luajit_LuaJIT-src_src_vm__x86.dasc) = 491d33adbbaab8b2b81a65a8d7ba30aee775b75f -SHA1 (patch-texk_web2c_luatexdir_image_pdftoepdf.w) = ef0950aeeba70fdb286835dd5eab85555fd1131a -SHA1 (patch-texk_web2c_luatexdir_lua_lepdflib.cc) = 0758888fd2bf23e339a858fdde84c0aa111a7350 -SHA1 (patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc) = ddb11816de22cc7b3f286b3a7838dcf6debbf892 -SHA1 (patch-texk_web2c_luatexdir_luaffi_ctype.c) = 57d51564d5dd0200be10154216158fe801d7c630 -SHA1 (patch-texk_web2c_luatexdir_luaffi_ffi.h) = 2fbf91152fc3438d8e989d5f5f95877faaec6790 +SHA1 (patch-texk_web2c_luatexdir_image_pdftoepdf.w) = 9b6d637abe2fbb246a2435caf8aec5070abd1c5f +SHA1 (patch-texk_web2c_luatexdir_lua_lepdflib.cc) = 24052cbff1a087badbeefe8b58bf7ce97e4ab4fb diff --git a/print/luatex/patches/patch-texk_web2c_luatexdir_image_pdftoepdf.w b/print/luatex/patches/patch-texk_web2c_luatexdir_image_pdftoepdf.w index d1f3561de39..5e6dc8bbdee 100644 --- a/print/luatex/patches/patch-texk_web2c_luatexdir_image_pdftoepdf.w +++ b/print/luatex/patches/patch-texk_web2c_luatexdir_image_pdftoepdf.w @@ -1,217 +1,27 @@ -$NetBSD: patch-texk_web2c_luatexdir_image_pdftoepdf.w,v 1.4 2018/04/29 20:57:26 ryoon Exp $ +$NetBSD: patch-texk_web2c_luatexdir_image_pdftoepdf.w,v 1.5 2018/05/13 12:46:27 markd Exp $ -The ctangle tex-to-C generator strips whitespace, resulting in "C++11 requires -a space between literal and identifier" failures. Pull in hacky patch from -Gentoo which avoids this problem by using newlines. +Build with poppler 0.64 -Add support for newer poppler's from ArchLinux - ---- texk/web2c/luatexdir/image/pdftoepdf.w.orig 2016-11-25 18:09:14.000000000 +0000 +--- texk/web2c/luatexdir/image/pdftoepdf.w.orig 2018-01-17 18:00:12.000000000 +0000 +++ texk/web2c/luatexdir/image/pdftoepdf.w -@@ -71,7 +71,11 @@ static char *get_file_checksum(const cha - ck = (char *) malloc(PDF_CHECKSUM_SIZE); - if (ck == NULL) - formatted_error("pdf inclusion","out of memory while processing '%s'", a); -- snprintf(ck, PDF_CHECKSUM_SIZE, "%" PRIu64 "_%" PRIu64, (uint64_t) size,(uint64_t) mtime); -+ snprintf(ck, PDF_CHECKSUM_SIZE, "%" -+PRIu64 -+"_%" -+PRIu64 -+, (uint64_t) size,(uint64_t) mtime); - } else { - switch (fe) { - case FE_FAIL: -@@ -224,7 +228,7 @@ PdfDocument *refMemStreamPdfDocument(cha - free(checksum); - } - if (pdf_doc->doc == NULL) { -- docmemstream = new MemStream( docstream,0,streamsize, obj.initNull() ); -+ docmemstream = new MemStream( docstream,0,streamsize, Object(objNull) ); - doc = new PDFDoc(docmemstream); /* takes ownership of docmemstream */ - pdf_doc->pc++; - if (!doc->isOk() || !doc->okToPrint()) { -@@ -408,9 +412,8 @@ static void copyArray(PDF pdf, PdfDocume - Object obj1; - pdf_begin_array(pdf); - for (i = 0, l = array->getLength(); i < l; ++i) { -- array->getNF(i, &obj1); -+ obj1 = array->getNF(i); - copyObject(pdf, pdf_doc, &obj1); -- obj1.free(); - } - pdf_end_array(pdf); +@@ -361,9 +361,9 @@ void copyReal(PDF pdf, double d) + pdf->cave = true; } -@@ -422,9 +425,8 @@ static void copyDict(PDF pdf, PdfDocumen - pdf_begin_dict(pdf); - for (i = 0, l = dict->getLength(); i < l; ++i) { - copyName(pdf, dict->getKey(i)); -- dict->getValNF(i, &obj1); -+ obj1 = dict->getValNF(i); - copyObject(pdf, pdf_doc, &obj1); -- obj1.free(); - } - pdf_end_dict(pdf); + +-static void copyString(PDF pdf, GooString * string) ++static void copyString(PDF pdf, const 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; } -@@ -470,10 +472,10 @@ static void copyObject(PDF pdf, PdfDocum - break; - */ - case objString: -- copyString(pdf, obj->getString()); -+ copyString(pdf, const_cast<GooString*>(obj->getString())); - break; - case objName: -- copyName(pdf, obj->getName()); -+ copyName(pdf, const_cast<char*>(obj->getName())); - break; - case objNull: - pdf_add_null(pdf); -@@ -510,13 +512,12 @@ static void writeRefs(PDF pdf, PdfDocume - PDFDoc *doc = pdf_doc->doc; - xref = doc->getXRef(); - for (r = pdf_doc->inObjList; r != NULL;) { -- xref->fetch(r->ref.num, r->ref.gen, &obj1); -+ obj1 = xref->fetch(r->ref.num, r->ref.gen); - if (obj1.isStream()) - pdf_begin_obj(pdf, r->num, OBJSTM_NEVER); - else - pdf_begin_obj(pdf, r->num, 2); - copyObject(pdf, pdf_doc, &obj1); -- obj1.free(); - pdf_end_obj(pdf); - n = r->next; - delete r; -@@ -740,7 +741,7 @@ void write_epdf(PDF pdf, image_dict * id - catalog = doc->getCatalog(); - page = catalog->getPage(img_pagenum(idict)); - pageref = catalog->getPageRef(img_pagenum(idict)); -- doc->getXRef()->fetch(pageref->num, pageref->gen, &pageobj); -+ pageobj = doc->getXRef()->fetch(pageref->num, pageref->gen); - pageDict = pageobj.getDict(); - /* write the Page header */ - pdf_begin_obj(pdf, img_objnum(idict), OBJSTM_NEVER); -@@ -757,12 +758,11 @@ void write_epdf(PDF pdf, image_dict * id - pdf_dict_add_int(pdf, "PTEX.PageNumber", (int) img_pagenum(idict)); - } - if ((suppress_optional_info & 8) == 0) { -- doc->getDocInfoNF(&obj1); -+ obj1 = doc->getDocInfoNF(); - if (obj1.isRef()) { - /* the info dict must be indirect (PDF Ref p. 61) */ - pdf_dict_add_ref(pdf, "PTEX.InfoDict", addInObj(pdf, pdf_doc, obj1.getRef())); - } -- obj1.free(); - } - if (img_is_bbox(idict)) { - bbox[0] = sp2bp(img_bbox(idict)[0]); -@@ -788,19 +788,17 @@ void write_epdf(PDF pdf, image_dict * id - Now all relevant parts of the Page dictionary are copied. Metadata validity - check is needed(as a stream it must be indirect). - */ -- pageDict->lookupNF("Metadata", &obj1); -+ obj1 = pageDict->lookupNF("Metadata"); - if (!obj1.isNull() && !obj1.isRef()) - formatted_warning("pdf inclusion","/Metadata must be indirect object"); -- obj1.free(); - /* copy selected items in Page dictionary */ - for (i = 0; pagedictkeys[i] != NULL; i++) { -- pageDict->lookupNF(pagedictkeys[i], &obj1); -+ obj1 = pageDict->lookupNF(pagedictkeys[i]); - if (!obj1.isNull()) { - pdf_add_name(pdf, pagedictkeys[i]); - /* preserves indirection */ - copyObject(pdf, pdf_doc, &obj1); - } -- obj1.free(); - } - /* - If there are no Resources in the Page dict of the embedded page, -@@ -808,32 +806,28 @@ void write_epdf(PDF pdf, image_dict * id - PDF file, climbing up the tree until the Resources are found. - (This fixes a problem with Scribus 1.3.3.14.) - */ -- pageDict->lookupNF("Resources", &obj1); -+ obj1 = pageDict->lookupNF("Resources"); - if (obj1.isNull()) { - op1 = &pagesobj1; - op2 = &pagesobj2; -- pageDict->lookup("Parent", op1); -+ *op1 = pageDict->lookup("Parent"); - while (op1->isDict()) { -- obj1.free(); -- op1->dictLookupNF("Resources", &obj1); -+ obj1 = op1->dictLookupNF("Resources"); - if (!obj1.isNull()) { - pdf_add_name(pdf, "Resources"); - copyObject(pdf, pdf_doc, &obj1); - break; - } -- op1->dictLookup("Parent", op2); -+ *op2 = op1->dictLookup("Parent"); - optmp = op1; - op1 = op2; - op2 = optmp; -- op2->free(); - }; - if (!op1->isDict()) - formatted_warning("pdf inclusion","Page /Resources missing"); -- op1->free(); - } -- obj1.free(); - /* Write the Page contents. */ -- page->getContents(&contents); -+ contents = page->getContents(); - if (contents.isStream()) { - /* - Variant A: get stream and recompress under control of \pdfcompresslevel -@@ -844,27 +838,23 @@ void write_epdf(PDF pdf, image_dict * id - Variant B: copy stream without recompressing - */ -- contents.streamGetDict()->lookup("F", &obj1); -+ obj1 = contents.streamGetDict()->lookup("F"); - if (!obj1.isNull()) { - normal_error("pdf inclusion","unsupported external stream"); - } -- obj1.free(); -- contents.streamGetDict()->lookup("Length", &obj1); -+ obj1 = contents.streamGetDict()->lookup("Length"); - pdf_add_name(pdf, "Length"); - copyObject(pdf, pdf_doc, &obj1); -- obj1.free(); -- contents.streamGetDict()->lookup("Filter", &obj1); -+ obj1 = contents.streamGetDict()->lookup("Filter"); - if (!obj1.isNull()) { - pdf_add_name(pdf, "Filter"); - copyObject(pdf, pdf_doc, &obj1); -- obj1.free(); -- contents.streamGetDict()->lookup("DecodeParms", &obj1); -+ obj1 = contents.streamGetDict()->lookup("DecodeParms"); - if (!obj1.isNull()) { - pdf_add_name(pdf, "DecodeParms"); - copyObject(pdf, pdf_doc, &obj1); - } - } -- obj1.free(); - pdf_end_dict(pdf); - pdf_begin_stream(pdf); - copyStreamStream(pdf, contents.getStream()->getUndecodedStream()); -@@ -875,8 +865,8 @@ void write_epdf(PDF pdf, image_dict * id - pdf_end_dict(pdf); - pdf_begin_stream(pdf); - for (i = 0, l = contents.arrayGetLength(); i < l; ++i) { -- copyStreamStream(pdf, (contents.arrayGet(i, &obj1))->getStream()); -- obj1.free(); -+ obj1 = contents.arrayGet(i); -+ copyStreamStream(pdf, obj1.getStream()); - if (i < (l - 1)) { - /* - Put a space between streams to be on the safe side (streams -@@ -897,8 +887,6 @@ void write_epdf(PDF pdf, image_dict * id - } - /* write out all indirect objects */ - writeRefs(pdf, pdf_doc); -- contents.free(); -- pageobj.free(); - /* - unrefPdfDocument() must come after contents.free() and pageobj.free()! - TH: The next line makes repeated pdf inclusion unacceptably slow +-static void copyName(PDF pdf, char *s) ++static void copyName(PDF pdf, const char *s) + { + pdf_out(pdf, '/'); + for (; *s != 0; s++) { diff --git a/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lepdflib.cc b/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lepdflib.cc index 87608e3e464..8b7b585e9cf 100644 --- a/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lepdflib.cc +++ b/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lepdflib.cc @@ -1,457 +1,24 @@ -$NetBSD: patch-texk_web2c_luatexdir_lua_lepdflib.cc,v 1.4 2018/04/29 20:57:26 ryoon Exp $ +$NetBSD: patch-texk_web2c_luatexdir_lua_lepdflib.cc,v 1.5 2018/05/13 12:46:27 markd Exp $ -Add support for newer poppler's from ArchLinux +Build with poppler 0.64 ---- texk/web2c/luatexdir/lua/lepdflib.cc.orig 2017-03-11 01:04:06.000000000 +0000 +--- texk/web2c/luatexdir/lua/lepdflib.cc.orig 2018-02-14 14:44:38.000000000 +0000 +++ texk/web2c/luatexdir/lua/lepdflib.cc -@@ -521,7 +521,7 @@ static int m_##in##_##function(lua_State +@@ -669,7 +669,7 @@ static int m_##in##_##function(lua_State + #define m_poppler_get_GOOSTRING(in, function) \ + static int m_##in##_##function(lua_State * L) \ + { \ +- GooString *gs; \ ++ const GooString *gs; \ + udstruct *uin; \ 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 = const_cast<GooString*>(((in *) uin->d)->function()); \ - if (gs != NULL) \ - lua_pushlstring(L, gs->getCString(), gs->getLength()); \ - else \ -@@ -538,7 +538,7 @@ static int m_##in##_##function(lua_State - pdfdoc_changed_error(L); \ - uout = new_Object_userdata(L); \ - uout->d = new Object(); \ -- ((in *) uin->d)->function((Object *) uout->d); \ -+ *((Object *)uout->d) = ((in *) uin->d)->function(); \ - uout->atype = ALLOC_LEPDF; \ - uout->pc = uin->pc; \ - uout->pd = uin->pd; \ -@@ -668,13 +668,11 @@ static const struct luaL_Reg Annots_m[] +@@ -1807,7 +1807,7 @@ static int m_Object_getNum(lua_State * L - static int m_Array_incRef(lua_State * L) + static int m_Object_getString(lua_State * L) { -- int i; +- GooString *gs; ++ const GooString *gs; udstruct *uin; - uin = (udstruct *) luaL_checkudata(L, 1, M_Array); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- i = ((Array *) uin->d)->incRef(); -- lua_pushinteger(L, i); -+ lua_pushinteger(L, 1); - return 1; - } - -@@ -685,8 +683,7 @@ static int m_Array_decRef(lua_State * L) - uin = (udstruct *) luaL_checkudata(L, 1, M_Array); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- i = ((Array *) uin->d)->decRef(); -- lua_pushinteger(L, i); -+ lua_pushinteger(L, 1); - return 1; - } - -@@ -702,7 +699,7 @@ static int m_Array_add(lua_State * L) - if ((uin->pd != NULL && uin->pd->pc != uin->pc) - || (uobj->pd != NULL && uobj->pd->pc != uobj->pc)) - pdfdoc_changed_error(L); -- ((Array *) uin->d)->add(((Object *) uobj->d)); -+ ((Array *) uin->d)->add(std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -718,7 +715,7 @@ static int m_Array_get(lua_State * L) - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Array *) uin->d)->get(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Array *) uin->d)->get(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -739,7 +736,7 @@ static int m_Array_getNF(lua_State * L) - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Array *) uin->d)->getNF(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Array *) uin->d)->getNF(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -953,25 +950,21 @@ static const struct luaL_Reg Catalog_m[] - - static int m_Dict_incRef(lua_State * L) - { -- int i; - udstruct *uin; - uin = (udstruct *) luaL_checkudata(L, 1, M_Dict); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- i = ((Dict *) uin->d)->incRef(); -- lua_pushinteger(L, i); -+ lua_pushinteger(L, 1); - return 1; - } - - static int m_Dict_decRef(lua_State * L) - { -- int i; - udstruct *uin; - uin = (udstruct *) luaL_checkudata(L, 1, M_Dict); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- i = ((Dict *) uin->d)->decRef(); -- lua_pushinteger(L, i); -+ lua_pushinteger(L, 1); - return 1; - } - -@@ -986,7 +979,7 @@ static int m_Dict_add(lua_State * L) - pdfdoc_changed_error(L); - s = copyString(luaL_checkstring(L, 2)); - uobj = (udstruct *) luaL_checkudata(L, 3, M_Object); -- ((Dict *) uin->d)->add(s, ((Object *) uobj->d)); -+ ((Dict *) uin->d)->add(s, std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -999,7 +992,7 @@ static int m_Dict_set(lua_State * L) - pdfdoc_changed_error(L); - s = luaL_checkstring(L, 2); - uobj = (udstruct *) luaL_checkudata(L, 3, M_Object); -- ((Dict *) uin->d)->set(s, ((Object *) uobj->d)); -+ ((Dict *) uin->d)->set(s, std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -1027,7 +1020,7 @@ static int m_Dict_lookup(lua_State * L) - s = luaL_checkstring(L, 2); - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Dict *) uin->d)->lookup(s, (Object *) uout->d); -+ *((Object *) uout->d) = ((Dict *) uin->d)->lookup(s); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1044,7 +1037,7 @@ static int m_Dict_lookupNF(lua_State * L - s = luaL_checkstring(L, 2); - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Dict *) uin->d)->lookupNF(s, (Object *) uout->d); -+ *((Object *) uout->d) = ((Dict *) uin->d)->lookupNF(s); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1096,7 +1089,7 @@ static int m_Dict_getVal(lua_State * L) - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Dict *) uin->d)->getVal(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Dict *) uin->d)->getVal(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1117,7 +1110,7 @@ static int m_Dict_getValNF(lua_State * L - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Dict *) uin->d)->getValNF(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Dict *) uin->d)->getValNF(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1381,9 +1374,9 @@ static int m_Object_initBool(lua_State * - pdfdoc_changed_error(L); - luaL_checktype(L, 2, LUA_TBOOLEAN); - if (lua_toboolean(L, 2) != 0) -- ((Object *) uin->d)->initBool(gTrue); -+ *((Object *) uin->d) = Object(gTrue); - else -- ((Object *) uin->d)->initBool(gFalse); -+ *((Object *) uin->d) = Object(gFalse); - return 0; - } - -@@ -1395,7 +1388,7 @@ static int m_Object_initInt(lua_State * - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - i = luaL_checkint(L, 2); -- ((Object *) uin->d)->initInt(i); -+ *((Object *) uin->d) = Object(i); - return 0; - } - -@@ -1407,7 +1400,7 @@ static int m_Object_initReal(lua_State * - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - d = luaL_checknumber(L, 2); -- ((Object *) uin->d)->initReal(d); -+ *((Object *) uin->d) = Object(d); - return 0; - } - -@@ -1422,7 +1415,7 @@ static int m_Object_initString(lua_State - pdfdoc_changed_error(L); - s = luaL_checklstring(L, 2, &len); - gs = new GooString(s, len); -- ((Object *) uin->d)->initString(gs); -+ *((Object *) uin->d) = Object(gs); - return 0; - } - -@@ -1434,7 +1427,7 @@ static int m_Object_initName(lua_State * - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - s = luaL_checkstring(L, 2); -- ((Object *) uin->d)->initName(s); -+ *((Object *) uin->d) = Object(objName, s); - return 0; - } - -@@ -1444,13 +1437,14 @@ static int m_Object_initNull(lua_State * uin = (udstruct *) luaL_checkudata(L, 1, M_Object); if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initNull(); -+ *((Object *) uin->d) = Object(objNull); - return 0; - } - - static int m_Object_initArray(lua_State * L) - { - udstruct *uin, *uxref; -+ Array *a; - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - uxref = (udstruct *) luaL_checkudata(L, 2, M_XRef); - if (uin->pd != NULL && uxref->pd != NULL && uin->pd != uxref->pd) -@@ -1458,7 +1452,8 @@ static int m_Object_initArray(lua_State - if ((uin->pd != NULL && uin->pd->pc != uin->pc) - || (uxref->pd != NULL && uxref->pd->pc != uxref->pc)) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initArray((XRef *) uxref->d); -+ a = new Array((XRef *) uxref->d); -+ *((Object *) uin->d) = Object(a); - return 0; - } - -@@ -1469,6 +1464,7 @@ static int m_Object_initArray(lua_State - static int m_Object_initDict(lua_State * L) - { - udstruct *uin, *uxref; -+ Dict *d; - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - uxref = (udstruct *) luaL_checkudata(L, 2, M_XRef); - if (uin->pd != NULL && uxref->pd != NULL && uin->pd != uxref->pd) -@@ -1476,7 +1472,8 @@ static int m_Object_initDict(lua_State * - if ((uin->pd != NULL && uin->pd->pc != uin->pc) - || (uxref->pd != NULL && uxref->pd->pc != uxref->pc)) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initDict((XRef *) uxref->d); -+ d = new Dict((XRef *) uxref->d); -+ *((Object *) uin->d) = Object(d); - return 0; - } - -@@ -1490,7 +1487,7 @@ static int m_Object_initStream(lua_State - if ((uin->pd != NULL && uin->pd->pc != uin->pc) - || (ustream->pd != NULL && ustream->pd->pc != ustream->pc)) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initStream((Stream *) ustream->d); -+ *((Object *) uin->d) = Object((Stream *) ustream->d); - return 0; - } - -@@ -1503,7 +1500,7 @@ static int m_Object_initRef(lua_State * - pdfdoc_changed_error(L); - num = luaL_checkint(L, 2); - gen = luaL_checkint(L, 3); -- ((Object *) uin->d)->initRef(num, gen); -+ *((Object *) uin->d) = Object(num, gen); - return 0; - } - -@@ -1515,7 +1512,7 @@ static int m_Object_initCmd(lua_State * - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - s = luaL_checkstring(L, 2); -- ((Object *) uin->d)->initCmd(CHARP_CAST s); -+ *((Object *) uin->d) = Object(objCmd, CHARP_CAST s); - return 0; - } - -@@ -1525,7 +1522,7 @@ static int m_Object_initError(lua_State - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initError(); -+ *((Object *) uin->d) = Object(objError); - return 0; - } - -@@ -1535,7 +1532,7 @@ static int m_Object_initEOF(lua_State * - uin = (udstruct *) luaL_checkudata(L, 1, M_Object); - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); -- ((Object *) uin->d)->initEOF(); -+ *((Object *) uin->d) = Object(objEOF); - return 0; - } - -@@ -1551,7 +1548,7 @@ static int m_Object_fetch(lua_State * L) - pdfdoc_changed_error(L); - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->fetch((XRef *) uxref->d, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->fetch((XRef *) uxref->d); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1659,7 +1656,7 @@ static int m_Object_getString(lua_State - if (uin->pd != NULL && uin->pd->pc != uin->pc) - pdfdoc_changed_error(L); - if (((Object *) uin->d)->isString()) { -- gs = ((Object *) uin->d)->getString(); -+ gs = const_cast<GooString*>(((Object *) uin->d)->getString()); - lua_pushlstring(L, gs->getCString(), gs->getLength()); - } else - lua_pushnil(L); -@@ -1816,7 +1813,7 @@ static int m_Object_arrayAdd(lua_State * - pdfdoc_changed_error(L); - if (!((Object *) uin->d)->isArray()) - luaL_error(L, "Object is not an Array"); -- ((Object *) uin->d)->arrayAdd((Object *) uobj->d); -+ ((Object *) uin->d)->arrayAdd(std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -1833,7 +1830,7 @@ static int m_Object_arrayGet(lua_State * - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->arrayGet(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->arrayGet(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1857,7 +1854,7 @@ static int m_Object_arrayGetNF(lua_State - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->arrayGetNF(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->arrayGetNF(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1897,7 +1894,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), (Object *) uobj->d); -+ ((Object *) uin->d)->dictAdd(copyString(s), std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -1915,7 +1912,7 @@ static int m_Object_dictSet(lua_State * - pdfdoc_changed_error(L); - if (!((Object *) uin->d)->isDict()) - luaL_error(L, "Object is not a Dict"); -- ((Object *) uin->d)->dictSet(s, (Object *) uobj->d); -+ ((Object *) uin->d)->dictSet(s, std::move(*((Object *) uobj->d))); - return 0; - } - -@@ -1930,7 +1927,7 @@ static int m_Object_dictLookup(lua_State - if (((Object *) uin->d)->isDict()) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->dictLookup(s, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->dictLookup(s); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1950,7 +1947,7 @@ static int m_Object_dictLookupNF(lua_Sta - if (((Object *) uin->d)->isDict()) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->dictLookupNF(s, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->dictLookupNF(s); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -1991,7 +1988,7 @@ static int m_Object_dictGetVal(lua_State - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->dictGetVal(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->dictGetVal(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -2015,7 +2012,7 @@ static int m_Object_dictGetValNF(lua_Sta - if (i > 0 && i <= len) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((Object *) uin->d)->dictGetValNF(i - 1, (Object *) uout->d); -+ *((Object *) uout->d) = ((Object *) uin->d)->dictGetValNF(i - 1); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -2243,7 +2240,7 @@ m_poppler_get_poppler(Page, Stream, getM - m_poppler_get_poppler(Page, Dict, getPieceInfo); - m_poppler_get_poppler(Page, Dict, getSeparationInfo); - m_poppler_get_poppler(Page, Dict, getResourceDict); --m_poppler_get_OBJECT(Page, getAnnots); -+m_poppler_get_OBJECT(Page, getAnnotsObject); - - m_poppler_get_OBJECT(Page, getContents); - -@@ -2270,7 +2267,7 @@ static const struct luaL_Reg Page_m[] = - {"getPieceInfo", m_Page_getPieceInfo}, - {"getSeparationInfo", m_Page_getSeparationInfo}, - {"getResourceDict", m_Page_getResourceDict}, -- {"getAnnots", m_Page_getAnnots}, -+ {"getAnnots", m_Page_getAnnotsObject}, - {"getContents", m_Page_getContents}, - {"__tostring", m_Page__tostring}, - {NULL, NULL} // sentinel -@@ -2520,7 +2517,7 @@ static int m_PDFDoc_getDocInfo(lua_State - if (((PdfDocument *) uin->d)->doc->getXRef()->isOk()) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((PdfDocument *) uin->d)->doc->getDocInfo((Object *) uout->d); -+ *((Object *) uout->d) = ((PdfDocument *) uin->d)->doc->getDocInfo(); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -2538,7 +2535,7 @@ static int m_PDFDoc_getDocInfoNF(lua_Sta - if (((PdfDocument *) uin->d)->doc->getXRef()->isOk()) { - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((PdfDocument *) uin->d)->doc->getDocInfoNF((Object *) uout->d); -+ *((Object *) uout->d) = ((PdfDocument *) uin->d)->doc->getDocInfoNF(); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -2841,7 +2838,7 @@ static int m_Attribute_getValue(lua_Stat - uout = new_Object_userdata(L); - uout->d = new Object(); - origin = (Object *) (((Attribute *) uin->d)->getValue()); -- origin->copy ( ((Object *)uout->d) ); -+ *((Object *) uout->d) = origin->copy(); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -3320,7 +3317,7 @@ static int m_StructTreeRoot_findParentEl - parent = root->findParentElement(i-1); - if (parent != NULL) { - uout = new_StructElement_userdata(L); -- uout->d = new StructElement( *parent ); -+ uout->d = (StructElement *) parent; - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; -@@ -3370,7 +3367,7 @@ static int m_XRef_fetch(lua_State * L) - gen = luaL_checkint(L, 3); - uout = new_Object_userdata(L); - uout->d = new Object(); -- ((XRef *) uin->d)->fetch(num, gen, (Object *) uout->d); -+ *((Object *) uout->d) = ((XRef *) uin->d)->fetch(num, gen); - uout->atype = ALLOC_LEPDF; - uout->pc = uin->pc; - uout->pd = uin->pd; diff --git a/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc b/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc deleted file mode 100644 index a6db6e23595..00000000000 --- a/print/luatex/patches/patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-texk_web2c_luatexdir_lua_lpdfscannerlib.cc,v 1.1 2017/12/31 00:41:19 markd Exp $ - -Add support for newer poppler's from ArchLinux - ---- texk/web2c/luatexdir/lua/lpdfscannerlib.cc.orig 2016-11-25 18:09:15.000000000 +0000 -+++ texk/web2c/luatexdir/lua/lpdfscannerlib.cc -@@ -634,7 +634,7 @@ static int scanner_scan(lua_State * L) - int i; - for (i=0;i<count;i++) { - Object *val = new Object(); -- arrayref->get(i, val); -+ *val = arrayref->get(i); - if (val->isStream()) { - ObjectList *rover = self->_streams; - ObjectList *item = (ObjectList *)priv_xmalloc (sizeof(ObjectList)); diff --git a/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ctype.c b/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ctype.c deleted file mode 100644 index f845c4d210c..00000000000 --- a/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ctype.c +++ /dev/null @@ -1,16 +0,0 @@ -$NetBSD: patch-texk_web2c_luatexdir_luaffi_ctype.c,v 1.1 2017/12/31 00:36:04 markd Exp $ -gcc-7 fix - Dr. Werner Fink <werner@suse.de> - ---- texk/web2c/luatexdir/luaffi/ctype.c.orig 2017-02-10 01:03:59.000000000 +0000 -+++ texk/web2c/luatexdir/luaffi/ctype.c -@@ -245,6 +245,10 @@ void* to_cdata(lua_State* L, int idx, st - - lua_pop(L, 1); /* mt */ - cd = (struct cdata*) lua_touserdata(L, idx); -+ if (!cd) { -+ lua_pushnil(L); -+ return NULL; -+ } - *ct = cd->type; - lua_getuservalue(L, idx); - diff --git a/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ffi.h b/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ffi.h deleted file mode 100644 index e6363fe12ad..00000000000 --- a/print/luatex/patches/patch-texk_web2c_luatexdir_luaffi_ffi.h +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-texk_web2c_luatexdir_luaffi_ffi.h,v 1.1 2017/12/31 00:36:04 markd Exp $ -gcc-7 fix - Dr. Werner Fink <werner@suse.de> - ---- texk/web2c/luatexdir/luaffi/ffi.h.orig 2017-03-11 01:04:06.000000000 +0000 -+++ texk/web2c/luatexdir/luaffi/ffi.h -@@ -370,7 +370,7 @@ __declspec(align(16)) - #endif - struct cdata { - const struct ctype type --#ifdef __GNUC__ -+#if 0 /* def __GNUC__ */ - __attribute__ ((aligned(16))) - #endif - ; |