[build] Changes to Makefile.am to build on Debian/Ubuntu, fixing downloading of the data tarball for Mac and Linux

This commit is contained in:
Al
2015-08-07 17:27:34 -04:00
parent 9b69d1f67a
commit f161f68d53
3 changed files with 16 additions and 22 deletions

View File

@@ -0,0 +1,5 @@
ifeq ("$(wildcard $(LIBPOSTAL_DATA_LAST_UPDATED))", "")
LAST_MODIFIED_DATE = $(EPOCH_DATE)
else
LAST_MODIFIED_DATE = $(call get_last_modified,$(LIBPOSTAL_DATA_LAST_UPDATED))
endif

View File

@@ -5,6 +5,7 @@ CFLAGS_O0 = $(CFLAGS_BASE) -O0
CFLAGS_O1 = $(CFLAGS_BASE) -O1
CFLAGS_O2 = $(CFLAGS_BASE) -O2
CFLAGS_O3 = $(CFLAGS_BASE) -O3
DEFAULT_INCLUDES=-I..
CFLAGS = $(CFLAGS_BASE) -DLIBPOSTAL_DATA_DIR='"$(LIBPOSTAL_DATA_DIR)"'
@@ -30,22 +31,19 @@ EPOCH_DATE = Jan 1 00:00:00 1970
LIBPOSTAL_DATA_DIR = $(datadir)/libpostal/
LIBPOSTAL_DATA_LAST_UPDATED = $(LIBPOSTAL_DATA_DIR)libpostal_data_last_updated
LAST_MODIFIED = $(EPOCH_DATE)
if HAVE_DATE_STAT
USE_DATE_STAT = 1
define set_last_modified
$(eval LAST_MODIFIED := $(shell date -d "@$(shell cat $1)"))
define get_last_modified
$(shell date -d "@$$(shell cat $1)")
endef
else
if HAVE_STAT
USE_STAT = 1
define set_last_modified
$(eval LAST_MODIFIED := $(shell date -r "$(shell cat $1)"))
define get_last_modified
$(shell date -r "$(shell cat $1)")
endef
else
@@ -54,27 +52,19 @@ endif
endif
$(eval include $(srcdir)/Makefile.LastModified)
libpostal_data_mkdir:
mkdir -p $(LIBPOSTAL_DATA_DIR)
libpostal_data_last_updated: libpostal_data_mkdir
if [ -e $(LIBPOSTAL_DATA_LAST_UPDATED) ]; then \
$(call set_last_modified,$(LIBPOSTAL_DATA_LAST_UPDATED)) \
echo "LAST_MODIFIED=$(LAST_MODIFIED)"; \
else \
echo "LAST_MODIFIED=$(LAST_MODIFIED)"; \
fi;
libpostal_data.tar.gz: libpostal_data_mkdir libpostal_data_last_updated
if [ `curl $(LIBPOSTAL_S3_BUCKET_URL)/$(LIBPOSTAL_DATA_FILE) -z "$(LAST_MODIFIED)" --silent --remote-time -o $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE) -w %{http_code}` = "200" ]; then \
libpostal_data.tar.gz: libpostal_data_mkdir
if [ `curl $(LIBPOSTAL_S3_BUCKET_URL)/$(LIBPOSTAL_DATA_FILE) -z "$(LAST_MODIFIED_DATE)" --silent --remote-time -o $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE) -w %{http_code}` = "200" ]; then \
if [ "x$(USE_DATE_STAT)" != "x" ]; then \
echo $$(date -d"$$(date -d "@$$(date -r $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE)) +%s") + 1 second" +%s) > $(LIBPOSTAL_DATA_LAST_UPDATED); \
elif [ "x$(USE_STAT)" != "x" ]; then \
echo $$(date -r $$(stat -f %m $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE)) -v+1S +%s) > $(LIBPOSTAL_DATA_LAST_UPDATED); \
fi; \
tar -xvzf $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE) -C $(LIBPOSTAL_DATA_DIR); \
tar -xvzf $(LIBPOSTAL_DATA_DIR)$(LIBPOSTAL_DATA_FILE) -C $(LIBPOSTAL_DATA_DIR); \
fi;
address_dictionary_builder: address_dictionary_builder.c