* Makefile, *.mk: Use `?=' where appropriate.

* builds/detect.mk (TOP_DIR), builds/os2/os2-dev.mk (TOP_DIR),
builds/win32/w32-dev.mk (TOP_DIR): Removed.  Defined elsewhere.
This commit is contained in:
Werner Lemberg 2006-02-01 07:52:11 +00:00
parent 9a8006b18e
commit 8a4de0d669
22 changed files with 59 additions and 126 deletions

View File

@ -9,6 +9,11 @@
* builds/unix/install.mk (install): Fix path for ftmodule.h. * builds/unix/install.mk (install): Fix path for ftmodule.h.
* Makefile, *.mk: Use `?=' where appropriate.
* builds/detect.mk (TOP_DIR), builds/os2/os2-dev.mk (TOP_DIR),
builds/win32/w32-dev.mk (TOP_DIR): Removed. Defined elsewhere.
2006-01-31 Werner Lemberg <wl@gnu.org> 2006-01-31 Werner Lemberg <wl@gnu.org>
Implement new, simplified module selection. With GNU make it is now Implement new, simplified module selection. With GNU make it is now

View File

@ -15,22 +15,18 @@
# Project names # Project names
# #
PROJECT := freetype PROJECT := freetype
PROJECT_TITLE := FreeType PROJECT_TITLE := FreeType
# The variable TOP_DIR holds the path to the topmost directory in the project # The variable TOP_DIR holds the path to the topmost directory in the project
# engine source hierarchy. If it is not defined, default it to `.'. # engine source hierarchy. If it is not defined, default it to `.'.
# #
ifndef TOP_DIR TOP_DIR ?= .
TOP_DIR := .
endif
# The variable OBJ_DIR gives the location where object files and the # The variable OBJ_DIR gives the location where object files and the
# FreeType library are built. # FreeType library are built.
# #
ifndef OBJ_DIR OBJ_DIR ?= $(TOP_DIR)/objs
OBJ_DIR := $(TOP_DIR)/objs
endif
include $(TOP_DIR)/builds/toplevel.mk include $(TOP_DIR)/builds/toplevel.mk

View File

@ -63,9 +63,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c
CFLAGS := -c
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -65,9 +65,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c
CFLAGS := -c
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -62,9 +62,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c
CFLAGS := -c
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -75,10 +73,8 @@ ANSIFLAGS :=
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = $(AR) -r $@ $(subst /,$(COMPILER_SEP),$(OBJECTS_LIST))
endif
LINK_LIBRARY = $(AR) -r $@ $(subst /,$(COMPILER_SEP),$(OBJECTS_LIST))
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -62,9 +62,7 @@ T := -o
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -q -c -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
CFLAGS := -q -c -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -73,10 +71,8 @@ ANSIFLAGS := -A
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
endif
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -62,9 +62,7 @@ T := -o
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c -q -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
CFLAGS := -c -q -y -d -v -Od -w-par -w-ccc -w-rch -w-pro -w-aus
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -73,10 +71,8 @@ ANSIFLAGS := -A
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
endif
LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%))
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 2003 by # Copyright 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -61,9 +61,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c -g -O6 -Wall
CFLAGS := -c -g -O6 -Wall
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -72,10 +70,8 @@ ANSIFLAGS :=
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = $(foreach m,$(OBJECTS_LIST),$(AR) -r $@ $(m);) echo > nul
endif
LINK_LIBRARY = $(foreach m,$(OBJECTS_LIST),$(AR) -r $@ $(m);) echo > nul
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2004, 2005 by # Copyright 1996-2000, 2003, 2004, 2005, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -87,10 +87,8 @@ ANSIFLAGS := -ansi -pedantic
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
endif
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005 by # Copyright 1996-2000, 2003, 2005, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -61,9 +61,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c -g -O6 -Wall
CFLAGS := -c -g -O6 -Wall
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -72,10 +70,8 @@ ANSIFLAGS := -ansi -pedantic
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
endif
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -69,9 +69,7 @@ T := /Fo
# _does_ compute an arithmetic value, so we disable this warning # _does_ compute an arithmetic value, so we disable this warning
# with "/Qwd32". # with "/Qwd32".
# #
ifndef CFLAGS CFLAGS ?= /nologo /c /Ox /G5 /W3 /Qwd32
CFLAGS := /nologo /c /Ox /G5 /W3 /Qwd32
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -63,9 +63,7 @@ T := -o$(space)
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c -g
CFLAGS := -c -g
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -78,10 +76,8 @@ ANSIFLAGS := -A
# library linking # library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(PROJECT_LIBRARY)
CLEAN_LIBRARY = $(DELETE) $(PROJECT_LIBRARY) LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
endif
LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST)
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -60,9 +60,7 @@ T := /Fo
# #
# These should concern: debug output, optimization & warnings. # These should concern: debug output, optimization & warnings.
# #
ifndef CFLAGS CFLAGS ?= /Q- /Gd+ /O2 /G5 /W3 /C
CFLAGS := /Q- /Gd+ /O2 /G5 /W3 /C
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2005 by # Copyright 1996-2000, 2003, 2005, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -66,9 +66,7 @@ TE := /Fe
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= /nologo /c /Ox /G5 /W3 /WX
CFLAGS := /nologo /c /Ox /G5 /W3 /WX
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -63,9 +63,7 @@ T := -FO=
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -zq
CFLAGS := -zq
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #
@ -74,12 +72,10 @@ ANSIFLAGS := -za
# Library linking # Library linking
# #
ifndef CLEAN_LIBRARY CLEAN_LIBRARY ?= $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY))
CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) LINK_LIBRARY = $(subst /,$(COMPILER_SEP), \
endif wlib -q -n $@; \
LINK_LIBRARY = $(subst /,$(COMPILER_SEP), \ $(foreach m, $(OBJECTS_LIST), wlib -q $@ +$(m);) \
wlib -q -n $@; \ echo > nul)
$(foreach m, $(OBJECTS_LIST), wlib -q $@ +$(m);) \
echo > nul)
# EOF # EOF

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003 by # Copyright 1996-2000, 2003, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -63,9 +63,7 @@ T := -Fo
# Use the ANSIFLAGS variable to define the compiler flags used to enfore # Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance. # ANSI compliance.
# #
ifndef CFLAGS CFLAGS ?= -c -g2 -O
CFLAGS := -c -g2 -O
endif
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant. # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
# #

