=== added file 'CMakeLists.txt' --- CMakeLists.txt 1970-01-01 00:00:00 +0000 +++ CMakeLists.txt 2010-11-15 03:24:48 +0000 @@ -0,0 +1,54 @@ +project(Freetype C) + +set(FREETYPE2_MAJOR_VERSION 2) +set(FREETYPE2_MINOR_VERSION 3) +set(FREETYPE2_PATCH_VERSION 11) + +set(FREETYPE2_LIB_NAME ${CMAKEPORTS_NAME_PREFIX}freetype${FREETYPE2_MAJOR_VERSION}${FREETYPE2_MINOR_VERSION}${FREETYPE2_PATCH_VERSION}) + +if(MSVC) + set(CMAKE_DEBUG_POSTFIX "D") + add_definitions(-D_CRT_SECURE_NO_DEPRECATE) +endif() + + +# Must have. Enables the #include build system +add_definitions(-DFT2_BUILD_LIBRARY) + +# Provide a way to enable ERROR debug level +option(FREETYPE2_DEBUG_LEVEL_ERROR "Get error messages" OFF) +if(FREETYPE2_DEBUG_LEVEL_ERROR) + add_definitions(-DFT_DEBUG_LEVEL_ERROR) +endif() +# Provide a way to enable the TRACE debug level +option(FREETYPE2_DEBUG_LEVEL_TRACE "Get error and trace messages" OFF) +if(FREETYPE2_DEBUG_LEVEL_TRACE) + add_definitions(-DFT_DEBUG_LEVEL_TRACE) +endif() + +# Make headers visible to everything +include_directories(include) + +# now add the source +add_subdirectory(src) + + +if(NOT SKIP_INSTALL_HEADERS AND NOT SKIP_INSTALL_ALL ) + install(DIRECTORY include/ DESTINATION include PATTERN "internal" EXCLUDE) +endif() + +# CREATE PKGCONFIG FILES +# we use the same files like ./configure, so we have to set its vars +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(exec_prefix ${CMAKE_INSTALL_PREFIX}) +set(libdir ${CMAKE_INSTALL_PREFIX}/lib) +set(includedir ${CMAKE_INSTALL_PREFIX}/include) + +IF(UNIX) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/builds/unix/freetype-config.in + ${CMAKE_CURRENT_BINARY_DIR}/freetype-config) + + if(NOT SKIP_INSTALL_FILES AND NOT SKIP_INSTALL_ALL ) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/freetype-config DESTINATION bin) + endif() +endif() \ No newline at end of file === modified file 'builds/unix/freetype-config.in' --- builds/unix/freetype-config.in 2010-11-15 00:06:09 +0000 +++ builds/unix/freetype-config.in 2010-11-15 02:38:23 +0000 @@ -9,13 +9,13 @@ # indicate that you have read the license and understand and accept it # fully. -prefix=@prefix@ -exec_prefix=@exec_prefix@ +prefix="@prefix@" +exec_prefix="@exec_prefix@" exec_prefix_set=no -includedir=@includedir@ -libdir=@libdir@ -enable_shared=@build_libtool_libs@ -wl=@wl@ +includedir="@includedir@" +libdir="@libdir@" +enable_shared="@build_libtool_libs@" +wl="@wl@" hardcode_libdir_flag_spec='@hardcode_libdir_flag_spec@' usage() === modified file 'include/freetype/config/ftoption.h' --- include/freetype/config/ftoption.h 2010-11-15 00:06:09 +0000 +++ include/freetype/config/ftoption.h 2010-11-15 01:01:41 +0000 @@ -227,7 +227,10 @@ /* */ /* #define FT_EXPORT(x) extern x */ /* #define FT_EXPORT_DEF(x) x */ - +#if defined(_WIN32) && defined(freetype2311_EXPORTS) +#define FT_EXPORT(x) extern __declspec(dllexport) +#define FT_EXPORT_DEF(x) __declspec(dllexport) +#endif /*************************************************************************/ /* */ === added file 'src/CMakeLists.txt' --- src/CMakeLists.txt 1970-01-01 00:00:00 +0000 +++ src/CMakeLists.txt 2010-11-15 03:15:57 +0000 @@ -0,0 +1,497 @@ + +#### +#### Core files +#### These files are required +#### + +set(FREETYPE2_BASE_SRC + base/ftsystem.c + base/ftinit.c + base/ftdebug.c + base/ftbase.c + base/ftobjs.c +) + +#### +#### Optional base extensions +#### + +# Exact bounding box calculation. +# +# See include/freetype/ftbbox.h for the API. +option(FREETYPE2_BASE_EXT_ftbbox "Enable the ftbbox extension" ON) +if(FREETYPE2_BASE_EXT_ftbbox) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftbbox.c) +endif() + +# Access BDF-specific strings. Needs BDF font driver. +# +# See include/freetype/ftbdf.h for the API. +option(FREETYPE2_BASE_EXT_ftbdf "Enable the ftbdf extension" ON) +if(FREETYPE2_BASE_EXT_ftbdf) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftbdf.c) +endif() + +# Access CID font information. +# +# See include/freetype/ftcid.h for the API. +option(FREETYPE2_BASE_EXT_ftcid "Enable the ftcid extension" ON) +if(FREETYPE2_BASE_EXT_ftcid) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftcid.c) +endif() + +# Utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp bitmaps into +# 8bpp format, and for emboldening of bitmap glyphs. +# +# See include/freetype/ftbitmap.h for the API. +option(FREETYPE2_BASE_EXT_ftbitmap "Enable the ftbitmap extension" ON) +if(FREETYPE2_BASE_EXT_ftbitmap) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftbitmap.c) +endif() + +# Convenience functions to handle glyphs. +# +# See include/freetype/ftglyph.h for the API. +option(FREETYPE2_BASE_EXT_ftglyph "Enable the ftglyph extension" ON) +if(FREETYPE2_BASE_EXT_ftglyph) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftglyph.c) +endif() + +# Interface for gxvalid module (which is required). +# +# See include/freetype/ftgxval.h for the API. +option(FREETYPE2_BASE_EXT_ftgxval "Enable the ftgxval extension" ON) +if(FREETYPE2_BASE_EXT_ftgxval) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftgxval.c) +endif() + +# Multiple Master font interface. +# +# See include/freetype/ftmm.h for the API. +option(FREETYPE2_BASE_EXT_ftmm "Enable the ftmm extension" ON) +if(FREETYPE2_BASE_EXT_ftmm) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftmm.c) +endif() + +# Interface for otvalid module (which is required). +# +# See include/freetype/ftotval.h for the API. +option(FREETYPE2_BASE_EXT_ftotval "Enable the ftotval extension" ON) +if(FREETYPE2_BASE_EXT_ftotval) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftotval.c) +endif() + +# Interface for accessing PFR-specific data. Needs PFR font driver. +# +# See include/freetype/ftpfr.h for the API. +option(FREETYPE2_BASE_EXT_ftpfr "Enable the ftpfr extension" ON) +if(FREETYPE2_BASE_EXT_ftpfr) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftpfr.c) +endif() + +# Path stroker. +# +# See include/freetype/ftstroke.h for the API. +option(FREETYPE2_BASE_EXT_ftstroke "Enable the ftstroke extension" ON) +if(FREETYPE2_BASE_EXT_ftstroke) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftstroke.c) +endif() + +# Support for synthetic embolding and slanting of fonts. +# +# See include/freetype/ftsynth.h for the API. +option(FREETYPE2_BASE_EXT_ftsynth "Enable the ftsynth extension" ON) +if(FREETYPE2_BASE_EXT_ftsynth) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftsynth.c) +endif() + +# Interface to access data specific to PostScript Type 1 and Type 2 (CFF) +# fonts. +# +# See include/freetype/t1tables.h for the API. +option(FREETYPE2_BASE_EXT_fttype1 "Enable the fttype1 extension" ON) +if(FREETYPE2_BASE_EXT_fttype1) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/fttype1.c) +endif() + +# Interface for accessing data specific to Windows FNT files. Needs winfnt +# driver. +# +# See include/freetype/ftwinfnt.h for the API. +option(FREETYPE2_BASE_EXT_ftwinfnt "Enable the ftwinfnt extension" ON) +if(FREETYPE2_BASE_EXT_ftwinfnt) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftwinfnt.c) +endif() + +# Support functions for X11. +# +# See include/freetype/ftxf86.h for the API. +if(UNIX) + option(FREETYPE2_BASE_EXT_ftxf86 "Enable the ftxf86 extension" ON) + if(FREETYPE2_BASE_EXT_ftxf86) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftxf86.c) + endif() +endif(UNIX) + +# Support for LCD color filtering of subpixel bitmaps. +# +# See include/freetype/ftlcdfil.h for the API. +option(FREETYPE2_BASE_EXT_ftlcdfil "Enable the ftlcdfil extension" ON) +if(FREETYPE2_BASE_EXT_ftlcdfil) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftlcdfil.c) +endif() + +# Support for GASP table queries. +# +# See include/freetype/ftgasp.h for the API. +option(FREETYPE2_BASE_EXT_ftgasp "Enable the ftgasp extension" ON) +if(FREETYPE2_BASE_EXT_ftgasp) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftgasp.c) +endif() + +# Support for FT_Face_CheckTrueTypePatents. +# +# See include/freetype.h for the API. +option(FREETYPE2_BASE_EXT_ftpatent "Enable the ftpatent extension" ON) +if(FREETYPE2_BASE_EXT_ftpatent) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftpatent.c) +endif() + +# src/base/ftmac.c -- only on the Macintosh +if(APPLE) + set(BASE_EXTENSIONS_SRC ${BASE_EXTENSIONS_SRC} base/ftmac.c) +endif() + +#### +#### -- font drivers (optional; at least one is needed) +#### + +# TrueType font driver. +# +# This driver needs the `sfnt' module. +option(FREETYPE2_MODULE_truetype "Enable the truetype driver" ON) +if(FREETYPE2_MODULE_truetype) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} truetype/truetype.c) +endif() + +# PostScript Type 1 font driver. +# +# This driver needs the `psaux', `pshinter', and `psnames' modules. +option(FREETYPE2_MODULE_type1 "Enable the type1 driver" ON) +if(FREETYPE2_MODULE_type1) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} type1/type1.c) +endif() + +# CFF/OpenType font driver. +# +# This driver needs the `sfnt', `pshinter', and `psnames' modules. +option(FREETYPE2_MODULE_cff "Enable the cff driver" ON) +if(FREETYPE2_MODULE_cff) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} cff/cff.c) +endif() + +# Type 1 CID-keyed font driver. +# +# This driver needs the `psaux', `pshinter', and `psnames' modules. +option(FREETYPE2_MODULE_cid "Enable the cid driver" ON) +if(FREETYPE2_MODULE_cid) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} cid/type1cid.c) +endif() + +# PFR/TrueDoc font driver. See optional extension ftpfr.c below also. +option(FREETYPE2_MODULE_pfr "Enable the pfr driver" ON) +if(FREETYPE2_MODULE_pfr) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} pfr/pfr.c) +endif() + +# PostScript Type 42 font driver. +# +# This driver needs the `truetype' module. +option(FREETYPE2_MODULE_type42 "Enable the type42 driver" ON) +if(FREETYPE2_MODULE_type42) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} type42/type42.c) +endif() + +# Windows FONT/FNT font driver. See optional extension ftwinfnt.c below +# also. +option(FREETYPE2_MODULE_winfonts "Enable the winfonts driver" ON) +if(FREETYPE2_MODULE_winfonts) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} winfonts/winfnt.c) +endif() + +# PCF font driver. +option(FREETYPE2_MODULE_pcf "Enable the pcf driver" ON) +if(FREETYPE2_MODULE_pcf) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} pcf/pcf.c) +endif() + +# BDF font driver. See optional extension ftbdf.c below also. +option(FREETYPE2_MODULE_bdf "Enable the bdf driver" ON) +if(FREETYPE2_MODULE_bdf OR FREETYPE2_BASE_EXT_ftbdf) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} bdf/bdf.c) +endif() + +# SFNT files support. If used without `truetype' or `cff', it supports +# bitmap-only fonts within an SFNT wrapper. +# +# This driver needs the `psnames' module. +option(FREETYPE2_MODULE_sfnt "Enable the sfnt driver" ON) +if(FREETYPE2_MODULE_sfnt) + set(FONT_MODULES_SRC ${FONT_MODULES_SRC} sfnt/sfnt.c) +endif() + +#### +#### hinting modules +#### + +# FreeType's auto hinter. +option(FREETYPE2_HINTER_autofit "Enable the autofit hinter" ON) +if(FREETYPE2_HINTER_autofit) + set(HINTING_MODULES_SRC ${HINTING_MODULES_SRC} autofit/autofit.c) +endif() + +# PostScript hinter. +option(FREETYPE2_HINTER_pshinter "Enable the pshinter hinter" ON) +if(FREETYPE2_HINTER_pshinter) + set(HINTING_MODULES_SRC ${HINTING_MODULES_SRC} pshinter/pshinter.c) +endif() + +# The TrueType hinting engine doesn't have a module of its own but is +# controlled in file include/freetype/config/ftoption.h +# (TT_CONFIG_OPTION_BYTECODE_INTERPRETER and friends). + + +#### +#### raster modules -- at least one is required for vector font formats +#### + + +# Monochrome rasterizer. +option(FREETYPE2_RASTER_raster "Enable the monochrome rasterizer" ON) +if(FREETYPE2_RASTER_raster) + set(RASTER_MODULES_SRC ${RASTER_MODULES_SRC} raster/raster.c) +endif() + +# Anti-aliasing rasterizer. +option(FREETYPE2_RASTER_smooth "Enable the anti-aliasing rasterizer" ON) +if(FREETYPE2_RASTER_smooth) + set(RASTER_MODULES_SRC ${RASTER_MODULES_SRC} smooth/smooth.c) +endif() + +#### +#### auxiliary modules +#### + +# FreeType's cache sub-system (quite stable but still in beta -- this means +# that its public API is subject to change if necessary). See +# include/freetype/ftcache.h. +# src/cache/ftcache.c -- cache sub-system (in beta) +option(FREETYPE2_AUX_cache "Enable the cache auxiliary module" ON) +if(FREETYPE2_AUX_cache) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} cache/ftcache.c) +endif() + +# TrueType GX/AAT table validation. Needs ftgxval.c below. +# src/gxvalid/gxvalid.c -- TrueTypeGX/AAT table validation +option(FREETYPE2_AUX_gxvalid "Enable the gxvalid auxiliary module" OFF) +if(FREETYPE2_AUX_gxvalid) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} gxvalid/gxvalid.c) +endif() + +# Support for streams compressed with gzip (files with suffix .gz). +# src/gzip/ftgzip.c -- support for compressed fonts (.gz) +# +# See include/freetype/ftgzip.h for the API. +option(FREETYPE2_AUX_gzip "Enable the gzip auxiliary module" ON) +if(FREETYPE2_AUX_gzip) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} gzip/ftgzip.c) +endif() + +# Support for streams compressed with LZW (files with suffix .Z). +# src/lzw/ftlzw.c -- support for compressed fonts (.Z) +# +# See include/freetype/ftlzw.h for the API. +option(FREETYPE2_AUX_lzw "Enable the lzw auxiliary module" ON) +if(FREETYPE2_AUX_lzw) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} lzw/ftlzw.c) +endif() + +# OpenType table validation. Needs ftotval.c below. +# +# src/otvalid/otvalid.c -- OpenType table validation +option(FREETYPE2_AUX_otvalid "Enable the otvalid auxiliary module" OFF) +if(FREETYPE2_AUX_otvalid) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} otvalid/otvalid.c) +endif() + +# Auxiliary PostScript driver component to share common code. +# src/psaux/psaux.c -- PostScript Type 1 parsing +# +# This module depends on `psnames'. +option(FREETYPE2_AUX_psaux "Enable the psaux auxiliary module" ON) +if(FREETYPE2_AUX_psaux) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} psaux/psaux.c) +endif() + +# Support for PostScript glyph names. +# src/psnames/psnames.c -- PostScript glyph names support +# +# This module can be controlled in ftconfig.h +# (FT_CONFIG_OPTION_POSTSCRIPT_NAMES). +option(FREETYPE2_AUX_psnames "Enable the psnames auxiliary module" ON) +if(FREETYPE2_AUX_psnames) + set(AUX_MODULES_SRC ${AUX_MODULES_SRC} psnames/psnames.c) +endif() + + +#### +#### Notes: +#### +#### `cff.c' needs `sfnt.c', `pshinter.c', and `psnames.c' +#### `truetype.c' needs `sfnt.c' and `psnames.c' +#### `type1.c' needs `psaux.c' `pshinter.c', and `psnames.c' +#### `type1cid.c' needs `psaux.c', `pshinter.c', and `psnames.c' +#### `type42.c' needs `truetype.c' + +source_group("Source Files\\base extensions" FILES ${BASE_EXTENSIONS_SRC}) +source_group("Source Files\\font modules" FILES ${FONT_MODULES_SRC}) +source_group("Source Files\\raster modules" FILES ${RASTER_MODULES_SRC}) +source_group("Source Files\\auxiliary modules" FILES ${AUX_MODULES_SRC}) +source_group("Source Files\\hinting modules" FILES ${HINTING_MODULES_SRC}) + +#### +#### Collect headers for install command and browsing in IDEs +#### + +set(FREETYPE2_HEADERS_DIR ${PROJECT_SOURCE_DIR}/include) +set(FREETYPE2_HEADERS + ${FREETYPE2_HEADERS_DIR}/ft2build.h + ) +source_group("Header Files" FILES ${FREETYPE2_HEADERS}) + +set(FREETYPE2_HEADERS_DIR ${PROJECT_SOURCE_DIR}/include/freetype) +set(FREETYPE2_HEADERS + ${FREETYPE2_HEADERS_DIR}/freetype.h + ${FREETYPE2_HEADERS_DIR}/ftadvanc.h + ${FREETYPE2_HEADERS_DIR}/ftbbox.h + ${FREETYPE2_HEADERS_DIR}/ftbdf.h + ${FREETYPE2_HEADERS_DIR}/ftbitmap.h + ${FREETYPE2_HEADERS_DIR}/ftcache.h + ${FREETYPE2_HEADERS_DIR}/ftchapters.h + ${FREETYPE2_HEADERS_DIR}/ftcid.h + ${FREETYPE2_HEADERS_DIR}/fterrdef.h + ${FREETYPE2_HEADERS_DIR}/fterrors.h + ${FREETYPE2_HEADERS_DIR}/ftgasp.h + ${FREETYPE2_HEADERS_DIR}/ftglyph.h + ${FREETYPE2_HEADERS_DIR}/ftgxval.h + ${FREETYPE2_HEADERS_DIR}/ftgzip.h + ${FREETYPE2_HEADERS_DIR}/ftimage.h + ${FREETYPE2_HEADERS_DIR}/ftincrem.h + ${FREETYPE2_HEADERS_DIR}/ftlcdfil.h + ${FREETYPE2_HEADERS_DIR}/ftlist.h + ${FREETYPE2_HEADERS_DIR}/ftlzw.h + ${FREETYPE2_HEADERS_DIR}/ftmac.h + ${FREETYPE2_HEADERS_DIR}/ftmm.h + ${FREETYPE2_HEADERS_DIR}/ftmodapi.h + ${FREETYPE2_HEADERS_DIR}/ftmoderr.h + ${FREETYPE2_HEADERS_DIR}/ftotval.h + ${FREETYPE2_HEADERS_DIR}/ftoutln.h + ${FREETYPE2_HEADERS_DIR}/ftpfr.h + ${FREETYPE2_HEADERS_DIR}/ftrender.h + ${FREETYPE2_HEADERS_DIR}/ftsizes.h + ${FREETYPE2_HEADERS_DIR}/ftsnames.h + ${FREETYPE2_HEADERS_DIR}/ftstroke.h + ${FREETYPE2_HEADERS_DIR}/ftsynth.h + ${FREETYPE2_HEADERS_DIR}/ftsystem.h + ${FREETYPE2_HEADERS_DIR}/fttrigon.h + ${FREETYPE2_HEADERS_DIR}/fttypes.h + ${FREETYPE2_HEADERS_DIR}/ftwinfnt.h + ${FREETYPE2_HEADERS_DIR}/ftxf86.h + ${FREETYPE2_HEADERS_DIR}/t1tables.h + ${FREETYPE2_HEADERS_DIR}/ttnameid.h + ${FREETYPE2_HEADERS_DIR}/tttables.h + ${FREETYPE2_HEADERS_DIR}/tttags.h + ${FREETYPE2_HEADERS_DIR}/ttunpat.h + ) +source_group("Header Files\\freetype" FILES ${FREETYPE2_HEADERS}) + +set(FREETYPE2_CONFIG_HEADERS_DIR ${PROJECT_SOURCE_DIR}/include/freetype/config) +set(FREETYPE2_CONFIG_HEADERS + ${FREETYPE2_CONFIG_HEADERS_DIR}/ftconfig.h + ${FREETYPE2_CONFIG_HEADERS_DIR}/ftheader.h + ${FREETYPE2_CONFIG_HEADERS_DIR}/ftmodule.h + ${FREETYPE2_CONFIG_HEADERS_DIR}/ftoption.h + ${FREETYPE2_CONFIG_HEADERS_DIR}/ftstdlib.h + ) +source_group("Header Files\\freetype\\config" FILES ${FREETYPE2_CONFIG_HEADERS}) + +set(FREETYPE2_INTERNAL_HEADERS_DIR ${PROJECT_SOURCE_DIR}/include/freetype/internal) +set(FREETYPE2_INTERNAL_HEADERS + ${FREETYPE2_INTERNAL_HEADERS_DIR}/autohint.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftcalc.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftdebug.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftdriver.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftgloadr.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftmemory.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftobjs.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftrfork.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftserv.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftstream.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/fttrace.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/ftvalid.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/internal.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/pcftypes.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/psaux.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/pshints.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/sfnt.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/t1types.h + ${FREETYPE2_INTERNAL_HEADERS_DIR}/tttypes.h + ) +source_group("Header Files\\freetype\\internal" FILES ${FREETYPE2_INTERNAL_HEADERS}) + +set(FREETYPE2_SERVICES_HEADERS_DIR ${PROJECT_SOURCE_DIR}/include/freetype/internal/services) +set(FREETYPE2_SERVICES_HEADERS + ${FREETYPE2_SERVICES_HEADERS_DIR}/svbdf.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svcid.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svgldict.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svgxval.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svkern.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svmm.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svotval.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svpfr.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svpostnm.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svpscmap.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svpsinfo.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svsfnt.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svttcmap.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svtteng.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svttglyf.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svwinfnt.h + ${FREETYPE2_SERVICES_HEADERS_DIR}/svxf86nm.h + ) +source_group("Header Files\\freetype\\internal\\services" FILES ${FREETYPE2_SERVICES_HEADERS}) + +set(FREETYPE2_PUBLIC_HDRS ${FREETYPE2_HEADERS} ${FREETYPE2_HEADERS} ${FREETYPE2_CONFIG_HEADERS}) +set(FREETYPE2_PRIVATE_HDRS ${FREETYPE2_INTERNAL_HEADERS} ${FREETYPE2_SERVICES_HEADERS}) + + +add_library(${FREETYPE2_LIB_NAME} + ${FREETYPE2_BASE_SRC} + ${BASE_EXTENSIONS_SRC} + ${FONT_MODULES_SRC} + ${RASTER_MODULES_SRC} + ${AUX_MODULES_SRC} + ${HINTING_MODULES_SRC} + ${FREETYPE2_PUBLIC_HDRS} + ${FREETYPE2_PRIVATE_HDRS} + ) + +if(NOT SKIP_INSTALL_LIBRARIES AND NOT SKIP_INSTALL_ALL ) + install(TARGETS ${FREETYPE2_LIB_NAME} + RUNTIME DESTINATION ${CMP_RUNTIME_OUTPUT_DIRECTORY} + ARCHIVE DESTINATION ${CMP_ARCHIVE_OUTPUT_DIRECTORY} + LIBRARY DESTINATION ${CMP_LIBRARY_OUTPUT_DIRECTORY} + ) +endif() + +