diff options
author | Werner Lemberg <wl@gnu.org> | 2003-06-09 04:46:30 +0000 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2003-06-09 04:46:30 +0000 |
commit | 858f310b80da8655ba0d30a9551e8fbcc3de4818 (patch) | |
tree | d1b39ba4c9096f0e0f6980a1bc4a020a06fb92a7 /builds | |
parent | e0805659bb6548b4f3098ec28fe91c4ab4696f7b (diff) | |
download | freetype2-858f310b80da8655ba0d30a9551e8fbcc3de4818.tar.gz |
Completely revised FreeType's make management.
. In all makefiles `/' is used as the path separator. The
conversion to the real path separators is done as late as
possible using $(subst ...).
. $(HOSTSEP) no longer exists. Now, $(SEP) gives the path separator
for the operating system, and the new $(COMPILER_SEP) the path
separator for the compiler tools.
. $(BUILD) has been renamed to $(BUILD_DIR). In general, all
directory variables end with `_DIR'. The variants ending in `_'
(like `BASE_' have been removed).
The following ChangeLog entries only describe changes which are
not related to the redesign.
* builds/beos/beos-def.mk (BUILD_DIR): Fix typo.
* builds/compiler/watcom.mk (LINK_LIBRARY): Fix linker call to avoid
overlong arguments as suggested by J. Ali Harlow
<ali@avrc.city.ac.uk>.
* builds/dos/dos-wat.mk: New file.
* builds/freetype.mk (FREETYPE_H): Include header files from the
`devel' subdirectory.
* builds/os2/os2-dev.mk, builds/unix/unixddef.mk,
builds/unix/unixddef.mk, builds/win32/w32-bccd.mk,
builds/win32/w32-dev.mk (BUILD_DIR): Fix path.
* builds/unix/configure.ac, builds/unic/configure: Updated.
* builds/unix/unix-def.in (DISTCLEAN): Add `freetype2.pc'.
* devel/ftoption.h: Updated.
Diffstat (limited to 'builds')
50 files changed, 275 insertions, 266 deletions
diff --git a/builds/ansi/ansi-def.mk b/builds/ansi/ansi-def.mk index 032a7b802..bf2aa36f1 100644 --- a/builds/ansi/ansi-def.mk +++ b/builds/ansi/ansi-def.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -17,11 +17,10 @@ ifndef TOP_DIR TOP_DIR := . endif -DELETE := rm -f -SEP := / -HOSTSEP := $(SEP) -BUILD := $(TOP_DIR)/builds/ansi -PLATFORM := ansi +DELETE := rm -f +SEP := / +BUILD_DIR := $(TOP_DIR)/builds/ansi +PLATFORM := ansi # The directory where all object files are placed. @@ -34,7 +33,7 @@ PLATFORM := ansi # make -f $TOP_DIR/Makefile # ifndef OBJ_DIR - OBJ_DIR := $(TOP_DIR)$(SEP)objs + OBJ_DIR := $(TOP_DIR)/objs endif diff --git a/builds/ansi/ansi.mk b/builds/ansi/ansi.mk index 739d48591..32b3bac3e 100644 --- a/builds/ansi/ansi.mk +++ b/builds/ansi/ansi.mk @@ -17,4 +17,5 @@ include $(TOP_DIR)/builds/ansi/ansi-def.mk include $(TOP_DIR)/builds/compiler/ansi-cc.mk include $(TOP_DIR)/builds/link_std.mk + # EOF diff --git a/builds/beos/beos-def.mk b/builds/beos/beos-def.mk index eb55db94b..b569fe62c 100644 --- a/builds/beos/beos-def.mk +++ b/builds/beos/beos-def.mk @@ -5,7 +5,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -19,11 +19,10 @@ ifndef TOP_DIR TOP_DIR := . endif -DELETE := rm -f -SEP := / -HOSTSEP := $(SEP) -BUILD := $(TOP_DIR)/builds/neos -PLATFORM := beos +DELETE := rm -f +SEP := / +BUILD_DIR := $(TOP_DIR)/builds/beos +PLATFORM := beos # The directory where all object files are placed. @@ -36,7 +35,7 @@ PLATFORM := beos # make -f $TOP_DIR/Makefile # ifndef OBJ_DIR - OBJ_DIR := $(TOP_DIR)$(SEP)objs + OBJ_DIR := $(TOP_DIR)/objs endif diff --git a/builds/beos/beos.mk b/builds/beos/beos.mk index 1ccf8cea0..1bc8e3ae3 100644 --- a/builds/beos/beos.mk +++ b/builds/beos/beos.mk @@ -15,5 +15,5 @@ include $(TOP_DIR)/builds/compiler/ansi-cc.mk include $(TOP_DIR)/builds/beos/beos-def.mk include $(TOP_DIR)/builds/link_std.mk -# EOF +# EOF diff --git a/builds/beos/detect.mk b/builds/beos/detect.mk index 89b3f685e..8333aba4f 100644 --- a/builds/beos/detect.mk +++ b/builds/beos/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -27,15 +27,14 @@ endif ifeq ($(PLATFORM),beos) - DELETE := rm -f - SEP := / - HOSTSEP := $(SEP) - BUILD := $(TOP_DIR)/builds/beos + DELETE := rm -f + SEP := / + BUILD_DIR := $(TOP_DIR)/builds/beos CONFIG_FILE := beos.mk setup: std_setup endif # test PLATFORM beos -# EOF +# EOF diff --git a/builds/compiler/ansi-cc.mk b/builds/compiler/ansi-cc.mk index 0309e39fc..c52c12fcc 100644 --- a/builds/compiler/ansi-cc.mk +++ b/builds/compiler/ansi-cc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,9 @@ # Compiler command line name # -CC := cc +CC := cc +COMPILER_SEP := $(SEP) + # The object file extension (for standard and static libraries). This can be # .o, .tco, .obj, etc., depending on the platform. @@ -74,8 +76,9 @@ ANSIFLAGS := # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif -LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST) +LINK_LIBRARY = $(AR) -r $@ $(subst /,$(COMPILER_SEP),$(OBJECTS_LIST)) + # EOF diff --git a/builds/compiler/bcc-dev.mk b/builds/compiler/bcc-dev.mk index aa5c369d8..446fd4e62 100644 --- a/builds/compiler/bcc-dev.mk +++ b/builds/compiler/bcc-dev.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,9 @@ # Compiler command line name # -CC := bcc32 +CC := bcc32 +COMPILER_SEP := $(SEP) + # The object file extension (for standard and static libraries). This can be # .o, .tco, .obj, etc., depending on the platform. @@ -72,9 +74,9 @@ ANSIFLAGS := -A # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif -TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST)) -LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%) +LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%)) + # EOF diff --git a/builds/compiler/bcc.mk b/builds/compiler/bcc.mk index 938eceeac..eedfa10fb 100644 --- a/builds/compiler/bcc.mk +++ b/builds/compiler/bcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,9 @@ # Compiler command line name # -CC := bcc32 +CC := bcc32 +COMPILER_SEP := $(SEP) + # The object file extension (for standard and static libraries). This can be # .o, .tco, .obj, etc., depending on the platform. @@ -72,9 +74,9 @@ ANSIFLAGS := -A # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif -TARGET_OBJECTS = $(subst $(SEP),\\,$(OBJECTS_LIST)) -LINK_LIBRARY = tlib /u $(subst $(SEP),\\,$@) $(TARGET_OBJECTS:%=+%) +LINK_LIBRARY = tlib /u $(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST:%=+%)) + # EOF diff --git a/builds/compiler/gcc-dev.mk b/builds/compiler/gcc-dev.mk index 76d0ba0b5..c52f79f96 100644 --- a/builds/compiler/gcc-dev.mk +++ b/builds/compiler/gcc-dev.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,9 @@ # Compiler command line name # -CC := gcc +CC := gcc +COMPILER_SEP := / + # The object file extension (for standard and static libraries). This can be # .o, .tco, .obj, etc., depending on the platform. @@ -82,8 +84,9 @@ ANSIFLAGS := -ansi -pedantic # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST) + # EOF diff --git a/builds/compiler/gcc.mk b/builds/compiler/gcc.mk index f2c94de3b..83ee981c5 100644 --- a/builds/compiler/gcc.mk +++ b/builds/compiler/gcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,9 @@ # Compiler command line name # -CC := gcc +CC := gcc +COMPILER_SEP := / + # The object file extension (for standard and static libraries). This can be # .o, .tco, .obj, etc., depending on the platform. @@ -71,8 +73,9 @@ ANSIFLAGS := -ansi -pedantic # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST) + # EOF diff --git a/builds/compiler/intelc.mk b/builds/compiler/intelc.mk index 0c3088a73..954dcf64c 100644 --- a/builds/compiler/intelc.mk +++ b/builds/compiler/intelc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # compiler command line name # -CC := icl +CC := icl +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -79,6 +80,7 @@ ANSIFLAGS := /Qansi /Za # Library linking # #CLEAN_LIBRARY = -LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST) +LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST)) + # EOF diff --git a/builds/compiler/unix-lcc.mk b/builds/compiler/unix-lcc.mk index fd8c7fbd9..cf4ef5a00 100644 --- a/builds/compiler/unix-lcc.mk +++ b/builds/compiler/unix-lcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # Command line name # -CC := lcc +CC := lcc +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -78,8 +79,9 @@ ANSIFLAGS := -A # library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(PROJECT_LIBRARY) endif LINK_LIBRARY = $(AR) -r $@ $(OBJECTS_LIST) + # EOF diff --git a/builds/compiler/visualage.mk b/builds/compiler/visualage.mk index 3d07ac6ec..21ef12b27 100644 --- a/builds/compiler/visualage.mk +++ b/builds/compiler/visualage.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # command line compiler name # -CC := icc +CC := icc +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -71,6 +72,7 @@ ANSI_FLAGS := /Sa # Library linking # #CLEAN_LIBRARY := -LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST) +LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST)) + # EOF diff --git a/builds/compiler/visualc.mk b/builds/compiler/visualc.mk index 235a4df06..92d71a974 100644 --- a/builds/compiler/visualc.mk +++ b/builds/compiler/visualc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # compiler command line name # -CC := cl +CC := cl +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -74,6 +75,7 @@ ANSIFLAGS := /Za # Library linking # #CLEAN_LIBRARY = -LINK_LIBRARY = lib /nologo /out:$@ $(OBJECTS_LIST) +LINK_LIBRARY = lib /nologo /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST)) + # EOF diff --git a/builds/compiler/watcom.mk b/builds/compiler/watcom.mk index 7669ed620..f9e1764ab 100644 --- a/builds/compiler/watcom.mk +++ b/builds/compiler/watcom.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # Compiler command line name # -CC := wcc386 +CC := wcc386 +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -74,8 +75,10 @@ ANSIFLAGS := -za # Library linking # ifndef CLEAN_LIBRARY - CLEAN_LIBRARY = $(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) + CLEAN_LIBRARY = $(DELETE) $(subst /,$(SEP),$(PROJECT_LIBRARY)) endif -LINK_LIBRARY = wlib -q -o = $@ $(OBJECTS_LIST) +LINK_LIBRARY = $(subst /,$(COMPILER_SEP), \ + wlib -q -n $@; \ + $(foreach m, $(OBJECTS_LIST), wlib -q $@ +$(m);)) # EOF diff --git a/builds/compiler/win-lcc.mk b/builds/compiler/win-lcc.mk index 6e9512ae5..c500d82cf 100644 --- a/builds/compiler/win-lcc.mk +++ b/builds/compiler/win-lcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -15,7 +15,8 @@ # Command line name # -CC := lcc +CC := lcc +COMPILER_SEP := $(SEP) # The object file extension (for standard and static libraries). This can be @@ -76,6 +77,7 @@ ANSIFLAGS := # library linking # #CLEAN_LIBRARY := -LINK_LIBRARY = lcclib /out:$(subst $(SEP),\\,$@) $(subst $(SEP),\\,$(OBJECTS_LIST)) +LINK_LIBRARY = lcclib /out:$(subst /,$(COMPILER_SEP),$@ $(OBJECTS_LIST)) + # EOF diff --git a/builds/detect.mk b/builds/detect.mk index ad825adbc..13525c47d 100644 --- a/builds/detect.mk +++ b/builds/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2001, 2002, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -16,7 +16,7 @@ # This sub-Makefile is in charge of detecting the current platform. It sets # the following variables: # -# BUILD The configuration and system-specific directory. Usually +# BUILD_DIR The configuration and system-specific directory. Usually # `freetype/builds/$(PLATFORM)' but can be different for # custom builds of the library. # @@ -30,6 +30,7 @@ # DELETE The shell command used to remove a given file. # COPY The shell command used to copy one file. # SEP The platform-specific directory separator. +# COMPILER_SEP The separator used in arguments of the compilation tools. # CC The compiler to use. # # You need to set the following variable(s) before calling it: @@ -44,17 +45,17 @@ ifndef TOP_DIR endif # Set auto-detection default to `ansi' resp. UNIX-like operating systems. -# Note that we delay evaluation of $(BUILD_CONFIG_), $(BUILD), and -# $(CONFIG_RULES). # -PLATFORM := ansi -DELETE := $(RM) -COPY := cp -SEP := / +PLATFORM := ansi +DELETE := $(RM) +COPY := cp +SEP := / -BUILD_CONFIG_ = $(TOP_DIR)$(SEP)builds$(SEP) -BUILD = $(BUILD_CONFIG_)$(PLATFORM) -CONFIG_RULES = $(BUILD)$(SEP)$(CONFIG_FILE) +BUILD_CONFIG := $(TOP_DIR)/builds + +# These two assignments must be delayed. +BUILD_DIR = $(BUILD_CONFIG)/$(PLATFORM) +CONFIG_RULES = $(BUILD_DIR)/$(CONFIG_FILE) # We define the BACKSLASH variable to hold a single back-slash character. # This is needed because a line like @@ -72,12 +73,12 @@ BACKSLASH := $(strip \ ) # Find all auto-detectable platforms. # -PLATFORMS_ := $(notdir $(subst /detect.mk,,$(wildcard $(BUILD_CONFIG_)*/detect.mk))) -.PHONY: $(PLATFORMS_) ansi +PLATFORMS := $(notdir $(subst /detect.mk,,$(wildcard $(BUILD_CONFIG)/*/detect.mk))) +.PHONY: $(PLATFORMS) ansi # Filter out platform specified as setup target. # -PLATFORM := $(firstword $(filter $(MAKECMDGOALS),$(PLATFORMS_))) +PLATFORM := $(firstword $(filter $(MAKECMDGOALS),$(PLATFORMS))) # If no setup target platform was specified, enable auto-detection/ # default platform. @@ -94,7 +95,7 @@ ifeq ($(findstring ansi,$(MAKECMDGOALS)),) # directories. Note that the calling order of the various `detect.mk' # files isn't predictable. # - include $(wildcard $(BUILD_CONFIG_)*/detect.mk) + include $(wildcard $(BUILD_CONFIG)/*/detect.mk) endif # In case no detection rule file was successful, use the default. @@ -121,7 +122,7 @@ std_setup: @echo "" @echo " platform $(PLATFORM)" @echo " compiler $(CC)" - @echo " configuration directory $(BUILD)" + @echo " configuration directory $(BUILD_DIR)" @echo " configuration rules $(CONFIG_RULES)" @echo "" @echo "If this does not correspond to your system or settings please remove the file" @@ -142,8 +143,8 @@ dos_setup: @type builds\newline @echo platformÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(PLATFORM) @echo compilerÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ$(CC) - @echo configuration directoryÿÿÿÿÿÿ$(BUILD) - @echo configuration rulesÿÿÿÿÿÿÿÿÿÿ$(CONFIG_RULES) + @echo configuration directoryÿÿÿÿÿÿ$(subst /,\,$(BUILD_DIR)) + @echo configuration rulesÿÿÿÿÿÿÿÿÿÿ$(subst /,\,$(CONFIG_RULES)) @type builds\newline @echo If this does not correspond to your system or settings please remove the file @echo '$(CONFIG_MK)' from this directory then read the INSTALL file for help. @@ -152,4 +153,5 @@ dos_setup: @type builds\newline @$(COPY) $(subst /,\,$(CONFIG_RULES) $(CONFIG_MK)) > nul + # EOF diff --git a/builds/dos/detect.mk b/builds/dos/detect.mk index 046784887..4dba521a7 100644 --- a/builds/dos/detect.mk +++ b/builds/dos/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -57,7 +57,6 @@ ifeq ($(PLATFORM),dos) # Use DJGPP (i.e. gcc) by default. # CONFIG_FILE := dos-gcc.mk - SEP := / ifndef CC CC := gcc endif @@ -66,7 +65,6 @@ ifeq ($(PLATFORM),dos) # ifneq ($(findstring turboc,$(MAKECMDGOALS)),) # Turbo C CONFIG_FILE := dos-tcc.mk - SEP := $(BACKSLASH) CC := tcc turboc: setup .PHONY: turboc @@ -74,7 +72,6 @@ ifeq ($(PLATFORM),dos) ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++ CONFIG_FILE := dos-wat.mk - SEP := $(BACKSLASH) CC := wcc386 watcom: setup .PHONY: watcom @@ -82,7 +79,6 @@ ifeq ($(PLATFORM),dos) ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C/C++ 32-bit CONFIG_FILE := dos-bcc.mk - SEP := $(BACKSLASH) CC := bcc32 borlandc: setup .PHONY: borlandc @@ -90,17 +86,18 @@ ifeq ($(PLATFORM),dos) ifneq ($(findstring borlandc16,$(MAKECMDGOALS)),) # Borland C/C++ 16-bit CONFIG_FILE := dos-bcc.mk - SEP := $(BACKSLASH) CC := bcc borlandc16: setup .PHONY: borlandc16 endif ifneq ($(findstring bash,$(SHELL)),) # check for bash + SEP := / DELETE := rm COPY := cp setup: std_setup else + SEP := $(BACKSLASH) DELETE := del COPY := copy setup: dos_setup @@ -108,4 +105,5 @@ ifeq ($(PLATFORM),dos) endif # test PLATFORM dos + # EOF diff --git a/builds/dos/dos-def.mk b/builds/dos/dos-def.mk index d2bcbd437..d6bc72e7b 100644 --- a/builds/dos/dos-def.mk +++ b/builds/dos/dos-def.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,15 +13,10 @@ # fully. -DELETE := del -HOSTSEP := $(strip \ ) -BUILD := $(TOP_DIR)$(SEP)builds$(SEP)dos -PLATFORM := dos - -# except for DJGPP/GCC on Dos -ifndef SEP -SEP := $(HOSTSEP) -endif +DELETE := del +SEP := $(strip \ ) +BUILD_DIR := $(TOP_DIR)/builds/dos +PLATFORM := dos # The directory where all object files are placed. @@ -34,7 +29,7 @@ endif # make -f %TOP_DIR%/Makefile # ifndef OBJ_DIR - OBJ_DIR := $(TOP_DIR)$(SEP)objs + OBJ_DIR := $(TOP_DIR)/objs endif diff --git a/builds/dos/dos-gcc.mk b/builds/dos/dos-gcc.mk index 14a9d38dd..e14255c1f 100644 --- a/builds/dos/dos-gcc.mk +++ b/builds/dos/dos-gcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,10 +13,9 @@ # fully. -SEP := / - include $(TOP_DIR)/builds/dos/dos-def.mk include $(TOP_DIR)/builds/compiler/gcc.mk include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/dos/dos-wat.mk b/builds/dos/dos-wat.mk new file mode 100644 index 000000000..0c39e4979 --- /dev/null +++ b/builds/dos/dos-wat.mk @@ -0,0 +1,17 @@ +# +# FreeType 2 configuration rules for the Watcom C/C++ compiler +# + + +# 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. + +include $(TOP_DIR)/builds/dos/dos-def.mk +include $(TOP_DIR)/builds/compiler/watcom.mk +include $(TOP_DIR)/builds/link_dos.mk + + +# EOF diff --git a/builds/freetype.mk b/builds/freetype.mk index 9b5921cc9..6948ab82d 100644 --- a/builds/freetype.mk +++ b/builds/freetype.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2002 by +# Copyright 1996-2000, 2001, 2002, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -20,7 +20,7 @@ # The following variables (set by other Makefile components, in the # environment, or on the command line) are used: # -# BUILD The architecture dependent directory, +# BUILD_DIR The architecture dependent directory, # e.g. `$(TOP_DIR)/builds/unix'. # # OBJ_DIR The directory in which object files are created. @@ -63,6 +63,7 @@ # `distclean' target. # # TOP_DIR, SEP, +# COMPILER_SEP, # LIBRARY, CC, # A, I, O, T Check `config.mk' for details. @@ -83,43 +84,24 @@ multi: objects library # The FreeType source directory, usually `./src'. # -SRC := $(TOP_DIR)$(SEP)src - +SRC_DIR := $(TOP_DIR)/src # The directory where the base layer components are placed, usually # `./src/base'. # -BASE_DIR := $(SRC)$(SEP)base - -# The build header file used to define all public header file names -# as macro. -# -ifndef FT_BUILD_H - FT_BUILD_H := $(TOP_DIR)$(SEP)include$(SEP)ft2build.h - FTBUILD_CMD := -else - FTBUILD_CMD = $(D)FT_BUILD_H=$(FT_BUILD_H) -endif +BASE_DIR := $(SRC_DIR)/base -# A few short-cuts in order to avoid typing $(SEP) all the time for the -# directory separator. -# -# For example: $(SRC_) equals to `./src/' where `.' is $(TOP_DIR). +# Other derived directories. # -# -SRC_ := $(SRC)$(SEP) -BASE_ := $(BASE_DIR)$(SEP) -OBJ_ := $(OBJ_DIR)$(SEP) -LIB_ := $(LIB_DIR)$(SEP) -PUBLIC_ := $(TOP_DIR)$(SEP)include$(SEP)freetype$(SEP) -INTERNAL_ := $(PUBLIC_)internal$(SEP) -CONFIG_ := $(PUBLIC_)config$(SEP) -CACHE_ := $(PUBLIC_)cache$(SEP) +PUBLIC_DIR := $(TOP_DIR)/include/freetype +INTERNAL_DIR := $(PUBLIC_DIR)/internal +CONFIG_DIR := $(PUBLIC_DIR)/config +CACHE_DIR := $(PUBLIC_DIR)/cache # The final name of the library file. # -PROJECT_LIBRARY := $(LIB_)$(LIBRARY).$A +PROJECT_LIBRARY := $(LIB_DIR)/$(LIBRARY).$A # include paths @@ -130,7 +112,8 @@ PROJECT_LIBRARY := $(LIB_)$(LIBRARY).$A # in the `freetype/builds/<system>' directory, as these # files will override the default sources. # -INCLUDES := $(OBJ_DIR) $(BUILD) $(TOP_DIR)$(SEP)include +INCLUDES := $(subst /,$(COMPILER_SEP),$(OBJ_DIR) $(BUILD_DIR) \ + $(TOP_DIR)/include) INCLUDE_FLAGS = $(INCLUDES:%=$I%) @@ -164,46 +147,47 @@ OBJECTS_LIST := # This is used to simplify the dependency rules -- if one of these files # changes, the whole library is recompiled. # -PUBLIC_H := $(wildcard $(PUBLIC_)*.h) -BASE_H := $(wildcard $(INTERNAL_)*.h) -CONFIG_H := $(wildcard $(CONFIG_)*.h) \ - $(wildcard $(BUILD)$(SEP)freetype$(SEP)config$(SEP)*.h) -CACHE_H := $(wildcard $(CACHE_)*.h) +PUBLIC_H := $(wildcard $(PUBLIC_DIR)/*.h) +BASE_H := $(wildcard $(INTERNAL_DIR)/*.h) +CONFIG_H := $(wildcard $(CONFIG_DIR)/*.h) \ + $(wildcard $(BUILD_DIR)/freetype/config/*.h) +CACHE_H := $(wildcard $(CACHE_DIR)/*.h) +DEVEL_H := $(wildcard $(TOP_DIR)/devel/*.h) -FREETYPE_H := $(PUBLIC_H) $(BASE_H) $(CONFIG_H) $(CACHE_H) +FREETYPE_H := $(PUBLIC_H) $(BASE_H) $(CONFIG_H) $(CACHE_H) $(DEVEL_H) # ftsystem component # ifndef FTSYS_SRC - FTSYS_SRC = $(BASE_)ftsystem.c + FTSYS_SRC = $(BASE_DIR)/ftsystem.c endif -FTSYS_OBJ = $(OBJ_)ftsystem.$O +FTSYS_OBJ = $(OBJ_DIR)/ftsystem.$O OBJECTS_LIST += $(FTSYS_OBJ) $(FTSYS_OBJ): $(FTSYS_SRC) $(FREETYPE_H) - $(FT_COMPILE) $T$@ $< + $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) # ftdebug component # ifndef FTDEBUG_SRC - FTDEBUG_SRC = $(BASE_)ftdebug.c + FTDEBUG_SRC = $(BASE_DIR)/ftdebug.c endif -FTDEBUG_OBJ = $(OBJ_)ftdebug.$O +FTDEBUG_OBJ = $(OBJ_DIR)/ftdebug.$O OBJECTS_LIST += $(FTDEBUG_OBJ) $(FTDEBUG_OBJ): $(FTDEBUG_SRC) $(FREETYPE_H) - $(FT_COMPILE) $T$@ $< + $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) # Include all rule files from FreeType components. # -include $(wildcard $(SRC)/*/rules.mk) +include $(wildcard $(SRC_DIR)/*/rules.mk) # ftinit component @@ -217,13 +201,13 @@ include $(wildcard $(SRC)/*/rules.mk) # which contain additional include paths and macros used to compile the # single `ftinit.c' source. # -FTINIT_SRC := $(BASE_)ftinit.c -FTINIT_OBJ := $(OBJ_)ftinit.$O +FTINIT_SRC := $(BASE_DIR)/ftinit.c +FTINIT_OBJ := $(OBJ_DIR)/ftinit.$O OBJECTS_LIST += $(FTINIT_OBJ) $(FTINIT_OBJ): $(FTINIT_SRC) $(FREETYPE_H) $(FT_MODULE_LIST) - $(FT_COMPILE) $T$@ $< + $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) # All FreeType library objects @@ -255,7 +239,7 @@ objects: $(OBJECTS_LIST) library: $(PROJECT_LIBRARY) .c.$O: - $(FT_COMPILE) $T$@ $< + $(FT_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<) .PHONY: clean_project_std distclean_project_std @@ -280,10 +264,10 @@ distclean_project_std: clean_project_std # working correctly on Win9x. # clean_project_dos: - -$(DELETE) $(subst $(SEP),$(HOSTSEP),$(OBJ_))*.$O $(CLEAN) $(NO_OUTPUT) + -$(DELETE) $(subst /,\,$(OBJ)/*.$O $(CLEAN) $(NO_OUTPUT)) distclean_project_dos: clean_project_dos - -$(DELETE) $(subst $(SEP),$(HOSTSEP),$(PROJECT_LIBRARY)) $(DISTCLEAN) $(NO_OUTPUT) + -$(DELETE) $(subst /,\,$(PROJECT_LIBRARY) $(DISTCLEAN) $(NO_OUTPUT)) .PHONY: remove_config_mk @@ -291,7 +275,7 @@ distclean_project_dos: clean_project_dos # Remove configuration file (used for distclean). # remove_config_mk: - -$(DELETE) $(subst $(SEP),$(HOSTSEP),$(CONFIG_MK)) $(NO_OUTPUT) + -$(DELETE) $(subst /,$(SEP),$(CONFIG_MK) $(NO_OUTPUT)) .PHONY: clean distclean @@ -304,4 +288,5 @@ remove_config_mk: clean: clean_project distclean: distclean_project remove_config_mk + # EOF diff --git a/builds/link_dos.mk b/builds/link_dos.mk index bc36ed0ad..c37ac7e52 100644 --- a/builds/link_dos.mk +++ b/builds/link_dos.mk @@ -38,4 +38,5 @@ ifdef BUILD_PROJECT endif + # EOF diff --git a/builds/link_std.mk b/builds/link_std.mk index d59f2c3a3..0bd2163bb 100644 --- a/builds/link_std.mk +++ b/builds/link_std.mk @@ -38,4 +38,5 @@ ifdef BUILD_PROJECT endif + # EOF diff --git a/builds/modules.mk b/builds/modules.mk index 536ca5462..5102dc060 100644 --- a/builds/modules.mk +++ b/builds/modules.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -26,7 +26,7 @@ # resides. For now, it is in `include/freetype/config/ftmodule.h'. # ifndef MODULE_LIST - MODULE_LIST := $(TOP_DIR)$(SEP)include$(SEP)$(PROJECT)$(SEP)config$(SEP)ftmodule.h + MODULE_LIST := $(TOP_DIR)/include/$(PROJECT)/config/ftmodule.h endif # To build the modules list, we invoke the `make_module_list' target. @@ -39,8 +39,8 @@ endif ifneq ($(findstring $(PLATFORM),dos win32 win16 os2),) OPEN_MODULE := @echo$(space) - CLOSE_MODULE := >> $(subst $(SEP),$(HOSTSEP),$(MODULE_LIST)) - REMOVE_MODULE := @-$(DELETE) $(subst $(SEP),$(HOSTSEP),$(MODULE_LIST)) + CLOSE_MODULE := >> $(subst /,\,$(MODULE_LIST)) + REMOVE_MODULE := @-$(DELETE) $(subst /,\,$(MODULE_LIST)) else OPEN_MODULE := @echo " CLOSE_MODULE := " >> $(MODULE_LIST) @@ -53,7 +53,7 @@ endif # clean_module_list: $(REMOVE_MODULE) - @-echo Regenerating the modules list in $(MODULE_LIST)... + @-echo Regenerating modules list in $(MODULE_LIST)... make_module_list: clean_module_list @echo done. @@ -73,4 +73,5 @@ ECHO_DRIVER_DONE := )" # include $(wildcard $(TOP_DIR)/src/*/module.mk) + # EOF diff --git a/builds/os2/detect.mk b/builds/os2/detect.mk index d332be7f4..97e4bc972 100644 --- a/builds/os2/detect.mk +++ b/builds/os2/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -27,18 +27,17 @@ endif ifeq ($(PLATFORM),os2) - COPY := copy - DELETE := del + COPY := copy + DELETE := del + SEP := $(BACKSLASH) # gcc-emx by default CONFIG_FILE := os2-gcc.mk - SEP := / # additionally, we provide hooks for various other compilers # ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++ CONFIG_FILE := os2-icc.mk - SEP := $(BACKSLASH) CC := icc visualage: setup .PHONY: visualage @@ -46,7 +45,6 @@ ifeq ($(PLATFORM),os2) ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++ CONFIG_FILE := os2-wat.mk - SEP := $(BACKSLASH) CC := wcc386 watcom: setup .PHONY: watcom @@ -54,7 +52,6 @@ ifeq ($(PLATFORM),os2) ifneq ($(findstring borlandc,$(MAKECMDGOALS)),) # Borland C++ 32-bit CONFIG_FILE := os2-bcc.mk - SEP := $(BACKSLASH) CC := bcc32 borlandc: setup .PHONY: borlandc @@ -63,7 +60,6 @@ ifeq ($(PLATFORM),os2) ifneq ($(findstring devel,$(MAKECMDGOALS)),) # development target CONFIG_FILE := os2-dev.mk CC := gcc - SEP := / devel: setup .PHONY: devel endif @@ -72,4 +68,5 @@ ifeq ($(PLATFORM),os2) endif # test PLATFORM os2 + # EOF diff --git a/builds/os2/os2-def.mk b/builds/os2/os2-def.mk index ef4b8115d..26bf6a913 100644 --- a/builds/os2/os2-def.mk +++ b/builds/os2/os2-def.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,15 +13,10 @@ # fully. -DELETE := del -HOSTSEP := $(strip \ ) -BUILD := $(TOP_DIR)$(SEP)builds$(SEP)os2 -PLATFORM := os2 - -# except for GCC+emx on OS/2 -ifndef SEP - SEP := $(HOSTSEP) -endif +DELETE := del +SEP := $(strip \ ) +BUILD_DIR := $(TOP_DIR)/builds/os2 +PLATFORM := os2 # The directory where all object files are placed. @@ -34,7 +29,7 @@ endif # make -f %TOP_DIR%/Makefile # ifndef OBJ_DIR - OBJ_DIR := $(TOP_DIR)$(SEP)objs + OBJ_DIR := $(TOP_DIR)/objs endif @@ -55,4 +50,5 @@ LIBRARY := $(PROJECT) # NO_OUTPUT = 2> nul + # EOF diff --git a/builds/os2/os2-dev.mk b/builds/os2/os2-dev.mk index 6527b79ee..96890fa0b 100644 --- a/builds/os2/os2-dev.mk +++ b/builds/os2/os2-dev.mk @@ -5,7 +5,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -19,10 +19,8 @@ ifndef TOP_DIR TOP_DIR := . endif -SEP := / - include $(TOP_DIR)/builds/os2/os2-def.mk -BUILD := $(TOP_DIR)/builds/devel +BUILD_DIR := $(TOP_DIR)/devel include $(TOP_DIR)/builds/compiler/gcc-dev.mk diff --git a/builds/os2/os2-gcc.mk b/builds/os2/os2-gcc.mk index 5853862f0..446073e4f 100644 --- a/builds/os2/os2-gcc.mk +++ b/builds/os2/os2-gcc.mk @@ -13,8 +13,6 @@ # fully. -SEP := / - # include OS/2-specific definitions include $(TOP_DIR)/builds/os2/os2-def.mk @@ -24,4 +22,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/toplevel.mk b/builds/toplevel.mk index 2e9fbd082..08f50b42e 100644 --- a/builds/toplevel.mk +++ b/builds/toplevel.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2001, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -99,7 +99,9 @@ ifdef check_platform # # note: This test is duplicated in "builds/toplevel.mk". # - is_unix := $(strip $(wildcard /sbin/init) $(wildcard /usr/sbin/init) $(wildcard /hurd/auth)) + is_unix := $(strip $(wildcard /sbin/init) \ + $(wildcard /usr/sbin/init) \ + $(wildcard /hurd/auth)) ifneq ($(is_unix),) distclean: @@ -132,4 +134,5 @@ else endif # test check_platform + # EOF diff --git a/builds/unix/configure b/builds/unix/configure index 088fa76c1..a9edab106 100644 --- a/builds/unix/configure +++ b/builds/unix/configure @@ -4126,9 +4126,9 @@ fi rm -f conftest.mmap if test "$ac_cv_func_mmap_fixed_mapped" != yes; then - FTSYS_SRC='$(BASE_)ftsystem.c' + FTSYS_SRC='$(BASE_DIR)/ftsystem.c' else - FTSYS_SRC='$(BUILD)/ftsystem.c' + FTSYS_SRC='$(BUILD_DIR)/ftsystem.c' echo "$as_me:$LINENO: checking whether munmap must be declared" >&5 echo $ECHO_N "checking whether munmap must be declared... $ECHO_C" >&6 diff --git a/builds/unix/configure.ac b/builds/unix/configure.ac index e7ac82a01..78088b752 100644 --- a/builds/unix/configure.ac +++ b/builds/unix/configure.ac @@ -70,9 +70,9 @@ dnl checks for library functions dnl Here we check whether we can use our mmap file component. AC_FUNC_MMAP if test "$ac_cv_func_mmap_fixed_mapped" != yes; then - FTSYS_SRC='$(BASE_)ftsystem.c' + FTSYS_SRC='$(BASE_DIR)/ftsystem.c' else - FTSYS_SRC='$(BUILD)/ftsystem.c' + FTSYS_SRC='$(BUILD_DIR)/ftsystem.c' FT_MUNMAP_DECL FT_MUNMAP_PARAM diff --git a/builds/unix/detect.mk b/builds/unix/detect.mk index 516f8ffd8..9fc9d601d 100644 --- a/builds/unix/detect.mk +++ b/builds/unix/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000, 2002 by +# Copyright 1996-2000, 2002, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -18,7 +18,9 @@ ifeq ($(PLATFORM),ansi) # Note: this test is duplicated in "builds/toplevel.mk". # - is_unix := $(strip $(wildcard /sbin/init) $(wildcard /usr/sbin/init) $(wildcard /hurd/auth)) + is_unix := $(strip $(wildcard /sbin/init) \ + $(wildcard /usr/sbin/init) \ + $(wildcard /hurd/auth)) ifneq ($(is_unix),) PLATFORM := unix @@ -27,8 +29,8 @@ ifeq ($(PLATFORM),ansi) endif # test PLATFORM ansi ifeq ($(PLATFORM),unix) - COPY := cp - DELETE := rm -f + COPY := cp + DELETE := rm -f # If `devel' is the requested target, we use a special configuration # file named `unix-dev.mk'. It disables optimization and libtool. @@ -84,4 +86,5 @@ ifeq ($(PLATFORM),unix) endif # test PLATFORM unix + # EOF diff --git a/builds/unix/install.mk b/builds/unix/install.mk index eab00c0bd..935005edb 100644 --- a/builds/unix/install.mk +++ b/builds/unix/install.mk @@ -49,10 +49,11 @@ install: $(PROJECT_LIBRARY) $(INSTALL_DATA) \ $$P $(DESTDIR)$(includedir)/freetype2/freetype/cache ; \ done - $(INSTALL_DATA) $(BUILD)/ft2unix.h $(DESTDIR)$(includedir)/ft2build.h + $(INSTALL_DATA) $(BUILD_DIR)/ft2unix.h \ + $(DESTDIR)$(includedir)/ft2build.h $(INSTALL_SCRIPT) -m 755 $(OBJ_BUILD)/freetype-config \ $(DESTDIR)$(bindir)/freetype-config - $(INSTALL_SCRIPT) -m 644 $(BUILD)/freetype2.m4 \ + $(INSTALL_SCRIPT) -m 644 $(BUILD_DIR)/freetype2.m4 \ $(DESTDIR)$(datadir)/aclocal/freetype2.m4 $(INSTALL_SCRIPT) -m 644 $(OBJ_BUILD)/freetype2.pc \ $(DESTDIR)$(libdir)/pkgconfig/freetype2.pc diff --git a/builds/unix/unix-cc.in b/builds/unix/unix-cc.in index 90a83ba77..50df26784 100644 --- a/builds/unix/unix-cc.in +++ b/builds/unix/unix-cc.in @@ -1,10 +1,22 @@ -# template for Unix-specific compiler definitions # +# FreeType 2 template for Unix-specific compiler definitions +# + +# Copyright 1996-2000, 2002, 2003 by +# 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. -CC := @CC@ + +CC := @CC@ +COMPILER_SEP := $(SEP) ifndef LIBTOOL - LIBTOOL := $(BUILD)/libtool + LIBTOOL := $(BUILD_DIR)/libtool endif @@ -48,7 +60,7 @@ L := -l # Target flag. # -T := -o # Don't remove this comment line! We need the space after `-o'. +T := -o$(space) # C flags @@ -81,4 +93,5 @@ LINK_LIBRARY = $(LIBTOOL) --mode=link $(CCraw) -o $@ $(OBJECTS_LIST) \ -rpath $(libdir) -version-info $(version_info) \ $(LDFLAGS) + # EOF diff --git a/builds/unix/unix-def.in b/builds/unix/unix-def.in index 790bf8976..a9c1160c1 100644 --- a/builds/unix/unix-def.in +++ b/builds/unix/unix-def.in @@ -18,16 +18,15 @@ ifndef TOP_DIR endif TOP_DIR := $(shell cd $(TOP_DIR); pwd) -DELETE := @RMF@ -DELDIR := @RMDIR@ -SEP := / -HOSTSEP := $(SEP) -BUILD := $(TOP_DIR)/builds/unix -PLATFORM := unix +DELETE := @RMF@ +DELDIR := @RMDIR@ +SEP := / +BUILD_DIR := $(TOP_DIR)/builds/unix +PLATFORM := unix # this is used for `make distclean' and `make install' ifndef OBJ_BUILD - OBJ_BUILD := $(BUILD) + OBJ_BUILD := $(BUILD_DIR) endif # don't use `:=' here since the path stuff will be included after this file @@ -38,7 +37,7 @@ INSTALL := @INSTALL@ INSTALL_DATA := @INSTALL_DATA@ INSTALL_PROGRAM := @INSTALL_PROGRAM@ INSTALL_SCRIPT := @INSTALL_SCRIPT@ -MKINSTALLDIRS := $(BUILD)/mkinstalldirs +MKINSTALLDIRS := $(BUILD_DIR)/mkinstalldirs DISTCLEAN += $(OBJ_BUILD)/config.cache \ $(OBJ_BUILD)/config.log \ @@ -47,6 +46,7 @@ DISTCLEAN += $(OBJ_BUILD)/config.cache \ $(OBJ_BUILD)/unix-cc.mk \ $(OBJ_BUILD)/ftconfig.h \ $(OBJ_BUILD)/freetype-config \ + $(OBJ_BUILD)/freetype2.pc \ $(LIBTOOL) \ $(OBJ_BUILD)/Makefile @@ -96,4 +96,5 @@ SYSTEM_ZLIB := @SYSTEM_ZLIB@ # NO_OUTPUT := 2> /dev/null + # EOF diff --git a/builds/unix/unix-dev.mk b/builds/unix/unix-dev.mk index 2f10734f1..12c641af2 100644 --- a/builds/unix/unix-dev.mk +++ b/builds/unix/unix-dev.mk @@ -6,7 +6,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -17,9 +17,10 @@ include $(TOP_DIR)/builds/unix/unixddef.mk -BUILD := $(TOP_DIR)/builds/devel +BUILD_DIR := $(TOP_DIR)/devel include $(TOP_DIR)/builds/compiler/gcc-dev.mk include $(TOP_DIR)/builds/link_std.mk + # EOF diff --git a/builds/unix/unix-lcc.mk b/builds/unix/unix-lcc.mk index 4ade02c3a..6038e5239 100644 --- a/builds/unix/unix-lcc.mk +++ b/builds/unix/unix-lcc.mk @@ -20,4 +20,5 @@ include $(TOP_DIR)/builds/unix/unixddef.mk include $(TOP_DIR)/builds/compiler/unix-lcc.mk include $(TOP_DIR)/builds/link_std.mk + # EOF diff --git a/builds/unix/unixddef.mk b/builds/unix/unixddef.mk index 1ea1543ac..803ce755a 100644 --- a/builds/unix/unixddef.mk +++ b/builds/unix/unixddef.mk @@ -4,7 +4,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -19,12 +19,11 @@ ifndef TOP_DIR endif TOP_DIR := $(shell cd $(TOP_DIR); pwd) -DELETE := rm -f -SEP := / -HOSTSEP := $(SEP) +DELETE := rm -f +SEP := / # we use a special devel ftoption.h -BUILD := $(TOP_DIR)/builds/devel +BUILD_DIR := $(TOP_DIR)/devel # do not set the platform to `unix', or libtool will trick you PLATFORM := unixdev @@ -50,7 +49,7 @@ LIBRARY := lib$(PROJECT) LIB_DIR := $(OBJ_DIR) -# NO_OUTPUT := 2> /dev/null + # EOF diff --git a/builds/win32/detect.mk b/builds/win32/detect.mk index c28d67f96..f24538fdb 100644 --- a/builds/win32/detect.mk +++ b/builds/win32/detect.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -46,12 +46,12 @@ endif # test PLATFORM ansi ifeq ($(PLATFORM),win32) - DELETE := del - COPY := copy + DELETE := del + COPY := copy + SEP := $(BACKSLASH) # gcc Makefile by default CONFIG_FILE := w32-gcc.mk - SEP := / ifeq ($(firstword $(CC)),cc) CC := gcc endif @@ -80,7 +80,6 @@ ifeq ($(PLATFORM),win32) # ifneq ($(findstring visualc,$(MAKECMDGOALS)),) # Visual C/C++ CONFIG_FILE := w32-vcc.mk - SEP := $(BACKSLASH) CC := cl visualc: setup .PHONY: visualc @@ -88,7 +87,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring intelc,$(MAKECMDGOALS)),) # Intel C/C++ CONFIG_FILE := w32-intl.mk - SEP := $(BACKSLASH) CC := cl visualc: setup .PHONY: intelc @@ -96,7 +94,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring watcom,$(MAKECMDGOALS)),) # Watcom C/C++ CONFIG_FILE := w32-wat.mk - SEP := $(BACKSLASH) CC := wcc386 watcom: setup .PHONY: watcom @@ -104,7 +101,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring visualage,$(MAKECMDGOALS)),) # Visual Age C++ CONFIG_FILE := w32-icc.mk - SEP := $(BACKSLASH) CC := icc visualage: setup .PHONY: visualage @@ -112,7 +108,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring lcc,$(MAKECMDGOALS)),) # LCC-Win32 CONFIG_FILE := w32-lcc.mk - SEP := $(BACKSLASH) CC := lcc lcc: setup .PHONY: lcc @@ -120,7 +115,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring mingw32,$(MAKECMDGOALS)),) # mingw32 CONFIG_FILE := w32-mingw32.mk - SEP := $(BACKSLASH) CC := gcc mingw32: setup .PHONY: mingw32 @@ -128,7 +122,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring bcc32,$(MAKECMDGOALS)),) # Borland C++ CONFIG_FILE := w32-bcc.mk - SEP := $(BACKSLASH) CC := bcc32 bcc32: setup .PHONY: bcc32 @@ -137,7 +130,6 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring devel-bcc,$(MAKECMDGOALS)),) # development target CONFIG_FILE := w32-bccd.mk CC := bcc32 - SEP := / devel-bcc: setup .PHONY: devel-bcc endif @@ -145,11 +137,11 @@ ifeq ($(PLATFORM),win32) ifneq ($(findstring devel-gcc,$(MAKECMDGOALS)),) # development target CONFIG_FILE := w32-dev.mk CC := gcc - SEP := / devel-gcc: setup .PHONY: devel-gcc endif endif # test PLATFORM win32 + # EOF diff --git a/builds/win32/w32-bcc.mk b/builds/win32/w32-bcc.mk index 5c2472479..522d6b378 100644 --- a/builds/win32/w32-bcc.mk +++ b/builds/win32/w32-bcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,11 +13,11 @@ # fully. -SEP := / include $(TOP_DIR)/builds/win32/win32-def.mk include $(TOP_DIR)/builds/compiler/bcc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-bccd.mk b/builds/win32/w32-bccd.mk index 80e44ffa8..29519995a 100644 --- a/builds/win32/w32-bccd.mk +++ b/builds/win32/w32-bccd.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,14 +13,13 @@ # fully. -SEP := / - include $(TOP_DIR)/builds/win32/win32-def.mk -BUILD := $(TOP_DIR)/builds/devel +BUILD_DIR := $(TOP_DIR)/devel include $(TOP_DIR)/builds/compiler/bcc-dev.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-dev.mk b/builds/win32/w32-dev.mk index 17aa0aa4b..0b665dee5 100644 --- a/builds/win32/w32-dev.mk +++ b/builds/win32/w32-dev.mk @@ -5,7 +5,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -23,10 +23,8 @@ ifndef TOP_DIR TOP_DIR := . endif -SEP := / - include $(TOP_DIR)/builds/win32/win32-def.mk -BUILD := $(TOP_DIR)/builds/devel +BUILD_DIR := $(TOP_DIR)/devel include $(TOP_DIR)/builds/compiler/gcc-dev.mk @@ -34,5 +32,4 @@ include $(TOP_DIR)/builds/compiler/gcc-dev.mk include $(TOP_DIR)/builds/link_dos.mk - # EOF diff --git a/builds/win32/w32-gcc.mk b/builds/win32/w32-gcc.mk index 86f6dddaa..91d11338d 100644 --- a/builds/win32/w32-gcc.mk +++ b/builds/win32/w32-gcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,10 +13,6 @@ # fully. -# the separator must be set before including win32-def -# as it defaults to "\" on Win32 -SEP := / - # include Win32-specific definitions include $(TOP_DIR)/builds/win32/win32-def.mk @@ -26,4 +22,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-icc.mk b/builds/win32/w32-icc.mk index 8b63ce0ef..1e18202ce 100644 --- a/builds/win32/w32-icc.mk +++ b/builds/win32/w32-icc.mk @@ -19,4 +19,5 @@ include $(TOP_DIR)/builds/compiler/visualage.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-intl.mk b/builds/win32/w32-intl.mk index 4f6a0342d..5c42ad3c4 100644 --- a/builds/win32/w32-intl.mk +++ b/builds/win32/w32-intl.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,11 +13,11 @@ # fully. -SEP := / include $(TOP_DIR)/builds/win32/win32-def.mk include $(TOP_DIR)/builds/compiler/intelc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-mingw32.mk b/builds/win32/w32-mingw32.mk index 236e81001..01f71b343 100644 --- a/builds/win32/w32-mingw32.mk +++ b/builds/win32/w32-mingw32.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,10 +13,6 @@ # fully. -# the separator must be set before including win32-def -# as it defaults to "\" on Win32 -SEP := / - # include Win32-specific definitions include $(TOP_DIR)/builds/win32/win32-def.mk @@ -28,4 +24,5 @@ include $(TOP_DIR)/builds/compiler/gcc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-vcc.mk b/builds/win32/w32-vcc.mk index 459e187d1..37bfec30b 100644 --- a/builds/win32/w32-vcc.mk +++ b/builds/win32/w32-vcc.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,11 +13,11 @@ # fully. -SEP := / include $(TOP_DIR)/builds/win32/win32-def.mk include $(TOP_DIR)/builds/compiler/visualc.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk + # EOF diff --git a/builds/win32/w32-wat.mk b/builds/win32/w32-wat.mk index ab250dc9b..accafc52f 100644 --- a/builds/win32/w32-wat.mk +++ b/builds/win32/w32-wat.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,14 +13,11 @@ # fully. -SEP := / -ISEP := $(strip \ ) - include $(TOP_DIR)/builds/win32/win32-def.mk include $(TOP_DIR)/builds/compiler/watcom.mk # include linking instructions include $(TOP_DIR)/builds/link_dos.mk -# EOF +# EOF diff --git a/builds/win32/win32-def.mk b/builds/win32/win32-def.mk index 9b43a039b..a9db459e8 100644 --- a/builds/win32/win32-def.mk +++ b/builds/win32/win32-def.mk @@ -3,7 +3,7 @@ # -# Copyright 1996-2000 by +# Copyright 1996-2000, 2003 by # David Turner, Robert Wilhelm, and Werner Lemberg. # # This file is part of the FreeType project, and may only be used, modified, @@ -13,17 +13,10 @@ # fully. -DELETE := del -HOSTSEP := $(strip \ ) -BUILD := $(TOP_DIR)$(SEP)builds$(SEP)win32 -PLATFORM := win32 - -# by default, we use "\" as a separator on Win32 -# but certain compilers accept "/" as well -# -ifndef SEP - SEP := $(HOSTSEP) -endif +DELETE := del +SEP := $(strip \ ) +BUILD_DIR := $(TOP_DIR)/builds/win32 +PLATFORM := win32 # The directory where all object files are placed. @@ -36,7 +29,7 @@ endif # make -f %TOP_DIR%/Makefile # ifndef OBJ_DIR - OBJ_DIR := $(TOP_DIR)$(SEP)objs + OBJ_DIR := $(TOP_DIR)/objs endif @@ -58,4 +51,5 @@ LIBRARY := $(PROJECT) # NO_OUTPUT = 2> nul + # EOF |