summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Lemberg <wl@gnu.org>2015-01-12 11:26:30 +0100
committerWerner Lemberg <wl@gnu.org>2015-01-12 11:26:30 +0100
commit36d03c9f583f4c4b2ad2870784e2fe50814820c9 (patch)
treebf6d3c79734b08ae66e00de3de19576b7f434b58
parent2af74c9b87d4a35f019d54ad89c9ef1c2208f7bb (diff)
downloadfreetype2-36d03c9f583f4c4b2ad2870784e2fe50814820c9.tar.gz
Fix Savannah bug #43976.
Assure that FreeType's internal include directories are found before `CPPFLAGS' (which might be set by the user in the environment), and `CPPFLAGS' before `CFLAGS'. * builds/freetype.mk (FT_CFLAGS): Don't add `INCLUDE_FLAGS'. (FT_COMPILE): Make this a special variable for compiling only the files handled in `freetype.mk'. (.c.$O): Removed, unused. * src/*/rules.mk (*_COMPILE): Fix order of include directories.
-rw-r--r--ChangeLog15
-rw-r--r--builds/freetype.mk9
-rw-r--r--src/autofit/rules.mk5
-rw-r--r--src/base/rules.mk5
-rw-r--r--src/bdf/rules.mk5
-rw-r--r--src/bzip2/rules.mk4
-rw-r--r--src/cache/rules.mk7
-rw-r--r--src/cff/rules.mk5
-rw-r--r--src/cid/rules.mk5
-rw-r--r--src/gxvalid/rules.mk5
-rw-r--r--src/gzip/rules.mk9
-rw-r--r--src/lzw/rules.mk5
-rw-r--r--src/otvalid/rules.mk5
-rw-r--r--src/pcf/rules.mk5
-rw-r--r--src/pfr/rules.mk5
-rw-r--r--src/psaux/rules.mk5
-rw-r--r--src/pshinter/rules.mk5
-rw-r--r--src/psnames/rules.mk5
-rw-r--r--src/raster/rules.mk5
-rw-r--r--src/sfnt/rules.mk5
-rw-r--r--src/smooth/rules.mk6
-rw-r--r--src/truetype/rules.mk5
-rw-r--r--src/type1/rules.mk5
-rw-r--r--src/type42/rules.mk5
-rw-r--r--src/winfonts/rules.mk5
25 files changed, 115 insertions, 30 deletions
diff --git a/ChangeLog b/ChangeLog
index 084f67d09..027a29311 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2015-01-12 Werner Lemberg <wl@gnu.org>
+
+ Fix Savannah bug #43976.
+
+ Assure that FreeType's internal include directories are found before
+ `CPPFLAGS' (which might be set by the user in the environment), and
+ `CPPFLAGS' before `CFLAGS'.
+
+ * builds/freetype.mk (FT_CFLAGS): Don't add `INCLUDE_FLAGS'.
+ (FT_COMPILE): Make this a special variable for compiling only the
+ files handled in `freetype.mk'.
+ (.c.$O): Removed, unused.
+
+ * src/*/rules.mk (*_COMPILE): Fix order of include directories.
+
2015-01-11 Werner Lemberg <wl@gnu.org>
[truetype] Prettyfing.
diff --git a/builds/freetype.mk b/builds/freetype.mk
index 8b2e2eace..5e874ac09 100644
--- a/builds/freetype.mk
+++ b/builds/freetype.mk
@@ -155,15 +155,13 @@ ifneq ($(wildcard $(OBJ_DIR)/ftoption.h),)
FTOPTION_FLAG := $DFT_CONFIG_OPTIONS_H="<ftoption.h>"
endif
-# Note that a build with the `configure' script uses $(CFLAGS) only.
+# `CPPFLAGS' might be specified by the user in the environment.
#
FT_CFLAGS = $(CPPFLAGS) \
- $(INCLUDE_FLAGS) \
$(CFLAGS) \
$DFT2_BUILD_LIBRARY \
$DFT_CONFIG_MODULES_H="<ftmodule.h>" \
$(FTOPTION_FLAG)
-FT_COMPILE = $(CC) $(ANSIFLAGS) $(FT_CFLAGS)
# Include the `exports' rules file.
@@ -195,6 +193,8 @@ DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h)
FREETYPE_H := $(PUBLIC_H) $(INTERNAL_H) $(CONFIG_H) $(DEVEL_H)
+FT_COMPILE := $(CC) $(ANSIFLAGS) $(INCLUDE_FLAGS) $(FT_CFLAGS)
+
# ftsystem component
#
FTSYS_SRC ?= $(BASE_DIR)/ftsystem.c
@@ -270,9 +270,6 @@ objects: $(OBJECTS_LIST)
library: $(PROJECT_LIBRARY)
-.c.$O:
- $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
-
ifneq ($(findstring refdoc,$(MAKECMDGOALS)),)
# poor man's `sed' emulation with make's built-in string functions
diff --git a/src/autofit/rules.mk b/src/autofit/rules.mk
index 658f04ea5..5849cbe4f 100644
--- a/src/autofit/rules.mk
+++ b/src/autofit/rules.mk
@@ -20,7 +20,10 @@ AUTOF_DIR := $(SRC_DIR)/autofit
# compilation flags for the driver
#
-AUTOF_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(AUTOF_DIR))
+AUTOF_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(AUTOF_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# AUTOF driver sources (i.e., C files)
diff --git a/src/base/rules.mk b/src/base/rules.mk
index cbd810732..640ab6db9 100644
--- a/src/base/rules.mk
+++ b/src/base/rules.mk
@@ -23,7 +23,10 @@
# layer proper.
-BASE_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(SRC_DIR)/base)
+BASE_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(BASE_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# Base layer sources
diff --git a/src/bdf/rules.mk b/src/bdf/rules.mk
index 6ff1614dd..d1dd76b1c 100644
--- a/src/bdf/rules.mk
+++ b/src/bdf/rules.mk
@@ -32,7 +32,10 @@
BDF_DIR := $(SRC_DIR)/bdf
-BDF_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(BDF_DIR))
+BDF_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(BDF_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# bdf driver sources (i.e., C files)
diff --git a/src/bzip2/rules.mk b/src/bzip2/rules.mk
index 0ff2628b4..845066d4c 100644
--- a/src/bzip2/rules.mk
+++ b/src/bzip2/rules.mk
@@ -22,7 +22,9 @@ BZIP2_DIR := $(SRC_DIR)/bzip2
# compilation flags for the driver
#
-BZIP2_COMPILE := $(FT_COMPILE)
+BZIP2_COMPILE := $(CC) $(ANSIFLAGS) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# BZIP2 support sources (i.e., C files)
diff --git a/src/cache/rules.mk b/src/cache/rules.mk
index ed75a6a91..d64d9bcf3 100644
--- a/src/cache/rules.mk
+++ b/src/cache/rules.mk
@@ -17,9 +17,13 @@
#
CACHE_DIR := $(SRC_DIR)/cache
+
# compilation flags for the driver
#
-CACHE_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(CACHE_DIR))
+CACHE_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(CACHE_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# Cache driver sources (i.e., C files)
@@ -33,6 +37,7 @@ CACHE_DRV_SRC := $(CACHE_DIR)/ftcbasic.c \
$(CACHE_DIR)/ftcmru.c \
$(CACHE_DIR)/ftcsbits.c
+
# Cache driver headers
#
CACHE_DRV_H := $(CACHE_DIR)/ftccache.h \
diff --git a/src/cff/rules.mk b/src/cff/rules.mk
index 13115c255..23b4730ee 100644
--- a/src/cff/rules.mk
+++ b/src/cff/rules.mk
@@ -18,7 +18,10 @@
CFF_DIR := $(SRC_DIR)/cff
-CFF_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(CFF_DIR))
+CFF_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(CFF_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# CFF driver sources (i.e., C files)
diff --git a/src/cid/rules.mk b/src/cid/rules.mk
index f36274461..9926c8a88 100644
--- a/src/cid/rules.mk
+++ b/src/cid/rules.mk
@@ -18,7 +18,10 @@
CID_DIR := $(SRC_DIR)/cid
-CID_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(CID_DIR))
+CID_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(CID_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# CID driver sources (i.e., C files)
diff --git a/src/gxvalid/rules.mk b/src/gxvalid/rules.mk
index 57bc0823d..c4bd4c8e5 100644
--- a/src/gxvalid/rules.mk
+++ b/src/gxvalid/rules.mk
@@ -20,7 +20,10 @@ GXV_DIR := $(SRC_DIR)/gxvalid
# compilation flags for the driver
#
-GXV_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(GXV_DIR))
+GXV_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(GXV_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# GXV driver sources (i.e., C files)
diff --git a/src/gzip/rules.mk b/src/gzip/rules.mk
index 37cd99176..23222a16b 100644
--- a/src/gzip/rules.mk
+++ b/src/gzip/rules.mk
@@ -21,9 +21,14 @@ GZIP_DIR := $(SRC_DIR)/gzip
# compilation flags for the driver
#
ifeq ($(SYSTEM_ZLIB),)
- GZIP_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(GZIP_DIR))
+ GZIP_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(GZIP_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
else
- GZIP_COMPILE := $(FT_COMPILE)
+ GZIP_COMPILE := $(CC) $(ANSIFLAGS) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
endif
diff --git a/src/lzw/rules.mk b/src/lzw/rules.mk
index 5550a48d6..436293993 100644
--- a/src/lzw/rules.mk
+++ b/src/lzw/rules.mk
@@ -23,7 +23,10 @@ LZW_DIR := $(SRC_DIR)/lzw
# compilation flags for the driver
#
-LZW_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(LZW_DIR))
+LZW_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(LZW_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# LZW support sources (i.e., C files)
diff --git a/src/otvalid/rules.mk b/src/otvalid/rules.mk
index 53bd41e5e..745433580 100644
--- a/src/otvalid/rules.mk
+++ b/src/otvalid/rules.mk
@@ -20,7 +20,10 @@ OTV_DIR := $(SRC_DIR)/otvalid
# compilation flags for the driver
#
-OTV_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(OTV_DIR))
+OTV_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(OTV_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# OTV driver sources (i.e., C files)
diff --git a/src/pcf/rules.mk b/src/pcf/rules.mk
index 78641528f..1b55daf4f 100644
--- a/src/pcf/rules.mk
+++ b/src/pcf/rules.mk
@@ -30,7 +30,10 @@
PCF_DIR := $(SRC_DIR)/pcf
-PCF_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(PCF_DIR))
+PCF_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(PCF_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# pcf driver sources (i.e., C files)
diff --git a/src/pfr/rules.mk b/src/pfr/rules.mk
index 60b96c741..01f44f14c 100644
--- a/src/pfr/rules.mk
+++ b/src/pfr/rules.mk
@@ -20,7 +20,10 @@ PFR_DIR := $(SRC_DIR)/pfr
# compilation flags for the driver
#
-PFR_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(PFR_DIR))
+PFR_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(PFR_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# pfr driver sources (i.e., C files)
diff --git a/src/psaux/rules.mk b/src/psaux/rules.mk
index 7a1be37b6..788d813cb 100644
--- a/src/psaux/rules.mk
+++ b/src/psaux/rules.mk
@@ -20,7 +20,10 @@ PSAUX_DIR := $(SRC_DIR)/psaux
# compilation flags for the driver
#
-PSAUX_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(PSAUX_DIR))
+PSAUX_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(PSAUX_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# PSAUX driver sources (i.e., C files)
diff --git a/src/pshinter/rules.mk b/src/pshinter/rules.mk
index 888ece105..afc4a403a 100644
--- a/src/pshinter/rules.mk
+++ b/src/pshinter/rules.mk
@@ -20,7 +20,10 @@ PSHINTER_DIR := $(SRC_DIR)/pshinter
# compilation flags for the driver
#
-PSHINTER_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(PSHINTER_DIR))
+PSHINTER_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(PSHINTER_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# PSHINTER driver sources (i.e., C files)
diff --git a/src/psnames/rules.mk b/src/psnames/rules.mk
index f321de2d6..278f6596d 100644
--- a/src/psnames/rules.mk
+++ b/src/psnames/rules.mk
@@ -20,7 +20,10 @@ PSNAMES_DIR := $(SRC_DIR)/psnames
# compilation flags for the driver
#
-PSNAMES_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(PSNAMES_DIR))
+PSNAMES_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(PSNAMES_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# PSNames driver sources (i.e., C files)
diff --git a/src/raster/rules.mk b/src/raster/rules.mk
index 0e0b5e4eb..6683ed743 100644
--- a/src/raster/rules.mk
+++ b/src/raster/rules.mk
@@ -19,7 +19,10 @@ RASTER_DIR := $(SRC_DIR)/raster
# compilation flags for the driver
#
-RASTER_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(RASTER_DIR))
+RASTER_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(RASTER_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# raster driver sources (i.e., C files)
diff --git a/src/sfnt/rules.mk b/src/sfnt/rules.mk
index a6c956ab6..b6e5aa077 100644
--- a/src/sfnt/rules.mk
+++ b/src/sfnt/rules.mk
@@ -20,7 +20,10 @@ SFNT_DIR := $(SRC_DIR)/sfnt
# compilation flags for the driver
#
-SFNT_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(SFNT_DIR))
+SFNT_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(SFNT_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# SFNT driver sources (i.e., C files)
diff --git a/src/smooth/rules.mk b/src/smooth/rules.mk
index 88d0aa53a..c8ac81ca9 100644
--- a/src/smooth/rules.mk
+++ b/src/smooth/rules.mk
@@ -17,9 +17,13 @@
#
SMOOTH_DIR := $(SRC_DIR)/smooth
+
# compilation flags for the driver
#
-SMOOTH_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(SMOOTH_DIR))
+SMOOTH_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(SMOOTH_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# smooth driver sources (i.e., C files)
diff --git a/src/truetype/rules.mk b/src/truetype/rules.mk
index d4b69f578..e39235be5 100644
--- a/src/truetype/rules.mk
+++ b/src/truetype/rules.mk
@@ -20,7 +20,10 @@ TT_DIR := $(SRC_DIR)/truetype
# compilation flags for the driver
#
-TT_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(TT_DIR))
+TT_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(TT_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# TrueType driver sources (i.e., C files)
diff --git a/src/type1/rules.mk b/src/type1/rules.mk
index 15087b030..160946a2e 100644
--- a/src/type1/rules.mk
+++ b/src/type1/rules.mk
@@ -20,7 +20,10 @@ T1_DIR := $(SRC_DIR)/type1
# compilation flags for the driver
#
-T1_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(T1_DIR))
+T1_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(T1_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# Type1 driver sources (i.e., C files)
diff --git a/src/type42/rules.mk b/src/type42/rules.mk
index eac1081eb..34a31e87f 100644
--- a/src/type42/rules.mk
+++ b/src/type42/rules.mk
@@ -20,7 +20,10 @@ T42_DIR := $(SRC_DIR)/type42
# compilation flags for the driver
#
-T42_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(T42_DIR))
+T42_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(T42_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# Type42 driver source
diff --git a/src/winfonts/rules.mk b/src/winfonts/rules.mk
index 71a7df2d8..1a7817152 100644
--- a/src/winfonts/rules.mk
+++ b/src/winfonts/rules.mk
@@ -18,7 +18,10 @@
FNT_DIR := $(SRC_DIR)/winfonts
-FNT_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(FNT_DIR))
+FNT_COMPILE := $(CC) $(ANSIFLAGS) \
+ $I$(subst /,$(COMPILER_SEP),$(FNT_DIR)) \
+ $(INCLUDE_FLAGS) \
+ $(FT_CFLAGS)
# Windows driver sources (i.e., C files)