diff options
Diffstat (limited to 'community/gambas3')
-rw-r--r-- | community/gambas3/PKGBUILD | 15 | ||||
-rw-r--r-- | community/gambas3/poppler-0-20.patch | 106 |
2 files changed, 117 insertions, 4 deletions
diff --git a/community/gambas3/PKGBUILD b/community/gambas3/PKGBUILD index be9037be9..cf13c1a9b 100644 --- a/community/gambas3/PKGBUILD +++ b/community/gambas3/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 70015 2012-04-28 09:24:08Z allan $ +# $Id: PKGBUILD 71274 2012-05-26 07:54:52Z pschmitz $ # Maintainer: Laurent Carlier <lordheavym@gmail.com> pkgbase=gambas3 @@ -13,7 +13,7 @@ pkgname=('gambas3-runtime' 'gambas3-devel' 'gambas3-ide' 'gambas3-script' 'gamba 'gambas3-gb-report' 'gambas3-gb-sdl' 'gambas3-gb-sdl-sound' 'gambas3-gb-settings' 'gambas3-gb-signal' 'gambas3-gb-v4l' 'gambas3-gb-vb' 'gambas3-gb-xml' 'gambas3-gb-xml-rpc' 'gambas3-gb-xml-xslt' 'gambas3-gb-web') pkgver=3.1.1 -pkgrel=2 +pkgrel=3 pkgdesc="A free development environment based on a Basic interpreter." arch=('i686' 'x86_64') url="http://gambas.sourceforge.net/" @@ -27,14 +27,21 @@ makedepends=('intltool' 'mysql' 'postgresql' 'libffi' 'bzip2' 'glib2' 'v4l-utils 'gsl') options=('!emptydirs' '!makeflags') source=("http://downloads.sourceforge.net/gambas/${pkgbase}-${pkgver}.tar.bz2" - 'gambas3-script.install' 'gambas3-runtime.install') + 'gambas3-script.install' 'gambas3-runtime.install' + 'poppler-0-20.patch') md5sums=('bdf387f435d7aeedb7efa488ea1a5d62' 'b284be39d147ec799f1116a6abc068b4' - 'b5cc403990f31b8ea1c5cf37366d3d29') + 'b5cc403990f31b8ea1c5cf37366d3d29' + '39d2ae1e2096a29df7857fce083eafaf') build() { cd ${srcdir}/${pkgbase}-${pkgver} + # fix building with poppler-0.20.x (merged upstream) + cd gb.pdf + patch -Np1 -i ../../poppler-0-20.patch + cd .. + ./reconf-all ./configure --prefix=/usr -C diff --git a/community/gambas3/poppler-0-20.patch b/community/gambas3/poppler-0-20.patch new file mode 100644 index 000000000..3b0e4612a --- /dev/null +++ b/community/gambas3/poppler-0-20.patch @@ -0,0 +1,106 @@ +diff -ur gb.pdf/configure.ac gb.pdf.fixed/configure.ac +--- gb.pdf/configure.ac 2012-05-14 08:55:02.448921378 +0200 ++++ gb.pdf.fixed/configure.ac 2012-05-14 08:52:19.098596499 +0200 +@@ -24,6 +24,8 @@ + AC_DEFINE_UNQUOTED(POPPLER_VERSION_0_11_3, $((1-$?)), Poppler version >= 0.11.3) + pkg-config --atleast-version=0.17.0 poppler + AC_DEFINE_UNQUOTED(POPPLER_VERSION_0_17, $((1-$?)), Poppler version >= 0.17) ++ pkg-config --atleast-version=0.20.0 poppler ++ AC_DEFINE_UNQUOTED(POPPLER_VERSION_0_20, $((1-$?)), Poppler version >= 0.20) + fi + + AC_OUTPUT( \ +diff -ur gb.pdf/src/CPdfDocument.cpp gb.pdf.fixed/src/CPdfDocument.cpp +--- gb.pdf/src/CPdfDocument.cpp 2012-05-14 08:55:02.388922483 +0200 ++++ gb.pdf.fixed/src/CPdfDocument.cpp 2012-05-15 09:25:45.168457227 +0200 +@@ -449,9 +449,13 @@ + + white[0] = 0xFF; white[1] = 0xFF; white[2] = 0xFF; + THIS->dev=new SplashOutputDev(splashModeRGB8, 3, gFalse, white); +- +- THIS->dev->startDoc(THIS->doc->getXRef ()); + ++ #if POPPLER_VERSION_0_20 ++ THIS->dev->startDoc(THIS->doc); ++ #else ++ THIS->dev->startDoc(THIS->doc->getXRef ()); ++ #endif ++ + outline=THIS->doc->getOutline(); + if (outline) THIS->index=outline->getItems(); + +@@ -875,6 +879,14 @@ + + if ( (w<0) || (h<0) ) return NULL; + ++ #if POPPLER_VERSION_0_20 ++ THIS->page->displaySlice(THIS->dev,72.0*scale,72.0*scale, ++ rotation, ++ gFalse, ++ gTrue, ++ x,y,w,h, ++ gFalse); ++ #else + THIS->page->displaySlice(THIS->dev,72.0*scale,72.0*scale, + rotation, + gFalse, +@@ -882,7 +894,8 @@ + x,y,w,h, + gFalse, + THIS->doc->getCatalog ()); +- ++ #endif ++ + map=THIS->dev->getBitmap(); + + data=(uint32_t*)map->getDataPtr(); +@@ -940,9 +953,14 @@ + w = VARGOPT(W, (int32_t)THIS->page->getMediaWidth()); + h = VARGOPT(H, (int32_t)THIS->page->getMediaHeight()); + ++ #if POPPLER_VERSION_0_20 ++ dev = new TextOutputDev (NULL, gTrue, 0, gFalse, gFalse); ++ gfx = THIS->page->createGfx(dev,72.0,72.0,0,gFalse,gTrue,-1, -1, -1, -1, gFalse, NULL, NULL); ++ #else + dev = new TextOutputDev (NULL, gTrue, gFalse, gFalse); + gfx = THIS->page->createGfx(dev,72.0,72.0,0,gFalse,gTrue,-1, -1, -1, -1, gFalse,THIS->doc->getCatalog (),NULL, NULL, NULL, NULL); +- ++ #endif ++ + THIS->page->display(gfx); + dev->endPage(); + +@@ -970,7 +988,9 @@ + + void aux_fill_links(void *_object) + { +- #if POPPLER_VERSION_0_17 ++ #if POPPLER_VERSION_0_20 ++ THIS->links = new Links (THIS->page->getAnnots ()); ++ #elif POPPLER_VERSION_0_17 + THIS->links = new Links (THIS->page->getAnnots (THIS->doc->getCatalog())); + #else + Object obj; +@@ -1152,13 +1172,22 @@ + + if (!MISSING(Sensitive)) sensitive=VARG(Sensitive); + ++ #if POPPLER_VERSION_0_20 ++ textdev = new TextOutputDev (NULL, true, 0, false, false); ++ THIS->page->display (textdev, 72, 72, 0, false, false, false); ++ #else + textdev = new TextOutputDev (NULL, true, false, false); + THIS->page->display (textdev, 72, 72, 0, false, false, false, THIS->doc->getCatalog()); ++ #endif + + if (THIS->Found) { GB.FreeArray(POINTER(&THIS->Found)); THIS->Found=NULL; } + + count = 0; ++ #if POPPLER_VERSION_0_20 ++ while (textdev->findText (block,nlen,gFalse,gTrue,gTrue,gFalse,sensitive,gFalse,gFalse,&x0,&y0,&x1,&y1)) ++ #else + while (textdev->findText (block,nlen,gFalse,gTrue,gTrue,gFalse,sensitive,gFalse,&x0,&y0,&x1,&y1)) ++ #endif + { + if (!THIS->Found) + GB.NewArray(POINTER(&THIS->Found),sizeof(CPDFFIND),1); |