Source: gcc-11
Version: 11.2.0-10
Severity: normal
Tags: patch
X-Debbugs-Cc: debian-b...@lists.debian.org, 993...@bugs.debian.org

The requirement for high-Priority packages to depend on only packages of
equal or higher Priority was dropped in Policy 4.0.1 (2017), and gcc-7-base
and gcc-8-base in buster were reduced to Priority: optional, but the last
few gcc-N-base packages have gone back up to Priority: required.

I know that it's the ftp team that controls the actual Priority of packages
in the archive, and there are already requests open to reduce the Priority
of gcc-11-base, gcc-10-base and gcc-9-base (#993563, #992477, #992476).

However, I think the reason the Priority went back up is probably that
when those new versions of gcc were accepted from NEW, the ftp team
copied the Priority specified by the maintainer, which is still
Priority: required in some cases.

Please reduce the Priority specified in the VCS and the source/binary
packages to optional, so that when gcc-12 goes through NEW, it already
has Priority: optional for all binary packages. I think it would be useful
to do this ahead of time in gcc-11.

I believe the attached patch is suitable (obviously d/control will
need to be regenerated afterwards), but there might be subtleties that
I'm missing.

Thanks,
    smcv
>From f485b1e8e618ef12056d1eea54aa4b617ec10117 Mon Sep 17 00:00:00 2001
From: Simon McVittie <s...@collabora.com>
Date: Mon, 25 Oct 2021 14:20:16 +0100
Subject: [PATCH] d/control.m4: Make all packages Priority: optional

gcc-N-base is transitively Essential because libgccN depends on it,
but since Policy 4.0.1 (2017) it is no longer necessary to raise the
Priority of packages just because a high-Priority (or Essential) package
depends on them.

Similarly, since the deprecation of Priority: extra in 2017, it no
longer seems necessary to have a way to set priorities lower than
optional.

Signed-off-by: Simon McVittie <s...@collabora.com>
---
 debian/control.m4 | 27 +--------------------------
 1 file changed, 1 insertion(+), 26 deletions(-)

diff --git a/debian/control.m4 b/debian/control.m4
index 9e8a8b8..69c23ec 100644
--- a/debian/control.m4
+++ b/debian/control.m4
@@ -13,9 +13,6 @@ dnl ifdef(`ARCH',		, errexit(`ARCH'))
 dnl The architecture will also be defined (-D__i386__, -D__powerpc__, etc.)
 
 define(`PN', `$1')
-ifdef(`PRI', `', `
-    define(`PRI', `$1')
-')
 define(`MAINTAINER', `Debian GCC Maintainers <debian-gcc@lists.debian.org>')
 
 define(`depifenabled', `ifelse(index(enabled_languages, `$1'), -1, `', `$2')')
@@ -44,7 +41,7 @@ divert`'dnl
 dnl --------------------------------------------------------------------------
 Source: SRCNAME
 Section: devel
-Priority: PRI(optional)
+Priority: optional
 ifelse(DIST,`Ubuntu',`dnl
 ifelse(regexp(SRCNAME, `gnat\|gdc-'),0,`dnl
 Maintainer: Ubuntu MOTU Developers <ubuntu-m...@lists.ubuntu.com>
@@ -150,7 +147,6 @@ Package: gcc`'PV`'TS-base
 Architecture: any
 Multi-Arch: same
 Section: ifdef(`TARGET',`devel',`libs')
-Priority: ifdef(`TARGET',`optional',`PRI(required)')
 Depends: ${misc:Depends}
 Replaces: ${base:Replaces}
 Breaks: ${base:Breaks}
@@ -169,7 +165,6 @@ ifenabled(`gcclbase',`
 Package: gcc`'PV-cross-base`'GCC_PORTS_BUILD
 Architecture: all
 Section: ifdef(`TARGET',`devel',`libs')
-Priority: ifdef(`TARGET',`optional',`PRI(required)')
 Depends: ${misc:Depends}
 BUILT_USING`'dnl
 Description: GCC, the GNU Compiler Collection (library base package)
@@ -187,7 +182,6 @@ Package: gnat`'PV-base`'TS
 Architecture: any
 # "all" causes build instabilities for "any" dependencies (see #748388).
 Section: libs
-Priority: PRI(optional)
 Depends: ${misc:Depends}
 BUILT_USING`'dnl
 Description: GNU Ada compiler (common files)
@@ -1097,7 +1091,6 @@ Architecture: ifdef(`TARGET',`any',hppa amd64 i386 x32)
 ifdef(`TARGET',`Multi-Arch: foreign
 ')dnl
 Section: devel
-Priority: PRI(optional)
 Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}),
   binutils-hppa64-linux-gnu | binutils-hppa64,
   ${shlibs:Depends}, ${misc:Depends}
@@ -1133,7 +1126,6 @@ ifenabled(`gfdldoc',`
 Package: cpp`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), ${misc:Depends}
 Description: Documentation for the GNU C preprocessor (cpp)
  Documentation for the GNU C preprocessor in info `format'.
@@ -1144,7 +1136,6 @@ ifdef(`TARGET', `', `
 Package: gcc`'PV-locales
 Architecture: all
 Section: devel
-Priority: PRI(optional)
 Depends: SOFTBASEDEP, cpp`'PV (>= ${gcc:SoftVersion}), ${misc:Depends}
 Recommends: gcc`'PV (>= ${gcc:SoftVersion})
 Description: GCC, the GNU compiler collection (native language support files)
@@ -1203,7 +1194,6 @@ ifdef(`MULTIARCH', `Multi-Arch: same
 Pre-Depends: ${misc:Pre-Depends}
 ')`'dnl
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${shlibs:Depends}, ${misc:Depends}
 BUILT_USING`'dnl
 Description: GCC stack smashing protection library
@@ -1215,7 +1205,6 @@ Package: lib32ssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarch32_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 Replaces: libssp0 (<< 4.1)
 Conflicts: ${confl:lib32}
@@ -1229,7 +1218,6 @@ Package: lib64ssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarch64_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 Replaces: libssp0 (<< 4.1)
 BUILT_USING`'dnl
@@ -1242,7 +1230,6 @@ Package: libn32ssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarchn32_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 Replaces: libssp0 (<< 4.1)
 BUILT_USING`'dnl
@@ -1255,7 +1242,6 @@ Package: libx32ssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarchx32_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 Replaces: libssp0 (<< 4.1)
 BUILT_USING`'dnl
@@ -1268,7 +1254,6 @@ Package: libhfssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarchhf_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 BUILT_USING`'dnl
 Description: GCC stack smashing protection library (hard float ABI)
@@ -1280,7 +1265,6 @@ Package: libsfssp`'SSP_SO`'LS
 TARGET_PACKAGE`'dnl
 Architecture: biarchsf_archs
 Section: libs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 BUILT_USING`'dnl
 Description: GCC stack smashing protection library (soft float ABI)
@@ -3708,7 +3692,6 @@ ifenabled(`gfdldoc',`
 Package: gfortran`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), ${misc:Depends}
 Description: Documentation for the GNU Fortran compiler (gfortran)
  Documentation for the GNU Fortran compiler in info `format'.
@@ -4037,7 +4020,6 @@ ifenabled(`gfdldoc',`
 Package: gccgo`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), ${misc:Depends}
 BUILT_USING`'dnl
 Description: Documentation for the GNU Go compiler (gccgo)
@@ -4852,7 +4834,6 @@ ifdef(`TARGET', `', `
 Package: libstdc++`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), ${misc:Depends}
 Conflicts: libstdc++5-doc, libstdc++5-3.3-doc, libstdc++6-doc,
  libstdc++6-4.0-doc, libstdc++6-4.1-doc, libstdc++6-4.2-doc, libstdc++6-4.3-doc,
@@ -4958,7 +4939,6 @@ ifenabled(`lib64gnat',`
 Package: lib64gnat`'-GNAT_V
 Section: libs
 Architecture: biarch64_archs
-Priority: PRI(optional)
 Depends: BASELDEP, ${dep:libcbiarch}, ${shlibs:Depends}, ${misc:Depends}
 BUILT_USING`'dnl
 Description: runtime for applications compiled with GNAT (64 bits shared library)
@@ -4975,7 +4955,6 @@ ifenabled(`gfdldoc',`
 Package: gnat`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: ${misc:Depends}
 Suggests: gnat`'PV
 Conflicts: gnat-4.9-doc,
@@ -6034,7 +6013,6 @@ ifdef(`TARGET',`',`dnl
 ifenabled(`libs',`
 #Package: gcc`'PV-soft-float
 #Architecture: arm armel armhf
-#Priority: PRI(optional)
 #Depends: BASEDEP, depifenabled(`cdev',`gcc`'PV (= ${gcc:Version}),') ${shlibs:Depends}, ${misc:Depends}
 #Conflicts: gcc-4.4-soft-float, gcc-4.5-soft-float, gcc-4.6-soft-float
 #BUILT_USING`'dnl
@@ -6050,7 +6028,6 @@ ifenabled(`gfdldoc',`
 Package: gcc`'PV-doc
 Architecture: all
 Section: doc
-Priority: PRI(optional)
 Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), ${misc:Depends}
 Conflicts: gcc-docs (<< 2.95.2)
 Replaces: gcc (<=2.7.2.3-4.3), gcc-docs (<< 2.95.2)
@@ -6134,7 +6111,6 @@ ifdef(`TARGET',`',`dnl
 ifenabled(`libnof',`
 #Package: gcc`'PV-nof
 #Architecture: powerpc
-#Priority: PRI(optional)
 #Depends: BASEDEP, ${shlibs:Depends}ifenabled(`cdev',`, gcc`'PV (= ${gcc:Version})'), ${misc:Depends}
 #Conflicts: gcc-3.2-nof
 #BUILT_USING`'dnl
@@ -6148,7 +6124,6 @@ ifenabled(`source',`
 Package: gcc`'PV-source
 Multi-Arch: foreign
 Architecture: all
-Priority: PRI(optional)
 Depends: make, quilt, patchutils, sharutils, gawk, lsb-release, time, AUTO_BUILD_DEP
   ${misc:Depends}
 Description: Source of the GNU Compiler Collection
-- 
2.33.0

Reply via email to