gdcm/gdcm-3.0.1-poppler-0.84.0.patch
2020-01-20 14:32:11 +01:00

54 lines
1.9 KiB
Diff

--- GDCM-3.0.1/Applications/Cxx/CMakeLists.txt
+++ GDCM-3.0.1/Applications/Cxx/CMakeLists.txt
@@ -72,6 +72,14 @@ if(GDCM_USE_SYSTEM_POPPLER)
if(LIBPOPPLER_GLOBALPARAMS_CSTOR_HAS_PARAM)
list(APPEND libpoppler_flags -DLIBPOPPLER_GLOBALPARAMS_CSTOR_HAS_PARAM)
endif()
+ if(NOT LIBPOPPLER_GLOBALPARAMS_CSTOR_HAS_PARAM)
+ CHECK_CXX_SOURCE_COMPILES(
+ "\#include <poppler/GlobalParams.h>\nint main() { globalParams = new GlobalParams(); return 0;}"
+ LIBPOPPLER_GLOBALPARAMS_IS_NOT_UNIQUE_PTR)
+ if(NOT LIBPOPPLER_GLOBALPARAMS_IS_NOT_UNIQUE_PTR)
+ list(APPEND libpoppler_flags -DLIBPOPPLER_GLOBALPARAMS_IS_UNIQUE_PTR)
+ endif()
+ endif()
CHECK_CXX_SOURCE_COMPILES(
"\#include <poppler/PDFDoc.h>\nint main() { PDFDoc d((GooString*)NULL,(GooString*)NULL,(GooString*)NULL); d.getPDFVersion(); return 0;}"
LIBPOPPLER_PDFDOC_HAS_PDFVERSION)
--- GDCM-3.0.1/Applications/Cxx/gdcminfo.cxx
+++ GDCM-3.0.1/Applications/Cxx/gdcminfo.cxx
@@ -510,11 +510,15 @@ static int ProcessOneFile( std::string c
std::string moddate;
UnicodeMap *uMap;
+#ifdef LIBPOPPLER_GLOBALPARAMS_IS_UNIQUE_PTR
+ globalParams = std::make_unique<GlobalParams>();
+#else
#ifdef LIBPOPPLER_GLOBALPARAMS_CSTOR_HAS_PARAM
globalParams = new GlobalParams(0);
#else
globalParams = new GlobalParams();
#endif
+#endif
uMap = globalParams->getTextEncoding();
Object info;
--- GDCM-3.0.1/Applications/Cxx/gdcmpdf.cxx
+++ GDCM-3.0.1/Applications/Cxx/gdcmpdf.cxx
@@ -336,11 +336,15 @@ int main (int argc, char *argv[])
UnicodeMap *uMap;
ownerPW = NULL;
userPW = NULL;
+#ifdef LIBPOPPLER_GLOBALPARAMS_IS_UNIQUE_PTR
+ globalParams = std::make_unique<GlobalParams>();
+#else
#ifdef LIBPOPPLER_GLOBALPARAMS_CSTOR_HAS_PARAM
globalParams = new GlobalParams(0);
#else
globalParams = new GlobalParams();
#endif
+#endif
uMap = globalParams->getTextEncoding();
//const char *filename = argv[1];