# To set specific directory for each version ifeq ($(strip $(Startup)),) # use the the day of the week VERSION_DIR := $(shell date +%A) else # use no version VERSION_DIR := . endif # To set ezs parameters EZSFLAGS := --param VERSION_DIR="$(VERSION_DIR)" # To set the location and the extension of sources files (queries) INPUT_DIR := 01-query INPUT_EXT := txt # To set the location and the extension of results files OUTPUT_DIR := 04-export/$(VERSION_DIR) OUTPUT_EXT := tsv # To set custom aliases corhal-inria-2014-candidats: $(OUTPUT_DIR)/corhal-inria-2014-candidats.tsv corhal-inria-2014-doublons: $(OUTPUT_DIR)/corhal-inria-2014-doublons.tsv corhal-inria-2015-candidats: $(OUTPUT_DIR)/corhal-inria-2015-candidats.tsv corhal-inria-2015-doublons: $(OUTPUT_DIR)/corhal-inria-2015-doublons.tsv corhal-inria-2016-candidats: $(OUTPUT_DIR)/corhal-inria-2016-candidats.tsv corhal-inria-2016-doublons: $(OUTPUT_DIR)/corhal-inria-2016-doublons.tsv corhal-inria-2017-candidats: $(OUTPUT_DIR)/corhal-inria-2017-candidats.tsv corhal-inria-2017-doublons: $(OUTPUT_DIR)/corhal-inria-2017-doublons.tsv corhal-inria-2018-candidats: $(OUTPUT_DIR)/corhal-inria-2018-candidats.tsv corhal-inria-2018-doublons: $(OUTPUT_DIR)/corhal-inria-2018-doublons.tsv corhal-inria-2019-candidats: $(OUTPUT_DIR)/corhal-inria-2019-candidats.tsv corhal-inria-2019-doublons: $(OUTPUT_DIR)/corhal-inria-2019-doublons.tsv corhal-inria-2020-candidats: $(OUTPUT_DIR)/corhal-inria-2020-candidats.tsv corhal-inria-2020-doublons: $(OUTPUT_DIR)/corhal-inria-2020-doublons.tsv corhal-inria-2021-candidats: $(OUTPUT_DIR)/corhal-inria-2021-candidats.tsv corhal-inria-2022-doublons: $(OUTPUT_DIR)/corhal-inria-2022-doublons.tsv # To generate all files from source directory to target directory SOURCE_FILES := $(wildcard $(INPUT_DIR)/*.$(INPUT_EXT)) TARGET_FILES := $(patsubst $(INPUT_DIR)/%.$(INPUT_EXT), $(OUTPUT_DIR)/%.$(OUTPUT_EXT), $(SOURCE_FILES)) all: $(TARGET_FILES) # Step 2: to download all result 02-download/$(VERSION_DIR)/%.jsonl: $(INPUT_DIR)/%.txt @[ -d 02-download/$(VERSION_DIR)/ ] || mkdir -p 02-download/$(VERSION_DIR)/ ezs $(EZSFLAGS) 02-download.ini < $< > $@ # Step 3: to refine and select only chosen fields 03-refine/$(VERSION_DIR)/%.jsonl: 02-download/$(VERSION_DIR)/%.jsonl @[ -d 03-refine/$(VERSION_DIR)/ ] || mkdir -p 03-refine/$(VERSION_DIR)/ ezs $(EZSFLAGS) 03-refine.ini < $< > $@ # Step 4 : to create a export file 04-export/$(VERSION_DIR)/%.tsv: 03-refine/$(VERSION_DIR)/%.jsonl @[ -d 04-export/$(VERSION_DIR)/ ] || mkdir -p 04-export/$(VERSION_DIR)/ ezs $(EZSFLAGS) 04-export.ini < $< > $@ # To delete all generated files clean: @rm -f $(TARGET_FILES) @echo "Files deleted!" # To prevent deleting intermediate files (useful for local dev and debug cases) #.PRECIOUS: 02-download/$(VERSION_DIR)/%.jsonl # To ignore non-file targets .PHONY: clean