# Aliases corhal: corhal-candidats-hal corhal-candidats-nonhal corhal-potentials-hal corhal-potentials-nonhal corhal-doublons-hal # To set specific directory for each crontab run ifeq ($(strip $(Startup)),) # use the the day of the week #VERSION_DIR := $(shell date +%A) # use the month VERSION_DIR := $(shell date +%B) else # use no version VERSION_DIR := . endif # To set ezs parameters EZSFLAGS := --param VERSION_DIR="$(VERSION_DIR)" # To set global parameters ROOT_DIR := $(shell pwd) # 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 := 02-download/$(VERSION_DIR) OUTPUT_EXT := json.gz # 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)) # Phony Rules help: @grep -P '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' list: ## list all target files @ls -1 $(TARGET_FILES) view: ## To view current generated files find $(OUTPUT_DIR) clean-cache: ## To delete enrichment cache @rm -v -f $(TMPDIR)/memory clean: ## To delete current generated files @rm -v -f $(TARGET_FILES) drain: ## To delete all directories @rm -v -Rf 02-download # Rules all: $(TARGET_FILES) ## Build all files %: $(OUTPUT_DIR)/%.$(OUTPUT_EXT) [ -f $< ] && rm $< $(MAKE) $< 02-download/$(VERSION_DIR)/%.json: 01-query/%.txt mkdir -p $(@D) time ezs $(EZSFLAGS) 02-download.ini < $< > $@.crdownload mv $@.crdownload $@ ls -lhag $@ |sed -re 's/^[^ ]* //' >> "$(subst .json,.log,$@)" 02-download/$(VERSION_DIR)/%.json.gz: 02-download/$(VERSION_DIR)/%.json gzip -f $< # To prevent deleting intermediate files (for controls) .PRECIOUS: 02-download/$(VERSION_DIR)/%.json .DEFAULT_GOAL := help .PHONY: clean drain view help list all clean-cache