Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 434316
Collapse All | Expand All

(-)org/configure.in (+15 lines)
Lines 2499-2504 Link Here
2499
HAVE_POPPLER=no
2499
HAVE_POPPLER=no
2500
POPPLER_HAS_OPTCONTENT=no
2500
POPPLER_HAS_OPTCONTENT=no
2501
POPPLER_BASE_STREAM_HAS_TWO_ARGS=no
2501
POPPLER_BASE_STREAM_HAS_TWO_ARGS=no
2502
POPPLER_0_20_OR_LATER=no
2502
2503
2503
AC_MSG_CHECKING([for poppler])
2504
AC_MSG_CHECKING([for poppler])
2504
2505
Lines 2558-2563 Link Here
2558
        if test -z "`${CXX} testpoppler.cpp -c ${POPPLER_INC} 2>&1`" ; then
2559
        if test -z "`${CXX} testpoppler.cpp -c ${POPPLER_INC} 2>&1`" ; then
2559
            POPPLER_BASE_STREAM_HAS_TWO_ARGS=yes
2560
            POPPLER_BASE_STREAM_HAS_TWO_ARGS=yes
2560
            AC_MSG_RESULT([yes])
2561
            AC_MSG_RESULT([yes])
2562
2563
            # And now we check if we have Poppler >= 0.20.0
2564
            AC_MSG_CHECKING([if we have Poppler >= 0.20.0])
2565
            rm -f testpoppler.*
2566
            echo '#include <poppler/Error.h>' > testpoppler.cpp
2567
            echo 'int main(int argc, char** argv) { setErrorCallback(0,0); return 0; }' >> testpoppler.cpp
2568
            if test -z "`${CXX} testpoppler.cpp -c ${POPPLER_INC} 2>&1`" ; then
2569
                POPPLER_0_20_OR_LATER=yes
2570
                AC_MSG_RESULT([yes])
2571
            else
2572
                AC_MSG_RESULT([no])
2573
            fi
2574
2561
        else
2575
        else
2562
            AC_MSG_RESULT([no])
2576
            AC_MSG_RESULT([no])
2563
        fi
2577
        fi
Lines 2573-2578 Link Here
2573
AC_SUBST(HAVE_POPPLER, $HAVE_POPPLER)
2587
AC_SUBST(HAVE_POPPLER, $HAVE_POPPLER)
2574
AC_SUBST(POPPLER_HAS_OPTCONTENT, $POPPLER_HAS_OPTCONTENT)
2588
AC_SUBST(POPPLER_HAS_OPTCONTENT, $POPPLER_HAS_OPTCONTENT)
2575
AC_SUBST(POPPLER_BASE_STREAM_HAS_TWO_ARGS, $POPPLER_BASE_STREAM_HAS_TWO_ARGS)
2589
AC_SUBST(POPPLER_BASE_STREAM_HAS_TWO_ARGS, $POPPLER_BASE_STREAM_HAS_TWO_ARGS)
2590
AC_SUBST(POPPLER_0_20_OR_LATER, $POPPLER_0_20_OR_LATER)
2576
AC_SUBST(POPPLER_INC, $POPPLER_INC)
2591
AC_SUBST(POPPLER_INC, $POPPLER_INC)
2577
2592
2578
dnl ---------------------------------------------------------------------------
2593
dnl ---------------------------------------------------------------------------
(-)org/frmts/pdf/GNUmakefile (+5 lines)
Lines 15-20 Link Here
15
15
16
default:	$(OBJ:.o=.$(OBJ_EXT))
16
default:	$(OBJ:.o=.$(OBJ_EXT))
17
17
18
ifeq ($(POPPLER_0_20_OR_LATER),yes)
19
CPPFLAGS +=  -DPOPPLER_0_20_OR_LATER
20
endif
21
22
18
clean:
23
clean:
19
	rm -f *.o $(O_OBJ)
24
	rm -f *.o $(O_OBJ)
