1
0
Mirror von https://github.com/luanti-org/luanti.git synchronisiert 2025-11-09 03:25:28 +01:00

BUILD: prefer pkg-config for freetype2 detection

This can solve numerous problems such as:
http://www.cmake.org/Bug/view.php?id=13959
http://www.cmake.org/Bug/view.php?id=14601

If pkg-config or freetype2.pc is not found, then fall back to the
FindFreetype.cmake module logic.

Restrict to UNIX since I only tested it here.
Dieser Commit ist enthalten in:
hasufell
2013-12-08 21:05:25 +01:00
committet von Ilya Zhuravlev
Ursprung 160e2b7b7d
Commit cb7bb736c7
2 geänderte Dateien mit 41 neuen und 11 gelöschten Zeilen

Datei anzeigen

@@ -178,7 +178,19 @@ if(ENABLE_GLES)
endif(ENABLE_GLES)
if(USE_FREETYPE)
find_package(Freetype REQUIRED)
if(UNIX)
include(FindPkgConfig)
if(PKG_CONFIG_FOUND)
pkg_check_modules(FREETYPE QUIET freetype2)
if(FREETYPE_FOUND)
SET(FREETYPE_PKGCONFIG_FOUND TRUE)
SET(FREETYPE_LIBRARY ${FREETYPE_LIBRARIES})
endif(FREETYPE_FOUND)
endif(PKG_CONFIG_FOUND)
endif(UNIX)
if(NOT FREETYPE_FOUND)
find_package(Freetype REQUIRED)
endif(NOT FREETYPE_FOUND)
set(CGUITTFONT_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/cguittfont")
set(CGUITTFONT_LIBRARY cguittfont)
endif(USE_FREETYPE)
@@ -451,6 +463,12 @@ if(BUILD_CLIENT)
)
endif(USE_CURL)
if(USE_FREETYPE)
if(FREETYPE_PKGCONFIG_FOUND)
set_target_properties(${PROJECT_NAME}
PROPERTIES
COMPILE_FLAGS "${FREETYPE_CFLAGS}"
)
endif(FREETYPE_PKGCONFIG_FOUND)
target_link_libraries(
${PROJECT_NAME}
${FREETYPE_LIBRARY}

Datei anzeigen

@@ -1,17 +1,29 @@
include_directories(
${IRRLICHT_INCLUDE_DIR}
${FREETYPE_INCLUDE_DIRS}
)
# CGUITTFont authors, y u no include headers you use?
# Do not add CGUITTFont.cpp to the line below.
# xCGUITTFont.cpp is a wrapper file that includes
# additional required headers.
add_library(cguittfont xCGUITTFont.cpp)
if(FREETYPE_PKGCONFIG_FOUND)
set_target_properties(cguittfont
PROPERTIES
COMPILE_FLAGS "${FREETYPE_CFLAGS}"
LINK_FLAGS "${FREETYPE_LDFLAGS}"
)
include_directories(
${IRRLICHT_INCLUDE_DIR}
)
else(FREETYPE_PKGCONFIG_FOUND)
include_directories(
${IRRLICHT_INCLUDE_DIR}
${FREETYPE_INCLUDE_DIRS}
)
endif(FREETYPE_PKGCONFIG_FOUND)
target_link_libraries(
cguittfont
${IRRLICHT_LIBRARY}
${FREETYPE_LIBRARY}
${ZLIB_LIBRARIES} # needed by freetype, repeated here for safety
)
cguittfont
${IRRLICHT_LIBRARY}
${FREETYPE_LIBRARY}
${ZLIB_LIBRARIES} # needed by freetype, repeated here for safety
)