Source: curl Version: 8.6.0-3.2 Severity: wishlist X-Debbugs-Cc: debian-...@lists.debian.org, e...@debian.org Tags: trixie sid patch Control: block -1 by 1066981
On the architectures affected by the 64-bit time_t transition, there are at least two cyclic build-dependencies involving this package: curl, openldap, cyrus-sasl2, postgresql-16, gdb, elfutils, curl and curl, impacket, pyopenssl, python-cryptography, cargo, curl. I think it could be pragmatic to disable build-time tests and LDAP on the affected architectures for a short time in order to unblock this transition: quite a lot of packages are queued for rebuilding behind curl and/or cargo. The attached patches (which are also available from https://salsa.debian.org/debian/curl/-/merge_requests/24, and depend on the build profile added in #1066981) implement what I'm suggesting. I've confirmed that the package builds successfully with this change in armel and armhf porterbox chroots, and that it still runs build-time tests on amd64 and i386 (at the time of writing, my amd64 build has passed its tests and my i386 build is still running them). Unlike #1066981, the patches attached to this bug are intended to be temporary and should be reverted when the transition has finished. Thanks, smcv
>From bc8cd5d7a40c8acaf2c164c538b6c0b07f2d3dab Mon Sep 17 00:00:00 2001 From: Simon McVittie <s...@debian.org> Date: Sat, 16 Mar 2024 11:36:05 +0000 Subject: [PATCH 2/3] Temporarily disable LDAP support on 32-bit non-x86 This makes official buildd builds of curl (with no special build profiles) temporarily equivalent to pkg.curl.noldap on the architectures affected by the ongoing 64-bit time_t transition. This helps to break cyclic dependencies like this one: curl, openldap, cyrus-sasl2, postgresql-16, gdb, elfutils, curl. It can be reverted after the transition has progressed past curl. Helps: #1036884 --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/control b/debian/control index ee188861b..fe6cf6881 100644 --- a/debian/control +++ b/debian/control @@ -16,7 +16,7 @@ Build-Depends: dpkg-dev (>= 1.22.5), libgnutls28-dev, libidn2-dev, libkrb5-dev, - libldap2-dev <!pkg.curl.noldap>, + libldap2-dev [!armel !armhf !hppa !m68k !powerpc !sh4] <!pkg.curl.noldap>, libnghttp2-dev, libpsl-dev, librtmp-dev, -- 2.43.0
>From c105fbbae946bae3c755d8f87d247a36d8d59d47 Mon Sep 17 00:00:00 2001 From: Simon McVittie <s...@debian.org> Date: Sat, 16 Mar 2024 11:34:46 +0000 Subject: [PATCH 3/3] Temporarily disable build-time tests on 32-bit non-x86 This makes official buildd builds of curl (with no special build profiles) temporarily equivalent to nocheck on the architectures affected by the ongoing 64-bit time_t transition. This helps to break cyclic dependencies like this one: curl, impacket, pyopenssl, python-cryptography, cargo, curl. It can be reverted after the transition has progressed past curl. Helps: #1036884 --- debian/control | 12 ++++++------ debian/rules | 4 ++++ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/debian/control b/debian/control index fe6cf6881..35945dfcf 100644 --- a/debian/control +++ b/debian/control @@ -25,13 +25,13 @@ Build-Depends: dpkg-dev (>= 1.22.5), libssl-dev, libtool, libzstd-dev, - locales-all <!nocheck>, - openssh-server <!nocheck>, - python3:native <!nocheck>, - python3-impacket <!nocheck>, - gnutls-bin [!ppc64el] <!nocheck>, + locales-all [!armel !armhf !hppa !m68k !powerpc !sh4] <!nocheck>, + openssh-server [!armel !armhf !hppa !m68k !powerpc !sh4] <!nocheck>, + python3:native [!armel !armhf !hppa !m68k !powerpc !sh4] <!nocheck>, + python3-impacket [!armel !armhf !hppa !m68k !powerpc !sh4] <!nocheck>, + gnutls-bin [!armel !armhf !hppa !m68k !powerpc !sh4 !ppc64el] <!nocheck>, quilt, - stunnel4 <!nocheck>, + stunnel4 [!armel !armhf !hppa !m68k !powerpc !sh4] <!nocheck>, zlib1g-dev, Build-Conflicts: autoconf2.13, automake1.4 Standards-Version: 4.6.2 diff --git a/debian/rules b/debian/rules index 3049d659d..f0ceec938 100755 --- a/debian/rules +++ b/debian/rules @@ -100,6 +100,9 @@ TESTS_GENERAL_PARAMETERS += $(TESTS_FAILS_ON_IPV6_ONLY_MACHINES) override_dh_auto_test: ifeq ($(filter nocheck,$(DEB_BUILD_PROFILES)),) +ifeq ($(DEB_HOST_ARCH_BITS)$(filter i386,$(DEB_HOST_ARCH_CPU)),32) + : # TODO: Tests temporarily skipped for 64-bit time_t transition +else ifeq ($(filter pkg.curl.no-openssl,$(DEB_BUILD_PROFILES)),) # OpenSSL tests. cd debian/build && VERBOSE=1 \ @@ -113,6 +116,7 @@ ifeq ($(filter pkg.curl.no-gnutls,$(DEB_BUILD_PROFILES)),) $(MAKE) test-nonflaky endif endif +endif override_dh_install: ifeq ($(filter pkg.curl.no-openssl,$(DEB_BUILD_PROFILES)),) -- 2.43.0