# Makefile to make smadict.fst # the fst just recognises all lemmas in the smanob dictionary # it does __not__ translate them. # usage. # make -f make-smadict # pseudocode: # read all lexicon files # pick the lemmas # save as smalemmalist.txt # open xfst # run command "read text < smalemmalist.txt" # save result as smadict.fst # the resulting fst to be used to test dict content XFST = xfst LEX = src/a_smanob.xml \ src/adv_smanob.xml \ src/cc_smanob.xml \ src/cs_smanob.xml \ src/i_smanob.xml \ src/n_smanob.xml \ src/num_smanob.xml \ src/pcle_smanob.xml \ src/pronDem_smanob.xml \ src/pronIndef_smanob.xml \ src/pronPers_smanob.xml \ src/pronRec_smanob.xml \ src/pronRefl_smanob.xml \ src/pronRel_smanob.xml \ src/prop_smanob.xml \ src/pr_smanob.xml \ src/po_smanob.xml \ src/vCop_smanob.xml \ src/vNeg_smanob.xml \ src/v_smanob.xml \ ../smaswe/src/verb_smaswe.xml smadict.fst: bin/smadict.fst bin/smadict.fst: bin/smadict.save @echo @echo "*** Building smadict.fst ***" @echo @printf "read regex [ @\"$<\" .o. \ [ ï (<-) i , ö (<-) ø , æ (<-) ä , Ï (<-) I , Ö (<-) Ø , Æ (<-) Ä ]] ; \n\ save stack $@ \n\ quit \n" > ../tmp/smadict-fst-script @echo "*** Done script, at least. ***" $(XFST) < ../tmp/smadict-fst-script @rm -f ../tmp/smadict-fst-script smadict.save: bin/smadict.save bin/smadict.save: bin/smalemmalist.txt @echo @echo "*** Building smadict.save ***" @echo @printf "read text $< \n\ save stack $@ \n\ quit \n" > ../tmp/smadict-save-script $(XFST) < ../tmp/smadict-save-script @rm -f ../tmp/smadict-save-script smalemmalist.txt: bin/smalemmalist.txt bin/smalemmalist.txt: $(LEX) @cat $(LEX) | \ grep '" -f2 | \ cut -d"<" -f1 > bin/smalemmalist.txt clean: @rm -f bin/smalemmalist.txt bin/smadict.fst