|
1 # |
|
2 # FreeType 2 modules sub-Makefile |
|
3 # |
|
4 |
|
5 |
|
6 # Copyright 1996-2000, 2003, 2006, 2008, 2014 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 file is in charge of handling the generation of the modules list |
|
21 # file. |
|
22 |
|
23 |
|
24 # Build the modules list. |
|
25 # |
|
26 $(FTMODULE_H): $(MODULES_CFG) |
|
27 $(FTMODULE_H_INIT) |
|
28 $(FTMODULE_H_CREATE) |
|
29 $(FTMODULE_H_DONE) |
|
30 |
|
31 ifneq ($(findstring $(PLATFORM),dos windows os2),) |
|
32 OPEN_MODULE := @echo$(space) |
|
33 CLOSE_MODULE := >> $(subst /,$(SEP),$(FTMODULE_H)) |
|
34 REMOVE_MODULE := @-$(DELETE) $(subst /,$(SEP),$(FTMODULE_H)) |
|
35 else |
|
36 OPEN_MODULE := @echo " |
|
37 CLOSE_MODULE := " >> $(FTMODULE_H) |
|
38 REMOVE_MODULE := @-$(DELETE) $(FTMODULE_H) |
|
39 endif |
|
40 |
|
41 |
|
42 define FTMODULE_H_INIT |
|
43 $(REMOVE_MODULE) |
|
44 @-echo Generating modules list in $(FTMODULE_H)... |
|
45 $(OPEN_MODULE)/* This is a generated file. */$(CLOSE_MODULE) |
|
46 endef |
|
47 |
|
48 # It is no mistake that the final closing parenthesis is on the |
|
49 # next line -- it produces proper newlines during the expansion |
|
50 # of `foreach'. |
|
51 # |
|
52 define FTMODULE_H_CREATE |
|
53 $(foreach COMMAND,$(FTMODULE_H_COMMANDS),$($(COMMAND)) |
|
54 ) |
|
55 endef |
|
56 |
|
57 define FTMODULE_H_DONE |
|
58 $(OPEN_MODULE)/* EOF */$(CLOSE_MODULE) |
|
59 @echo done. |
|
60 endef |
|
61 |
|
62 |
|
63 # $(OPEN_DRIVER) & $(CLOSE_DRIVER) are used to specify a given font driver |
|
64 # in the `module.mk' rules file. |
|
65 # |
|
66 OPEN_DRIVER := $(OPEN_MODULE)FT_USE_MODULE( |
|
67 CLOSE_DRIVER := )$(CLOSE_MODULE) |
|
68 |
|
69 ECHO_DRIVER := @echo "* module:$(space) |
|
70 ECHO_DRIVER_DESC := ( |
|
71 ECHO_DRIVER_DONE := )" |
|
72 |
|
73 # Each `module.mk' in the `src/*' subdirectories adds a variable with |
|
74 # commands to $(FTMODULE_H_COMMANDS). Note that we can't use SRC_DIR here. |
|
75 # |
|
76 -include $(patsubst %,$(TOP_DIR)/src/%/module.mk,$(MODULES)) |
|
77 |
|
78 |
|
79 # EOF |