View File

@ -38,12 +38,6 @@
# TOP_DIR The top-most directory in the FreeType library source # TOP_DIR The top-most directory in the FreeType library source
# hierarchy. If not defined, it will default to `.'. # hierarchy. If not defined, it will default to `.'.
# If TOP_DIR is not defined, default it to `.'
#
ifndef TOP_DIR
TOP_DIR := .
endif
# Set auto-detection default to `ansi' resp. UNIX-like operating systems. # Set auto-detection default to `ansi' resp. UNIX-like operating systems.
# #
PLATFORM := ansi PLATFORM := ansi

View File

@ -3,7 +3,7 @@
# #
# Copyright 1996-2000, 2003, 2004 by # Copyright 1996-2000, 2003, 2004, 2006 by
# David Turner, Robert Wilhelm, and Werner Lemberg. # David Turner, Robert Wilhelm, and Werner Lemberg.
# #
# This file is part of the FreeType project, and may only be used, modified, # This file is part of the FreeType project, and may only be used, modified,
@ -73,9 +73,7 @@ ifeq ($(PLATFORM),dos)
# Use DJGPP (i.e. gcc) by default. # Use DJGPP (i.e. gcc) by default.
# #
CONFIG_FILE := dos-gcc.mk CONFIG_FILE := dos-gcc.mk
ifndef CC CC ?= gcc
CC := gcc
endif
# additionally, we provide hooks for various other compilers # additionally, we provide hooks for various other compilers
# #

View File

@ -105,9 +105,7 @@ CACHE_DIR := $(PUBLIC_DIR)/cache
# The documentation directory. # The documentation directory.
# #
ifndef DOC_DIR DOC_DIR ?= $(TOP_DIR)/docs/reference
DOC_DIR := $(TOP_DIR)/docs/reference
endif
# The final name of the library file. # The final name of the library file.
# #
@ -192,9 +190,7 @@ FREETYPE_H := $(PUBLIC_H) $(BASE_H) $(CONFIG_H) $(CACHE_H) $(DEVEL_H)
# ftsystem component # ftsystem component
# #
ifndef FTSYS_SRC FTSYS_SRC ?= $(BASE_DIR)/ftsystem.c
FTSYS_SRC := $(BASE_DIR)/ftsystem.c
endif
FTSYS_OBJ := $(OBJ_DIR)/ftsystem.$O FTSYS_OBJ := $(OBJ_DIR)/ftsystem.$O
@ -206,9 +202,7 @@ $(FTSYS_OBJ): $(FTSYS_SRC) $(FREETYPE_H)
# ftdebug component # ftdebug component
# #
ifndef FTDEBUG_SRC FTDEBUG_SRC ?= $(BASE_DIR)/ftdebug.c
FTDEBUG_SRC := $(BASE_DIR)/ftdebug.c
endif
FTDEBUG_OBJ := $(OBJ_DIR)/ftdebug.$O FTDEBUG_OBJ := $(OBJ_DIR)/ftdebug.$O

View File

@ -15,10 +15,6 @@
# fully. # fully.
ifndef TOP_DIR
TOP_DIR := .
endif
DEVEL_DIR := $(TOP_DIR)/devel DEVEL_DIR := $(TOP_DIR)/devel
# include OS/2-specific definitions # include OS/2-specific definitions

View File

@ -58,9 +58,7 @@ endif
# FTMODULE_H, as its name suggests, indicates where the FreeType module # FTMODULE_H, as its name suggests, indicates where the FreeType module
# classes resides. # classes resides.
# #
ifndef FTMODULE_H FTMODULE_H ?= $(OBJ_DIR)/ftmodule.h
FTMODULE_H := $(OBJ_DIR)/ftmodule.h
endif
include $(MODULES_CFG) include $(MODULES_CFG)
@ -74,9 +72,7 @@ MODULES := $(FONT_MODULES) \
$(AUX_MODULES) $(AUX_MODULES)
ifndef CONFIG_MK CONFIG_MK ?= config.mk
CONFIG_MK := config.mk
endif
# If no configuration sub-makefile is present, or if `setup' is the target # If no configuration sub-makefile is present, or if `setup' is the target
# to be built, run the auto-detection rules to figure out which # to be built, run the auto-detection rules to figure out which

View File

@ -19,10 +19,6 @@
# Shell (_not_ Cygwin BASH)! # Shell (_not_ Cygwin BASH)!
# #
ifndef TOP_DIR
TOP_DIR := .
endif
DEVEL_DIR := $(TOP_DIR)/devel DEVEL_DIR := $(TOP_DIR)/devel
include $(TOP_DIR)/builds/win32/win32-def.mk include $(TOP_DIR)/builds/win32/win32-def.mk