aboutsummaryrefslogtreecommitdiff
path: root/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch
blob: 503159d669a0b77f3490ce7bb76c908b0f6cdedb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -735,6 +735,16 @@ regen-all: regen-opcode regen-opcode-tar
 ############################################################################
 # Special rules for object files
 
+DATE_FMT = %b %d %Y
+TIME_FMT = %H:%M:%S
+ifdef SOURCE_DATE_EPOCH
+	BUILD_DATE ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)"  2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+$(DATE_FMT)" 2>/dev/null || date -u "+$(DATE_FMT)")
+	BUILD_TIME ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "+$(TIME_FMT)"  2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "+$(TIME_FMT)" 2>/dev/null || date -u "+$(TIME_FMT)")
+else
+	BUILD_DATE ?= $(shell date "+$(DATE_FMT)")
+	BUILD_TIME ?= $(shell date "+$(TIME_FMT)")
+endif
+
 Modules/getbuildinfo.o: $(PARSER_OBJS) \
 		$(OBJECT_OBJS) \
 		$(PYTHON_OBJS) \
@@ -743,6 +753,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
 		$(DTRACE_OBJS) \
 		$(srcdir)/Modules/getbuildinfo.c
 	$(CC) -c $(PY_CORE_CFLAGS) \
+	      -DDATE="\"$(BUILD_DATE)\"" \
+	      -DTIME="\"$(BUILD_TIME)\"" \
 	      -DGITVERSION="\"`LC_ALL=C $(GITVERSION)`\"" \
 	      -DGITTAG="\"`LC_ALL=C $(GITTAG)`\"" \
 	      -DGITBRANCH="\"`LC_ALL=C $(GITBRANCH)`\"" \