From 02a1e85ab17727544415d710fa781aa9aaf1a762 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= <vcunat@gmail.com>
Date: Thu, 26 Jun 2014 18:24:44 +0200
Subject: [PATCH] cmake, podofo: fix finding freetype-2.5

---
 pkgs/development/libraries/podofo/default.nix     | 15 +++++++++++++--
 .../tools/build-managers/cmake/default.nix        |  7 ++++++-
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/podofo/default.nix b/pkgs/development/libraries/podofo/default.nix
index d6b604367fb..b1464817a70 100644
--- a/pkgs/development/libraries/podofo/default.nix
+++ b/pkgs/development/libraries/podofo/default.nix
@@ -1,12 +1,14 @@
-{stdenv, fetchurl, cmake, zlib, freetype, libjpeg, libtiff, fontconfig,
-openssl, libpng, lua5}:
+{ stdenv, fetchurl, cmake, zlib, freetype, libjpeg, libtiff, fontconfig
+, openssl, libpng, lua5 }:
 
 stdenv.mkDerivation rec {
   name = "podofo-0.9.2";
+
   src = fetchurl {
     url = "mirror://sourceforge/podofo/${name}.tar.gz";
     sha256 = "1wx3s0718rmhdzdwyi8hgpf2s92sk3hijy8f4glrmnjpiihr2la6";
   };
+
   propagatedBuildInputs = [ zlib freetype libjpeg libtiff fontconfig openssl libpng ];
   nativeBuildInputs = [ cmake ];
   buildInputs = [ lua5 stdenv.gcc.libc ];
@@ -17,6 +19,15 @@ stdenv.mkDerivation rec {
       lua5.crossDrv stdenv.gccCross.libc ];
   };
 
+  # fix finding freetype-2.5
+  preConfigure = ''
+    substituteInPlace ./CMakeLists.txt \
+      --replace FREETYPE_INCLUDE_DIR FREETYPE_INCLUDE_DIRS \
+      --replace 'FIND_PACKAGE(FREETYPE' 'FIND_PACKAGE(Freetype'
+
+    rm ./cmake/modules/Find{FREETYPE,ZLIB,PkgConfig}.cmake
+  '';
+
   cmakeFlags = "-DPODOFO_BUILD_SHARED=ON -DPODOFO_BUILD_STATIC=OFF";
 
   meta = {
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 42277b22036..45dffe06676 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, replace, curl, expat, zlib, bzip2, libarchive
+{ stdenv, fetchurl, fetchpatch, replace, curl, expat, zlib, bzip2, libarchive
 , useNcurses ? false, ncurses, useQt4 ? false, qt4
 }:
 
@@ -24,6 +24,11 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   patches =
+    [(fetchpatch { # see http://www.cmake.org/Bug/view.php?id=13959
+      name = "FindFreetype-2.5.patch";
+      url = "http://www.cmake.org/Bug/file_download.php?file_id=4660&type=bug";
+      sha256 = "136z63ff83hnwd247cq4m8m8164pklzyl5i2csf5h6wd8p01pdkj";
+    })] ++
     # Don't search in non-Nix locations such as /usr, but do search in
     # Nixpkgs' Glibc. 
     optional (stdenv ? glibc) ./search-path.patch ++