ref: de60e7d3f8f721445e4435e90a209656ca777352
parent: 49967cb6101bc7e6593535d1c6fa293c8b26fa4a
author: Alexei Podtelezhnikov <[email protected]>
date: Sun May 3 13:11:20 EDT 2020
* builds/freetype.mk: Refactor for readability.
--- 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@ \