/[freetype]/freetype2/builds/exports.mk
ViewVC logotype

Diff of /freetype2/builds/exports.mk

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by freetype, Fri Oct 28 19:24:11 2005 UTC revision 1.2 by wl, Fri Nov 11 15:59:33 2005 UTC
# Line 1  Line 1 
1  # this sub-Makefile is used to compute the list of exported symbols whenever  #
2    # FreeType 2 exports sub-Makefile
3    #
4    
5    
6    # Copyright 2005 by
7    # David Turner, Robert Wilhelm, and Werner Lemberg.
8    #
9    # This file is part of the FreeType project, and may only be used, modified,
10    # and distributed under the terms of the FreeType project license,
11    # LICENSE.TXT.  By continuing to use, modify, or distribute this file you
12    # indicate that you have read the license and understand and accept it
13    # fully.
14    
15    
16    # DO NOT INVOKE THIS MAKEFILE DIRECTLY!  IT IS MEANT TO BE INCLUDED BY
17    # OTHER MAKEFILES.
18    
19    
20    # This sub-Makefile is used to compute the list of exported symbols whenever
21  # the EXPORTS_LIST variable is defined by one of the platform or compiler  # the EXPORTS_LIST variable is defined by one of the platform or compiler
22  # specific build files  # specific build files.
23  #  #
24  # EXPORTS_LIST contains the name of the "list" file, which can be a Windows  # EXPORTS_LIST contains the name of the `list' file, for example a Windows
25  # .DEF file by the way  # .DEF file.
26  #  #
27  ifneq ($(EXPORTS_LIST),)  ifneq ($(EXPORTS_LIST),)
28    
29    # CCexe is the compiler used to compile the "apinames" tool program    # CCexe is the compiler used to compile the `apinames' tool program
30    # on the host machine. This isn't necessarily the same than the compiler    # on the host machine.  This isn't necessarily the same as the compiler
31    # which can be a cross-compiler for a different architecture    # which can be a cross-compiler for a different architecture, for example.
32    #    #
33    ifeq ($(CCexe),)    ifeq ($(CCexe),)
34      CCexe := $(CC)      CCexe := $(CC)
35    endif    endif
36    
37    # TE acts as T, but for executables instead of object files    # TE acts like T, but for executables instead of object files.
38    ifeq ($(TE),)    ifeq ($(TE),)
39      TE := $T      TE := $T
40    endif    endif
41    
42    # the list of public headers we're going to parse    # The list of public headers we're going to parse.
43    PUBLIC_HEADERS := $(wildcard $(PUBLIC_DIR)/*.h)    PUBLIC_HEADERS := $(wildcard $(PUBLIC_DIR)/*.h)
44    
45    # the "apinames" source and executable. We use E as the executable    # The `apinames' source and executable.  We use $E as the executable
46    # suffix, which *includes* the final dot    # suffix, which *includes* the final dot.
47    # note that $(APINAMES_OPTIONS) is empty, except for Windows compilers    #
48      # Note that $(APINAMES_OPTIONS) is empty, except for Windows compilers.
49    #    #
50    APINAMES_SRC := $(TOP_DIR)/src/tools/apinames.c    APINAMES_SRC := $(TOP_DIR)/src/tools/apinames.c
51    APINAMES_EXE := $(OBJ_DIR)/apinames$E    APINAMES_EXE := $(OBJ_DIR)/apinames$E
52    
53    $(APINAMES_EXE): $(APINAMES_SRC)    $(APINAMES_EXE): $(APINAMES_SRC)
54          $(CCexe) $(TE)$@ $<            $(CCexe) $(TE)$@ $<
55    
56    .PHONY: symbols_list  clean_symbols_list  clean_apinames    .PHONY: symbols_list clean_symbols_list clean_apinames
57    
58    symbols_list: $(EXPORTS_LIST)    symbols_list: $(EXPORTS_LIST)
59    
60    $(EXPORTS_LIST): $(APINAMES_EXE) $(PUBLIC_HEADERS)    $(EXPORTS_LIST): $(APINAMES_EXE) $(PUBLIC_HEADERS)
61          $(subst /,$(SEP),$(APINAMES_EXE)) -o$@ $(APINAMES_OPTIONS) $(PUBLIC_HEADERS)            $(subst /,$(SEP),$(APINAMES_EXE)) -o$@ $(APINAMES_OPTIONS) $(PUBLIC_HEADERS)
62    
63    $(PROJECT_LIBRARY): $(EXPORTS_LIST)    $(PROJECT_LIBRARY): $(EXPORTS_LIST)
64    
65    clean_symbols_list:    clean_symbols_list:
66          -$(DELETE) $(subst /,$(SEP),$(EXPORTS_LIST))            -$(DELETE) $(subst /,$(SEP),$(EXPORTS_LIST))
67    
68    clean_apinames:    clean_apinames:
69          -$(DELETE) $(subst /,$(SEP),$(APINAMES_EXE))            -$(DELETE) $(subst /,$(SEP),$(APINAMES_EXE))
70    
71    clean_project: clean_symbols_list clean_apinames    clean_project: clean_symbols_list clean_apinames
72    
 endif  
73    endif
74    
75    
76    # EOF

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26