1 |
MANAKAI_ROOT_DIR = ../../../ |
2 |
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
3 |
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
4 |
MANAKAI_LIB_MANAKAI_DIR = $(MANAKAI_LIB_DIR)manakai/ |
5 |
|
6 |
DIS_SUFFIX = .dis |
7 |
DAC_SUFFIX = .dae |
8 |
DAEM_SUFFIX = .daem |
9 |
PM_SUFFIX = .pm |
10 |
|
11 |
CD = cd |
12 |
MAKE = make |
13 |
RM = rm |
14 |
PERL = perl |
15 |
PERL_OPTIONS3 = -I$(MANAKAI_LIB_DIR) |
16 |
PERL_OPTIONS = $(PERL_OPTIONS3) |
17 |
PERL_ = $(PERL) $(PERL_OPTIONS) |
18 |
PERLC = $(PERL) -c -w |
19 |
PERLC_OPTIONS3 = $(PERL_OPTIONS) |
20 |
PERLC_OPTIONS = $(PERLC_OPTIONS3) |
21 |
PERL_CHK = $(PERLC) $(PERLC_OPTIONS) |
22 |
TOUCH = touch |
23 |
|
24 |
NS_MANAKAIDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\# |
25 |
NS_MDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\#ManakaiDOM. |
26 |
NS_MARKUP = http://suika.fam.cx/~wakaba/archive/2005/manakai/Markup\# |
27 |
NS_DIS = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/DIS\# |
28 |
NS_UTIL = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ |
29 |
NS_UTIL_ERR = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/Error/ |
30 |
NS_UTIL_DIS = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/DIS\# |
31 |
|
32 |
DIS_OPTIONS = |
33 |
DIS_OPTIONS_ALL = $(DIS_OPTIONS) \ |
34 |
--search-path-catalog-file-name="$(MANAKAI_LIB_DIR)manakai/dis-catalog" \ |
35 |
--dis-file-suffix="$(DIS_SUFFIX)" \ |
36 |
--daem-file-suffix="$(DAEM_SUFFIX)" |
37 |
|
38 |
DAC_OPTIONS = |
39 |
DAC_PL = $(MANAKAI_BIN_DIR)dac.pl |
40 |
DAC = $(PERL_) $(DAC_PL) $(DAC_OPTIONS) $(DIS_OPTIONS_ALL) \ |
41 |
--db-base-directory-path="$(MANAKAI_ROOT_DIR)" \ |
42 |
--output-file-name= |
43 |
|
44 |
DAC2PM_OPTIONS3 = --enable-assert |
45 |
DAC2PM_OPTIONS = $(DAC2PM_OPTIONS3) |
46 |
DAC2PM_PL = $(MANAKAI_BIN_DIR)dac2pm.pl |
47 |
DAC2PM = $(PERL_) $(DAC2PM_PL) $(DAC2PM_OPTIONS) $(DIS_OPTIONS_ALL) |
48 |
|
49 |
CORE_DAC_FILE = $(MANAKAI_LIB_DIR)manakai/all$(DAC_SUFFIX) |
50 |
SWCFG_DAC_FILE = $(MANAKAI_LIB_DIR)Message/Markup/all$(DAC_SUFFIX) |
51 |
|
52 |
UTIL_CORE_DIS_FILES = ManakaiNode.dis Error/DOMException.dis Error/Core.dis |
53 |
DIS_CORE_DIS_FILES_ = DIS.dis PerlCode.dis |
54 |
DIS_CORE_DIS_FILES_DIS = DIS/Perl.dis DIS/Value.dis DIS/DNLite.dis |
55 |
DIS_CORE_DIS_FILES = $(DIS_CORE_DIS_FILES_) $(DIS_CORE_DIS_FILES_DIS) |
56 |
DIS_DOC_DIS_FILES = DIS/DISDoc.dis DIS/DISDump.dis |
57 |
DIS_FILES = $(UTIL_CORE_DIS_FILES) $(DIS_CORE_DIS_FILES) \ |
58 |
$(DIS_DOC_DIS_FILES) |
59 |
|
60 |
GENERATED_FILES = \ |
61 |
core$(DAC_SUFFIX) ManakaiNode$(PM_SUFFIX) Error/DOMException$(PM_SUFFIX) \ |
62 |
discore$(DAC_SUFFIX) DIS$(PM_SUFFIX) PerlCode$(PM_SUFFIX) \ |
63 |
DIS/Perl$(PM_SUFFIX) DIS/Value$(PM_SUFFIX) \ |
64 |
DIS/DNLite$(PM_SUFFIX) \ |
65 |
disdoc$(DAC_SUFFIX) DIS/DISDoc$(PM_SUFFIX) DIS/DISDump$(PM_SUFFIX) |
66 |
GENERATED_DAC_FILES = core$(DAC_SUFFIX) discore$(DAC_SUFFIX) disdoc$(DAC_SUFFIX) |
67 |
|
68 |
all: .discore$(PM_SUFFIX) .disdoc$(PM_SUFFIX) $(GENERATED_FILES) |
69 |
|
70 |
core$(DAC_SUFFIX): $(CORE_DAC_FILE) $(UTIL_CORE_DIS_FILES) $(DAC_PL) |
71 |
$(DAC)$@.1.tmp --input-db-file-name="$<" ManakaiNode.dis |
72 |
$(DAC)$@ --input-db-file-name="$@.1.tmp" Error/DOMException.dis |
73 |
$(RM) $@.1.tmp |
74 |
|
75 |
discore$(DAC_SUFFIX): $(SWCFG_DAC_FILE) $(DIS_CORE_DIS_FILES) $(DAC_PL) |
76 |
$(DAC)$@ --input-db-file-name="$<" DIS/DNLite.dis |
77 |
|
78 |
disdoc$(DAC_SUFFIX): discore$(DAC_SUFFIX) $(DIS_DOC_DIS_FILES) $(DAC_PL) |
79 |
$(DAC)$@ --input-db-file-name="$<" DIS/DISDump.dis |
80 |
|
81 |
ManakaiNode$(PM_SUFFIX): core$(DAC_SUFFIX) $(DAC2PM_PL) |
82 |
$(DAC2PM) $< \ |
83 |
--module-uri="$(NS_UTIL)ManakaiNode" \ |
84 |
--output-file-path="$@" |
85 |
$(PERL_CHK) $@ |
86 |
|
87 |
Error/DOMException$(PM_SUFFIX): core$(DAC_SUFFIX) $(DAC2PM_PL) |
88 |
$(DAC2PM) $< \ |
89 |
--module-uri="$(NS_UTIL_ERR)DOMException" \ |
90 |
--output-file-path="$@" |
91 |
$(PERL_CHK) $@ |
92 |
|
93 |
$(DIS_CORE_DIS_FILES_:.dis=$(PM_SUFFIX)): %$(PM_SUFFIX): discore$(DAC_SUFFIX) \ |
94 |
$(DAC2PM_PL) |
95 |
$(DAC2PM) $< \ |
96 |
--module-uri="$(NS_UTIL)$*" \ |
97 |
--output-file-path="$@" |
98 |
$(PERL_CHK) $@ |
99 |
|
100 |
$(DIS_CORE_DIS_FILES_DIS:.dis=$(PM_SUFFIX)): %$(PM_SUFFIX): \ |
101 |
discore$(DAC_SUFFIX) $(DAC2PM_PL) |
102 |
$(DAC2PM) $< \ |
103 |
--module-uri="$(NS_UTIL_DIS)$(*:DIS/%=%)" \ |
104 |
--output-file-path="$@" |
105 |
$(PERL_CHK) $@ |
106 |
|
107 |
.discore$(PM_SUFFIX): discore$(DAC_SUFFIX) $(DAC2PM_PL) |
108 |
$(DAC2PM) $< \ |
109 |
--create-perl-module="$(NS_UTIL)DIS DIS$(PM_SUFFIX)" \ |
110 |
--create-perl-module="$(NS_UTIL)PerlCode PerlCode$(PM_SUFFIX)" \ |
111 |
--create-perl-module="$(NS_UTIL_DIS)Value DIS/Value$(PM_SUFFIX)" \ |
112 |
--create-perl-module="$(NS_UTIL_DIS)Perl DIS/Perl$(PM_SUFFIX)" \ |
113 |
--create-perl-module="$(NS_UTIL_DIS)DNLite DIS/DNLite$(PM_SUFFIX)" |
114 |
$(PERL_CHK) DIS$(PM_SUFFIX) |
115 |
$(PERL_CHK) PerlCode$(PM_SUFFIX) |
116 |
$(PERL_CHK) DIS/Value$(PM_SUFFIX) |
117 |
$(PERL_CHK) DIS/Perl$(PM_SUFFIX) |
118 |
$(PERL_CHK) DIS/DNLite$(PM_SUFFIX) |
119 |
$(TOUCH) $@ |
120 |
|
121 |
.discore-all$(PM_SUFFIX): discore$(DAC_SUFFIX) $(DAC2PM_PL) |
122 |
$(DAC2PM) $< \ |
123 |
--create-perl-module="$(NS_UTIL)ManakaiNode ManakaiNode$(PM_SUFFIX)" \ |
124 |
--create-perl-module="$(NS_UTIL_ERR)DOMException Error/DOMException$(PM_SUFFIX)" \ |
125 |
--create-perl-module="$(NS_MDOM)DOMFeature ../DOM/DOMFeature$(PM_SUFFIX)" \ |
126 |
--create-perl-module="$(NS_MDOM)DOMFeature ../DOM/DOMFeature$(PM_SUFFIX)" \ |
127 |
--create-perl-module="$(NS_MDOM)DOMMain ../DOM/DOMMain$(PM_SUFFIX)" \ |
128 |
--create-perl-module="$(NS_MDOM)DOMCore ../DOM/DOMCore$(PM_SUFFIX)" \ |
129 |
--create-perl-module="$(NS_MDOM)DOMXML ../DOM/DOMXML$(PM_SUFFIX)" \ |
130 |
--create-perl-module="$(NS_MDOM)DOMLS ../DOM/DOMLS$(PM_SUFFIX)" \ |
131 |
--create-perl-module="$(NS_MDOM)GenericLS ../DOM/GenericLS$(PM_SUFFIX)" \ |
132 |
--create-perl-module="$(NS_MARKUP)SuikaWikiConfig21 ../Markup/SuikaWikiConfig21$(PM_SUFFIX)" \ |
133 |
--create-perl-module="$(NS_UTIL)DIS DIS$(PM_SUFFIX)" \ |
134 |
--create-perl-module="$(NS_UTIL)PerlCode PerlCode$(PM_SUFFIX)" \ |
135 |
--create-perl-module="$(NS_UTIL_DIS)Value DIS/Value$(PM_SUFFIX)" \ |
136 |
--create-perl-module="$(NS_UTIL_DIS)Perl DIS/Perl$(PM_SUFFIX)" \ |
137 |
--create-perl-module="$(NS_UTIL_DIS)DNLite DIS/DNLite$(PM_SUFFIX)" |
138 |
$(PERL_CHK) ../Markup/SuikaWikiConfig21$(PM_SUFFIX) |
139 |
$(PERL_CHK) DIS$(PM_SUFFIX) |
140 |
$(PERL_CHK) PerlCode$(PM_SUFFIX) |
141 |
$(PERL_CHK) DIS/Value$(PM_SUFFIX) |
142 |
$(PERL_CHK) DIS/Perl$(PM_SUFFIX) |
143 |
$(PERL_CHK) DIS/DNLite$(PM_SUFFIX) |
144 |
$(TOUCH) $@ |
145 |
|
146 |
DIS/DISDoc$(PM_SUFFIX): disdoc$(DAC_SUFFIX) $(DAC2PM_PL) |
147 |
$(DAC2PM) $< \ |
148 |
--module-uri="$(NS_UTIL_DIS)DISDoc" \ |
149 |
--output-file-path="$@" |
150 |
$(PERL_CHK) $@ |
151 |
|
152 |
DIS/DISDump$(PM_SUFFIX): disdoc$(DAC_SUFFIX) $(DAC2PM_PL) |
153 |
$(DAC2PM) $< \ |
154 |
--module-uri="$(NS_UTIL_DIS)DISDump" \ |
155 |
--output-file-path="$@" |
156 |
$(PERL_CHK) $@ |
157 |
|
158 |
.disdoc$(PM_SUFFIX): disdoc$(DAC_SUFFIX) $(DAC2PM_PL) |
159 |
$(DAC2PM) $< \ |
160 |
--create-perl-module="$(NS_UTIL_DIS)DISDoc DIS/DISDoc$(PM_SUFFIX)" \ |
161 |
--create-perl-module="$(NS_UTIL_DIS)DISDump DIS/DISDump$(PM_SUFFIX)" |
162 |
$(PERL_CHK) DIS/DISDoc$(PM_SUFFIX) |
163 |
$(PERL_CHK) DIS/DISDump$(PM_SUFFIX) |
164 |
$(TOUCH) $@ |
165 |
|
166 |
# $(CORE_DAC_FILE) |
167 |
$(MANAKAI_LIB_DIR)manakai/all$(DAC_SUFFIX): dummy |
168 |
$(CD) $(MANAKAI_LIB_DIR)manakai/ && $(MAKE) all$(DAC_SUFFIX) |
169 |
|
170 |
# $(SWCFG_DAC_FILE) |
171 |
$(MANAKAI_LIB_DIR)Message/Markup/all$(DAC_SUFFIX): dummy |
172 |
$(CD) $(MANAKAI_LIB_DIR)Message/Markup/ && $(MAKE) all$(DAC_SUFFIX) |
173 |
|
174 |
dummy: |
175 |
|
176 |
clean: |
177 |
$(RM) $(GENERATED_FILES) |
178 |
$(RM) .*.tmp .discore$(PM_SUFFIX) .disdoc$(PM_SUFFIX) \ |
179 |
.discore-all$(PM_SUFFIX) |