Commit b8d3b686 authored by mercury233's avatar mercury233 Committed by GitHub

remove unnecessary features from Freetype (#2854)

parent 04ac2a12
...@@ -30,7 +30,7 @@ project "YGOPro" ...@@ -30,7 +30,7 @@ project "YGOPro"
end end
if BUILD_FREETYPE then if BUILD_FREETYPE then
includedirs { "../freetype/include" } includedirs { "../freetype/custom", "../freetype/include" }
else else
includedirs { FREETYPE_INCLUDE_DIR } includedirs { FREETYPE_INCLUDE_DIR }
libdirs { FREETYPE_LIB_DIR } libdirs { FREETYPE_LIB_DIR }
......
/****************************************************************************
*
* ft2build.h
*
* FreeType 2 build and setup macros.
*
* Use custom/ft2build.h instead of the default include/freetype/ft2build.h
* to customize the FreeType 2 build of YGOPro.
*
*/
#ifndef FT2_BUILD_MY_PLATFORM_H_
#define FT2_BUILD_MY_PLATFORM_H_
#define FT_CONFIG_OPTIONS_H <ygopro/ftoption.h>
#define FT_CONFIG_MODULES_H <ygopro/ftmodule.h>
#include <freetype/config/ftheader.h>
#endif /* FT2_BUILD_MY_PLATFORM_H_ */
/*
* This file registers the FreeType modules compiled into the library.
*
* YGOPro only uses modules that are needed for TrueType and OpenType fonts.
*
*/
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
FT_USE_MODULE( FT_Module_Class, psaux_module_class )
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
/* EOF */
/****************************************************************************
*
* ftoption.h
*
* User-selectable configuration macros (specification only).
*
* This file is customized for YGOPro to include only the necessary
* configuration options for the TrueType and OpenType font driver.
*
* See the original FreeType source code for more information.
* /include/freetype/config/ftoption.h
*
*/
#ifndef FTOPTION_H_
#define FTOPTION_H_
#include <ft2build.h>
FT_BEGIN_HEADER
#define FT_CONFIG_OPTION_ENVIRONMENT_PROPERTIES
#undef FT_CONFIG_OPTION_FORCE_INT64
#define FT_CONFIG_OPTION_INLINE_MULFIX
#define FT_CONFIG_OPTION_POSTSCRIPT_NAMES
#define FT_CONFIG_OPTION_INCREMENTAL
#define FT_RENDER_POOL_SIZE 16384L
#define FT_MAX_MODULES 32
#undef FT_CONFIG_OPTION_USE_MODULE_ERRORS
#define TT_CONFIG_OPTION_EMBEDDED_BITMAPS
#define TT_CONFIG_OPTION_COLOR_LAYERS
#define TT_CONFIG_OPTION_POSTSCRIPT_NAMES
#define TT_CONFIG_CMAP_FORMAT_0
#define TT_CONFIG_CMAP_FORMAT_2
#define TT_CONFIG_CMAP_FORMAT_4
#define TT_CONFIG_CMAP_FORMAT_6
#define TT_CONFIG_CMAP_FORMAT_8
#define TT_CONFIG_CMAP_FORMAT_10
#define TT_CONFIG_CMAP_FORMAT_12
#define TT_CONFIG_CMAP_FORMAT_13
#define TT_CONFIG_CMAP_FORMAT_14
#define TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_CONFIG_OPTION_SUBPIXEL_HINTING
#undef TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED
#ifndef TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES
#define TT_CONFIG_OPTION_MAX_RUNNABLE_OPCODES 1000000L
#endif
#define T1_MAX_SUBRS_CALLS 16
#define T1_MAX_CHARSTRINGS_OPERANDS 256
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X1 500
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y1 400
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X2 1000
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y2 275
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X3 1667
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y3 275
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_X4 2333
#define CFF_CONFIG_OPTION_DARKENING_PARAMETER_Y4 0
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_USE_BYTECODE_INTERPRETER
#ifdef TT_CONFIG_OPTION_SUBPIXEL_HINTING
#define TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
#endif
#endif
#ifdef TT_CONFIG_OPTION_COLOR_LAYERS
#define TT_SUPPORT_COLRV1
#endif
FT_END_HEADER
#endif /* FTOPTION_H_ */
/* END */
project "freetype" project "freetype"
kind "StaticLib" kind "StaticLib"
includedirs { "include" } includedirs { "custom", "include" }
defines { "FT2_BUILD_LIBRARY" } defines { "FT2_BUILD_LIBRARY" }
files { "src/autofit/autofit.c", files {
"src/base/ftbase.c", "src/base/ftinit.c",
"src/base/ftbbox.c", "src/base/ftbase.c",
"src/base/ftbdf.c", "src/base/ftbitmap.c",
"src/base/ftbitmap.c", "src/cff/cff.c",
"src/base/ftcid.c", "src/psaux/psaux.c",
"src/base/ftfstype.c", "src/pshinter/pshinter.c",
"src/base/ftgasp.c", "src/psnames/psnames.c",
"src/base/ftglyph.c", "src/sfnt/sfnt.c",
"src/base/ftgxval.c", "src/smooth/smooth.c",
"src/base/ftinit.c", "src/truetype/truetype.c",
"src/base/ftmm.c", }
"src/base/ftotval.c",
"src/base/ftpatent.c",
"src/base/ftpfr.c",
"src/base/ftstroke.c",
"src/base/ftsynth.c",
"src/base/fttype1.c",
"src/base/ftwinfnt.c",
"src/bdf/bdf.c",
"src/cache/ftcache.c",
"src/cff/cff.c",
"src/cid/type1cid.c",
"src/gzip/ftgzip.c",
"src/lzw/ftlzw.c",
"src/pcf/pcf.c",
"src/pfr/pfr.c",
"src/psaux/psaux.c",
"src/pshinter/pshinter.c",
"src/psnames/psmodule.c",
"src/raster/raster.c",
"src/sfnt/sfnt.c",
"src/sdf/sdf.c",
"src/smooth/smooth.c",
"src/truetype/truetype.c",
"src/type1/type1.c",
"src/type42/type42.c",
"src/winfonts/winfnt.c" }
if os.isfile("src/svg/svg.c") then
files { "src/svg/svg.c" }
end
filter "system:windows" filter "system:windows"
files { "builds/windows/ftsystem.c", files { "builds/windows/ftsystem.c",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment