# If you need higher order, change this option # Having this limit means that State can be # (KENLM_MAX_ORDER - 1) * sizeof(float) bytes instead of # sizeof(float*) + (KENLM_MAX_ORDER - 1) * sizeof(float) + malloc overhead max-order = [ option.get "max-kenlm-order" : 6 : 6 ] ; if ( $(max-order) != 6 ) { echo "Setting KenLM maximum n-gram order to $(max-order)" ; } max-order = KENLM_MAX_ORDER=$(max-order) ; path-constant ORDER-LOG : bin/order.log ; update-if-changed $(ORDER-LOG) $(max-order) ; max-order += $(ORDER-LOG) ; fakelib kenlm : [ glob *.cc : *main.cc *test.cc ] ../util//kenutil : .. $(max-order) : : .. $(max-order) ; import testing ; run left_test.cc kenlm /top//boost_unit_test_framework : : test.arpa ; run model_test.cc kenlm /top//boost_unit_test_framework : : test.arpa test_nounk.arpa ; run partial_test.cc kenlm /top//boost_unit_test_framework : : test.arpa ; exe query : query_main.cc kenlm ../util//kenutil ; exe build_binary : build_binary_main.cc kenlm ../util//kenutil ; exe kenlm_max_order : kenlm_max_order_main.cc : .. $(max-order) ; exe fragment : fragment_main.cc kenlm ; alias programs : query build_binary kenlm_max_order fragment filter//filter : multi:builder//lmplz ;