2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
# FreeType 2 auto-fitter module configuration rules
|
|
|
|
#
|
|
|
|
|
|
|
|
|
2023-01-17 09:18:25 +01:00
|
|
|
# Copyright (C) 2003-2023 by
|
2005-03-03 18:09:08 +01:00
|
|
|
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
|
|
|
#
|
|
|
|
# This file is part of the FreeType project, and may only be used, modified,
|
|
|
|
# and distributed under the terms of the FreeType project license,
|
|
|
|
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
|
|
|
# indicate that you have read the license and understand and accept it
|
|
|
|
# fully.
|
|
|
|
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver directory
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
AUTOF_DIR := $(SRC_DIR)/autofit
|
|
|
|
|
|
|
|
|
|
|
|
# compilation flags for the driver
|
|
|
|
#
|
2015-01-12 11:26:30 +01:00
|
|
|
AUTOF_COMPILE := $(CC) $(ANSIFLAGS) \
|
|
|
|
$I$(subst /,$(COMPILER_SEP),$(AUTOF_DIR)) \
|
|
|
|
$(INCLUDE_FLAGS) \
|
|
|
|
$(FT_CFLAGS)
|
2005-03-01 23:49:32 +01:00
|
|
|
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver sources (i.e., C files)
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
2021-06-02 19:07:56 +02:00
|
|
|
AUTOF_DRV_SRC := $(AUTOF_DIR)/afblue.c \
|
2007-06-26 06:44:35 +02:00
|
|
|
$(AUTOF_DIR)/afcjk.c \
|
2005-03-02 12:24:23 +01:00
|
|
|
$(AUTOF_DIR)/afdummy.c \
|
|
|
|
$(AUTOF_DIR)/afglobal.c \
|
|
|
|
$(AUTOF_DIR)/afhints.c \
|
2007-06-26 06:44:35 +02:00
|
|
|
$(AUTOF_DIR)/afindic.c \
|
2005-03-02 12:24:23 +01:00
|
|
|
$(AUTOF_DIR)/aflatin.c \
|
|
|
|
$(AUTOF_DIR)/afloader.c \
|
2006-01-22 07:58:16 +01:00
|
|
|
$(AUTOF_DIR)/afmodule.c \
|
2013-12-19 15:45:24 +01:00
|
|
|
$(AUTOF_DIR)/afranges.c \
|
[autofit] Rewrite HarfBuzz interface to support character clusters.
Scripts like Khmer have blue zones that can't be directly
represented by Unicode characters. Instead, it is necessary to let
HarfBuzz convert character clusters into proper glyph representation
forms, then deriving the blue zone information from the resulting
glyphs.
* src/autofit/hbshim.c, src/autofit/hbshim.h: Replaced by...
* src/autofit/afshaper.c, src/autofit/afshaper.h: ... these two new
files, providing a new API to access HarfBuzz.
The new API manages a HarfBuzz buffer with `af_shaper_buf_create'
and `af_shaper_buf_destroy'. The buffer receives a UTF8 encoded
string with function `af_shaper_get_cluster', and the resulting
glyph data (indices, advance widths, vertical offsets) can be
iteratively accessed with function `af_shaper_get_elem'.
* src/autofit/afcjk.c (af_cjk_metrics_init_widths,
af_cjk_metrics_init_blues, af_cjk_metrics_check_digits): Updated.
* src/autofit/aflatin.c (af_latin_metrics_init_widths,
af_latin_metrics_init_blues, af_latin_metrics_check_digits):
Updated.
* include/freetype/internal/fttrace.h: s/afharfbuzz/afshaper/.
* src/autofit/afglobal.c: s/hbshim.h/afshaper.h/.
(af_face_globals_compute_style_coverage): Updated.
* src/autofit/afglocal.h: s/hbshim.h/afshaper.h/.
* src/autofit/autofit.c: s/hbshim.c/afshaper.c/.
* src/autofit/Jamfile, src/autofit/rules.mk (AUTOF_DRV_SRC):
Updated.
2015-12-06 18:52:41 +01:00
|
|
|
$(AUTOF_DIR)/afshaper.c \
|
2023-02-08 21:49:56 +01:00
|
|
|
$(AUTOF_DIR)/ft-hb.c
|
2005-03-01 23:49:32 +01:00
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver headers
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
2021-07-23 17:59:58 +02:00
|
|
|
AUTOF_DRV_H := $(AUTOF_DRV_SRC:%c=%h) \
|
|
|
|
$(AUTOF_DIR)/afcover.h \
|
|
|
|
$(AUTOF_DIR)/aferrors.h \
|
|
|
|
$(AUTOF_DIR)/afscript.h \
|
|
|
|
$(AUTOF_DIR)/afstyles.h \
|
|
|
|
$(AUTOF_DIR)/aftypes.h \
|
|
|
|
$(AUTOF_DIR)/afws-decl.h \
|
|
|
|
$(AUTOF_DIR)/afws-iter.h
|
2005-03-01 23:49:32 +01:00
|
|
|
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver object(s)
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
# AUTOF_DRV_OBJ_M is used during `multi' builds.
|
|
|
|
# AUTOF_DRV_OBJ_S is used during `single' builds.
|
|
|
|
#
|
|
|
|
AUTOF_DRV_OBJ_M := $(AUTOF_DRV_SRC:$(AUTOF_DIR)/%.c=$(OBJ_DIR)/%.$O)
|
|
|
|
AUTOF_DRV_OBJ_S := $(OBJ_DIR)/autofit.$O
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver source file for single build
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
AUTOF_DRV_SRC_S := $(AUTOF_DIR)/autofit.c
|
|
|
|
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver - single object
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
$(AUTOF_DRV_OBJ_S): $(AUTOF_DRV_SRC_S) $(AUTOF_DRV_SRC) \
|
|
|
|
$(FREETYPE_H) $(AUTOF_DRV_H)
|
|
|
|
$(AUTOF_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(AUTOF_DRV_SRC_S))
|
|
|
|
|
|
|
|
|
2005-03-02 12:24:23 +01:00
|
|
|
# AUTOF driver - multiple objects
|
2005-03-01 23:49:32 +01:00
|
|
|
#
|
|
|
|
$(OBJ_DIR)/%.$O: $(AUTOF_DIR)/%.c $(FREETYPE_H) $(AUTOF_DRV_H)
|
|
|
|
$(AUTOF_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
|
|
|
|
|
|
|
|
|
|
|
# update main driver object lists
|
|
|
|
#
|
|
|
|
DRV_OBJS_S += $(AUTOF_DRV_OBJ_S)
|
|
|
|
DRV_OBJS_M += $(AUTOF_DRV_OBJ_M)
|
|
|
|
|
|
|
|
|
|
|
|
# EOF
|