2 # FreeType 2 Configuration rules for Win32 + GCC
4 # Development version without optimizations.
8 # Copyright 1996-2000 by
9 # David Turner, Robert Wilhelm, and Werner Lemberg.
11 # This file is part of the FreeType project, and may only be used, modified,
12 # and distributed under the terms of the FreeType project license,
13 # LICENSE.TXT. By continuing to use, modify, or distribute this file you
14 # indicate that you have read the license and understand and accept it
17 # NOTE: This version requires that GNU Make is invoked from the Windows
18 # Shell (_not_ Cygwin BASH)!
27 HOSTSEP := $(strip \ )
28 BUILD := $(TOP)/builds/win32
32 # The directory where all object files are placed.
34 # Note that this is not $(TOP)/obj!
35 # This lets you build the library in your own directory with something like
37 # set TOP=.../path/to/freetype2/top/dir...
39 # make -f %TOP%/Makefile setup [options]
40 # make -f %TOP%/Makefile
45 # The directory where all library files are placed.
47 # By default, this is the same as $(OBJ_DIR), however, this can be changed
48 # to suit particular needs.
53 # The object file extension (for standard and static libraries). This can be
54 # .o, .tco, .obj, etc., depending on the platform.
59 # The library file extension (for standard and static libraries). This can
60 # be .a, .lib, etc., depending on the platform.
66 # The name of the final library file. Note that the DOS-specific Makefile
67 # uses a shorter (8.3) name.
69 LIBRARY := libfreetype
72 # Path inclusion flag. Some compilers use a different flag than `-I' to
73 # specify an additional include path. Examples are `/i=' or `-J'.
78 # C flag used to define a macro before the compilation of a given source
79 # object. Usually is `-D' like in `-DDEBUG'.
84 # The link flag used to specify a given library file on link. Note that
85 # this is only used to compile the demo programs, not the library itself.
92 T := -o # Don't remove this comment line! We need the space after `-o'.
97 # These should concern: debug output, optimization & warnings.
99 # Use the ANSIFLAGS variable to define the compiler flags used to enfore
103 CFLAGS := -c -g -O0 -Wall -W
106 # ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
108 ANSIFLAGS := -ansi -pedantic
113 # Now include the main sub-makefile. It contains all the rules used to
114 # build the library with the previous variables defined.
116 include $(TOP)/builds/freetype.mk
118 # The cleanup targets.
120 clean_freetype: clean_freetype_dos
121 distclean_freetype: distclean_freetype_dos
123 # Librarian to use to build the static library
125 FT_LIBRARIAN := $(AR) -r
128 # This final rule is used to link all object files into a single library.
129 # It is part of the system-specific sub-Makefile because not all
130 # librarians accept a simple syntax like
132 # librarian library_file {list of object files}
134 $(FT_LIBRARY): $(OBJECTS_LIST)
135 -$(DELETE) $(subst $(SEP),$(HOSTSEP),$(FT_LIBRARY)) 2> nul
136 $(FT_LIBRARIAN) $@ $(OBJECTS_LIST)