summary refs log tree commit diff
path: root/pkgs/development/libraries/poppler
diff options
context:
space:
mode:
authorYury G. Kudryashov <urkud.urkud@gmail.com>2011-09-19 08:35:30 +0000
committerYury G. Kudryashov <urkud.urkud@gmail.com>2011-09-19 08:35:30 +0000
commit63959f2a5aa7a337b569ed8a3b6a0a236100b1f2 (patch)
treec0bf0f45e57309a36dcb48821d4d2e7562a078b5 /pkgs/development/libraries/poppler
parentde2105b74024f33cc09dda31f5085cd3ec03923c (diff)
downloadnixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar.gz
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar.bz2
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar.lz
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar.xz
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.tar.zst
nixlib-63959f2a5aa7a337b569ed8a3b6a0a236100b1f2.zip
Let poppler use ${POPPLER_DATADIR}
Also upgrade poppler-data

svn path=/nixpkgs/trunk/; revision=29342
Diffstat (limited to 'pkgs/development/libraries/poppler')
-rw-r--r--pkgs/development/libraries/poppler/datadir_env.patch65
-rw-r--r--pkgs/development/libraries/poppler/default.nix2
2 files changed, 13 insertions, 54 deletions
diff --git a/pkgs/development/libraries/poppler/datadir_env.patch b/pkgs/development/libraries/poppler/datadir_env.patch
index dfe024a5b233..fd111d713552 100644
--- a/pkgs/development/libraries/poppler/datadir_env.patch
+++ b/pkgs/development/libraries/poppler/datadir_env.patch
@@ -1,56 +1,13 @@
-diff -ur poppler-0.6.1/poppler/GlobalParams.cc poppler-0.6.1-patched/poppler/GlobalParams.cc
---- poppler-0.6.1/poppler/GlobalParams.cc	2007-09-17 20:37:58.000000000 +0200
-+++ poppler-0.6.1-patched/poppler/GlobalParams.cc	2007-11-06 16:11:55.995595933 +0100
-@@ -654,27 +654,39 @@
+diff --git a/poppler/GlobalParams.cc b/poppler/GlobalParams.cc
+index 2e11bb0..a277ab9 100644
+--- a/poppler/GlobalParams.cc
++++ b/poppler/GlobalParams.cc
+@@ -748,7 +748,7 @@ GlobalParams::GlobalParams(const char *customPopplerDataDir)
+ void GlobalParams::scanEncodingDirs() {
    GDir *dir;
    GDirEntry *entry;
- 
--  dir = new GDir(POPPLER_DATADIR "/nameToUnicode", gFalse);
-+  GooString *real_datadir = new GooString (getenv("POPPLER_DATADIR"));
-+  if (!real_datadir->getCString())
-+	  real_datadir->Set(POPPLER_DATADIR);
-+  GooString *dirname;
-+
-+  dirname = real_datadir->copy();
-+  dir = new GDir(dirname->append("/nameToUnicode")->getCString(), gFalse);
-   while (entry = dir->getNextEntry(), entry != NULL) {
-     parseNameToUnicode(entry->getFullPath());
-     delete entry;
-   }
-   delete dir;
-+  delete dirname;
- 
--  dir = new GDir(POPPLER_DATADIR "/cidToUnicode", gFalse);
-+  dirname = real_datadir->copy();
-+  dir = new GDir(dirname->append("/cidToUnicode")->getCString(), gFalse);
-   while (entry = dir->getNextEntry(), entry != NULL) {
-     addCIDToUnicode(entry->getName(), entry->getFullPath());
-     delete entry;
-   }
-   delete dir;
-+  delete dirname;
- 
--  dir = new GDir(POPPLER_DATADIR "/unicodeMap", gFalse);
-+  dirname = real_datadir->copy();
-+  dir = new GDir(dirname->append("/unicodeMap")->getCString(), gFalse);
-   while (entry = dir->getNextEntry(), entry != NULL) {
-     addUnicodeMap(entry->getName(), entry->getFullPath());
-     delete entry;
-   }
-   delete dir;
-+  delete dirname;
- 
-+  dirname = real_datadir->copy();
-   dir = new GDir(POPPLER_DATADIR "/cMap", gFalse);
-   while (entry = dir->getNextEntry(), entry != NULL) {
-     addCMapDir(entry->getName(), entry->getFullPath());
-@@ -682,6 +694,9 @@
-     delete entry;
-   }
-   delete dir;
-+  delete dirname;
-+
-+  delete real_datadir;
- }
- 
- void GlobalParams::parseNameToUnicode(GooString *name) {
+-  const char *dataRoot = popplerDataDir ? popplerDataDir : POPPLER_DATADIR;
++  const char *dataRoot = popplerDataDir ? popplerDataDir : ( getenv("POPPLER_DATADIR") ? getenv("POPPLER_DATADIR") : POPPLER_DATADIR );
+   
+   // allocate buffer large enough to append "/nameToUnicode"
+   size_t bufSize = strlen(dataRoot) + strlen("/nameToUnicode") + 1;
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index 3091c6497e54..bb19338cc885 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
 
   cmakeFlags = "-DENABLE_XPDF_HEADERS=ON -DENABLE_LIBCURL=ON -DENABLE_ZLIB=ON";
 
+  patches = [ ./datadir_env.patch ];
+
   # XXX: The Poppler/Qt4 test suite refers to non-existent PDF files
   # such as `../../../test/unittestcases/UseNone.pdf'.
   #doCheck = !qt4Support;