ref: 42a29f2a85f306799ea9a2493e0544739982e31a
parent: 81991cd20397691986bd289fb212be20e8fbab6a
author: Werner Lemberg <[email protected]>
date: Sat Jul 22 02:59:36 EDT 2000
For Unix platforms, `configure' will be always called now. The `devel' target no longer needs unix-dev.mk. Some other minor fixes.
--- a/builds/unix/detect.mk
+++ b/builds/unix/detect.mk
@@ -22,50 +22,36 @@
COPY := cp
DELETE := rm -f
- # Test whether we are using gcc. If so, we select the `unix-gcc.mk'
- # configuration file. Otherwise, the configure script is called and
+ # If a Unix platform is detected, the configure script is called and
# `unix.mk' is created.
#
- # The use of the configure script can be forced by saying `make unix';
- # arguments to `configure' should be in the CFG variable. Example:
+ # Arguments to `configure' should be in the CFG variable. Example:
#
- # make unix CFG="--prefix=/usr --disable-static"
+ # make CFG="--prefix=/usr --disable-static"
#
+ # If you need to set CFLAGS or LDFLAGS, do it here also.
+ #
# Feel free to add support for other platform specific compilers in this
# directory (e.g. solaris.mk + changes here to detect the platform).
#
- ifneq ($(findstring unix,$(MAKECMDGOALS)),)
- CONFIG_FILE := unix.mk
- setup: unix.mk
- unix: setup
- else
- ifeq ($(firstword $(CC)),gcc)
- is_gcc := 1
- else
- ifneq ($(findstring gcc,$(shell $(CC) -v 2>&1)),)
- is_gcc := 1
- endif
- endif
+ CONFIG_FILE := unix.mk
+ setup: unix.mk
+ unix: setup
- ifdef is_gcc
- CONFIG_FILE := unix-gcc.mk
- else
- CONFIG_FILE := unix.mk
- setup: unix.mk
+ # If `devel' is the requested target, use `-g -O0' as the default value
+ # for CFLAGS if CFLAGS isn't set.
+ #
+ ifneq ($(findstring devel,$(MAKECMDGOALS)),)
+ ifndef CFLAGS
+ USE_CFLAGS := CFLAGS="-g -O0"
endif
-
- # If `devel' is the requested target, use the development Makefile.
- #
- ifneq ($(findstring devel,$(MAKECMDGOALS)),)
- CONFIG_FILE := unix-dev.mk
- devel: setup
- endif
+ devel: setup
endif
setup: std_setup
unix.mk: builds/unix/unix.in
- cd builds/unix; ./configure $(CFG)
+ cd builds/unix; $(USE_CFLAGS) ./configure $(CFG)
endif # test Unix
endif # test PLATFORM
--- a/builds/unix/unix-dev.mk
+++ /dev/null
@@ -1,134 +1,0 @@
-#
-# FreeType 2 configuration rules for the gcc compiler under UNIX
-#
-# Development version without optimizations.
-#
-
-
-# Copyright 1996-2000 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.
-
-
-ifndef TOP
- TOP := .
-endif
-
-DELETE := rm -f
-SEP := /
-HOSTSEP := $(SEP)
-BUILD := $(TOP)/builds/unix
-PLATFORM := unix
-
-# The directory where all object files are placed.
-#
-# Note that this is not $(TOP)/obj!
-# This lets you build the library in your own directory with something like
-#
-# set TOP=.../path/to/freetype2/top/dir...
-# mkdir obj
-# make -f $TOP/Makefile setup [options]
-# make -f $TOP/Makefile
-#
-OBJ_DIR := obj
-
-
-# The directory where all library files are placed.
-#
-# By default, this is the same as $(OBJ_DIR), however, this can be changed
-# to suit particular needs.
-#
-LIB_DIR := $(OBJ_DIR)
-
-
-# The object file extension. This can be .o, .tco, .obj, etc., depending on
-# the platform.
-#
-O := o
-
-# The library file extension. This can be .a, .lib, etc., depending on the
-# platform.
-#
-A := a
-
-
-# The name of the final library file. Note that the DOS-specific Makefile
-# uses a shorter (8.3) name.
-#
-LIBRARY := libfreetype
-
-
-# Path inclusion flag. Some compilers use a different flag than `-I' to
-# specify an additional include path. Examples are `/i=' or `-J'.
-#
-I := -I
-
-
-# C flag used to define a macro before the compilation of a given source
-# object. Usually is `-D' like in `-DDEBUG'.
-#
-D := -D
-
-
-# The link flag used to specify a given library file on link. Note that
-# this is only used to compile the demo programs, not the library itself.
-#
-L := -l
-
-
-# Target flag.
-#
-T := -o # Don't remove this comment line! We need the space after `-o'.
-
-
-# C flags
-#
-# These should concern: debug output, optimization & warnings.
-#
-# Use the ANSIFLAGS variable to define the compiler flags used to enfore
-# ANSI compliance.
-#
-ifndef CFLAGS
- CFLAGS := -c -g -O0 -Wall
-endif
-
-# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
-#
-ANSIFLAGS := -ansi -pedantic
-
-
-ifdef BUILD_FREETYPE
-
- # Now include the main sub-makefile. It contains all the rules used to
- # build the library with the previous variables defined.
- #
- include $(TOP)/builds/freetype.mk
-
- # The cleanup targets.
- #
- clean_freetype: clean_freetype_std
- distclean_freetype: distclean_freetype_std
-
- # Librarian to use to build the static library
- #
- FT_LIBRARIAN := $(AR) -r
-
-
- # This final rule is used to link all object files into a single library.
- # It is part of the system-specific sub-Makefile because not all
- # librarians accept a simple syntax like:
- #
- # librarian library_file {list of object files}
- #
- $(FT_LIBRARY): $(OBJECTS_LIST)
- -$(DELETE) $@
- $(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
-
-endif
-
-# EOF
--- a/builds/unix/unix.in
+++ b/builds/unix/unix.in
@@ -108,9 +108,7 @@
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
# ANSI compliance.
#
-ifndef CFLAGS
- CFLAGS := -c @CFLAGS@ @XX_CFLAGS@
-endif
+CFLAGS := -c @XX_CFLAGS@ @CFLAGS@
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
#
@@ -119,8 +117,14 @@
# C compiler to use -- we use libtool!
#
#
-CC := $(BUILD)/libtool --mode=compile $(CC)
+CCraw := $(CC)
+CC := $(BUILD)/libtool --mode=compile $(CCraw)
+# linker flags
+#
+LDFLAGS := @LDFLAGS@
+
+
ifdef BUILD_FREETYPE
# Now include the main sub-makefile. It contains all the rules used to
@@ -147,7 +151,7 @@
# Librarian to use to build the static library
#
- FT_LIBRARIAN := $(BUILD)/libtool --mode=link $(CC)
+ FT_LIBRARIAN := $(BUILD)/libtool --mode=link $(CCraw)
# This final rule is used to link all object files into a single library.