shithub: freetype+ttf2subf

Download patch

ref: de60e7d3f8f721445e4435e90a209656ca777352
parent: 49967cb6101bc7e6593535d1c6fa293c8b26fa4a
author: Alexei Podtelezhnikov <[email protected]>
date: Sun May 3 13:11:20 EDT 2020

* builds/freetype.mk: Refactor for readability.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2020-05-03  Alexei Podtelezhnikov  <[email protected]>
+
+	* builds/freetype.mk: Refactor for readability.
+
 2020-05-02  Alexei Podtelezhnikov  <[email protected]>
 
 	[builds] Clean up Windows CE project files.
--- a/builds/freetype.mk
+++ b/builds/freetype.mk
@@ -127,11 +127,12 @@
 INCLUDE_FLAGS := $(INCLUDES:%=$I%)
 
 ifdef DEVEL_DIR
-  # We assume that all library dependencies for FreeType are fulfilled for a
-  # development build, so we directly access the necessary include directory
-  # information using `pkg-config'.
-  INCLUDE_FLAGS += $(shell pkg-config --cflags libpng \
-                                               harfbuzz )
+  # We assume that library dependencies defined in `ftoption.c' are fulfilled
+  # for a development build, so we directly access the necessary include
+  # directory information using `pkg-config'.
+  INCLUDE_FLAGS += $(shell pkg-config --cflags libpng)
+  INCLUDE_FLAGS += $(shell pkg-config --cflags harfbuzz)
+  INCLUDE_FLAGS += $(shell pkg-config --cflags libbrotlidec)
 endif
 
 
@@ -146,16 +147,6 @@
 # FreeType.  This is required to let our sources include the internal
 # headers (something forbidden by clients).
 #
-# Finally, we define FT_CONFIG_MODULES_H so that the compiler uses the
-# generated version of `ftmodule.h' in $(OBJ_DIR).  If there is an
-# `ftoption.h' files in $(OBJ_DIR), define FT_CONFIG_OPTIONS_H too.
-#
-ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),)
-  FTOPTION_H    := $(OBJ_DIR)/ftoption.h
-else ifneq ($(wildcard $(BUILD_DIR)/ftoption.h),)
-  FTOPTION_H    := $(BUILD_DIR)/ftoption.h
-endif
-
 # `CPPFLAGS' might be specified by the user in the environment.
 #
 FT_CFLAGS  = $(CPPFLAGS) \
@@ -162,7 +153,9 @@
              $(CFLAGS) \
              $DFT2_BUILD_LIBRARY
 
+FT_COMPILE := $(CC) $(ANSIFLAGS) $(INCLUDE_FLAGS) $(FT_CFLAGS)
 
+
 # Include the `exports' rules file.
 #
 include $(TOP_DIR)/builds/exports.mk
@@ -175,11 +168,17 @@
 
 # Define $(PUBLIC_H) as the list of all public header files located in
 # `$(TOP_DIR)/include/freetype'.  $(INTERNAL_H), and $(CONFIG_H) are defined
-# similarly.
+# similarly.  $(FTOPTION_H) is the option file used in the compilation.
 #
 # This is used to simplify the dependency rules -- if one of these files
 # changes, the whole library is recompiled.
 #
+ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),)
+  FTOPTION_H    := $(OBJ_DIR)/ftoption.h
+else ifneq ($(wildcard $(BUILD_DIR)/ftoption.h),)
+  FTOPTION_H    := $(BUILD_DIR)/ftoption.h
+endif
+
 PUBLIC_H   := $(wildcard $(PUBLIC_DIR)/*.h)
 INTERNAL_H := $(wildcard $(INTERNAL_DIR)/*.h) \
               $(wildcard $(SERVICES_DIR)/*.h)
@@ -191,8 +190,6 @@
 
 FREETYPE_H := $(PUBLIC_H) $(INTERNAL_H) $(CONFIG_H) $(DEVEL_H)
 
-
-FT_COMPILE := $(CC) $(ANSIFLAGS) $(INCLUDE_FLAGS) $(FT_CFLAGS)
 
 # ftsystem component
 #
--- a/builds/unix/unix-cc.in
+++ b/builds/unix/unix-cc.in
@@ -76,7 +76,7 @@
 #   Use the ANSIFLAGS variable to define the compiler flags used to enfore
 #   ANSI compliance.
 #
-#   We use our own FreeType configuration file.
+#   We use our own FreeType configuration files overriding defaults.
 #
 CPPFLAGS := @CPPFLAGS@
 CFLAGS   := -c @XX_CFLAGS@ @CFLAGS@ \