142 lines
3.2 KiB
Makefile
142 lines
3.2 KiB
Makefile
#*******************************************************************
|
|
#*
|
|
#* FreeType 2 Configuration rules for Win32 + GCC
|
|
#*
|
|
#* 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.
|
|
#*
|
|
#* Please read the file "freetype/docs/config.txt" to understand
|
|
#* what this file does..
|
|
#*
|
|
#*
|
|
#* NOTE : This version requires that GNU Make be invoked from the
|
|
#* Windows Shell (_not_ Cygwin BASH !!)
|
|
#*
|
|
#*******************************************************************
|
|
|
|
ifndef TOP
|
|
TOP := .
|
|
endif
|
|
|
|
DELETE := del
|
|
SEP := /
|
|
HOSTSEP := $(strip \ )
|
|
BUILD := $(TOP)/config/win32
|
|
PLATFORM := win32
|
|
CC := gcc
|
|
|
|
# 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", etc...
|
|
#
|
|
I := -I
|
|
|
|
|
|
# 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
|
|
|
|
|
|
# C flag used to define a macro before the compilation of a given
|
|
# source object. Usually is '-D' like in "-DDEBUG"
|
|
#
|
|
D := -D
|
|
|
|
|
|
# Target flag - beware, there is a space after the 'o' !!
|
|
#
|
|
#
|
|
T := -o
|
|
|
|
# C flags
|
|
#
|
|
# These should concern :
|
|
#
|
|
# - debug output
|
|
# - optimization
|
|
# - warnings
|
|
# - ansi compliance..
|
|
#
|
|
ifndef CFLAGS
|
|
CFLAGS := -c -g -O6 -Wall
|
|
endif
|
|
|
|
# ANSIFLAGS : put there the flags used to make your compiler ANSI-compliant
|
|
# nothing (if it already is by default like LCC).
|
|
#
|
|
ANSIFLAGS := -ansi -pedantic
|
|
|
|
ifdef BUILD_FREETYPE
|
|
|
|
include $(TOP)/config/freetype.mk
|
|
|
|
clean_freetype: clean_freetype_dos
|
|
distclean_freetype: distclean_freetype_dos
|
|
|
|
# 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) $(subst $(SEP),$(HOSTSEP),$(FT_LIBRARY)) 2> nul
|
|
$(FT_LIBRARIAN) $@ $(OBJECTS_LIST)
|
|
|
|
endif
|
|
|