|
LS = ls |
|
|
MAKE = make |
|
|
RM = rm |
|
|
SED = sed |
|
|
XARGS = xargs |
|
|
|
|
1 |
MANAKAI_ROOT_DIR = ../../../ |
MANAKAI_ROOT_DIR = ../../../ |
2 |
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
3 |
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
|
MANAKAI_LIB_MANAKAI_DIR = $(MANAKAI_LIB_DIR)manakai/ |
|
4 |
|
|
5 |
PERL = perl -I$(MANAKAI_LIB_DIR) |
DIS_SUFFIX = .dis |
6 |
PERL_CHK = $(PERL) -c -w |
DAC_SUFFIX = .dae |
7 |
|
DAEM_SUFFIX = .daem |
8 |
|
PM_SUFFIX = .pm |
9 |
|
|
10 |
DISC_PL = $(MANAKAI_BIN_DIR)disc.pl |
CD = cd |
11 |
DISC = $(PERL) $(DISC_PL) -I=$(MANAKAI_LIB_MANAKAI_DIR) |
MAKE = make |
12 |
CDIS2PM_OPTIONS = --enable-assert |
RM = rm |
13 |
## TODO: Official release should remove this option. |
PERL = perl |
14 |
CDIS2PM_PL = ../../../bin/cdis2pm.pl |
PERL_OPTIONS = |
15 |
CDIS2PM = $(PERL) $(CDIS2PM_PL) $(CDIS2PM_OPTIONS) |
PERL_OPTIONS_ALL = $(PERL_OPTIONS) -I$(MANAKAI_LIB_DIR) |
16 |
DIS2POD_PL = ../../../bin/dis2pm.pl |
PERL_ = $(PERL) $(PERL_OPTIONS_ALL) |
17 |
DIS2POD = $(PERL) $(DIS2POD_PL) --output-pod=only |
PERLC = $(PERL) -c -w |
18 |
|
PERLC_OPTIONS = |
19 |
IDL2DIS_PL = idl2dis.pl |
PERLC_OPTIONS_ALL = $(PERLC_OPTIONS) -I$(MANAKAI_LIB_DIR) |
20 |
IDL2DIS = $(PERL) $(IDL2DIS_PL) |
PERL_CHK = $(PERLC) $(PERLC_OPTIONS_ALL) |
21 |
|
TOUCH = touch |
|
DIS_FILES = DOMMain.dis DOMCore.dis DOMXML.dis \ |
|
|
DOMLS.dis ManakaiDOMLS2003.dis \ |
|
|
DOMEvents.dis DOMViews.dis \ |
|
|
DOMHTML.dis DOMWebForms.dis |
|
|
|
|
|
GENERATED_FILES_DOMLATEST = core.cdis ev.cdis ls.cdis html.cdis \ |
|
|
DOMMain.pm DOMCore.pm DOMXML.pm DOMLS.pm ManakaiDOMLS2003.pm \ |
|
|
DOMEvents.pm DOMViews.pm \ |
|
|
DOMHTML.pm DOMWebForms.pm |
|
|
GENERATED_FILES = $(MAIN_CDIS_FILE) $(GENERATED_FILES_DOMLATEST) |
|
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\# |
NS_MANAKAIDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\# |
25 |
|
|
26 |
all: dom |
DIS_OPTIONS = |
27 |
|
DIS_OPTIONS_ALL = $(DIS_OPTIONS) \ |
28 |
dom: dom-latest |
--search-path-catalog-file-name="$(MANAKAI_LIB_DIR)manakai/dis-catalog" \ |
29 |
dom-latest: $(GENERATED_FILES_DOMLATEST) |
--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) GenericLS$(DIS_SUFFIX) |
46 |
|
DOM_CORE_DIS_FILES = DOMMain.dis DOMCore.dis DOMXML.dis \ |
47 |
|
Tree$(DIS_SUFFIX) \ |
48 |
|
XDoctype$(DIS_SUFFIX) |
49 |
|
DOM_LS_DIS_FILES = SimpleLS$(DIS_SUFFIX) DOMLS$(DIS_SUFFIX) \ |
50 |
|
ManakaiDOMLS2003$(DIS_SUFFIX) |
51 |
|
XP_DIS_FILES = XMLParser$(DIS_SUFFIX) |
52 |
|
DOM_HTML_DIS_FILES = DOMHTML.dis DOMWebForms.dis |
53 |
|
DIS_FILES = $(DOM_FEATURE_DIS_FILES) $(DOM_CORE_DIS_FILES) \ |
54 |
|
$(DOM_LS_DIS_FILES) $(DOM_HTML_DIS_FILES) $(XP_DIS_FILES) |
55 |
|
|
56 |
|
GENERATED_FILES = \ |
57 |
|
feature$(DAC_SUFFIX) DOMFeature$(PM_SUFFIX) GenericLS$(PM_SUFFIX) \ |
58 |
|
core$(DAC_SUFFIX) DOMMain$(PM_SUFFIX) \ |
59 |
|
DOMCore$(PM_SUFFIX) DOMXML$(PM_SUFFIX) \ |
60 |
|
Tree$(PM_SUFFIX) \ |
61 |
|
XDoctype$(PM_SUFFIX) \ |
62 |
|
ls$(DAC_SUFFIX) SimpleLS$(PM_SUFFIX) ManakaiDOMLS2003$(PM_SUFFIX) \ |
63 |
|
DOMLS$(PM_SUFFIX) \ |
64 |
|
xp$(DAC_SUFFIX) XMLParser$(PM_SUFFIX) \ |
65 |
|
html$(DAC_SUFFIX) DOMHTML$(PM_SUFFIX) DOMWebForms$(PM_SUFFIX) |
66 |
|
GENERATED_DAC_FILES = feature$(DAC_SUFFIX) \ |
67 |
|
core$(DAC_SUFFIX) ls$(DAC_SUFFIX) html$(DAC_SUFFIX) xp$(DAC_SUFFIX) |
68 |
|
|
69 |
|
all: .core$(PM_SUFFIX) .html$(PM_SUFFIX) \ |
70 |
|
$(GENERATED_DAC_FILES) \ |
71 |
|
XMLParser$(PM_SUFFIX) |
72 |
|
|
73 |
|
feature$(DAC_SUFFIX): $(UTIL_CORE_DAC_FILE) $(DOM_FEATURE_DIS_FILES) $(DAC_PL) |
74 |
|
$(DAC)$@ --input-db-file-name="$<" GenericLS.dis |
75 |
|
|
76 |
|
core$(DAC_SUFFIX): feature$(DAC_SUFFIX) $(DOM_CORE_DIS_FILES) $(DAC_PL) |
77 |
|
$(DAC)$@ --input-db-file-name="$<" XDoctype.dis |
78 |
|
|
79 |
|
ls$(DAC_SUFFIX): core$(DAC_SUFFIX) $(DOM_LS_DIS_FILES) $(DAC_PL) |
80 |
|
$(DAC)$@.tmp.1 --input-db-file-name="$<" SimpleLS.dis |
81 |
|
$(DAC)$@.tmp.2 --input-db-file-name="$@.tmp.1" ManakaiDOMLS2003.dis |
82 |
|
$(DAC)$@ --input-db-file-name="$@.tmp.2" DOMLS.dis |
83 |
|
$(RM) $@.tmp.1 $@.tmp.2 |
84 |
|
|
85 |
|
xp$(DAC_SUFFIX): ls$(DAC_SUFFIX) $(XP_DIS_FILES) $(DAC_PL) |
86 |
|
$(DAC)$@ --input-db-file-name="$<" XMLParser.dis |
87 |
|
|
88 |
|
html$(DAC_SUFFIX): core$(DAC_SUFFIX) $(DOM_HTML_DIS_FILES) $(DAC_PL) |
89 |
|
$(DAC)$@ --input-db-file-name="$<" DOMHTML.dis |
90 |
|
|
91 |
|
$(DOM_FEATURE_DIS_FILES:$(DIS_SUFFIX)=$(PM_SUFFIX)): \ |
92 |
|
feature$(DAC_SUFFIX) $(DAC2PM_PL) |
93 |
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
94 |
|
--output-file-path="$@" |
95 |
|
$(PERL_CHK) $@ |
96 |
|
|
97 |
|
$(DOM_CORE_DIS_FILES:.dis=$(PM_SUFFIX)): core$(DAC_SUFFIX) $(DAC2PM_PL) |
98 |
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
99 |
|
--output-file-path="$@" |
100 |
|
$(PERL_CHK) $@ |
101 |
|
|
102 |
|
.core$(PM_SUFFIX): core$(DAC_SUFFIX) $(DAC2PM_PL) |
103 |
|
$(DAC2PM) $< \ |
104 |
|
--create-perl-module="$(NS_MDOM)DOMFeature DOMFeature$(PM_SUFFIX)" \ |
105 |
|
--create-perl-module="$(NS_MDOM)GenericLS GenericLS$(PM_SUFFIX)" \ |
106 |
|
--create-perl-module="$(NS_MDOM)DOMMain DOMMain$(PM_SUFFIX)" \ |
107 |
|
--create-perl-module="$(NS_MDOM)DOMCore DOMCore$(PM_SUFFIX)" \ |
108 |
|
--create-perl-module="$(NS_MDOM)Tree Tree$(PM_SUFFIX)" \ |
109 |
|
--create-perl-module="$(NS_MDOM)DOMXML DOMXML$(PM_SUFFIX)" \ |
110 |
|
--create-perl-module="$(NS_MDOM)XDoctype XDoctype$(PM_SUFFIX)" |
111 |
|
$(PERL_CHK) DOMFeature$(PM_SUFFIX) |
112 |
|
$(PERL_CHK) GenericLS$(PM_SUFFIX) |
113 |
|
$(PERL_CHK) DOMMain$(PM_SUFFIX) |
114 |
|
$(PERL_CHK) DOMCore$(PM_SUFFIX) |
115 |
|
$(PERL_CHK) Tree$(PM_SUFFIX) |
116 |
|
$(PERL_CHK) DOMXML$(PM_SUFFIX) |
117 |
|
$(PERL_CHK) XDoctype$(PM_SUFFIX) |
118 |
|
$(TOUCH) $@ |
119 |
|
## NOTE: When you modify this rule, update |../Util/Makefile|, too. |
120 |
|
|
121 |
|
$(DOM_LS_DIS_FILES:$(DIS_SUFFIX)=$(PM_SUFFIX)): ls$(DAC_SUFFIX) $(DAC2PM_PL) |
122 |
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
123 |
|
--output-file-path="$@" |
124 |
|
$(PERL_CHK) $@ |
125 |
|
|
126 |
|
$(XP_DIS_FILES:$(DIS_SUFFIX)=$(PM_SUFFIX)): xp$(DAC_SUFFIX) $(DAC2PM_PL) |
127 |
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" \ |
128 |
|
--output-file-path="$@" |
129 |
|
$(PERL_CHK) $@ |
130 |
|
|
131 |
|
$(DOM_HTML_DIS_FILES:.dis=$(PM_SUFFIX)): html$(DAC_SUFFIX) $(DAC2PM_PL) |
132 |
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)$(@:$(PM_SUFFIX)=)" > $@ |
133 |
|
$(PERL_CHK) $@ |
134 |
|
|
135 |
|
feature-spec$(DAC_SUFFIX): feature$(DAC_SUFFIX) DOMFeature.dis $(DAC_PL) |
136 |
|
$(DAC)$@ --input-db-file-name="$<" DOMFeature.dis \ |
137 |
|
--for="$(NS_MANAKAIDOM)ForSpecLatest" |
138 |
|
|
139 |
|
# $(UTIL_CORE_DAC_FILE) |
140 |
|
$(MANAKAI_LIB_DIR)Message/Util/core$(DAC_SUFFIX): dummy |
141 |
|
$(CD) $(MANAKAI_LIB_DIR)Message/Util/ && $(MAKE) core$(DAC_SUFFIX) |
142 |
|
|
143 |
core.cdis: DOMCore.dis DOMMain.dis DOMXML.dis $(DISC_PL) |
dummy: |
|
$(DISC) DOMCore.dis --output-file-name=$@ |
|
|
|
|
|
ev.cdis: core.cdis DOMEvents.dis DOMViews.dis $(DISC_PL) |
|
|
$(DISC) DOMEvents.dis --input-cdis-file-name=$< \ |
|
|
--output-file-name=.$@.1.tmp |
|
|
$(DISC) DOMViews.dis --input-cdis-file-name=.$@.1.tmp \ |
|
|
--output-file-name=$@ |
|
|
$(RM) .$@.1.tmp |
|
|
|
|
|
ls.cdis: ev.cdis DOMLS.dis ManakaiDOMLS2003.dis $(DISC_PL) |
|
|
$(DISC) DOMLS.dis --input-cdis-file-name=$< \ |
|
|
--output-file-name=.$@.1.tmp |
|
|
$(DISC) ManakaiDOMLS2003.dis --input-cdis-file-name=.$@.1.tmp \ |
|
|
--output-file-name=$@ |
|
|
$(RM) .$@.1.tmp |
|
|
|
|
|
html.cdis: ls.cdis DOMHTML.dis DOMWebForms.dis $(DISC_PL) |
|
|
$(DISC) DOMHTML.dis --input-cdis-file-name=$< \ |
|
|
--output-file-name=.$@.1.tmp |
|
|
$(DISC) DOMWebForms.dis --input-cdis-file-name=.$@.1.tmp \ |
|
|
--output-file-name=$@ |
|
|
$(RM) .$@.1.tmp |
|
|
|
|
|
DOMMain.pm: core.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMCommon" \ |
|
|
--module-name=DOMMain --nooutput-module-version > $@ |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMMain >> $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMCore.pm: core.cdis DOMMain.pm $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMCore > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMXML.pm: core.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMXML > $@ |
|
|
$(PERL_CHK) $@ |
|
144 |
|
|
|
DOMEvents.pm: ev.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMEvents > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMViews.pm: ev.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMViews > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMLS.pm: ls.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMLS > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
ManakaiDOMLS2003.pm: ls.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=ManakaiDOMLS2003 > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMHTML.pm: html.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMHTML > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
|
DOMWebForms.pm: html.cdis $(CDIS2PM_PL) |
|
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
|
|
--module-name=DOMWebForms > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
145 |
clean: |
clean: |
146 |
$(RM) $(GENERATED_FILES) .*.tmp |
$(RM) $(GENERATED_FILES) |
147 |
|
$(RM) .*.tmp *~ .*~ *.BAK .*.BAK |
148 |
|
$(RM) .core$(PM_SUFFIX) |
149 |
|
|
150 |
|
## $Date$ |
151 |
|
## License: Public Domain. |