20
25
(-)org/frmts/pdf/makefile.vc (-1 / +5 lines)
Lines 5-11 Link Here
5
5
6
!INCLUDE $(GDAL_ROOT)\nmake.opt
6
!INCLUDE $(GDAL_ROOT)\nmake.opt
7
7
8
EXTRAFLAGS = $(POPPLER_CFLAGS) $(POPPLER_HAS_OPTCONTENT_FLAGS) $(POPPLER_BASE_STREAM_HAS_TWO_ARGS_FLAGS)
8
EXTRAFLAGS = $(POPPLER_CFLAGS) $(POPPLER_HAS_OPTCONTENT_FLAGS) $(POPPLER_BASE_STREAM_HAS_TWO_ARGS_FLAGS) $(POPPLER_0_20_OR_LATER_FLAGS)
9
9
10
!IFDEF POPPLER_HAS_OPTCONTENT
10
!IFDEF POPPLER_HAS_OPTCONTENT
11
POPPLER_HAS_OPTCONTENT_FLAGS = -DPOPPLER_HAS_OPTCONTENT
11
POPPLER_HAS_OPTCONTENT_FLAGS = -DPOPPLER_HAS_OPTCONTENT
Lines 15-20 Link Here
15
POPPLER_BASE_STREAM_HAS_TWO_ARGS_FLAGS = -DPOPPLER_BASE_STREAM_HAS_TWO_ARGS
15
POPPLER_BASE_STREAM_HAS_TWO_ARGS_FLAGS = -DPOPPLER_BASE_STREAM_HAS_TWO_ARGS
16
!ENDIF
16
!ENDIF
17
17
18
!IFDEF POPPLER_0_20_OR_LATER
19
POPPLER_0_20_OR_LATER_FLAGS = -DPOPPLER_0_20_OR_LATER
20
!ENDIF
21
18
default:	$(OBJ)
22
default:	$(OBJ)
19
	xcopy /D  /Y *.obj ..\o
23
	xcopy /D  /Y *.obj ..\o
20
24
(-)org/frmts/pdf/pdfdataset.cpp (+24 lines)
Lines 348-354 Link Here
348
        SplashOutputDev *poSplashOut;
348
        SplashOutputDev *poSplashOut;
349
        poSplashOut = new SplashOutputDev(splashModeRGB8, 4, gFalse, sColor);
349
        poSplashOut = new SplashOutputDev(splashModeRGB8, 4, gFalse, sColor);
350
        PDFDoc* poDoc = poGDS->poDoc;
350
        PDFDoc* poDoc = poGDS->poDoc;
351
#ifdef POPPLER_0_20_OR_LATER
352
        poSplashOut->startDoc(poDoc);
353
#else
351
        poSplashOut->startDoc(poDoc->getXRef());
354
        poSplashOut->startDoc(poDoc->getXRef());
355
#endif
352
        double dfDPI = poGDS->dfDPI;
356
        double dfDPI = poGDS->dfDPI;
353
357
354
        /* EVIL: we modify a private member... */
358
        /* EVIL: we modify a private member... */
Lines 489-494 Link Here
489
/*                    PDFDatasetErrorFunction()                         */
493
/*                    PDFDatasetErrorFunction()                         */
490
/************************************************************************/
494
/************************************************************************/
491
495
496
#ifdef POPPLER_0_20_OR_LATER
497
static void PDFDatasetErrorFunction(void* userData, ErrorCategory eErrCatagory, int nPos, char *pszMsg)
498
{
499
    CPLString osError;
500
501
    if (nPos >= 0)
502
        osError.Printf("Pos = %d, ", nPos);
503
    osError += pszMsg;
504
505
    if (strcmp(osError.c_str(), "Incorrect password") == 0)
506
        return;
507
508
    CPLError(CE_Failure, CPLE_AppDefined, "%s", osError.c_str());
509
}
510
#else
492
static void PDFDatasetErrorFunction(int nPos, char *pszMsg, va_list args)
511
static void PDFDatasetErrorFunction(int nPos, char *pszMsg, va_list args)
493
{
512
{
494
    CPLString osError;
513
    CPLString osError;
Lines 502-507 Link Here
502
521
503
    CPLError(CE_Failure, CPLE_AppDefined, "%s", osError.c_str());
522
    CPLError(CE_Failure, CPLE_AppDefined, "%s", osError.c_str());
504
}
523
}
524
#endif
505
525
506
/************************************************************************/
526
/************************************************************************/
507
/*                                Open()                                */
527
/*                                Open()                                */
Lines 536-542 Link Here
536
    GooString* poUserPwd = NULL;
