diff --git a/code/CMakeModules/FindFreeType.cmake b/code/CMakeModules/FindFreeType.cmake
index 36d109a18..f6b827899 100644
--- a/code/CMakeModules/FindFreeType.cmake
+++ b/code/CMakeModules/FindFreeType.cmake
@@ -9,7 +9,25 @@ IF(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIRS)
   SET(Freetype_FIND_QUIETLY TRUE)
 ENDIF(FREETYPE_LIBRARIES AND FREETYPE_INCLUDE_DIRS)
 
-FIND_PATH(FREETYPE_INCLUDE_DIR
+FIND_PATH(FREETYPE_INCLUDE_DIRS
+  freetype
+  PATHS
+  $ENV{FREETYPE_DIR}/include
+  /usr/local/include
+  /usr/include
+  /sw/include
+  /opt/local/include
+  /opt/csw/include
+  /opt/include
+  PATH_SUFFIXES freetype2
+)
+
+IF(NOT FREETYPE_INCLUDE_DIRS)
+  SET(FREETYPE_INCLUDE_DIRS "")
+ENDIF(NOT FREETYPE_INCLUDE_DIRS)
+
+# ft2build.h does not reside in the freetype include dir
+FIND_PATH(FREETYPE_ADDITIONAL_INCLUDE_DIR
   ft2build.h
   PATHS
   /usr/local/include
@@ -21,9 +39,10 @@ FIND_PATH(FREETYPE_INCLUDE_DIR
   PATH_SUFFIXES freetype2
 )
 
-IF(FREETYPE_INCLUDE_DIR)
-  SET(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR})
-ENDIF(FREETYPE_INCLUDE_DIR)
+# combine both include directories into one variable
+IF(FREETYPE_ADDITIONAL_INCLUDE_DIR)
+  SET(FREETYPE_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIRS} ${FREETYPE_ADDITIONAL_INCLUDE_DIR})
+ENDIF(FREETYPE_ADDITIONAL_INCLUDE_DIR)
 
 FIND_LIBRARY(FREETYPE_LIBRARY_RELEASE
   NAMES freetype libfreetype freetype219 freetype246