1# Makefile for Hyper Estraier 2 3 4 5#================================================================ 6# Setting Variables 7#================================================================ 8 9 10# Generic settings 11SHELL = @SHELL@ 12 13# Packaging 14PACKAGE = @PACKAGE_NAME@ 15VERSION = @PACKAGE_VERSION@ 16PACKAGEDIR = $(PACKAGE)-$(VERSION) 17PACKAGETGZ = $(PACKAGE)-$(VERSION).tar.gz 18LIBVER = @LIBVER@ 19LIBREV = @LIBREV@ 20PROTVER = @PROTVER@ 21 22# Targets 23MYHEADS = estraier.h estmtdb.h estnode.h 24MYLIBOBJS = estraier.o estmtdb.o estnode.o md5.o 25MYLIBS = libestraier.a libestraier.so.$(LIBVER).$(LIBREV).0 \ 26 libestraier.so.$(LIBVER) libestraier.so 27MYBINS = estcmd estmttest estmaster estbutler estcall estwaver estload 28MYCGIS = estseek.cgi estfraud.cgi estproxy.cgi estscout.cgi estsupt.cgi 29MYSCRIPTS = estconfig estwolefind 30MYCONFS = estseek.conf estseek.tmpl estseek.top estseek.help \ 31 estfraud.conf estproxy.conf estscout.conf estsupt.conf \ 32 estresult.dtd estraier.idl locale filter increm 33MYDOCS = COPYING ChangeLog THANKS doc 34MYMAN1S = estconfig.1 estcmd.1 estmaster.1 estwaver.1 estcall.1 35MYMAN3S = estraier.3 estnode.3 36MYPCS = hyperestraier.pc 37MYMACLIBS = libestraier.a libestraier.$(LIBVER).$(LIBREV).0.dylib \ 38 libestraier.$(LIBVER).dylib libestraier.dylib 39MYHPUXLIBS = libestraier.a libestraier.sl 40MYWINLIBS = libestraier.a libestraier.dll.a 41MYCORELIBS = libestcore.a 42MYFCGIS = estseek.fcgi estfraud.fcgi estproxy.fcgi estscout.fcgi estsupt.fcgi 43 44# Install destinations 45prefix = @prefix@ 46exec_prefix = @exec_prefix@ 47MYHEADDIR = @includedir@ 48MYLIBDIR = @libdir@ 49MYBINDIR = @bindir@ 50MYLIBEXECDIR = @libexecdir@ 51MYDATADIR = @datadir@/$(PACKAGE) 52MYMAN1DIR = @mandir@/man1 53MYMAN3DIR = @mandir@/man3 54MYPCDIR = @prefix@/libdata/pkgconfig 55DESTDIR = 56 57# Building binaries 58CC = @CC@ 59CPPFLAGS = @CPPFLAGS@ -I. -I$(MYHEADDIR) \ 60 -I$(HOME)/include -I/usr/local/include -I/usr/include/qdbm @MYCPPOPTS@ \ 61 -D_XOPEN_SOURCE_EXTENDED=1 -D_GNU_SOURCE=1 -D__EXTENSIONS__=1 -D_HPUX_SOURCE=1 \ 62 -DPIC=1 -D_THREAD_SAFE=1 -D_REENTRANT=1 @MYDEFS@ 63CFLAGS = @CFLAGS@ -Wall -fPIC -fsigned-char 64LDFLAGS = @LDFLAGS@ -L. -L$(MYLIBDIR) -L$(HOME)/lib -L/usr/local/lib @MYLDOPTS@ 65LIBS = @LIBS@ 66MTLIBS = @MYMTLIBS@ 67SKLIBS = @MYSKLIBS@ 68APPLIBS = @MYAPPLIBS@ 69LDENV = LD_RUN_PATH=/lib:/usr/lib:$(MYLIBDIR):$(HOME)/lib:/usr/local/lib:@MYRUNPATH@:. 70RUNENV = LD_LIBRARY_PATH=.:/lib:/usr/lib:$(MYLIBDIR):$(HOME)/lib:/usr/local/lib:@MYRUNPATH@ 71MYPOSTCMD = @MYPOSTCMD@ 72 73 74 75#================================================================ 76# Suffix rules 77#================================================================ 78 79 80.SUFFIXES : 81.SUFFIXES : .c .o 82 83.c.o : 84 $(CC) -c $(CPPFLAGS) $(CFLAGS) $< 85 86 87 88#================================================================ 89# Actions 90#================================================================ 91 92 93all : $(MYLIBS) $(MYBINS) $(MYCGIS) 94 @$(MYPOSTCMD) 95 @printf '\n' 96 @printf '#================================================================\n' 97 @printf '# Ready to install.\n' 98 @printf '#================================================================\n' 99 100 101clean : 102 rm -rf $(MYLIBS) $(MYBINS) $(MYCGIS) $(MYCORELIBS) $(MYFCGIS) \ 103 *.exe *.o a.out *.dll.a *.dll *.dylib *.sl \ 104 check.out gmon.out leak.log casket casket-* *~ 105 106 107version : 108 vernum=`expr $(LIBVER)00 + $(LIBREV)` ; \ 109 sed -e 's/_EST_VERSION.*/_EST_VERSION "$(VERSION)"/' \ 110 -e "s/_EST_LIBVER.*/_EST_LIBVER $$vernum/" \ 111 -e 's/_EST_PROTVER.*/_EST_PROTVER "$(PROTVER)"/' estraier.h > estraier.h~ 112 [ -f estraier.h~ ] && mv -f estraier.h~ estraier.h 113 114 115install : 116 mkdir -p $(DESTDIR)$(MYHEADDIR) 117 cp -Rf $(MYHEADS) $(DESTDIR)$(MYHEADDIR) 118 mkdir -p $(DESTDIR)$(MYLIBDIR) 119 cp -Rf $(MYLIBS) $(DESTDIR)$(MYLIBDIR) 120 mkdir -p $(DESTDIR)$(MYBINDIR) 121 cp -Rf $(MYBINS) $(MYSCRIPTS) $(DESTDIR)$(MYBINDIR) 122 mkdir -p $(DESTDIR)$(MYLIBEXECDIR) 123 cp -Rf $(MYCGIS) $(DESTDIR)$(MYLIBEXECDIR) 124 mkdir -p $(DESTDIR)$(MYDATADIR) 125 cp -Rf $(MYCONFS) $(MYDOCS) $(DESTDIR)$(MYDATADIR) 126 mkdir -p $(DESTDIR)$(MYMAN1DIR) 127 cd man && cp -Rf $(MYMAN1S) $(DESTDIR)$(MYMAN1DIR) 128 mkdir -p $(DESTDIR)$(MYMAN3DIR) 129 cd man && cp -Rf $(MYMAN3S) $(DESTDIR)$(MYMAN3DIR) 130 mkdir -p $(DESTDIR)$(MYPCDIR) 131 cp -Rf $(MYPCS) $(DESTDIR)$(MYPCDIR) 132 @printf '\n' 133 @printf '#================================================================\n' 134 @printf '# Thanks for using Hyper Estraier.\n' 135 @printf '#================================================================\n' 136 137 138install-strip : 139 make DESTDIR=$(DESTDIR) install 140 cd $(DESTDIR)$(MYBINDIR) && strip $(MYBINS) 141 cd $(DESTDIR)$(MYLIBEXECDIR) && strip $(MYCGIS) 142 143 144uninstall : 145 cd $(DESTDIR)$(MYHEADDIR) && rm -f $(MYHEADS) 146 cd $(DESTDIR)$(MYLIBDIR) && rm -f $(MYLIBS) 147 cd $(DESTDIR)$(MYBINDIR) && rm -f $(MYBINS) $(MYSCRIPTS) 148 cd $(DESTDIR)$(MYMAN1DIR) && rm -f $(MYMAN1S) 149 cd $(DESTDIR)$(MYMAN3DIR) && rm -f $(MYMAN3S) 150 cd $(DESTDIR)$(MYLIBEXECDIR) && rm -f $(MYCGIS) 151 rm -rf $(DESTDIR)$(MYDATADIR) 152 cd $(DESTDIR)$(MYPCDIR) && rm -f $(MYPCS) 153 154 155dist : 156 make version 157 make distclean 158 ( cd javanative && ./configure && make dist ) 159 ( cd javapure && ./configure && make dist ) 160 ( cd rubynative && ./configure && make dist ) 161 ( cd rubypure && ./configure && make dist ) 162 ( cd perlnative && ./configure && make dist ) 163 cd .. && tar cvf - $(PACKAGEDIR) | gzip -c > $(PACKAGETGZ) 164 sync ; sync 165 166 167distclean : clean 168 ( cd javanative && if [ -f Makefile ] ; then make distclean ; fi ) 169 ( cd javapure && if [ -f Makefile ] ; then make distclean ; fi ) 170 ( cd rubynative && if [ -f Makefile ] ; then make distclean ; fi ) 171 ( cd rubypure && if [ -f Makefile ] ; then make distclean ; fi ) 172 ( cd perlnative && if [ -f Makefile ] ; then make distclean ; fi ) 173 ( cd windows && make clean ) 174 ( cd example && make clean ) 175 rm -rf Makefile estconfig hyperestraier.pc \ 176 config.cache config.log config.status autom4te.cache 177 178 179casket : $(MYLIBS) $(MYBINS) $(MYCGIS) 180 rm -rf casket 181 ./estcmd create -tr -xl -attr '@uri' seq -attr '@title' str \ 182 -attr '@author' str -attr '@mdate' num -attr '@size' num casket 183 ./estcmd gather -cl -ws -il ja -cm -sd casket . 184 185 186multicasket : 187 rm -rf casket casket-* 188 ./estcmd create -tr -xl -attr '@uri' seq -attr '@title' str \ 189 -attr '@author' str -attr '@mdate' num -attr '@size' num casket-doc 190 ./estcmd gather -il ja casket-doc doc 191 ./estcmd extkeys -um casket-doc 192 ./estcmd gather -il ja casket-misc misc 193 ./estcmd extkeys -um casket-misc 194 195 196scoutcasket : 197 rm -rf casket casket-* 198 ./estcmd gather -il ja casket-0 . 199 ./estcmd gather -il ja casket-1 doc 200 ./estcmd gather -il ja casket-2 misc 201 202 203nodecasket : $(MYLIBS) $(MYBINS) $(MYCGIS) 204 rm -rf casket 205 ./estmaster init -ex casket 206 ./estcmd gather -cl -il ja -cm -sd casket/_node/sample0 . 207 ./estcmd extkeys casket/_node/sample0 208 ./estmaster start -bg casket ; sleep 1 209 masterurl='http://admin:admin@localhost:1978/master' ; \ 210 ./estcall raw "$$masterurl?action=useradd&name=mikio&passwd=oikim" 211 ./estcall setuser -auth admin admin 'http://localhost:1978/node/sample0' mikio 1 212 ./estcall setlink -auth mikio oikim 'http://localhost:1978/node/sample0' \ 213 'http://localhost:1978/node/sample0' 'Sample0' 20000 214 ./estcall setlink -auth mikio oikim 'http://localhost:1978/node/sample0' \ 215 'http://localhost:1978/node/sample1' 'Sample1' 10100 216 ./estcall setlink -auth mikio oikim 'http://localhost:1978/node/sample0' \ 217 'http://localhost:1978/node/sample2' 'Sample2' 9800 218 ./estcall setlink -auth admin admin 'http://localhost:1978/node/sample1' \ 219 'http://localhost:1978/node/sample0' 'Sample0' 10001 220 ./estcall setlink -auth admin admin 'http://localhost:1978/node/sample2' \ 221 'http://localhost:1978/node/sample0' 'Sample0' 10002 222 ./estcall search -dpt 2 'http://localhost:1978/node/sample0' "mikio" > /dev/null 223 ./estcall raw \ 224 'http://localhost:1978/node/sample1/search?phrase=mikio&depth=2' > /dev/null 225 ./estcall raw \ 226 'http://localhost:1978/node/sample1/search_ui?phrase=mikio&depth=2' > /dev/null 227 ./estcall raw \ 228 'http://localhost:1978/node/sample1/search_atom?phrase=mikio&depth=2' > /dev/null 229 ./estcall raw \ 230 'http://localhost:1978/node/sample1/search_rss?phrase=mikio&depth=2' > /dev/null 231 ./estmaster stop casket 232 233 234mastercasket : $(MYLIBS) $(MYBINS) $(MYCGIS) 235 rm -rf casket-master 236 ./estmaster init casket-master 237 ./estmaster start -bg casket-master ; sleep 1 238 masterurl='http://admin:admin@localhost:1978/master' ; \ 239 ./estcall raw "$$masterurl?action=nodeadd&name=node0&label=Node0" ; \ 240 ./estcall raw "$$masterurl?action=nodeadd&name=node1&label=Node1" ; \ 241 ./estcall raw "$$masterurl?action=nodeadd&name=node2&label=Node2" ; \ 242 ./estcall raw "$$masterurl?action=nodeadd&name=node3&label=Node3" 243 ./estcall setlink -auth admin admin 'http://localhost:1978/node/node0' \ 244 'http://localhost:1978/node/node1' 'Node1' 10002 245 ./estcall setlink -auth admin admin 'http://localhost:1978/node/node0' \ 246 'http://localhost:1978/node/node2' 'Node2' 10002 247 ./estcall setlink -auth admin admin 'http://localhost:1978/node/node0' \ 248 'http://localhost:1978/node/node3' 'Node3' 10002 249 ./estmaster stop casket-master 250 251 252wavercasket : $(MYLIBS) $(MYBINS) $(MYCGIS) 253 rm -rf casket-waver 254 ./estwaver init casket-waver 255 printf '1,$$ s/guide-en/guide-ja/\nw\n' | ex casket-waver/_conf 256 printf '/qdbm\.sourceforge\.net/ d\nw\n' | ex casket-waver/_conf 257 printf '1,$$ s/^interval:.*/interval: 0/\nw\n' | ex casket-waver/_conf 258 printf '1,$$ s/^timeout:.*/timeout: 180/\nw\n' | ex casket-waver/_conf 259 printf '1,$$ s/^language:.*/language: 1/\nw\n' | ex casket-waver/_conf 260 printf '1,$$ s/^threadnum:.*/threadnum: 20/\nw\n' | ex casket-waver/_conf 261 printf '1,$$ s/^#node/node/\nw\n' | ex casket-waver/_conf 262 263 264pseudocasket : 265 rm -rf casket casket-pidx 266 ./estcmd create -tr -xl -attr '@uri' seq -attr '@title' str \ 267 -attr '@author' str -attr '@mdate' num -attr '@size' num casket 268 ./estcmd gather -il ja casket ./doc 269 mkdir casket-pidx 270 cp -f misc/*.est casket-pidx 271 chmod -R 777 casket casket-pidx 272 273 274check : 275 rm -rf casket casket-* 276 $(RUNENV) $(RUNCMD) ./estcmd create -tr -xl -attr '@uri' seq -attr '@title' str \ 277 -attr '@author' str -attr '@mdate' num -attr '@size' num casket 278 $(RUNENV) $(RUNCMD) ./estcmd put -ws casket ./misc/test001.est 279 $(RUNENV) $(RUNCMD) ./estcmd put -ws casket ./misc/test002.est 280 $(RUNENV) $(RUNCMD) ./estcmd put -ws casket ./misc/test003.est 281 $(RUNENV) $(RUNCMD) ./estcmd put -cl casket ./misc/test004.est 282 $(RUNENV) $(RUNCMD) ./estcmd put -cl casket ./misc/test005.est 283 $(RUNENV) $(RUNCMD) ./estcmd put -cl casket ./misc/test006.est 284 $(RUNENV) $(RUNCMD) ./estcmd get casket 1 > check.out 285 $(RUNENV) $(RUNCMD) ./estcmd get casket 2 > check.out 286 $(RUNENV) $(RUNCMD) ./estcmd get casket 3 > check.out 287 $(RUNENV) $(RUNCMD) ./estcmd get casket 4 > check.out 288 $(RUNENV) $(RUNCMD) ./estcmd get casket 5 > check.out 289 $(RUNENV) $(RUNCMD) ./estcmd get casket 6 > check.out 290 $(RUNENV) $(RUNCMD) ./estcmd get casket 1 @uri > check.out 291 $(RUNENV) $(RUNCMD) ./estcmd get -pidx misc casket 2000000001 > check.out 292 $(RUNENV) $(RUNCMD) ./estcmd get -pidx misc casket 2000000002 > check.out 293 $(RUNENV) $(RUNCMD) ./estcmd get -pidx misc casket 2000000001 @uri > check.out 294 $(RUNENV) $(RUNCMD) ./estcmd get -pidx misc casket 2000000002 @uri > check.out 295 $(RUNENV) $(RUNCMD) ./estcmd list -lp casket 296 $(RUNENV) $(RUNCMD) ./estcmd uriid casket "mailto:mikio@users.sourceforge.net" 297 $(RUNENV) $(RUNCMD) ./estcmd meta casket "mikio" "hirabayashi" 298 $(RUNENV) $(RUNCMD) ./estcmd meta casket 299 $(RUNENV) $(RUNCMD) ./estcmd search casket "Mikio Hirabayashi" 300 $(RUNENV) $(RUNCMD) ./estcmd search -nl casket `printf '\xe3\x81\x93\n'` > check.out 301 $(RUNENV) $(RUNCMD) ./estcmd search -cd casket `printf '\x32\xe8\xbc\xaa\n'` > check.out 302 $(RUNENV) $(RUNCMD) ./estcmd search -nb -vu -cd casket "mikio OR enjoy OR hoge" 303 $(RUNENV) $(RUNCMD) ./estcmd search -va -cd -max 1 casket "mikio OR momoyama AND GNU" 304 $(RUNENV) $(RUNCMD) ./estcmd search -vf -kn 8 casket "mikio ANDNOT LGPL" > check.out 305 $(RUNENV) $(RUNCMD) ./estcmd search -vs -kn 8 casket "dream OR estraier" > check.out 306 $(RUNENV) $(RUNCMD) ./estcmd search -vh -kn 8 casket "mikio AND estraier" > check.out 307 $(RUNENV) $(RUNCMD) ./estcmd search -vx -kn 8 -sim 2 casket > check.out 308 $(RUNENV) $(RUNCMD) ./estcmd search -va -ec 0.5 casket "mikio" > check.out 309 $(RUNENV) $(RUNCMD) ./estcmd search -vs -ec -0.5 casket "estraier" > check.out 310 $(RUNENV) $(RUNCMD) ./estcmd search -vx -ec dir casket "mikio OR estraier" > check.out 311 $(RUNENV) $(RUNCMD) ./estcmd search -vu \ 312 -attr "@uri STRBW http" casket "sample" 313 $(RUNENV) $(RUNCMD) ./estcmd search -vu \ 314 -attr '@title !ISTRINC ESTRAIER' casket "estraier" 315 $(RUNENV) $(RUNCMD) ./estcmd search -vu \ 316 -attr '@title ISTRRX ^est' -attr '@title !STRRX J' casket "estraier" 317 $(RUNENV) $(RUNCMD) ./estcmd search -vu \ 318 -attr '@title,author,to ISTRINC mikio' casket "mikio AND hirabayashi" 319 $(RUNENV) $(RUNCMD) ./estcmd search -vu \ 320 -attr "@cdate NUMEQ Wed, 23 Dec 2004 10:18:23 +0900" -attr "@uri STREW txt" casket 321 $(RUNENV) $(RUNCMD) ./estcmd search -vu -attr '@title' -ord "@title STRA" casket "[UVSET]" 322 $(RUNENV) $(RUNCMD) ./estcmd search -vu -ord "@cdate NUMD" casket "[UVSET]" 323 $(RUNENV) $(RUNCMD) ./estcmd search -gf -sf -ni casket \ 324 '"Hyper Estraier" miki* | *nix | put_* | *_doc' > check.out 325 $(RUNENV) $(RUNCMD) ./estcmd search -vs -hs casket \ 326 '[SIMILAR] WITH 10 mikio WITH 5 unix' > check.out 327 $(RUNENV) $(RUNCMD) ./estcmd search -va -hs casket '[ID] 1' > check.out 328 $(RUNENV) $(RUNCMD) ./estcmd search -va -hs casket '[URI] data001' > check.out 329 $(RUNENV) $(RUNCMD) ./estcmd search -va -hs casket '[RANK] 5 @size' > check.out 330 $(RUNENV) $(RUNCMD) ./estcmd search -va -hs casket '[RANK] -5 @mdate' > check.out 331 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vx -max -1 casket "[UVSET]" > check.out 332 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vs -max -1 casket "mikio" > check.out 333 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -va -max -1 \ 334 -attr '@title STRINC a' -attr '@uri STRINC f' casket "estraier" > check.out 335 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vs -max -1 \ 336 -attr '@title,@size,@uri STRINC f' -attr '@size NUMGT 0' casket "estraier" > check.out 337 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vs -max -1 \ 338 -attr '@title,@size,@uri STRRX (a|b|0)' -ord '@size NUMD' casket "estraier" > check.out 339 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vf -dis '@type' \ 340 casket "[UVSET]" > check.out 341 $(RUNENV) $(RUNCMD) ./estcmd break "@This is a pen." 342 $(RUNENV) $(RUNCMD) ./estcmd break ./misc/zen.txt > check.out 343 $(RUNENV) $(RUNCMD) ./estcmd break -apn ./misc/chars.txt > check.out 344 $(RUNENV) $(RUNCMD) ./estcmd break -acc ./misc/chars.txt > check.out 345 $(RUNENV) $(RUNCMD) ./estcmd iconv "@This is a pen." 346 $(RUNENV) $(RUNCMD) ./estcmd iconv ./misc/zen.txt > check.out 347 $(RUNENV) $(RUNCMD) ./estcmd regex mikio Makefile.in > check.out 348 $(RUNENV) $(RUNCMD) ./estcmd regex -repl MIKIO mikio Makefile.in > check.out 349 $(RUNENV) $(RUNCMD) ./estcmd scandir -pu > check.out 350 $(RUNENV) $(RUNCMD) ./estcmd scandir -td > check.out 351 $(RUNENV) $(RUNCMD) ./estcmd out casket 3 352 $(RUNENV) $(RUNCMD) ./estcmd out casket 4 353 $(RUNENV) $(RUNCMD) ./estcmd edit casket 5 '@title' "five" 354 $(RUNENV) $(RUNCMD) ./estcmd edit casket 5 '@uri' "http://five.org/5" 355 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja -bc -lf 0.05 -cm -cs 0.2 casket . 356 $(RUNENV) $(RUNCMD) ./estcmd gather -cl -ws -il ja -lt 10 -pc UTF-8 -cm -sd casket . 357 $(RUNENV) $(RUNCMD) ./estcmd extkeys -ni casket 358 $(RUNENV) $(RUNCMD) ./estcmd extkeys -fc -kn 64 casket 359 $(RUNENV) $(RUNCMD) ./estcmd extkeys -fc -kn 64 -um casket 360 $(RUNENV) $(RUNCMD) ./estcmd words casket > check.out 361 $(RUNENV) $(RUNCMD) ./estcmd draft ./misc/test003.est > check.out 362 $(RUNENV) $(RUNCMD) ./estcmd draft -um ./misc/test003.est > check.out 363 $(RUNENV) $(RUNCMD) ./estcmd search -vs -hs casket \ 364 '[SIMILAR] WITH 0 html WITH 5 gnu' > check.out 365 $(RUNENV) $(RUNCMD) ./estcmd purge casket 366 $(RUNENV) $(RUNCMD) ./estcmd optimize casket 367 $(RUNENV) $(RUNCMD) ./estcmd list casket 368 $(RUNENV) $(RUNCMD) ./estcmd search -vf casket \ 369 "[UVSET] ANDNOT mikio" > check.out 370 QUERY_STRING="phrase=mikio%20|%20estraier" \ 371 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 372 QUERY_STRING="phrase=mikio&attr=@uri%20STRINC%20html" \ 373 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 374 QUERY_STRING="phrase=estraier&order=@size%20NUMD" \ 375 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 376 QUERY_STRING="phrase=mikio%7C%B4%B4%CD%BA&attr=&order=&perpage=5&pagenum=2&enc=EUC-JP" \ 377 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 378 QUERY_STRING="similar=53&perpage=8&pagenum=2" \ 379 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 380 QUERY_STRING="phrase=%5BSIMILAR%5D+WITH+2000+estraier&perpage=8&pagenum=2" \ 381 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 382 QUERY_STRING="phrase=mikio%7Cestraier&clip=2&pagenum=2" \ 383 $(RUNENV) $(RUNCMD) ./estseek.cgi > check.out 384 PATH_INFO="/casket/inform" $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 385 PATH_INFO="/casket/search" QUERY_STRING="phrase=mikio%20|%20estraier" \ 386 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 387 PATH_INFO="/casket/search" QUERY_STRING="phrase=mikio&attr1=@uri%20STRINC%20html" \ 388 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 389 PATH_INFO="/casket/get_doc" QUERY_STRING="uri=data001" \ 390 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 391 PATH_INFO="/casket/get_doc_attr" QUERY_STRING="uri=data001&attr=@uri" \ 392 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 393 PATH_INFO="/casket/etch_doc" QUERY_STRING="uri=data002" \ 394 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 395 PATH_INFO="/casket/uri_to_id" QUERY_STRING="uri=data003" \ 396 $(RUNENV) $(RUNCMD) ./estfraud.cgi > check.out 397 $(RUNENV) $(RUNCMD) ./estcmd randput casket 25 398 $(RUNENV) $(RUNCMD) ./estcmd search casket `printf '\xe3\x81\x93\n'` > check.out 399 $(RUNENV) $(RUNCMD) ./estcmd search casket "vw OR wx OR xy OR yz" > check.out 400 $(RUNENV) $(RUNCMD) ./estcmd create \ 401 -attr '@genre' str -attr '@id' num -attr '@digest' seq casket 402 $(RUNENV) $(RUNCMD) ./estcmd optimize casket 403 $(RUNENV) $(RUNCMD) ./estcmd wicked casket 1000 404 $(RUNENV) $(RUNCMD) ./estcmd regression casket 405 $(RUNENV) $(RUNCMD) ./estmttest wicked casket 1000 1 406 $(RUNENV) $(RUNCMD) ./estmttest regression casket 407 rm -rf casket casket-* 408 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja -xh -sv casket . 409 $(RUNENV) $(RUNCMD) ./estcmd search -vu -hs casket "mikio OR estraier" > check.out 410 $(RUNENV) $(RUNCMD) ./estcmd optimize casket 411 $(RUNENV) $(RUNCMD) ./estcmd search -vu -hs casket "hyper estraier" > check.out 412 $(RUNENV) $(RUNCMD) ./estcmd gather -tr -il ja -sa -ss '@size' casket . 413 $(RUNENV) $(RUNCMD) ./estcmd search -vs -hs casket "mikio AND unix" > check.out 414 $(RUNENV) $(RUNCMD) ./estcmd optimize casket 415 $(RUNENV) $(RUNCMD) ./estcmd search -vf -hs casket "mikio NOT unix" > check.out 416 rm -rf casket casket-* 417 $(RUNENV) $(RUNCMD) ./estcmd create -tr -xl -attr '@uri' seq -attr '@title' str \ 418 -attr '@author' str -attr '@mdate' num -attr '@size' num casket 419 $(RUNENV) $(RUNCMD) ./estcmd uriid -pidx misc casket "data001" 420 $(RUNENV) $(RUNCMD) ./estcmd get -pidx misc casket "data002" > check.out 421 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vs -hs casket "[URI] data003" > check.out 422 $(RUNENV) $(RUNCMD) ./estcmd search -pidx misc -vx -hs casket "the" > check.out 423 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja casket ./doc 424 $(RUNENV) $(RUNCMD) ./estcmd put casket ./misc/data001.est 425 $(RUNENV) $(RUNCMD) ./estcmd put casket ./misc/data002.est 426 $(RUNENV) $(RUNCMD) ./estcmd extkeys casket 427 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja casket-child ./misc 428 $(RUNENV) $(RUNCMD) ./estcmd extkeys casket-child 429 $(RUNENV) $(RUNCMD) ./estcmd multi -db casket -db casket-child \ 430 -cd -hs -hu -dis '@type' mikio > check.out 431 $(RUNENV) $(RUNCMD) ./estcmd multi -db casket -db casket-child \ 432 -cd -hs -hu -attr '@uri ISTRINC est' -max -1 -sk 10 estraier > check.out 433 $(RUNENV) $(RUNCMD) ./estcmd merge casket casket-child 434 $(RUNENV) $(RUNCMD) ./estcmd merge casket-child casket 435 $(RUNENV) $(RUNCMD) ./estcmd merge -cl casket casket-child 436 $(RUNENV) $(RUNCMD) ./estcmd search -vs -hs casket "mikio OR unix" > check.out 437 rm -rf casket casket-* 438 $(RUNENV) $(RUNCMD) ./estmaster unittest casket 439 rm -rf casket casket-* 440 $(RUNENV) $(RUNCMD) ./estwaver unittest casket 441 rm -rf casket casket-* 442 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja -xl -kn 48 -um casket misc 443 $(RUNENV) $(RUNCMD) ./estcmd search -vu -kn 32 -um -ec 0.5 -sim 2 casket > check.out 444 $(RUNENV) $(RUNCMD) ./estcmd purge -cl -fc -attr '@uri STREW .html' casket 445 $(RUNENV) $(RUNCMD) ./estcmd repair -rst casket 446 $(RUNENV) $(RUNCMD) ./estcmd search -vf casket "[UVSET]" > check.out 447 $(RUNENV) $(RUNCMD) ./estcmd search -vs -attr "@uri STRINC" casket > check.out 448 $(RUNENV) $(RUNCMD) ./estcmd words -kw casket > check.out 449 $(RUNENV) $(RUNCMD) ./estcmd words -kt casket > check.out 450 rm -rf casket casket-* 451 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja casket-1 misc 452 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja -xl casket-2 misc 453 $(RUNENV) $(RUNCMD) ./estcmd gather -il ja -xh casket-3 misc 454 QUERY_STRING="phrase1=mikio&stmode=1" \ 455 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 456 QUERY_STRING="phrase1=mikio&phrase2=mikio&stmode=1" \ 457 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 458 QUERY_STRING="phrase1=mikio&phrase2=mikio&phrase3=mikio&stmode=1" \ 459 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 460 QUERY_STRING="phrase1=mikio&phrase2=mikio&attr1=%40uri%20STRBW%20file&stmode=1" \ 461 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 462 QUERY_STRING='attr1=%40uri%20ISTRRX%20(txt%7Ceml%7Chtml)%24&max=20&stmode=1' \ 463 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 464 QUERY_STRING='phrase2=mikio&attr1=%40uri%20STRINC%20test&stmode=1' \ 465 $(RUNENV) $(RUNCMD) ./estscout.cgi > check.out 466 rm -rf casket casket-* 467 @printf '\n' 468 @printf '#================================================================\n' 469 @printf '# Checking completed.\n' 470 @printf '#================================================================\n' 471 472 473check-valgrind : 474 make RUNCMD="valgrind --tool=memcheck --log-fd=1" check | tee leak.log 475 grep ERROR leak.log 476 grep 'at exit' leak.log 477 478 479check-xml : 480 make casket 481 ./estcmd search -vx casket "mikio" > check.out ; \ 482 xmllint --dtdvalid estresult.dtd --noout check.out 483 ./estcmd search -vx -max 3 casket "hyper estraier AND mikio" > check.out ; \ 484 xmllint --dtdvalid estresult.dtd --noout check.out 485 ./estcmd search -vx -ec 0.5 casket "hyper estraier ANDNOT unix" > check.out ; \ 486 xmllint --dtdvalid estresult.dtd --noout check.out 487 ./estcmd search -vx -sim 3 casket > check.out ; \ 488 xmllint --dtdvalid estresult.dtd --noout check.out 489 QUERY_STRING="" ./estseek.cgi | \ 490 tr -d '\r' | sed -n '/^$$/,$$ p' | grep -v '^$$' > check.out ; \ 491 xmllint --noout check.out 492 QUERY_STRING="phrase=mikio" ./estseek.cgi | \ 493 tr -d '\r' | sed -n '/^$$/,$$ p' | grep -v '^$$' > check.out ; \ 494 xmllint --noout check.out 495 QUERY_STRING="phrase=mikio&perpage=3&pagenum=2" ./estseek.cgi | \ 496 tr -d '\r' | sed -n '/^$$/,$$ p' | grep -v '^$$' > check.out ; \ 497 xmllint --noout check.out 498 QUERY_STRING="phrase=mikio&detail=3" ./estseek.cgi | \ 499 tr -d '\r' | sed -n '/^$$/,$$ p' | grep -v '^$$' > check.out ; \ 500 xmllint --noout check.out 501 502 503world : 504 make 505 cd javanative ; [ -f Makefile ] || ./configure ; make 506 cd javapure ; [ -f Makefile ] || ./configure ; make 507 cd rubynative ; [ -f Makefile ] || ./configure ; make 508 cd rubypure ; [ -f Makefile ] || ./configure ; make 509 cd perlnative ; [ -f Makefile ] || ./configure ; make 510 511 512check-world : 513 make check 514 cd javanative ; [ -f Makefile ] || ./configure ; make check 515 cd rubynative ; [ -f Makefile ] || ./configure ; make check 516 cd perlnative ; [ -f Makefile ] || ./configure ; make check 517 518 519install-world : 520 make install 521 cd javanative ; [ -f Makefile ] || ./configure ; make install 522 cd javapure ; [ -f Makefile ] || ./configure ; make install 523 cd rubynative ; [ -f Makefile ] || ./configure ; make install 524 cd rubypure ; [ -f Makefile ] || ./configure ; make install 525 cd perlnative ; [ -f Makefile ] || ./configure ; make install 526 527 528uninstall-world : 529 make uninstall 530 make uninstall-fcgi 531 cd javanative ; [ -f Makefile ] || ./configure ; make uninstall 532 cd javapure ; [ -f Makefile ] || ./configure ; make uninstall 533 cd rubynative ; [ -f Makefile ] || ./configure ; make uninstall 534 cd rubypure ; [ -f Makefile ] || ./configure ; make uninstall 535 cd perlnative ; [ -f Makefile ] || ./configure ; make uninstall 536 537 538mac : 539 make MYLIBS="$(MYMACLIBS)" CFLAGS="-Wall -fsigned-char -fno-common -O2 -DNDEBUG" 540 541 542check-mac : 543 make RUNENV="DYLD_LIBRARY_PATH=." check 544 545 546install-mac : 547 make MYLIBS="$(MYMACLIBS)" install 548 549 550uninstall-mac : 551 make MYLIBS="$(MYMACLIBS)" uninstall 552 553 554hpux : 555 make MYLIBS="$(MYHPUXLIBS)" 556 557 558check-hpux : 559 make RUNENV="SHLIB_PATH=." check 560 561 562install-hpux : 563 make MYLIBS="$(MYHPUXLIBS)" install 564 565 566uninstall-hpux : 567 make MYLIBS="$(MYHPUXLIBS)" uninstall 568 569 570win : 571 make CC="gcc -mno-cygwin" MYBINS="$(MYBINS) estmaster-sv" MYLIBS="$(MYWINLIBS)" \ 572 CFLAGS="-Wall -fsigned-char -O0 -DNDEBUG" LIBS="-lqdbm -lz -liconv -lregex" \ 573 MTLIBS="-lpthreadGC2" SKLIBS="-lws2_32" 574 575 576winpkg : 577 make win && strip *.exe 578 cd javanative && ./configure && make win 579 cd javapure && ./configure && make 580 cd rubypure && ./configure && make 581 cd windows && make 582 rm -rf $(PACKAGE) 583 mkdir -p $(PACKAGE) 584 cp -Rf estraier.dll libestraier.dll.a estraier.h estmtdb.h \ 585 estcmd.exe estmttest.exe estmaster.exe estmaster-sv.exe estbutler.exe \ 586 estcall.exe estwaver.exe estload.exe \ 587 estseek.cgi estfraud.cgi estproxy.cgi estscout.cgi estsupt.cgi \ 588 $(MYCONFS) doc $(PACKAGE) 589 rm -rf $(PACKAGE)/filter 590 cp -Rf /bin/mgwz.dll /bin/libiconv-2.dll /bin/regex.dll \ 591 /usr/local/bin/qdbm.dll $(PACKAGE) 592 cp -Rf /bin/pthreadGC2.dll /lib/mingw/libpthreadGC2.a $(PACKAGE) 593 cp -Rf /usr/local/include/depot.h /usr/local/include/curia.h \ 594 /usr/local/include/cabin.h /usr/local/include/villa.h $(PACKAGE) 595 cp -Rf /usr/include/mingw/pthread.h /usr/include/mingw/sched.h \ 596 /usr/include/mingw/semaphore.h $(PACKAGE) 597 cp -Rf /usr/local/xdoc2txt/* $(PACKAGE) 598 cp -Rf javanative/estraier.jar javanative/jestraier.dll $(PACKAGE) 599 cp -Rf javapure/estraierpure.jar $(PACKAGE) 600 cp -Rf rubypure/estraierpure.rb rubypure/estcall.rb $(PACKAGE) 601 cp -Rf windows/*.exe windows/*.bat windows/*.txt $(PACKAGE) 602 zip -r $(PACKAGEDIR)-win32.zip $(PACKAGE) 603 mv -f $(PACKAGEDIR)-win32.zip .. 604 605 606corelib : $(MYCORELIBS) 607 608 609fcgi : $(MYFCGIS) 610 611 612install-fcgi : 613 cp -Rf $(MYFCGIS) $(DESTDIR)$(MYLIBEXECDIR) 614 615 616uninstall-fcgi : 617 cd $(DESTDIR)$(MYLIBEXECDIR) && rm -f $(MYFCGIS) 618 619 620.PHONY : all clean install casket check 621 622 623 624#================================================================ 625# Building binaries 626#================================================================ 627 628 629libestraier.a : $(MYLIBOBJS) 630 $(AR) $(ARFLAGS) $@ $(MYLIBOBJS) 631 632 633libestraier.so.$(LIBVER).$(LIBREV).0 : $(MYLIBOBJS) 634 if $(CC) --print-prog-name=ld | egrep -i '(solaris|/ccs/|/ucb/)' > /dev/null ; \ 635 then \ 636 $(CC) -shared -Wl,-G,-h,libestraier.so.$(LIBVER) -o $@ $(MYLIBOBJS) \ 637 $(LDFLAGS) $(SKLIBS) $(MTLIBS) $(LIBS) ; \ 638 else \ 639 $(CC) -shared -Wl,-soname,libestraier.so.$(LIBVER) -o $@ $(MYLIBOBJS) \ 640 $(LDFLAGS) $(SKLIBS) $(MTLIBS) $(LIBS) ; \ 641 fi 642 643 644libestraier.so.$(LIBVER) : libestraier.so.$(LIBVER).$(LIBREV).0 645 ln -f -s libestraier.so.$(LIBVER).$(LIBREV).0 $@ 646 647 648libestraier.so : libestraier.so.$(LIBVER).$(LIBREV).0 649 ln -f -s libestraier.so.$(LIBVER).$(LIBREV).0 $@ 650 651 652libestraier.$(LIBVER).$(LIBREV).0.dylib : $(MYLIBOBJS) 653 $(CC) -dynamiclib -o $@ \ 654 -install_name $(MYLIBDIR)/libestraier.$(LIBVER).dylib \ 655 -current_version $(LIBVER).$(LIBREV).0 \ 656 -compatibility_version $(LIBVER) \ 657 $(MYLIBOBJS) $(LDFLAGS) $(SKLIBS) $(MTLIBS) $(LIBS) 658 659 660libestraier.$(LIBVER).dylib : libestraier.$(LIBVER).$(LIBREV).0.dylib 661 ln -f -s libestraier.$(LIBVER).$(LIBREV).0.dylib $@ 662 663 664libestraier.dylib : libestraier.$(LIBVER).$(LIBREV).0.dylib 665 ln -f -s libestraier.$(LIBVER).$(LIBREV).0.dylib $@ 666 667 668libestraier.sl : $(MYLIBOBJS) 669 $(CC) -shared -Wl,-b -o $@ $(MYLIBOBJS) 670 671 672libestraier.dll.a : estraier.dll 673 674 675estraier.dll : $(MYLIBOBJS) 676 $(CC) -shared -o $@ \ 677 -Wl,--out-implib=lib$@.a \ 678 -Wl,--export-all-symbols \ 679 -Wl,--enable-auto-import \ 680 -Wl,--add-stdcall-alias \ 681 -Wl,--whole-archive \ 682 -Wl,--no-whole-archive \ 683 $(MYLIBOBJS) $(LDFLAGS) $(SKLIBS) $(MTLIBS) $(LIBS) 684 685 686libestcore.a : estraier.o md5.o 687 $(AR) $(ARFLAGS) $@ estraier.o md5.o 688 689 690estcmd : estcmd.o mymorph.o $(MYLIBS) 691 $(LDENV) $(CC) $(CFLAGS) -o $@ estcmd.o mymorph.o \ 692 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 693 694 695estmttest : estmttest.o $(MYLIBS) 696 $(LDENV) $(CC) $(CFLAGS) -o $@ estmttest.o \ 697 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 698 699 700estmaster : estmaster.o mastermod.o mymorph.o $(MYLIBS) 701 $(LDENV) $(CC) $(CFLAGS) -o $@ estmaster.o mastermod.o mymorph.o \ 702 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 703 704 705estmaster-sv : estmaster.c mastermod.o mymorph.o $(MYLIBS) 706 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYWINSERV=1 -o $@ \ 707 estmaster.c mastermod.o mymorph.o \ 708 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 709 710 711estbutler : estbutler.o mastermod.o $(MYLIBS) 712 $(LDENV) $(CC) $(CFLAGS) -o $@ estbutler.o mastermod.o \ 713 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 714 715 716estcall : estcall.o $(MYLIBS) 717 $(LDENV) $(CC) $(CFLAGS) -o $@ estcall.o \ 718 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 719 720 721estwaver : estwaver.o wavermod.o mymorph.o $(MYLIBS) 722 $(LDENV) $(CC) $(CFLAGS) -o $@ estwaver.o wavermod.o mymorph.o \ 723 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 724 725 726estload : estload.o $(MYLIBS) 727 $(LDENV) $(CC) $(CFLAGS) -o $@ estload.o \ 728 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 729 730 731estseek.cgi : estseek.o $(MYLIBS) 732 $(LDENV) $(CC) $(CFLAGS) -o $@ estseek.o \ 733 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 734 735 736estseek.fcgi : estseek.c $(MYLIBS) 737 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYFCGI -o $@ estseek.c \ 738 $(LDFLAGS) -lfcgi -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 739 740 741estfraud.cgi : estfraud.o mastermod.o mymorph.o $(MYLIBS) 742 $(LDENV) $(CC) $(CFLAGS) -o $@ estfraud.o mastermod.o mymorph.o \ 743 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 744 745 746estfraud.fcgi : estfraud.c mastermod.o mymorph.o $(MYLIBS) 747 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYFCGI -o $@ estfraud.c mastermod.o mymorph.o \ 748 $(LDFLAGS) -lfcgi -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 749 750 751estproxy.cgi : estproxy.o $(MYLIBS) 752 $(LDENV) $(CC) $(CFLAGS) -o $@ estproxy.o \ 753 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 754 755 756estproxy.fcgi : estproxy.c $(MYLIBS) 757 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYFCGI -o $@ estproxy.c \ 758 $(LDFLAGS) -lfcgi -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 759 760 761estscout.cgi : estscout.o $(MYLIBS) 762 $(LDENV) $(CC) $(CFLAGS) -o $@ estscout.o \ 763 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 764 765 766estscout.fcgi : estscout.c $(MYLIBS) 767 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYFCGI -o $@ estscout.c \ 768 $(LDFLAGS) -lfcgi -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 769 770 771estsupt.cgi : estsupt.o $(MYLIBS) 772 $(LDENV) $(CC) $(CFLAGS) -o $@ estsupt.o \ 773 $(LDFLAGS) -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 774 775 776estsupt.fcgi : estsupt.c $(MYLIBS) 777 $(LDENV) $(CC) $(CPPFLAGS) $(CFLAGS) -DMYFCGI -o $@ estsupt.c \ 778 $(LDFLAGS) -lfcgi -lestraier $(APPLIBS) $(SKLIBS) $(MTLIBS) $(LIBS) 779 780 781estcmd.o estmttest.o mastermod.o estmaster.o estbutler.o \ 782 estcall.o estwaver.o estload.o \ 783 estseek.o estfraud.o estproxy.o estscout.o estsupt.o mymorph.o : \ 784 myconf.h md5.h estraier.h estmtdb.h estnode.h 785 786mymorph.o estcmd.o estmaster.o estwaver.o estfraud.o : mymorph.h 787 788md5.o : md5.h 789 790estraier.o : myconf.h md5.h estraier.h 791 792estmtdb.o : myconf.h md5.h estraier.h estmtdb.h 793 794estnode.o : myconf.h md5.h estraier.h estmtdb.h estnode.h 795 796mastermod.o estmaster.o estbutler.o : mastermod.h 797 798estmaster.o : myimage.dat 799 800wavermod.o estwaver.o : wavermod.h 801 802 803 804# END OF FILE 805