debianize: make default changelog timestamp configurable

Message ID 20250304100351.121924-1-christoph.steiger@siemens.com
State Accepted, archived
Headers show
Series debianize: make default changelog timestamp configurable | expand

Commit Message

Christoph Steiger March 4, 2025, 10:03 a.m. UTC
Add the `DEBIAN_CHANGELOG_TIMESTAMP` variable to make the default
changelog timestamp configurable. This might be required if the default
timestamp leads to problems in the build process.

This is the case for e.g. python packages that use distutils<3.8 or with
the hatchling build system, since the internally used zip does not
support timestamps before 1. January 1980.

Signed-off-by: Christoph Steiger <christoph.steiger@siemens.com>
---
 meta/classes/debianize.bbclass | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Uladzimir Bely March 13, 2025, 4:38 a.m. UTC | #1
On Tue, 2025-03-04 at 11:03 +0100, 'Christoph Steiger' via isar-users
wrote:
> Add the `DEBIAN_CHANGELOG_TIMESTAMP` variable to make the default
> changelog timestamp configurable. This might be required if the
> default
> timestamp leads to problems in the build process.
> 
> This is the case for e.g. python packages that use distutils<3.8 or
> with
> the hatchling build system, since the internally used zip does not
> support timestamps before 1. January 1980.
> 
> Signed-off-by: Christoph Steiger <christoph.steiger@siemens.com>
> ---
>  meta/classes/debianize.bbclass | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/classes/debianize.bbclass
> b/meta/classes/debianize.bbclass
> index cf808eec..5e9d76f3 100644
> --- a/meta/classes/debianize.bbclass
> +++ b/meta/classes/debianize.bbclass
> @@ -14,12 +14,13 @@ DEBIAN_CONFLICTS ??= ""
>  DEBIAN_BREAKS ??= ""
>  DEBIAN_MULTI_ARCH ??= "no"
>  DEBIAN_COMPAT ??= "10"
> +DEBIAN_CHANGELOG_TIMESTAMP ??= "3600"
>  DESCRIPTION ??= "must not be empty"
>  MAINTAINER ??= "Unknown maintainer <unknown@example.com>"
>  
>  deb_add_changelog() {
>  	changelog_v="${CHANGELOG_V}"
> -	timestamp=3600
> +	timestamp="${DEBIAN_CHANGELOG_TIMESTAMP}"
>  	if [ -f ${S}/debian/changelog ]; then
>  		if [ ! -f ${WORKDIR}/changelog.orig ]; then
>  			cp ${S}/debian/changelog
> ${WORKDIR}/changelog.orig
> -- 
> 2.39.5
> 

Applied to next, thanks.

Patch

diff --git a/meta/classes/debianize.bbclass b/meta/classes/debianize.bbclass
index cf808eec..5e9d76f3 100644
--- a/meta/classes/debianize.bbclass
+++ b/meta/classes/debianize.bbclass
@@ -14,12 +14,13 @@  DEBIAN_CONFLICTS ??= ""
 DEBIAN_BREAKS ??= ""
 DEBIAN_MULTI_ARCH ??= "no"
 DEBIAN_COMPAT ??= "10"
+DEBIAN_CHANGELOG_TIMESTAMP ??= "3600"
 DESCRIPTION ??= "must not be empty"
 MAINTAINER ??= "Unknown maintainer <unknown@example.com>"
 
 deb_add_changelog() {
 	changelog_v="${CHANGELOG_V}"
-	timestamp=3600
+	timestamp="${DEBIAN_CHANGELOG_TIMESTAMP}"
 	if [ -f ${S}/debian/changelog ]; then
 		if [ ! -f ${WORKDIR}/changelog.orig ]; then
 			cp ${S}/debian/changelog ${WORKDIR}/changelog.orig