aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Reed <ranger@befunk.com>2007-04-09 01:36:46 +0000
committerBenjamin Reed <ranger@befunk.com>2007-04-09 01:36:46 +0000
commit8db515aefb36667de829838150de61bded53cc1e (patch)
tree456e97afe5c4170485fca2d18addbf3969422c0c
parent2b64507726a47578b92541fe194b6e694ae78641 (diff)
downloadextra-cmake-modules-8db515aefb36667de829838150de61bded53cc1e.tar.gz
extra-cmake-modules-8db515aefb36667de829838150de61bded53cc1e.tar.bz2
fix freetype building when freetype-config prints out more than one -I
svn path=/trunk/KDE/kdelibs/; revision=651730
-rw-r--r--modules/FindFreetype.cmake16
1 files changed, 11 insertions, 5 deletions
diff --git a/modules/FindFreetype.cmake b/modules/FindFreetype.cmake
index f56ad2ad..2ce6eab3 100644
--- a/modules/FindFreetype.cmake
+++ b/modules/FindFreetype.cmake
@@ -33,12 +33,18 @@ else (FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR)
EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --libs RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_LIBRARIES)
- EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE FREETYPE_INCLUDE_DIR)
- if(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR)
+ EXEC_PROGRAM(${FREETYPECONFIG_EXECUTABLE} ARGS --cflags RETURN_VALUE _return_VALUE OUTPUT_VARIABLE _freetype_pkgconfig_output)
+ if(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output)
set(FREETYPE_FOUND TRUE)
- #message(STATUS "Found freetype: ${FREETYPE_LIBRARIES}")
- STRING(REGEX REPLACE "-I(.+)" "\\1" FREETYPE_INCLUDE_DIR "${FREETYPE_INCLUDE_DIR}")
- endif(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIR)
+
+ # freetype-config can print out more than one -I, so we need to chop it up
+ # into a list and process each entry separately
+ SEPARATE_ARGUMENTS(_freetype_pkgconfig_output)
+ FOREACH(value ${_freetype_pkgconfig_output})
+ STRING(REGEX REPLACE "-I(.+)" "\\1" value "${value}")
+ set(FREETYPE_INCLUDE_DIR ${FREETYPE_INCLUDE_DIR} ${value})
+ ENDFOREACH(value)
+ endif(FREETYPE_LIBRARIES AND _freetype_pkgconfig_output)
MARK_AS_ADVANCED(FREETYPE_LIBRARIES FREETYPE_INCLUDE_DIR)