mirror of
https://github.com/isar/libmdbx.git
synced 2025-08-19 19:39:26 +08:00
mdbx: allow to predefine/override MDBX_BUILD_TIMESTAMP
for builds reproducibility.
Resolve https://github.com/erthink/libmdbx/issues/201
This commit is contained in:
13
GNUmakefile
13
GNUmakefile
@@ -29,7 +29,8 @@ INSTALL ?= install
|
||||
CC ?= gcc
|
||||
CFLAGS_EXTRA ?=
|
||||
LD ?= ld
|
||||
MDBX_BUILD_OPTIONS ?= -DNDEBUG=1
|
||||
MDBX_BUILD_OPTIONS ?=-DNDEBUG=1
|
||||
MDBX_BUILD_TIMESTAMP ?=$(shell date +%Y-%m-%dT%H:%M:%S%z)
|
||||
CFLAGS ?= -std=gnu11 -O2 -g -Wall -Werror -Wextra -Wpedantic -ffunction-sections -fPIC -fvisibility=hidden -pthread -Wno-error=attributes $(CFLAGS_EXTRA)
|
||||
# -Wno-tautological-compare
|
||||
CXX ?= g++
|
||||
@@ -123,7 +124,8 @@ help:
|
||||
#< dist-cutoff-end
|
||||
|
||||
show-options:
|
||||
@echo " MDBX_BUILD_OPTIONS =$(MDBX_BUILD_OPTIONS)"
|
||||
@echo " MDBX_BUILD_OPTIONS = $(MDBX_BUILD_OPTIONS)"
|
||||
@echo " MDBX_BUILD_TIMESTAMP = $(MDBX_BUILD_TIMESTAMP)"
|
||||
@echo '## TIP: Use `make options` to listing available build options.'
|
||||
@echo " CFLAGS =$(CFLAGS)"
|
||||
@echo " CXXFLAGS =$(CXXFLAGS)"
|
||||
@@ -149,7 +151,8 @@ options:
|
||||
@echo " EXE_LDFLAGS =$(EXE_LDFLAGS)"
|
||||
@echo " LIBS =$(LIBS)"
|
||||
@echo ""
|
||||
@echo " MDBX_BUILD_OPTIONS =$(MDBX_BUILD_OPTIONS)"
|
||||
@echo " MDBX_BUILD_OPTIONS = $(MDBX_BUILD_OPTIONS)"
|
||||
@echo " MDBX_BUILD_TIMESTAMP = $(MDBX_BUILD_TIMESTAMP)"
|
||||
@echo ""
|
||||
@echo "## Assortment items for MDBX_BUILD_OPTIONS:"
|
||||
@echo "## Note that the defaults should already be correct for most platforms;"
|
||||
@@ -198,7 +201,7 @@ MAN_SRCDIR := man1/
|
||||
|
||||
config.h: mdbx.c $(lastword $(MAKEFILE_LIST))
|
||||
@echo ' MAKE $@'
|
||||
$(QUIET)(echo '#define MDBX_BUILD_TIMESTAMP "$(shell date +%Y-%m-%dT%H:%M:%S%z)"' \
|
||||
$(QUIET)(echo '#define MDBX_BUILD_TIMESTAMP "$(MDBX_BUILD_TIMESTAMP)"' \
|
||||
&& echo '#define MDBX_BUILD_FLAGS "$(CXXSTD) $(CFLAGS) $(LDFLAGS) $(LIBS)"' \
|
||||
&& echo '#define MDBX_BUILD_COMPILER "$(shell (LC_ALL=C $(CC) --version || echo 'Please use GCC or CLANG compatible compiler') | head -1)"' \
|
||||
&& echo '#define MDBX_BUILD_TARGET "$(shell set -o pipefail; (LC_ALL=C $(CC) -v 2>&1 | grep -i '^Target:' | cut -d ' ' -f 2- || (LC_ALL=C $(CC) --version | grep -qi e2k && echo E2K) || echo 'Please use GCC or CLANG compatible compiler') | head -1)"' \
|
||||
@@ -388,7 +391,7 @@ src/version.c: src/version.c.in $(lastword $(MAKEFILE_LIST)) $(git_DIR)/HEAD $(g
|
||||
|
||||
src/config.h: src/version.c $(lastword $(MAKEFILE_LIST))
|
||||
@echo ' MAKE $@'
|
||||
$(QUIET)(echo '#define MDBX_BUILD_TIMESTAMP "$(shell date +%Y-%m-%dT%H:%M:%S%z)"' \
|
||||
$(QUIET)(echo '#define MDBX_BUILD_TIMESTAMP "$(MDBX_BUILD_TIMESTAMP)"' \
|
||||
&& echo '#define MDBX_BUILD_FLAGS "$(CXXSTD) $(CFLAGS) $(LDFLAGS) $(LIBS)"' \
|
||||
&& echo '#define MDBX_BUILD_COMPILER "$(shell (LC_ALL=C $(CC) --version || echo 'Please use GCC or CLANG compatible compiler') | head -1)"' \
|
||||
&& echo '#define MDBX_BUILD_TARGET "$(shell set -o pipefail; (LC_ALL=C $(CC) -v 2>&1 | grep -i '^Target:' | cut -d ' ' -f 2- || (LC_ALL=C $(CC) --version | grep -qi e2k && echo E2K) || echo 'Please use GCC or CLANG compatible compiler') | head -1)"' \
|
||||
|
Reference in New Issue
Block a user