1MACRO(checkFreeType)
2########################################
3# FreeType2
4########################################
5OPTION(FREETYPE2 "" ON)
6
7MESSAGE(STATUS "Checking for FreeType2")
8MESSAGE(STATUS "**********************")
9
10IF (FREETYPE2)
11	PKG_CHECK_MODULES(FREETYPE2 freetype2)
12	PRINT_LIBRARY_INFO("FreeType2" FREETYPE2_FOUND "${FREETYPE2_CFLAGS}" "${FREETYPE2_LDFLAGS}")
13
14	IF (FREETYPE2_FOUND)
15		SET(USE_FREETYPE 1)
16	ENDIF (FREETYPE2_FOUND)
17ELSE (FREETYPE2)
18	MESSAGE("${MSG_DISABLE_OPTION}")
19ENDIF (FREETYPE2)
20
21APPEND_SUMMARY_LIST("Miscellaneous" "FreeType2" "${FREETYPE2_FOUND}")
22
23MESSAGE("")
24
25########################################
26# libiconv
27########################################
28IF (USE_FREETYPE)
29	MESSAGE(STATUS "Checking for libiconv")
30	MESSAGE(STATUS "*********************")
31
32	FIND_HEADER_AND_LIB(LIBICONV iconv.h iconv)
33	PRINT_LIBRARY_INFO("libiconv" LIBICONV_FOUND "${LIBICONV_INCLUDE_DIR}" "${LIBICONV_LIBRARY_DIR}")
34
35	IF (NOT LIBICONV_INCLUDE_DIR)
36		MESSAGE(STATUS "iconv.h not found, disabling FreeType2")
37		SET(USE_FREETYPE)
38	ELSE (NOT LIBICONV_INCLUDE_DIR)
39		IF (LIBICONV_LIBRARY_DIR)
40			MESSAGE(STATUS "libiconv is probably needed")
41
42			CHECK_CFLAGS_REQUIRED(iconv_check.cpp "-DICONV_NEED_CONST" "${LIBICONV_INCLUDE_DIR}" "${LIBICONV_LIBRARY_DIR}" LIBICONV_CFLAGS_REQUIRED)
43		ELSE (LIBICONV_LIBRARY_DIR)
44			SET(LIBICONV_LIBRARY_DIR "")
45			MESSAGE(STATUS "libiconv is probably not needed")
46
47			ADM_COMPILE(iconv_check.cpp "-DICONV_NEED_CONST" "${LIBICONV_INCLUDE_DIR}" "" LIBICONV_CFLAGS_REQUIRED LIBICONV_COMPILE_OUTPUT)
48		ENDIF (LIBICONV_LIBRARY_DIR)
49
50		IF (LIBICONV_CFLAGS_REQUIRED)
51			SET(LIBICONV_DEFINITIONS "-DICONV_NEED_CONST")
52			SET(ICONV_NEED_CONST 1)
53		ENDIF(LIBICONV_CFLAGS_REQUIRED)
54	ENDIF (NOT LIBICONV_INCLUDE_DIR)
55
56	MESSAGE("")
57ENDIF (USE_FREETYPE)
58
59ENDMACRO(checkFreeType)
60