summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2011-10-06 14:31:58 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2011-10-06 14:31:58 +0000
commit2117406b11792e5a361dc853c0656b63366c10a8 (patch)
treefd2933ce2ddbf0349e31bb4ad02af2db1ba4418a /Build/source/texk/web2c/luatexdir
parentadd36363c1ac31e2e51925e69275c4dbdf26401f (diff)
Allow to build luaTeX with (installed) poppler-0.18.0
git-svn-id: svn://tug.org/texlive/trunk@24218 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/luatexdir')
-rw-r--r--Build/source/texk/web2c/luatexdir/ChangeLog4
-rw-r--r--Build/source/texk/web2c/luatexdir/lua/lepdflib.cc28
2 files changed, 30 insertions, 2 deletions
diff --git a/Build/source/texk/web2c/luatexdir/ChangeLog b/Build/source/texk/web2c/luatexdir/ChangeLog
index 80099dff764..d2734279a52 100644
--- a/Build/source/texk/web2c/luatexdir/ChangeLog
+++ b/Build/source/texk/web2c/luatexdir/ChangeLog
@@ -1,3 +1,7 @@
+2011-10-06 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ * lua/lepdflib.cc: Test poppler 0.16.x / 0.17.x features.
+
2011-10-04 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/libluatex.am: Avoid to `clean' ../mplibdir/lmplib.c.
diff --git a/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc b/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
index 66b8731acbb..6cd09836d2c 100644
--- a/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
+++ b/Build/source/texk/web2c/luatexdir/lua/lepdflib.cc
@@ -89,8 +89,10 @@ new_poppler_userdata(AnnotBorder);
new_poppler_userdata(Annots);
new_poppler_userdata(Array);
new_poppler_userdata(Catalog);
-new_poppler_userdata(EmbFile);
new_poppler_userdata(Dict);
+#ifdef EMBFILE_IN_CATALOG_H
+new_poppler_userdata(EmbFile);
+#endif
//new_poppler_userdata(GooString);
new_poppler_userdata(LinkDest);
new_poppler_userdata(Links);
@@ -393,7 +395,11 @@ static int m_Annot__gc(lua_State * L)
printf("\n===== Annot GC ===== uin=<%p>\n", uin);
#endif
if (uin->atype == ALLOC_LEPDF)
+#ifdef HAVE_ANNOTDECREFCNT
+ ((Annot *) uin->d)->decRefCnt();
+#else
delete(Annot *) uin->d;
+#endif
return 0;
}
@@ -410,6 +416,8 @@ static const struct luaL_Reg Annot_m[] = {
//**********************************************************************
// AnnotBorderStyle
+#ifdef HAVE_ANNOTBORDERSTYLE
+
m_poppler_get_DOUBLE(AnnotBorderStyle, getWidth);
m_poppler__tostring(AnnotBorderStyle);
@@ -435,6 +443,8 @@ static const struct luaL_Reg AnnotBorderStyle_m[] = {
{NULL, NULL} // sentinel
};
+#endif
+
//**********************************************************************
// Annots
@@ -684,6 +694,8 @@ static int m_Catalog_findDest(lua_State * L)
m_poppler_get_poppler(Catalog, Object, getDests);
m_poppler_get_INT(Catalog, numEmbeddedFiles);
+#ifdef EMBFILE_IN_CATALOG_H
+
static int m_Catalog_embeddedFile(lua_State * L)
{
EmbFile *ef;
@@ -708,6 +720,8 @@ static int m_Catalog_embeddedFile(lua_State * L)
return 1;
}
+#endif
+
m_poppler_get_INT(Catalog, numJS);
static int m_Catalog_getJS(lua_State * L)
@@ -749,7 +763,9 @@ static const struct luaL_Reg Catalog_m[] = {
{"findDest", m_Catalog_findDest},
{"getDests", m_Catalog_getDests},
{"numEmbeddedFiles", m_Catalog_numEmbeddedFiles},
+#ifdef EMBFILE_IN_CATALOG_H
{"embeddedFile", m_Catalog_embeddedFile},
+#endif
{"numJS", m_Catalog_numJS},
{"getJS", m_Catalog_getJS},
{"getOutline", m_Catalog_getOutline},
@@ -761,6 +777,8 @@ static const struct luaL_Reg Catalog_m[] = {
//**********************************************************************
// EmbFile
+#ifdef EMBFILE_IN_CATALOG_H
+
m_poppler_get_GOOSTRING(EmbFile, name);
m_poppler_get_GOOSTRING(EmbFile, description);
m_poppler_get_INT(EmbFile, size);
@@ -801,6 +819,8 @@ static const struct luaL_Reg EmbFile_m[] = {
{NULL, NULL} // sentinel
};
+#endif
+
//**********************************************************************
// Dict
@@ -2683,12 +2703,16 @@ int luaopen_epdf(lua_State * L)
{
register_meta(Annot);
// TODO register_meta(AnnotBorder);
+#ifdef HAVE_ANNOTBORDERSTYLE
register_meta(AnnotBorderStyle);
+#endif
register_meta(Annots);
register_meta(Array);
register_meta(Catalog);
- register_meta(EmbFile);
register_meta(Dict);
+#ifdef EMBFILE_IN_CATALOG_H
+ register_meta(EmbFile);
+#endif
register_meta(GooString);
register_meta(LinkDest);
register_meta(Links);