1 |
MANAKAI_ROOT_DIR = ../../../ |
2 |
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
3 |
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
4 |
|
5 |
DIS_SUFFIX = .dis |
6 |
DAC_SUFFIX = .dae |
7 |
DAEM_SUFFIX = .daem |
8 |
PM_SUFFIX = .pm |
9 |
|
10 |
CD = cd |
11 |
MAKE = make |
12 |
RM = rm |
13 |
PERL = perl |
14 |
PERL_OPTIONS3 = -I$(MANAKAI_LIB_DIR) |
15 |
PERL_OPTIONS = $(PERL_OPTIONS3) |
16 |
PERL_ = $(PERL) $(PERL_OPTIONS) |
17 |
PERLC = $(PERL) -c -w |
18 |
PERLC_OPTIONS3 = $(PERL_OPTIONS) |
19 |
PERLC_OPTIONS = $(PERLC_OPTIONS3) |
20 |
PERL_CHK = $(PERLC) $(PERLC_OPTIONS) |
21 |
TOUCH = touch |
22 |
|
23 |
NS_MDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\#ManakaiDOM. |
24 |
NS_MANAKAIDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\# |
25 |
|
26 |
DIS_OPTIONS = |
27 |
DIS_OPTIONS_ALL = $(DIS_OPTIONS) \ |
28 |
--search-path-catalog-file-name="$(MANAKAI_LIB_DIR)manakai/dis-catalog" \ |
29 |
--dis-file-suffix="$(DIS_SUFFIX)" \ |
30 |
--daem-file-suffix="$(DAEM_SUFFIX)" |
31 |
|
32 |
DAC_OPTIONS = |
33 |
DAC_PL = $(MANAKAI_BIN_DIR)dac.pl |
34 |
DAC = $(PERL_) $(DAC_PL) $(DAC_OPTIONS) $(DIS_OPTIONS_ALL) \ |
35 |
--db-base-directory-path="$(MANAKAI_ROOT_DIR)" \ |
36 |
--output-file-name= |
37 |
|
38 |
DAC2PM_OPTIONS3 = --enable-assert |
39 |
DAC2PM_OPTIONS = $(DAC2PM_OPTIONS3) |
40 |
DAC2PM_PL = $(MANAKAI_BIN_DIR)dac2pm.pl |
41 |
DAC2PM = $(PERL_) $(DAC2PM_PL) $(DAC2PM_OPTIONS) $(DIS_OPTIONS_ALL) |
42 |
|
43 |
UTIL_CORE_DAC_FILE = $(MANAKAI_LIB_DIR)Message/Util/core$(DAC_SUFFIX) |
44 |
|
45 |
DOM_FEATURE_DIS_FILES = DOMFeature$(DIS_SUFFIX) |
46 |
DOM_CORE_DIS_FILES = DOMMain.dis DOMCore.dis DOMXML.dis \ |
47 |
DOMLS.dis GenericLS.dis |
48 |
DOM_LS_DIS_FILES = SimpleLS$(DIS_SUFFIX) ManakaiDOMLS2003$(DIS_SUFFIX) |
49 |
DOM_HTML_DIS_FILES = DOMHTML.dis DOMWebForms.dis |
50 |
DIS_FILES = $(DOM_FEATURE_DIS_FILES) $(DOM_CORE_DIS_FILES) \ |
51 |
$(DOM_LS_DIS_FILES) $(DOM_HTML_DIS_FILES) |
52 |
|
53 |
GENERATED_FILES = \ |
54 |
feature$(DAC_SUFFIX) DOMFeature$(PM_SUFFIX) \ |
55 |
core$(DAC_SUFFIX) DOMMain$(PM_SUFFIX) \ |
56 |
DOMCore$(PM_SUFFIX) DOMXML$(PM_SUFFIX) DOMLS$(PM_SUFFIX) \ |
57 |
GenericLS$(PM_SUFFIX) \ |
58 |
ls$(DAC_SUFFIX) SimpleLS$(PM_SUFFIX) ManakaiDOMLS2003$(PM_SUFFIX) \ |
59 |
html$(DAC_SUFFIX) DOMHTML$(PM_SUFFIX) DOMWebForms$(PM_SUFFIX) |
60 |
GENERATED_DAC_FILES = feature$(DAC_SUFFIX) \ |
61 |
core$(DAC_SUFFIX) ls$(DAC_SUFFIX) html$(DAC_SUFFIX) |
62 |
|
63 |
all: .core$(PM_SUFFIX) .ls$(PM_SUFFIX) .html$(PM_SUFFIX) $(GENERATED_DAC_FILES) |
64 |
|
65 |
feature$(DAC_SUFFIX): $(UTIL_CORE_DAC_FILE) $(DOM_FEATURE_DIS_FILES) $(DAC_PL) |
66 |
$(DAC)$@ --input-db-file-name="$<" DOMFeature.dis |
67 |
|
68 |
core$(DAC_SUFFIX): feature$(DAC_SUFFIX) $(DOM_CORE_DIS_FILES) $(DAC_PL) |
69 |
$(DAC)$@.tmp.1 --input-db-file-name="$<" DOMLS.dis |
70 |
$(DAC)$@ --input-db-file-name="$@.tmp.1" GenericLS.dis |
71 |
$(RM) $@.tmp.1 |
72 |
|
73 |
ls$(DAC_SUFFIX): core$(DAC_SUFFIX) $(DOM_LS_DIS_FILES) $(DAC_PL) |
74 |
$(DAC)$@.tmp.1 --input-db-file-name="$<" SimpleLS.dis |
75 |
$(DAC)$@ --input-db-file-name="$@.tmp.1" ManakaiDOMLS2003.dis |
76 |
$(RM) $@.tmp.1 |
77 |
|
78 |
html$(DAC_SUFFIX): core$(DAC_SUFFIX) $(DOM_HTML_DIS_FILES) $(DAC_PL) |
79 |
$(DAC)$@ --input-db-file-name="$<" DOMHTML.dis |
80 |
|
81 |
$(DOM_FEATURE_DIS_FILES:$(DIS_SUFFIX)=$(PM_SUFFIX)): \ |
82 |
feature$(DAC_SUFFIX) $(DAC2PM_PL) |
83 |
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
84 |
--output-file-path="$@" |
85 |
$(PERL_CHK) $@ |
86 |
|
87 |
$(DOM_CORE_DIS_FILES:.dis=$(PM_SUFFIX)): core$(DAC_SUFFIX) $(DAC2PM_PL) |
88 |
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
89 |
--output-file-path="$@" |
90 |
$(PERL_CHK) $@ |
91 |
|
92 |
.core$(PM_SUFFIX): core$(DAC_SUFFIX) $(DAC2PM_PL) |
93 |
$(DAC2PM) $< \ |
94 |
--create-perl-module="$(NS_MDOM)DOMFeature DOMFeature$(PM_SUFFIX)" \ |
95 |
--create-perl-module="$(NS_MDOM)DOMMain DOMMain$(PM_SUFFIX)" \ |
96 |
--create-perl-module="$(NS_MDOM)DOMCore DOMCore$(PM_SUFFIX)" \ |
97 |
--create-perl-module="$(NS_MDOM)DOMXML DOMXML$(PM_SUFFIX)" \ |
98 |
--create-perl-module="$(NS_MDOM)DOMLS DOMLS$(PM_SUFFIX)" \ |
99 |
--create-perl-module="$(NS_MDOM)GenericLS GenericLS$(PM_SUFFIX)" |
100 |
$(PERL_CHK) DOMFeature$(PM_SUFFIX) |
101 |
$(PERL_CHK) DOMMain$(PM_SUFFIX) |
102 |
$(PERL_CHK) DOMCore$(PM_SUFFIX) |
103 |
$(PERL_CHK) DOMXML$(PM_SUFFIX) |
104 |
$(PERL_CHK) DOMLS$(PM_SUFFIX) |
105 |
$(PERL_CHK) GenericLS$(PM_SUFFIX) |
106 |
$(TOUCH) $@ |
107 |
|
108 |
$(DOM_LS_DIS_FILES:$(DIS_SUFFIX)=$(PM_SUFFIX)): ls$(DAC_SUFFIX) $(DAC2PM_PL) |
109 |
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
110 |
--output-file-path="$@" |
111 |
$(PERL_CHK) $@ |
112 |
|
113 |
.ls$(PM_SUFFIX): ls$(DAC_SUFFIX) $(DAC2PM_PL) |
114 |
$(DAC2PM) $< \ |
115 |
--create-perl-module="$(NS_MDOM)SimpleLS SimpleLS$(PM_SUFFIX)" \ |
116 |
--create-perl-module="$(NS_MDOM)ManakaiDOMLS2003 ManakaiDOMLS2003$(PM_SUFFIX)" |
117 |
$(PERL_CHK) SimpleLS$(PM_SUFFIX) |
118 |
$(PERL_CHK) ManakaiDOMLS2003$(PM_SUFFIX) |
119 |
$(TOUCH) $@ |
120 |
|
121 |
$(DOM_HTML_DIS_FILES:.dis=$(PM_SUFFIX)): html$(DAC_SUFFIX) $(DAC2PM_PL) |
122 |
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" > $@ |
123 |
$(PERL_CHK) $@ |
124 |
|
125 |
.html$(PM_SUFFIX): html$(DAC_SUFFIX) $(DAC2PM_PL) |
126 |
$(DAC2PM) $< \ |
127 |
--create-perl-module="$(NS_MDOM)DOMHTML DOMHTML$(PM_SUFFIX)" \ |
128 |
--create-perl-module="$(NS_MDOM)DOMWebForms DOMWebForms$(PM_SUFFIX)" |
129 |
$(PERL_CHK) DOMHTML$(PM_SUFFIX) |
130 |
$(PERL_CHK) DOMWebForms$(PM_SUFFIX) |
131 |
$(TOUCH) $@ |
132 |
|
133 |
feature-spec$(DAC_SUFFIX): feature$(DAC_SUFFIX) DOMFeature.dis $(DAC_PL) |
134 |
$(DAC)$@ --input-db-file-name="$<" DOMFeature.dis \ |
135 |
--for="$(NS_MANAKAIDOM)ForSpecLatest" |
136 |
|
137 |
# $(UTIL_CORE_DAC_FILE) |
138 |
$(MANAKAI_LIB_DIR)Message/Util/core$(DAC_SUFFIX): dummy |
139 |
$(CD) $(MANAKAI_LIB_DIR)Message/Util/ && $(MAKE) core$(DAC_SUFFIX) |
140 |
|
141 |
dummy: |
142 |
|
143 |
clean: |
144 |
$(RM) $(GENERATED_FILES) |
145 |
$(RM) .*.tmp *~ .*~ *.BAK .*.BAK |
146 |
$(RM) .core$(PM_SUFFIX) .ls$(PM_SUFFIX) .html$(PM_SUFFIX) |
147 |
|
148 |
## $Date: 2005/10/06 10:53:36 $ |
149 |
## License: Public Domain. |