1 |
LS = ls |
LS = ls |
2 |
MAKE = make |
MAKE = make |
3 |
|
RM = rm |
4 |
SED = sed |
SED = sed |
5 |
XARGS = xargs |
XARGS = xargs |
6 |
|
|
7 |
PERL = perl -I../../ |
MANAKAI_ROOT_DIR = ../../../ |
8 |
PERL_CHK = $(PERL) -c |
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
9 |
|
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
10 |
DIS2PM_PL = dis2pm.pl |
MANAKAI_LIB_MANAKAI_DIR = $(MANAKAI_LIB_DIR)manakai/ |
11 |
DIS2PM = $(PERL) $(DIS2PM_PL) |
|
12 |
|
PERL = perl -I$(MANAKAI_LIB_DIR) |
13 |
|
PERL_CHK = $(PERL) -c -w |
14 |
|
|
15 |
|
DISC_PL = $(MANAKAI_BIN_DIR)disc.pl |
16 |
|
DISC = $(PERL) $(DISC_PL) -I=$(MANAKAI_LIB_MANAKAI_DIR) |
17 |
|
CDIS2PM_OPTIONS = --enable-assert |
18 |
|
## TODO: Official release should remove this option. |
19 |
|
CDIS2PM_PL = ../../../bin/cdis2pm.pl |
20 |
|
CDIS2PM = $(PERL) $(CDIS2PM_PL) $(CDIS2PM_OPTIONS) |
21 |
|
DIS2POD_PL = ../../../bin/dis2pm.pl |
22 |
|
DIS2POD = $(PERL) $(DIS2POD_PL) --output-pod=only |
23 |
|
|
24 |
IDL2DIS_PL = idl2dis.pl |
IDL2DIS_PL = idl2dis.pl |
25 |
IDL2DIS = $(PERL) $(IDL2DIS_PL) |
IDL2DIS = $(PERL) $(IDL2DIS_PL) |
26 |
|
|
27 |
all: dom-modules |
DIS_FILES = DOMMain.dis DOMCore.dis DOMXML.dis \ |
28 |
|
DOMLS.dis ManakaiDOMLS2003.dis \ |
29 |
|
DOMEvents.dis DOMViews.dis \ |
30 |
|
DOMHTML.dis DOMWebForms.dis |
31 |
|
|
32 |
|
GENERATED_FILES_DOMLATEST = core.cdis ev.cdis ls.cdis html.cdis \ |
33 |
|
DOMMain.pm DOMCore.pm DOMXML.pm DOMLS.pm ManakaiDOMLS2003.pm \ |
34 |
|
DOMEvents.pm DOMViews.pm \ |
35 |
|
DOMHTML.pm DOMWebForms.pm |
36 |
|
GENERATED_FILES = $(MAIN_CDIS_FILE) $(GENERATED_FILES_DOMLATEST) |
37 |
|
|
38 |
|
NS_MANAKAIDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\# |
39 |
|
|
40 |
|
all: dom |
41 |
|
|
42 |
|
dom: dom-latest |
43 |
|
dom-latest: $(GENERATED_FILES_DOMLATEST) |
44 |
|
|
45 |
|
core.cdis: DOMCore.dis DOMMain.dis DOMXML.dis $(DISC_PL) |
46 |
|
$(DISC) DOMCore.dis --output-file-name=$@ |
47 |
|
|
48 |
|
ev.cdis: core.cdis DOMEvents.dis DOMViews.dis $(DISC_PL) |
49 |
|
$(DISC) DOMEvents.dis --input-cdis-file-name=$< \ |
50 |
|
--output-file-name=.$@.1.tmp |
51 |
|
$(DISC) DOMViews.dis --input-cdis-file-name=.$@.1.tmp \ |
52 |
|
--output-file-name=$@ |
53 |
|
$(RM) .$@.1.tmp |
54 |
|
|
55 |
|
ls.cdis: ev.cdis DOMLS.dis ManakaiDOMLS2003.dis $(DISC_PL) |
56 |
|
$(DISC) DOMLS.dis --input-cdis-file-name=$< \ |
57 |
|
--output-file-name=.$@.1.tmp |
58 |
|
$(DISC) ManakaiDOMLS2003.dis --input-cdis-file-name=.$@.1.tmp \ |
59 |
|
--output-file-name=$@ |
60 |
|
$(RM) .$@.1.tmp |
61 |
|
|
62 |
|
html.cdis: ls.cdis DOMHTML.dis DOMWebForms.dis $(DISC_PL) |
63 |
|
$(DISC) DOMHTML.dis --input-cdis-file-name=$< \ |
64 |
|
--output-file-name=.$@.1.tmp |
65 |
|
$(DISC) DOMWebForms.dis --input-cdis-file-name=.$@.1.tmp \ |
66 |
|
--output-file-name=$@ |
67 |
|
$(RM) .$@.1.tmp |
68 |
|
|
69 |
|
DOMMain.pm: core.cdis $(CDIS2PM_PL) |
70 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMCommon" \ |
71 |
|
--module-name=DOMMain --nooutput-module-version > $@ |
72 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
73 |
|
--module-name=DOMMain >> $@ |
74 |
|
$(PERL_CHK) $@ |
75 |
|
|
76 |
|
DOMCore.pm: core.cdis DOMMain.pm $(CDIS2PM_PL) |
77 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
78 |
|
--module-name=DOMCore > $@ |
79 |
|
$(PERL_CHK) $@ |
80 |
|
|
81 |
|
DOMXML.pm: core.cdis $(CDIS2PM_PL) |
82 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
83 |
|
--module-name=DOMXML > $@ |
84 |
|
$(PERL_CHK) $@ |
85 |
|
|
86 |
|
DOMEvents.pm: ev.cdis $(CDIS2PM_PL) |
87 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
88 |
|
--module-name=DOMEvents > $@ |
89 |
|
$(PERL_CHK) $@ |
90 |
|
|
91 |
dom-modules: |
DOMViews.pm: ev.cdis $(CDIS2PM_PL) |
92 |
$(LS) *.dis | $(SED) s/\.dis/.pm/ | $(XARGS) $(MAKE) |
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
93 |
|
--module-name=DOMViews > $@ |
94 |
|
$(PERL_CHK) $@ |
95 |
|
|
96 |
|
DOMLS.pm: ls.cdis $(CDIS2PM_PL) |
97 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
98 |
|
--module-name=DOMLS > $@ |
99 |
|
$(PERL_CHK) $@ |
100 |
|
|
101 |
|
ManakaiDOMLS2003.pm: ls.cdis $(CDIS2PM_PL) |
102 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
103 |
|
--module-name=ManakaiDOMLS2003 > $@ |
104 |
|
$(PERL_CHK) $@ |
105 |
|
|
106 |
|
DOMHTML.pm: html.cdis $(CDIS2PM_PL) |
107 |
|
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
108 |
|
--module-name=DOMHTML > $@ |
109 |
|
$(PERL_CHK) $@ |
110 |
|
|
111 |
%.pm: %.dis $(DIS2PM_PL) |
DOMWebForms.pm: html.cdis $(CDIS2PM_PL) |
112 |
$(DIS2PM) $< > $@ |
$(CDIS2PM) $< --for="$(NS_MANAKAIDOM)ManakaiDOMLatest" \ |
113 |
|
--module-name=DOMWebForms > $@ |
114 |
$(PERL_CHK) $@ |
$(PERL_CHK) $@ |
115 |
|
|
116 |
|
clean: |
117 |
|
$(RM) $(GENERATED_FILES) .*.tmp |
118 |
|
|