cmake: Fix freetype detection
authorMartin Jansa <martin.jansa@gmail.com>
Sun, 12 Jan 2014 17:33:11 +0000 (18:33 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 28 Jan 2014 00:52:32 +0000 (00:52 +0000)
* since last freetype upgrade cmake cannot detect it
* e.g. webkit-efl requires freetype and is failing because of this

(From OE-Core rev: 0cd58eb1ca29bdc53f623aba1f761b97cfe31fb4)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/cmake/cmake.inc
meta/recipes-devtools/cmake/cmake/cmake-2.8.11.2-FindFreetype.patch [new file with mode: 0644]

index 69f4fe2..f76f68b 100644 (file)
@@ -16,6 +16,7 @@ SRC_URI = "http://www.cmake.org/files/v${CMAKE_MAJOR_VERSION}/cmake-${PV}.tar.gz
            file://aarch64-cmake.patch \
            file://aarch64-kwsys.patch \
            file://qt4-fail-silent.patch \
+           file://cmake-2.8.11.2-FindFreetype.patch \
            "
 
 inherit autotools
diff --git a/meta/recipes-devtools/cmake/cmake/cmake-2.8.11.2-FindFreetype.patch b/meta/recipes-devtools/cmake/cmake/cmake-2.8.11.2-FindFreetype.patch
new file mode 100644 (file)
index 0000000..1b523c0
--- /dev/null
@@ -0,0 +1,47 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Sun Dec  8 13:38:06 UTC 2013
+Subject: fix check for freetype-2.5.1
+
+Upstream-Status: Submitted http://www.cmake.org/Bug/view.php?id=14601
+
+Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
+
+--- old/Modules/FindFreetype.cmake
++++ new/Modules/FindFreetype.cmake
+@@ -64,6 +64,19 @@
+   PATH_SUFFIXES include/freetype2 include
+ )
++if(NOT FREETYPE_INCLUDE_DIR_freetype2)
++  find_path(FREETYPE_INCLUDE_DIR_freetype2 config/ftheader.h
++    HINTS
++      ENV FREETYPE_DIR
++    PATHS
++      /usr/X11R6
++      /usr/local/X11R6
++      /usr/local/X11
++      /usr/freeware
++    PATH_SUFFIXES include/freetype2 include
++  )
++endif()
++
+ find_library(FREETYPE_LIBRARY
+   NAMES freetype libfreetype freetype219
+   HINTS
+@@ -82,8 +95,14 @@
+ endif()
+ set(FREETYPE_LIBRARIES "${FREETYPE_LIBRARY}")
+-if(FREETYPE_INCLUDE_DIR_freetype2 AND EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
+-    file(STRINGS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h" freetype_version_str
++if(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
++  set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype/freetype.h")
++elseif(EXISTS "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
++  set(FREETYPE_H "${FREETYPE_INCLUDE_DIR_freetype2}/freetype.h")
++endif()
++
++if(FREETYPE_INCLUDE_DIR_freetype2 AND FREETYPE_H)
++    file(STRINGS "${FREETYPE_H}" freetype_version_str
+          REGEX "^#[\t ]*define[\t ]+FREETYPE_(MAJOR|MINOR|PATCH)[\t ]+[0-9]+$")
+     unset(FREETYPE_VERSION_STRING)