2020-10-31 00:32:05 +08:00
|
|
|
GO = go
|
|
|
|
|
|
|
|
DOWNLOAD = wget --quiet --output-document
|
|
|
|
UNZIP = unzip
|
|
|
|
MKDIR = mkdir -p
|
|
|
|
|
2020-10-30 03:34:38 +08:00
|
|
|
|
|
|
|
.PHONY: all
|
2020-10-31 00:32:05 +08:00
|
|
|
all: download-data download-icons generate build
|
|
|
|
.PHONY: clean
|
|
|
|
clean:
|
|
|
|
$(RM) -r datetime js/data.json data/ templates/icon_*.svg
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: build
|
|
|
|
build: datetime
|
|
|
|
|
|
|
|
datetime: *.go
|
|
|
|
$(GO) build -o datetime
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: generate
|
|
|
|
generate: js/data.json
|
2020-10-30 03:34:38 +08:00
|
|
|
|
2020-10-31 00:32:05 +08:00
|
|
|
js/data.json: generate.go scripts/data.go
|
|
|
|
$(GO) generate
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: download-data
|
|
|
|
download-data: data/cities15000.txt data/countryInfo.txt data/admin1CodesASCII.txt
|
2020-10-30 03:34:38 +08:00
|
|
|
|
|
|
|
data/cities15000.txt:
|
2020-10-31 00:32:05 +08:00
|
|
|
$(MKDIR) data/
|
|
|
|
$(DOWNLOAD) data/cities15000.zip http://download.geonames.org/export/dump/cities15000.zip
|
|
|
|
$(UNZIP) data/cities15000.zip -d data/
|
2020-10-30 03:34:38 +08:00
|
|
|
$(RM) data/cities15000.zip
|
|
|
|
|
|
|
|
data/countryInfo.txt:
|
2020-10-31 00:32:05 +08:00
|
|
|
$(MKDIR) data/
|
|
|
|
$(DOWNLOAD) data/countryInfo.txt http://download.geonames.org/export/dump/countryInfo.txt
|
2020-10-30 03:34:38 +08:00
|
|
|
|
|
|
|
data/admin1CodesASCII.txt:
|
2020-10-31 00:32:05 +08:00
|
|
|
$(MKDIR) data/
|
|
|
|
$(DOWNLOAD) data/admin1CodesASCII.txt https://download.geonames.org/export/dump/admin1CodesASCII.txt
|
|
|
|
|
|
|
|
|
|
|
|
ICONS = \
|
|
|
|
solid_sun \
|
|
|
|
solid_moon \
|
|
|
|
solid_adjust
|
|
|
|
|
|
|
|
.PHONY: download-icons
|
|
|
|
download-icons: $(foreach icon,$(ICONS),templates/icon_$(icon).svg)
|
|
|
|
|
|
|
|
.DELETE_ON_ERROR: templates/icon_%.svg
|
|
|
|
templates/icon_%.svg:
|
|
|
|
$(DOWNLOAD) $@ https://github.com/FortAwesome/Font-Awesome/raw/5.15.1/svgs/$(subst _,/,$*).svg
|