Newer
Older
web-dumps / halinria-dumps / Makefile
@Nicolas Thouvenin Nicolas Thouvenin on 30 Sep 2022 2 KB bugs fix
# 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)/*.txt)
TARGET_FILES := $(patsubst $(INPUT_DIR)/%.txt, $(OUTPUT_DIR)/%.tsv, $(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