[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#677582: gcc-4.4-base: upgrade problems since removal of gcj-4.4



reassign 677582 gcc-4.4-base 4.4.7-1
tag 677582 patch
thanks

On 2012-08-03 07:58, Julien Cristau wrote:
> Does it make any difference if you change the Breaks to Conflicts?

Yes, it does. Therefore assigning the bug back to gcc-4.4

I'm testing a squeeze->wheezy distupgrade of the libgcj-bc package in a
minimal chroot that was created by piuparts.

# apt-cache policy gcc-4.4-base
gcc-4.4-base:
  Installed: 4.4.5-8
  Candidate: 4.4.7-1
  Version table:
     4.4.7-1 0
        500 http://$MIRROR/debian/ wheezy/main amd64 Packages
 *** 4.4.5-8 0
        100 /var/lib/dpkg/status

# apt-get --no-y dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  gcc-4.7-base gcj-4.7-base libapt-pkg4.12 libdb5.1 libgcj13 libgmp10
liblzma5 libmount1 libpam-modules-bin libsemanage-common libsemanage1
libssl1.0.0 libtinfo5 libustr-1.0-1
  multiarch-support python2.7 python2.7-minimal ucf
The following packages have been kept back:
  gcc-4.4-base
The following packages will be upgraded:
  apt base-files base-passwd bash bsdutils coreutils dash debconf
debconf-i18n debian-archive-keyring debianutils diffutils dpkg e2fslibs
e2fsprogs findutils gnupg gpgv grep gzip hostname
  initscripts insserv libacl1 libasound2 libattr1 libblkid1 libbz2-1.0
libc-bin libc6 libcomerr2 libexpat1 libgcc1 libgcj-bc libgcj-common
liblocale-gettext-perl libncurses5 libncursesw5
  libpam-modules libpam-runtime libpam0g libreadline6 libselinux1
libsepol1 libslang2 libsqlite3-0 libss2 libstdc++6
libtext-charwidth-perl libtext-iconv-perl libusb-0.1-4 libuuid1 login
  lsb-base mawk mime-support mount ncurses-base ncurses-bin passwd
perl-base python python-minimal python2.6 python2.6-minimal
readline-common sed sensible-utils sysv-rc sysvinit
  sysvinit-utils tar tzdata util-linux xz-utils zlib1g
76 upgraded, 18 newly installed, 0 to remove and 1 not upgraded.
[...]

OK, that's not what we want. There shouln't be packages "kept back".

Then I rebuilt gcc-4.4 with s/Breaks/Conflicts/ on gcj-4.4-base in the
gcc-4.4-base package:

Package: gcc-4.4-base
Source: gcc-4.4
Version: 4.4.7-2.1
Conflicts: gcj-4.4-base (<< 4.4.6-9~)
Breaks: gnat-4.4-base (<< 4.4.6-3~)

# apt-cache policy gcc-4.4-base
gcc-4.4-base:
  Installed: 4.4.5-8
  Candidate: 4.4.7-2.1
  Version table:
     4.4.7-2.1 0
        500 file:/tmp/debs/ ./ Packages
     4.4.7-1 0
        500 http://$MIRROR/debian/ wheezy/main amd64 Packages
 *** 4.4.5-8 0
        100 /var/lib/dpkg/status

# apt-get --no-y dist-upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be REMOVED:
  gcj-4.4-base libgcj10
The following NEW packages will be installed:
  gcc-4.7-base gcj-4.7-base libapt-pkg4.12 libdb5.1 libgcj13 libgmp10
liblzma5 libmount1 libpam-modules-bin libsemanage-common libsemanage1
libssl1.0.0 libtinfo5 libustr-1.0-1
  multiarch-support python2.7 python2.7-minimal ucf
The following packages will be upgraded:
  apt base-files base-passwd bash bsdutils coreutils dash debconf
debconf-i18n debian-archive-keyring debianutils diffutils dpkg e2fslibs
e2fsprogs findutils gcc-4.4-base gnupg gpgv grep gzip
  hostname initscripts insserv libacl1 libasound2 libattr1 libblkid1
libbz2-1.0 libc-bin libc6 libcomerr2 libexpat1 libgcc1 libgcj-bc
libgcj-common liblocale-gettext-perl libncurses5
  libncursesw5 libpam-modules libpam-runtime libpam0g libreadline6
libselinux1 libsepol1 libslang2 libsqlite3-0 libss2 libstdc++6
libtext-charwidth-perl libtext-iconv-perl libusb-0.1-4
  libuuid1 login lsb-base mawk mime-support mount ncurses-base
ncurses-bin passwd perl-base python python-minimal python2.6
python2.6-minimal readline-common sed sensible-utils sysv-rc
  sysvinit sysvinit-utils tar tzdata util-linux xz-utils zlib1g
77 upgraded, 18 newly installed, 2 to remove and 0 not upgraded.
[...]

That looks much better!

Update is successful, afterwards:

# apt-cache policy gcc-4.4-base
gcc-4.4-base:
  Installed: 4.4.7-2.1
  Candidate: 4.4.7-2.1
  Version table:
 *** 4.4.7-2.1 0
        500 file:/tmp/debs/ ./ Packages
        100 /var/lib/dpkg/status
     4.4.7-1 0
        500 http://$MIRROR/debian/ wheezy/main amd64 Packages


So, please switch that Breaks to a Conflicts. I'm attaching the patch I
used in my test.


Andreas
diff -u gcc-4.4-4.4.7/debian/control gcc-4.4-4.4.7/debian/control
--- gcc-4.4-4.4.7/debian/control
+++ gcc-4.4-4.4.7/debian/control
@@ -17,7 +17,8 @@
 Priority: required
 Depends: ${misc:Depends}
 Replaces: ${base:Replaces}
-Breaks: gcj-4.4-base (<< 4.4.6-9~), gnat-4.4-base (<< 4.4.6-3~)
+Breaks: gnat-4.4-base (<< 4.4.6-3~)
+Conflicts: gcj-4.4-base (<< 4.4.6-9~)
 Description: GCC, the GNU Compiler Collection (base package)
  This package contains files common to all languages and libraries
  contained in the GNU Compiler Collection (GCC).
diff -u gcc-4.4-4.4.7/debian/control.m4 gcc-4.4-4.4.7/debian/control.m4
--- gcc-4.4-4.4.7/debian/control.m4
+++ gcc-4.4-4.4.7/debian/control.m4
@@ -109,7 +109,8 @@
 Priority: PRI(required)
 Depends: ${misc:Depends}
 Replaces: ${base:Replaces}
-Breaks: gcj-4.4-base (<< 4.4.6-9~), gnat-4.4-base (<< 4.4.6-3~)
+Breaks: gnat-4.4-base (<< 4.4.6-3~)
+Conflicts: gcj-4.4-base (<< 4.4.6-9~)
 Description: GCC, the GNU Compiler Collection (base package)
  This package contains files common to all languages and libraries
  contained in the GNU Compiler Collection (GCC).

Reply to: