|  | 
|  | 1 | +include ../../Make.helper | 
|  | 2 | +CFLAGS = $(MY_CXX_FLAGS)  | 
|  | 3 | +SRC_DIR = src | 
|  | 4 | +BIN_DIR = bin | 
|  | 5 | +LIBS = -lsdsl -ldivsufsort -ldivsufsort64 | 
|  | 6 | + | 
|  | 7 | +C_OPTIONS:=$(call config_ids,compile_options.config) | 
|  | 8 | +TC_IDS:=$(call config_ids,test_case.config) | 
|  | 9 | +LCP_IDS:=$(call config_ids,lcp.config) | 
|  | 10 | + | 
|  | 11 | + | 
|  | 12 | +DL = ${foreach TC_ID,$(TC_IDS),$(call config_select,test_case.config,$(TC_ID),2)} | 
|  | 13 | + | 
|  | 14 | +LCP_EXECS = $(foreach LCP_ID,$(LCP_IDS),$(BIN_DIR)/build_$(LCP_ID)) | 
|  | 15 | + | 
|  | 16 | +RES_FILES = $(foreach TC_ID,$(TC_IDS),\ | 
|  | 17 | +					results/$(TC_ID)) | 
|  | 18 | + | 
|  | 19 | +RESULT_FILE=results/all.txt | 
|  | 20 | + | 
|  | 21 | +execs: $(BIN_DIR)/prep_sa_bwt $(LCP_EXECS) | 
|  | 22 | + | 
|  | 23 | +timing: execs $(RES_FILES) | 
|  | 24 | +	@cat $(RES_FILES) > $(RESULT_FILE) | 
|  | 25 | +	@cd visualize;make | 
|  | 26 | + | 
|  | 27 | +$(BIN_DIR)/prep_sa_bwt: $(SRC_DIR)/create_sa_bwt.cpp  | 
|  | 28 | +	@echo "Compiling prep_sa_bwt" | 
|  | 29 | +	@$(MY_CXX) $(CFLAGS) $(C_OPTIONS) -L${SDSLLITE}/lib\ | 
|  | 30 | +		$(SRC_DIR)/create_sa_bwt.cpp -I${SDSLLITE}/include -o bin/prep_sa_bwt $(LIBS) | 
|  | 31 | +	 | 
|  | 32 | +precalc%: test_case.config $(DL) lcp.config | 
|  | 33 | +	$(eval TC_ID:=$(call dim,1,$*)) | 
|  | 34 | +	$(eval LCP_TEX_NAME:=$(call config_select,lcp.config,$(LCP_ID),3)) | 
|  | 35 | +	$(eval TC_TEX_NAME:=$(call config_select,test_case.config,$(TC_ID),3)) | 
|  | 36 | +	$(eval TC_PATH:=$(call config_select,test_case.config,$(TC_ID),2)) | 
|  | 37 | +	$(eval TC_SIZE:=$(shell wc -c <$(TC_PATH))) | 
|  | 38 | +	@echo "Running test case: $(TC_ID)" | 
|  | 39 | +	@echo "# TC_ID = $(TC_ID)" > results/$(TC_ID) | 
|  | 40 | +	@echo "# TC_TEX_NAME = $(TC_TEX_NAME)">> results/$(TC_ID) | 
|  | 41 | +	@echo "# TC_SIZE = $(TC_SIZE)">> results/$(TC_ID) | 
|  | 42 | +	@$(BIN_DIR)/prep_sa_bwt $(TC_PATH) >> results/$(TC_ID)  | 
|  | 43 | + | 
|  | 44 | +results/%: precalc% | 
|  | 45 | +	@$(foreach LCP_EXEC,$(LCP_EXECS),$(shell $(LCP_EXEC) >>$@;rm -f lcp_tmp.sdsl isa_tmp.sdsl))  | 
|  | 46 | +	@rm *.sdsl | 
|  | 47 | + | 
|  | 48 | +$(BIN_DIR)/build_%: $(SRC_DIR)/create_lcp.cpp lcp.config  | 
|  | 49 | +	$(eval LCP_ID:=$(call dim,1,$*)) | 
|  | 50 | +	$(eval LCP_TYPE:=$(call config_select,lcp.config,$(LCP_ID),2)) | 
|  | 51 | +	@echo "Compiling build_$*" | 
|  | 52 | +	@$(MY_CXX) $(CFLAGS) $(C_OPTIONS) -DLCP_TYPE="$(LCP_TYPE)" -DLCPID="$(LCP_ID)" -L${SDSLLITE}/lib\ | 
|  | 53 | +		$(SRC_DIR)/create_lcp.cpp -I${SDSLLITE}/include -o $@ $(LIBS) | 
|  | 54 | + | 
|  | 55 | + | 
|  | 56 | +include ../Make.download | 
|  | 57 | + | 
|  | 58 | +clean-build: | 
|  | 59 | +	@echo "Remove executables" | 
|  | 60 | +	rm -f $(BIN_DIR)/build* | 
|  | 61 | +	rm -f $(BIN_DIR)/prep* | 
|  | 62 | + | 
|  | 63 | +clean-result: | 
|  | 64 | +	@echo "Remove results" | 
|  | 65 | +	rm -f results/* | 
|  | 66 | + | 
|  | 67 | +cleanall: clean-build clean-result  | 
0 commit comments