diff --git a/lang/python/python/Makefile b/lang/python/python/Makefile index e7500f66d..8064a6b83 100644 --- a/lang/python/python/Makefile +++ b/lang/python/python/Makefile @@ -12,7 +12,7 @@ include ./files/python-version.mk PKG_NAME:=python PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) -PKG_RELEASE:=8 +PKG_RELEASE:=9 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION) diff --git a/lang/python/python/patches/013-getbuildinfo-date-time-source-date-epoch.patch b/lang/python/python/patches/013-getbuildinfo-date-time-source-date-epoch.patch new file mode 100644 index 000000000..de7605d1e --- /dev/null +++ b/lang/python/python/patches/013-getbuildinfo-date-time-source-date-epoch.patch @@ -0,0 +1,28 @@ +--- a/Makefile.pre.in ++++ b/Makefile.pre.in +@@ -625,6 +625,16 @@ regen-all: regen-opcode-targets regen-gr + ############################################################################ + # 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) \ +@@ -633,6 +643,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ + $(MODOBJS) \ + $(srcdir)/Modules/getbuildinfo.c + $(CC) -c $(PY_CFLAGS) \ ++ -DDATE="\"$(BUILD_DATE)\"" \ ++ -DTIME="\"$(BUILD_TIME)\"" \ + -DGITVERSION="\"`LC_ALL=C $(GITVERSION)`\"" \ + -DGITTAG="\"`LC_ALL=C $(GITTAG)`\"" \ + -DGITBRANCH="\"`LC_ALL=C $(GITBRANCH)`\"" \ diff --git a/lang/python/python3/Makefile b/lang/python/python3/Makefile index 7ab3c51da..ac1ad01c3 100644 --- a/lang/python/python3/Makefile +++ b/lang/python/python3/Makefile @@ -14,7 +14,7 @@ PYTHON_VERSION:=$(PYTHON3_VERSION) PYTHON_VERSION_MICRO:=$(PYTHON3_VERSION_MICRO) PKG_NAME:=python3 -PKG_RELEASE:=3 +PKG_RELEASE:=4 PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO) PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz diff --git a/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch b/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch new file mode 100644 index 000000000..340e302d8 --- /dev/null +++ b/lang/python/python3/patches/013-getbuildinfo-date-time-source-date-epoch.patch @@ -0,0 +1,28 @@ +--- a/Makefile.pre.in ++++ b/Makefile.pre.in +@@ -725,6 +725,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) \ +@@ -732,6 +742,8 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ + $(MODOBJS) \ + $(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)`\"" \