| 1 |
wakaba |
1.1 |
MANAKAI_ROOT_DIR = ../ |
| 2 |
|
|
MANAKAI_LIB_DIR = $(MANAKAI_ROOT_DIR)lib/ |
| 3 |
|
|
MANAKAI_BIN_DIR = $(MANAKAI_ROOT_DIR)bin/ |
| 4 |
|
|
TEMP_LIB_DIR = $(MANAKAI_LIB_DIR).phase1.tmp/ |
| 5 |
|
|
TEMP_LIB2_DIR = $(MANAKAI_LIB_DIR).phase2.tmp/ |
| 6 |
|
|
|
| 7 |
|
|
NS_MDOM = http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom\#ManakaiDOM. |
| 8 |
|
|
NS_MARKUP = http://suika.fam.cx/~wakaba/archive/2005/manakai/Markup\# |
| 9 |
|
|
NS_UTIL = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ |
| 10 |
|
|
NS_UTIL_ERR = http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/Error/ |
| 11 |
|
|
|
| 12 |
|
|
MKDIR = mkdir |
| 13 |
|
|
RM = rm |
| 14 |
wakaba |
1.3 |
MAKE = make |
| 15 |
|
|
CD = cd |
| 16 |
wakaba |
1.1 |
|
| 17 |
|
|
PERL = perl |
| 18 |
|
|
PERL1 = $(PERL) -I$(MANAKAI_LIB_DIR) |
| 19 |
|
|
PERL1_CHK = $(PERL) -I$(TEMP_LIB_DIR) -I$(MANAKAI_LIB_DIR) -c -w |
| 20 |
|
|
PERL2 = $(PERL) -I$(TEMP_LIB_DIR) -I$(MANAKAI_LIB_DIR) |
| 21 |
|
|
PERL2_CHK = $(PERL) -I$(TEMP_LIB2_DIR) -I$(TEMP_LIB_DIR) -I$(MANAKAI_LIB_DIR) |
| 22 |
|
|
|
| 23 |
|
|
DISC_PL = $(MANAKAI_BIN_DIR)disc.pl |
| 24 |
|
|
DISC = $(PERL1) $(DISC_PL) \ |
| 25 |
|
|
-I=$(MANAKAI_LIB_DIR)manakai/ \ |
| 26 |
|
|
-I=$(MANAKAI_LIB_DIR)Message/Util/ \ |
| 27 |
|
|
-I=$(MANAKAI_LIB_DIR)Message/Util/Error/ \ |
| 28 |
|
|
-I=$(MANAKAI_LIB_DIR)Message/Markup/ \ |
| 29 |
|
|
-I=$(MANAKAI_LIB_DIR)Message/DOM/ |
| 30 |
|
|
CDIS2PM_OPTIONS = |
| 31 |
|
|
CDIS2PM_PL = $(MANAKAI_BIN_DIR)cdis2pm.pl |
| 32 |
|
|
CDIS2PM = $(PERL1) $(CDIS2PM_PL) $(CDIS2PM_OPTIONS) |
| 33 |
|
|
|
| 34 |
|
|
DAC_PL = $(MANAKAI_BIN_DIR)dac.pl |
| 35 |
|
|
DAC = $(PERL2) \ |
| 36 |
|
|
-MMessage::Util::Error::DOMException \ |
| 37 |
|
|
$(DAC_PL) \ |
| 38 |
|
|
--search-path-catalog-file-name="$(MANAKAI_LIB_DIR)manakai/dis-catalog" \ |
| 39 |
|
|
--db-base-directory-path="$(MANAKAI_ROOT_DIR)" \ |
| 40 |
wakaba |
1.3 |
--implementation-registry-package \ |
| 41 |
|
|
"Message::DOM::DOMMetaImpl::ManakaiDOMImplementationRegistryCompat" \ |
| 42 |
wakaba |
1.1 |
--output-file-name= |
| 43 |
|
|
|
| 44 |
|
|
DAC2PM_OPTIONS = |
| 45 |
|
|
DAC2PM_PL = $(MANAKAI_BIN_DIR)dac2pm.pl |
| 46 |
|
|
DAC2PM = $(PERL2) \ |
| 47 |
|
|
-MMessage::Util::Error::DOMException \ |
| 48 |
wakaba |
1.3 |
$(DAC2PM_PL) \ |
| 49 |
|
|
--implementation-registry-package \ |
| 50 |
|
|
"Message::DOM::DOMMetaImpl::ManakaiDOMImplementationRegistryCompat" \ |
| 51 |
|
|
$(DAC2PM_OPTIONS) |
| 52 |
|
|
|
| 53 |
|
|
PHASE3_PERL_OPTIONS = |
| 54 |
wakaba |
1.1 |
|
| 55 |
|
|
DIS_FILES_FOR_DOMMETAIMPL = \ |
| 56 |
|
|
$(MANAKAI_LIB_DIR)Message/DOM/DOMBoot.dis \ |
| 57 |
|
|
$(MANAKAI_LIB_DIR)Message/DOM/DOMMetaImpl.dis \ |
| 58 |
|
|
$(MANAKAI_LIB_DIR)Message/Util/ManakaiNode.dis \ |
| 59 |
|
|
$(MANAKAI_LIB_DIR)manakai/DISCore.dis \ |
| 60 |
|
|
$(MANAKAI_LIB_DIR)manakai/DISRDF.dis \ |
| 61 |
|
|
$(MANAKAI_LIB_DIR)manakai/DISLang.dis \ |
| 62 |
|
|
$(MANAKAI_LIB_DIR)manakai/DISIDL.dis \ |
| 63 |
|
|
$(MANAKAI_LIB_DIR)manakai/DISPerl.dis \ |
| 64 |
|
|
$(MANAKAI_LIB_DIR)manakai/XML.dis |
| 65 |
|
|
## NOTE: DOMBoot.dis must be first |
| 66 |
|
|
|
| 67 |
|
|
DIS_FILES_FOR_DIS = \ |
| 68 |
|
|
$(MANAKAI_LIB_DIR)Message/Util/DIS.dis \ |
| 69 |
|
|
$(MANAKAI_LIB_DIR)Message/Markup/SuikaWikiConfig21.dis \ |
| 70 |
|
|
$(MANAKAI_LIB_DIR)Message/Util/Error/DOMException.dis \ |
| 71 |
|
|
$(MANAKAI_LIB_DIR)Message/Util/PerlCode.dis |
| 72 |
|
|
## NOTE: DIS.dis must be first |
| 73 |
|
|
|
| 74 |
wakaba |
1.2 |
PHASE1_PM_FILES = \ |
| 75 |
wakaba |
1.1 |
$(TEMP_LIB_DIR)Message/Util/ManakaiNode.pm \ |
| 76 |
|
|
$(TEMP_LIB_DIR)Message/DOM/DOMMetaImpl.pm \ |
| 77 |
|
|
$(TEMP_LIB_DIR)Message/Markup/SuikaWikiConfig21.pm \ |
| 78 |
|
|
$(TEMP_LIB_DIR)Message/Util/Error/DOMException.pm \ |
| 79 |
|
|
$(TEMP_LIB_DIR)Message/Util/PerlCode.pm \ |
| 80 |
wakaba |
1.2 |
$(TEMP_LIB_DIR)Message/Util/DIS.pm |
| 81 |
|
|
|
| 82 |
wakaba |
1.3 |
PHASE2_PM_FILES = \ |
| 83 |
wakaba |
1.1 |
$(TEMP_LIB2_DIR)Message/Util/ManakaiNode.pm \ |
| 84 |
|
|
$(TEMP_LIB2_DIR)Message/DOM/DOMMetaImpl.pm \ |
| 85 |
|
|
$(TEMP_LIB2_DIR)Message/Markup/SuikaWikiConfig21.pm \ |
| 86 |
|
|
$(TEMP_LIB2_DIR)Message/Util/Error/DOMException.pm \ |
| 87 |
|
|
$(TEMP_LIB2_DIR)Message/Util/PerlCode.pm \ |
| 88 |
|
|
$(TEMP_LIB2_DIR)Message/Util/DIS.pm |
| 89 |
|
|
|
| 90 |
wakaba |
1.3 |
GENERATED_FILES = $(TEMP_LIB_DIR) $(PHASE1_PM_FILES) \ |
| 91 |
|
|
\ |
| 92 |
|
|
$(TEMP_LIB2_DIR) $(PHASE2_PM_FILES) |
| 93 |
|
|
|
| 94 |
|
|
all: $(GENERATED_FILES) phase3 |
| 95 |
wakaba |
1.1 |
|
| 96 |
|
|
## Phase 1 - Making Perl modules by old disc and cdis2pm tools |
| 97 |
|
|
|
| 98 |
|
|
$(TEMP_LIB_DIR): |
| 99 |
|
|
$(MKDIR) -p $(TEMP_LIB_DIR)Message/Util/Error |
| 100 |
|
|
$(MKDIR) -p $(TEMP_LIB_DIR)Message/DOM |
| 101 |
|
|
$(MKDIR) -p $(TEMP_LIB_DIR)Message/Markup |
| 102 |
|
|
|
| 103 |
|
|
$(TEMP_LIB_DIR)dom.cdis: $(DIS_FILES_FOR_DOMMETAIMPL) $(DISC_PL) |
| 104 |
|
|
$(DISC) $< --output-file-name="$@" |
| 105 |
|
|
|
| 106 |
|
|
$(TEMP_LIB_DIR)dis.cdis: $(DIS_FILES_FOR_DIS) \ |
| 107 |
|
|
$(TEMP_LIB_DIR)dom.cdis $(DISC_PL) |
| 108 |
|
|
$(DISC) $< --input-cdis-file-name="$(TEMP_LIB_DIR)dom.cdis" \ |
| 109 |
|
|
--output-file-name="$@" |
| 110 |
|
|
|
| 111 |
|
|
$(TEMP_LIB_DIR)Message/DOM/DOMMetaImpl.pm: $(TEMP_LIB_DIR)dom.cdis $(CDIS2PM_PL) |
| 112 |
|
|
$(CDIS2PM) $< --module-name=DOMMetaImpl > $@ |
| 113 |
|
|
$(PERL1_CHK) $@ |
| 114 |
|
|
|
| 115 |
|
|
$(TEMP_LIB_DIR)Message/Util/ManakaiNode.pm: $(TEMP_LIB_DIR)dom.cdis $(CDIS2PM_PL) |
| 116 |
|
|
$(CDIS2PM) $< --module-name=ManakaiNode > $@ |
| 117 |
|
|
$(PERL1_CHK) $@ |
| 118 |
|
|
|
| 119 |
|
|
$(TEMP_LIB_DIR)Message/Util/DIS.pm: $(TEMP_LIB_DIR)dis.cdis $(CDIS2PM_PL) |
| 120 |
|
|
$(CDIS2PM) $< --module-name=DIS > $@ |
| 121 |
|
|
$(PERL1_CHK) $@ |
| 122 |
|
|
|
| 123 |
|
|
$(TEMP_LIB_DIR)Message/Util/PerlCode.pm: $(TEMP_LIB_DIR)dis.cdis $(CDIS2PM_PL) |
| 124 |
|
|
$(CDIS2PM) $< --module-name=PerlCode > $@ |
| 125 |
|
|
$(PERL1_CHK) $@ |
| 126 |
|
|
|
| 127 |
|
|
$(TEMP_LIB_DIR)Message/Util/Error/DOMException.pm: $(TEMP_LIB_DIR)dis.cdis \ |
| 128 |
|
|
$(CDIS2PM_PL) |
| 129 |
|
|
$(CDIS2PM) $< --module-name=DOMException > $@ |
| 130 |
|
|
$(PERL1_CHK) $@ |
| 131 |
|
|
|
| 132 |
|
|
$(TEMP_LIB_DIR)Message/Markup/SuikaWikiConfig21.pm: $(TEMP_LIB_DIR)dis.cdis \ |
| 133 |
|
|
$(CDIS2PM_PL) |
| 134 |
|
|
$(CDIS2PM) $< --module-name=SuikaWikiConfig21 > $@ |
| 135 |
|
|
$(PERL1_CHK) $@ |
| 136 |
|
|
|
| 137 |
|
|
## Phase 2 - Making Perl modules by dac tools generated |
| 138 |
|
|
## by old disc and cdis2pm tools |
| 139 |
|
|
|
| 140 |
|
|
$(TEMP_LIB2_DIR): |
| 141 |
|
|
$(MKDIR) -p $(TEMP_LIB2_DIR)Message/Util/Error |
| 142 |
|
|
$(MKDIR) -p $(TEMP_LIB2_DIR)Message/DOM |
| 143 |
|
|
$(MKDIR) -p $(TEMP_LIB2_DIR)Message/Markup |
| 144 |
|
|
|
| 145 |
wakaba |
1.2 |
$(TEMP_LIB2_DIR)dom.dac: $(DIS_FILES_FOR_DOMMETAIMPL) \ |
| 146 |
|
|
$(DAC_PL) $(PHASE1_PM_FILES) |
| 147 |
wakaba |
1.1 |
$(DAC)$@ $< |
| 148 |
|
|
|
| 149 |
|
|
$(TEMP_LIB2_DIR)dis.dac: $(DIS_FILES_FOR_DIS) $(TEMP_LIB2_DIR)dom.dac $(DAC_PL) |
| 150 |
|
|
$(DAC)$@ --input-db-file-name="$(TEMP_LIB2_DIR)dom.dac" $< |
| 151 |
|
|
|
| 152 |
|
|
$(TEMP_LIB2_DIR)Message/DOM/DOMMetaImpl.pm: \ |
| 153 |
|
|
$(TEMP_LIB2_DIR)dom.dac $(DAC2PM_PL) |
| 154 |
|
|
$(DAC2PM) $< --module-uri="$(NS_MDOM)DOMMetaImpl" > $@ |
| 155 |
|
|
$(PERL2_CHK) $@ |
| 156 |
|
|
|
| 157 |
|
|
$(TEMP_LIB2_DIR)Message/Markup/SuikaWikiConfig21.pm: \ |
| 158 |
|
|
$(TEMP_LIB2_DIR)dis.dac $(DAC2PM_PL) |
| 159 |
|
|
$(DAC2PM) $< --module-uri="$(NS_MARKUP)SuikaWikiConfig21" > $@ |
| 160 |
|
|
$(PERL2_CHK) $@ |
| 161 |
|
|
|
| 162 |
|
|
$(TEMP_LIB2_DIR)Message/Util/ManakaiNode.pm: \ |
| 163 |
|
|
$(TEMP_LIB2_DIR)dom.dac $(DAC2PM_PL) |
| 164 |
|
|
$(DAC2PM) $< --module-uri="$(NS_UTIL)ManakaiNode" > $@ |
| 165 |
|
|
$(PERL2_CHK) $@ |
| 166 |
|
|
|
| 167 |
|
|
$(TEMP_LIB2_DIR)Message/Util/DIS.pm: \ |
| 168 |
|
|
$(TEMP_LIB2_DIR)dis.dac $(DAC2PM_PL) |
| 169 |
|
|
$(DAC2PM) $< --module-uri="$(NS_UTIL)DIS" > $@ |
| 170 |
|
|
$(PERL2_CHK) $@ |
| 171 |
|
|
|
| 172 |
|
|
$(TEMP_LIB2_DIR)Message/Util/PerlCode.pm: \ |
| 173 |
|
|
$(TEMP_LIB2_DIR)dis.dac $(DAC2PM_PL) |
| 174 |
|
|
$(DAC2PM) $< --module-uri="$(NS_UTIL)PerlCode" > $@ |
| 175 |
|
|
$(PERL2_CHK) $@ |
| 176 |
|
|
|
| 177 |
|
|
$(TEMP_LIB2_DIR)Message/Util/Error/DOMException.pm: \ |
| 178 |
|
|
$(TEMP_LIB2_DIR)dis.dac $(DAC2PM_PL) |
| 179 |
|
|
$(DAC2PM) $< --module-uri="$(NS_UTIL_ERR)DOMException" > $@ |
| 180 |
|
|
$(PERL2_CHK) $@ |
| 181 |
|
|
|
| 182 |
|
|
## Phase 3 - Making Perl modules by dac tools generated by dac tools |
| 183 |
|
|
|
| 184 |
wakaba |
1.3 |
phase3: $(PHASE2_PM_FILES) |
| 185 |
|
|
$(CD) $(MANAKAI_LIB_DIR)Message/Util && \ |
| 186 |
|
|
$(MAKE) all \ |
| 187 |
|
|
PERL_OPTIONS="-I../../$(TEMP_LIB2_DIR) -I../../$(MANAKAI_LIB_DIR) \ |
| 188 |
|
|
$(PHASE3_PERL_OPTIONS)" \ |
| 189 |
|
|
PERLC_OPTIONS="-I../../$(MANAKAI_LIB_DIR) $(PHASE3_PERL_OPTIONS)" |
| 190 |
|
|
|
| 191 |
|
|
|
| 192 |
wakaba |
1.1 |
## Misc. |
| 193 |
|
|
|
| 194 |
|
|
clean: |
| 195 |
|
|
$(RM) -frv $(TEMP_LIB_DIR) |
| 196 |
|
|
$(RM) -fv *~ .*~ *.BAK .*.BAK |
| 197 |
wakaba |
1.3 |
$(CD) $(MANAKAI_LIB_DIR)Message/Util && $(MAKE) clean |