556
    GooString* poUserPwd = NULL;
537
557
538
    /* Set custom error handler for poppler errors */
558
    /* Set custom error handler for poppler errors */
559
#ifdef POPPLER_0_20_OR_LATER
560
    setErrorCallback(PDFDatasetErrorFunction, NULL);
561
#else
539
    setErrorFunction(PDFDatasetErrorFunction);
562
    setErrorFunction(PDFDatasetErrorFunction);
563
#endif
540
564
541
    PDFDoc* poDoc = NULL;
565
    PDFDoc* poDoc = NULL;
542
    ObjectAutoFree oObj;
566
    ObjectAutoFree oObj;
(-)org/GDALmake.opt.in (+1 lines)
Lines 364-369 Link Here
364
HAVE_POPPLER = @HAVE_POPPLER@
364
HAVE_POPPLER = @HAVE_POPPLER@
365
POPPLER_HAS_OPTCONTENT = @POPPLER_HAS_OPTCONTENT@
365
POPPLER_HAS_OPTCONTENT = @POPPLER_HAS_OPTCONTENT@
366
POPPLER_BASE_STREAM_HAS_TWO_ARGS = @POPPLER_BASE_STREAM_HAS_TWO_ARGS@
366
POPPLER_BASE_STREAM_HAS_TWO_ARGS = @POPPLER_BASE_STREAM_HAS_TWO_ARGS@
367
POPPLER_0_20_OR_LATER = @POPPLER_0_20_OR_LATER@
367
POPPLER_INC = @POPPLER_INC@
368
POPPLER_INC = @POPPLER_INC@
368
369
369
#
370
#
(-)org/nmake.opt (+2 lines)
Lines 419-428 Link Here
419
419
420
# Uncomment for PDF support
420
# Uncomment for PDF support
421
# Uncomment POPPLER_BASE_STREAM_HAS_TWO_ARGS = YES for Poppler >= 0.16.0
421
# Uncomment POPPLER_BASE_STREAM_HAS_TWO_ARGS = YES for Poppler >= 0.16.0
422
# Uncomment POPPLER_0_20_OR_LATER = YES for Poppler >= 0.20.0
422
#POPPLER_ENABLED = YES
423
#POPPLER_ENABLED = YES
423
#POPPLER_CFLAGS = -Ie:/kde/include -Ie:/kde/include/poppler
424
#POPPLER_CFLAGS = -Ie:/kde/include -Ie:/kde/include/poppler
424
#POPPLER_HAS_OPTCONTENT = YES
425
#POPPLER_HAS_OPTCONTENT = YES
425
#POPPLER_BASE_STREAM_HAS_TWO_ARGS = YES
426
#POPPLER_BASE_STREAM_HAS_TWO_ARGS = YES
427
#POPPLER_0_20_OR_LATER = YES
426
#POPPLER_LIBS = e:/kde/lib/poppler.lib e:/kde/lib/freetype.lib e:/kde/lib/liblcms-1.lib advapi32.lib gdi32.lib
428
#POPPLER_LIBS = e:/kde/lib/poppler.lib e:/kde/lib/freetype.lib e:/kde/lib/liblcms-1.lib advapi32.lib gdi32.lib
427
429
428
# Uncomment for LZMA TIFF support
430
# Uncomment for LZMA TIFF support

Return to bug 434316