| 1 |
LS = ls |
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 |
|
DAEM_SUFFIX = .dafm |
| 7 |
|
DAFX_SUFFIX = .dafx |
| 8 |
|
PM_SUFFIX = .pm |
| 9 |
|
|
| 10 |
|
CD = cd |
| 11 |
MAKE = make |
MAKE = make |
| 12 |
RM = rm |
RM = rm |
| 13 |
SED = sed |
RMALL = $(RM) -fv |
| 14 |
XARGS = xargs |
PERL = perl |
| 15 |
|
PERL_OPTIONS = |
| 16 |
PERL = perl -I../../ |
PERL_OPTIONS_ALL = $(PERL_OPTIONS) -I$(MANAKAI_LIB_DIR) |
| 17 |
PERL_CHK = $(PERL) -c -w |
PERL_ = $(PERL) $(PERL_OPTIONS_ALL) |
| 18 |
|
PERLC = $(PERL) -c -w |
| 19 |
|
PERLC_OPTIONS = |
| 20 |
|
PERLC_OPTIONS_ALL = $(PERLC_OPTIONS) -I$(MANAKAI_LIB_DIR) |
| 21 |
|
PERL_CHK = $(PERLC) $(PERLC_OPTIONS_ALL) |
| 22 |
|
TOUCH = touch |
| 23 |
|
|
| 24 |
|
NS_MDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\#ManakaiDOM. |
| 25 |
|
NS_MANAKAIDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\# |
| 26 |
|
|
| 27 |
|
DIS_OPTIONS = |
| 28 |
|
DIS_OPTIONS_ALL = $(DIS_OPTIONS) \ |
| 29 |
|
--search-path-catalog-file-name="$(MANAKAI_LIB_DIR)manakai/dis-catalog" \ |
| 30 |
|
--dis-file-suffix="$(DIS_SUFFIX)" \ |
| 31 |
|
--daem-file-suffix="$(DAEM_SUFFIX)" \ |
| 32 |
|
--dafx-file-suffix="$(DAFX_SUFFIX)" |
| 33 |
|
|
| 34 |
|
DAF_OPTIONS = |
| 35 |
|
DAF_PL = $(MANAKAI_BIN_DIR)daf.pl |
| 36 |
|
DAF = $(PERL_) $(DAF_PL) $(DAF_OPTIONS) $(DIS_OPTIONS_ALL) |
| 37 |
|
|
| 38 |
|
DOM_FEATURE_DIS_FILES = DOMFeature$(DIS_SUFFIX) GenericLS$(DIS_SUFFIX) |
| 39 |
|
DOM_CORE_DIS_FILES = DOMMain.dis DOMCore.dis \ |
| 40 |
|
TreeCore$(DIS_SUFFIX) Document$(DIS_SUFFIX) \ |
| 41 |
|
Element$(DIS_SUFFIX) XML$(DIS_SUFFIX) XDoctype$(DIS_SUFFIX) |
| 42 |
|
DOM_LS_DIS_FILES = SimpleLS$(DIS_SUFFIX) DOMLS$(DIS_SUFFIX) |
| 43 |
|
XP_DIS_FILES = XMLParser$(DIS_SUFFIX) |
| 44 |
|
DOM_HTML_DIS_FILES = DOMHTML.dis DOMWebForms.dis |
| 45 |
|
DIS_FILES = $(DOM_FEATURE_DIS_FILES) $(DOM_CORE_DIS_FILES) \ |
| 46 |
|
$(DOM_LS_DIS_FILES) $(DOM_HTML_DIS_FILES) $(XP_DIS_FILES) |
| 47 |
|
DOT_CORE_DIS_FILES = \ |
| 48 |
|
$(DOM_FEATURE_DIS_FILES) \ |
| 49 |
|
$(DOM_CORE_DIS_FILES) |
| 50 |
|
|
| 51 |
|
PM_FILES = \ |
| 52 |
|
DOMFeature$(PM_SUFFIX) GenericLS$(PM_SUFFIX) \ |
| 53 |
|
DOMMain$(PM_SUFFIX) DOMCore$(PM_SUFFIX) \ |
| 54 |
|
TreeCore$(PM_SUFFIX) Document$(PM_SUFFIX) Element$(PM_SUFFIX) \ |
| 55 |
|
XML$(PM_SUFFIX) XDoctype$(PM_SUFFIX) \ |
| 56 |
|
DOMLS$(PM_SUFFIX) XMLParser$(PM_SUFFIX) \ |
| 57 |
|
SimpleLS$(PM_SUFFIX) \ |
| 58 |
|
DOMHTML$(PM_SUFFIX) DOMWebForms$(PM_SUFFIX) |
| 59 |
|
|
| 60 |
DIS2PM_PL = ../../../bin/dis2pm.pl |
GENERATED_FILES = $(PM_FILES) |
|
DIS2PM = $(PERL) $(DIS2PM_PL) |
|
| 61 |
|
|
| 62 |
IDL2DIS_PL = idl2dis.pl |
all: .core$(PM_SUFFIX) $(PM_FILES) |
|
IDL2DIS = $(PERL) $(IDL2DIS_PL) |
|
| 63 |
|
|
| 64 |
all: dom-modules |
$(PM_FILES): %$(PM_SUFFIX): %$(DIS_SUFFIX) $(DAF_PL) |
| 65 |
|
$(DAF) --create-perl-module="$(NS_MDOM)$* $@" |
| 66 |
|
$(PERL_CHK) $@ |
| 67 |
|
|
| 68 |
dom-modules: ManakaiDOMMain.pm DOMMain.pm DOMCore.pm ManakaiDOMCore.pm |
.core$(PM_SUFFIX): $(DOT_CORE_DIS_FILES) $(DAF_PL) |
| 69 |
$(LS) *.dis | $(SED) s/\.dis/.pm/ | $(XARGS) $(MAKE) |
$(DAF) \ |
| 70 |
|
--create-perl-module="$(NS_MDOM)DOMFeature DOMFeature$(PM_SUFFIX)" \ |
| 71 |
|
--create-perl-module="$(NS_MDOM)GenericLS GenericLS$(PM_SUFFIX)" \ |
| 72 |
|
--create-perl-module="$(NS_MDOM)DOMMain DOMMain$(PM_SUFFIX)" \ |
| 73 |
|
--create-perl-module="$(NS_MDOM)DOMCore DOMCore$(PM_SUFFIX)" \ |
| 74 |
|
--create-perl-module="$(NS_MDOM)TreeCore TreeCore$(PM_SUFFIX)" \ |
| 75 |
|
--create-perl-module="$(NS_MDOM)Document Document$(PM_SUFFIX)" \ |
| 76 |
|
--create-perl-module="$(NS_MDOM)Element Element$(PM_SUFFIX)" \ |
| 77 |
|
--create-perl-module="$(NS_MDOM)XML XML$(PM_SUFFIX)" \ |
| 78 |
|
--create-perl-module="$(NS_MDOM)XDoctype XDoctype$(PM_SUFFIX)" |
| 79 |
|
$(PERL_CHK) DOMFeature$(PM_SUFFIX) |
| 80 |
|
$(PERL_CHK) GenericLS$(PM_SUFFIX) |
| 81 |
|
$(PERL_CHK) DOMMain$(PM_SUFFIX) |
| 82 |
|
$(PERL_CHK) DOMCore$(PM_SUFFIX) |
| 83 |
|
$(PERL_CHK) TreeCore$(PM_SUFFIX) |
| 84 |
|
$(PERL_CHK) Document$(PM_SUFFIX) |
| 85 |
|
$(PERL_CHK) Element$(PM_SUFFIX) |
| 86 |
|
$(PERL_CHK) XML$(PM_SUFFIX) |
| 87 |
|
$(PERL_CHK) XDoctype$(PM_SUFFIX) |
| 88 |
|
$(TOUCH) $@ |
| 89 |
|
## NOTE: When you modify this rule, update |../Util/Makefile|, too. |
| 90 |
|
|
|
%.pm: %.dis $(DIS2PM_PL) |
|
|
$(DIS2PM) $< > $@ |
|
|
$(PERL_CHK) $@ |
|
|
|
|
| 91 |
clean: |
clean: |
| 92 |
$(LS) *.dis | $(SED) s/\.dis/.pm/ | $(XARGS) $(RM) |
$(RMALL) $(GENERATED_FILES) |
| 93 |
|
$(RMALL) .*.tmp *~ .*~ *.BAK .*.BAK |
| 94 |
|
$(RMALL) .core$(PM_SUFFIX) |
| 95 |
|
|
| 96 |
|
clean-db: |
| 97 |
|
$(RMALL) *$(DAEM_SUFFIX) *$(DAFX_SUFFIX) |
| 98 |
|
|
| 99 |
|
distclean: clean clean-db |
| 100 |
|
|
| 101 |
|
## $Date$ |
| 102 |
|
## License: Public Domain. |