Bug 802080

Summary: llvm needs to be rebuilt for gcc-4.6.3
Product: [Fedora] Fedora Reporter: Jan Vcelak <jvcelak>
Component: llvmAssignee: Michel Lind <michel>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: alex, balay, ben, bloch, bos, ct.spammable, dmalcolm, jan.kratochvil, mad.scientist124, michel, mzdunek, nmiell, sgtnasty, timko.charles, tsmetana
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: llvm-2.8-15.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-03-31 03:24:28 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jan Vcelak 2012-03-10 21:17:31 UTC
Description of problem:

gcc-4.6.3-2.fc16 is in F16 updates-testing, llvm needs to be rebuilt

yum --enablerepo \*updates-testing distro-sync
Loaded plugins: auto-update-debuginfo, keys, presto, remove-with-leaves
Setting up Distribution Synchronization Process
Resolving Dependencies
--> Running transaction check
---> Package cpp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package cpp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-c++.x86_64 0:4.6.2-1.fc16 will be updated
--> Processing Dependency: gcc-c++ = 4.6.2 for package: clang-2.9-6.fc16.x86_64
---> Package gcc-c++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libgomp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgomp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.i686 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.i686 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++-devel.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++-devel.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libtool.x86_64 0:2.4-8.fc16 will be updated
---> Package libtool.x86_64 0:2.4-9.fc16 will be an update
--> Finished Dependency Resolution
Error: Package: clang-2.9-6.fc16.x86_64 (@updates)
           Requires: gcc-c++ = 4.6.2
           Removing: gcc-c++-4.6.2-1.fc16.x86_64 (@fedora)
               gcc-c++ = 4.6.2-1.fc16
           Updated By: gcc-c++-4.6.3-2.fc16.x86_64 (updates-testing)
               gcc-c++ = 4.6.3-2.fc16

Comment 1 Fedora Update System 2012-03-11 16:15:40 UTC
llvm-2.8-15.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/llvm-2.8-15.fc15

Comment 2 Fedora Update System 2012-03-11 16:16:01 UTC
llvm-2.9-8.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/llvm-2.9-8.fc16

Comment 3 Satish Balay 2012-03-22 15:33:54 UTC
looks like gcc is now pushed to updates - but llvm/clang is not. This is causing "yum update" to break.


[root@asterix ~]# yum update
Loaded plugins: changelog, fastestmirror, langpacks, presto, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: mirror.anl.gov
 * rpmfusion-free: mirror.liberty.edu
 * rpmfusion-free-updates: mirror.liberty.edu
 * rpmfusion-nonfree: mirror.liberty.edu
 * rpmfusion-nonfree-updates: mirror.liberty.edu
 * updates: mirrors.servercentral.net
local                                                                  | 2.9 kB     00:00 ... 
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package bash.x86_64 0:4.2.20-1.fc16 will be updated
---> Package bash.x86_64 0:4.2.24-1.fc16 will be an update
---> Package chkconfig.x86_64 0:1.3.57-3.fc16 will be updated
---> Package chkconfig.x86_64 0:1.3.59-1.fc16 will be an update
---> Package cpp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package cpp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package exempi.x86_64 0:2.1.1-2.fc15 will be updated
---> Package exempi.x86_64 0:2.2.0-1.fc16 will be an update
---> Package gcc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-c++.x86_64 0:4.6.2-1.fc16 will be updated
--> Processing Dependency: gcc-c++ = 4.6.2 for package: clang-2.9-6.fc16.x86_64
---> Package gcc-c++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-gfortran.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc-gfortran.x86_64 0:4.6.3-2.fc16 will be an update
---> Package google-chrome-stable.x86_64 0:17.0.963.79-125985 will be updated
---> Package google-chrome-stable.x86_64 0:17.0.963.83-127885 will be an update
---> Package kernel.x86_64 0:3.3.0-4.fc16 will be installed
---> Package kernel-devel.x86_64 0:3.3.0-4.fc16 will be installed
---> Package kernel-headers.x86_64 0:3.3.0-2.fc16 will be updated
---> Package kernel-headers.x86_64 0:3.3.0-4.fc16 will be an update
---> Package libgcc.i686 0:4.6.2-1.fc16 will be updated
---> Package libgcc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgcc.i686 0:4.6.3-2.fc16 will be an update
---> Package libgcc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libgfortran.i686 0:4.6.2-1.fc16 will be updated
---> Package libgfortran.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgfortran.i686 0:4.6.3-2.fc16 will be an update
---> Package libgfortran.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libgomp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgomp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libquadmath.i686 0:4.6.2-1.fc16 will be updated
---> Package libquadmath.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libquadmath.i686 0:4.6.3-2.fc16 will be an update
---> Package libquadmath.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libquadmath-devel.i686 0:4.6.2-1.fc16 will be updated
---> Package libquadmath-devel.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libquadmath-devel.i686 0:4.6.3-2.fc16 will be an update
---> Package libquadmath-devel.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.i686 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.i686 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++-devel.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++-devel.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++-static.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++-static.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libtool.x86_64 0:2.4-8.fc16 will be updated
---> Package libtool.x86_64 0:2.4-9.fc16 will be an update
---> Package libtool-ltdl.x86_64 0:2.4-8.fc16 will be updated
---> Package libtool-ltdl.x86_64 0:2.4-9.fc16 will be an update
---> Package libuser.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser.x86_64 0:0.57.4-1.fc16 will be an update
---> Package libuser-devel.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser-devel.x86_64 0:0.57.4-1.fc16 will be an update
---> Package libuser-python.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser-python.x86_64 0:0.57.4-1.fc16 will be an update
---> Package ntsysv.x86_64 0:1.3.57-3.fc16 will be updated
---> Package ntsysv.x86_64 0:1.3.59-1.fc16 will be an update
---> Package psmisc.x86_64 0:22.13-8.fc15 will be updated
---> Package psmisc.x86_64 0:22.16-1.fc16 will be an update
---> Package xorg-x11-server-Xephyr.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-Xephyr.x86_64 0:1.11.4-2.fc16 will be an update
---> Package xorg-x11-server-Xorg.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-Xorg.x86_64 0:1.11.4-2.fc16 will be an update
---> Package xorg-x11-server-common.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-common.x86_64 0:1.11.4-2.fc16 will be an update
--> Finished Dependency Resolution
Error: Package: clang-2.9-6.fc16.x86_64 (@updates)
           Requires: gcc-c++ = 4.6.2
           Removing: gcc-c++-4.6.2-1.fc16.x86_64 (@fedora)
               gcc-c++ = 4.6.2-1.fc16
           Updated By: gcc-c++-4.6.3-2.fc16.x86_64 (updates)
               gcc-c++ = 4.6.3-2.fc16
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
[root@asterix ~]#

Comment 4 Satish Balay 2012-03-22 15:38:10 UTC
Its not available even in updates-testing repo.. I guess I'll just get it over directly from koji.


[root@asterix yum]# yum --enablerepo=updates-testing update clang
Loaded plugins: changelog, fastestmirror, langpacks, presto, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: mirror.anl.gov
 * rpmfusion-free: mirror.liberty.edu
 * rpmfusion-free-updates: mirror.liberty.edu
 * rpmfusion-nonfree: mirror.liberty.edu
 * rpmfusion-nonfree-updates: mirror.liberty.edu
 * updates: mirrors.servercentral.net
 * updates-testing: mirrors.servercentral.net
local                                                                  | 2.9 kB     00:00 ... 
Setting up Update Process
No Packages marked for Update
[root@asterix yum]#

Comment 5 Jan Vcelak 2012-03-22 21:12:58 UTC
Not fixed. Old gcc 4.6.2-1.fc16 was installed in the build root:
http://kojipkgs.fedoraproject.org/packages/llvm/2.9/8.fc16/data/logs/i686/root.log

Comment 6 Ronaldo Nascimento 2012-03-22 23:02:42 UTC
[ronaldo@fedora ~]$ sudo yum update 
Loaded plugins: fastestmirror, langpacks, presto, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: mirror.liberty.edu
 * rpmfusion-free: mirror.liberty.edu
 * rpmfusion-free-updates: mirror.liberty.edu
 * rpmfusion-nonfree: mirror.liberty.edu
 * rpmfusion-nonfree-updates: mirror.liberty.edu
 * updates: mirror.liberty.edu
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package bash.x86_64 0:4.2.20-1.fc16 will be updated
---> Package bash.x86_64 0:4.2.24-1.fc16 will be an update
---> Package chkconfig.x86_64 0:1.3.57-3.fc16 will be updated
---> Package chkconfig.x86_64 0:1.3.59-1.fc16 will be an update
---> Package cpp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package cpp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package exempi.x86_64 0:2.1.1-2.fc15 will be updated
---> Package exempi.x86_64 0:2.2.0-1.fc16 will be an update
---> Package gcc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-c++.x86_64 0:4.6.2-1.fc16 will be updated
--> Processing Dependency: gcc-c++ = 4.6.2 for package: clang-2.9-6.fc16.x86_64
---> Package gcc-c++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-gfortran.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc-gfortran.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gcc-objc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package gcc-objc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package gd.x86_64 0:2.0.35-13.fc16 will be updated
---> Package gd.x86_64 0:2.0.35-14.fc16 will be an update
---> Package gd-devel.x86_64 0:2.0.35-13.fc16 will be updated
---> Package gd-devel.x86_64 0:2.0.35-14.fc16 will be an update
---> Package google-chrome-stable.x86_64 0:17.0.963.79-125985 will be updated
---> Package google-chrome-stable.x86_64 0:17.0.963.83-127885 will be an update
---> Package grub2.x86_64 1:1.99-13.fc16 will be updated
---> Package grub2.x86_64 1:1.99-13.fc16.2 will be an update
---> Package kernel.x86_64 0:3.3.0-4.fc16 will be installed
---> Package kernel-devel.x86_64 0:3.3.0-4.fc16 will be installed
---> Package kernel-headers.x86_64 0:3.2.10-3.fc16 will be updated
---> Package kernel-headers.x86_64 0:3.3.0-4.fc16 will be an update
---> Package libgcc.i686 0:4.6.2-1.fc16 will be updated
---> Package libgcc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgcc.i686 0:4.6.3-2.fc16 will be an update
---> Package libgcc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libgfortran.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgfortran.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libgomp.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libgomp.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libobjc.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libobjc.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libquadmath.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libquadmath.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libquadmath-devel.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libquadmath-devel.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.i686 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++.i686 0:4.6.3-2.fc16 will be an update
---> Package libstdc++.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libstdc++-devel.x86_64 0:4.6.2-1.fc16 will be updated
---> Package libstdc++-devel.x86_64 0:4.6.3-2.fc16 will be an update
---> Package libtool.x86_64 0:2.4-8.fc16 will be updated
---> Package libtool.x86_64 0:2.4-9.fc16 will be an update
---> Package libtool-ltdl.x86_64 0:2.4-8.fc16 will be updated
---> Package libtool-ltdl.x86_64 0:2.4-9.fc16 will be an update
---> Package libuser.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser.x86_64 0:0.57.4-1.fc16 will be an update
---> Package libuser-devel.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser-devel.x86_64 0:0.57.4-1.fc16 will be an update
---> Package libuser-python.x86_64 0:0.57.2-1.fc16 will be updated
---> Package libuser-python.x86_64 0:0.57.4-1.fc16 will be an update
---> Package ntsysv.x86_64 0:1.3.57-3.fc16 will be updated
---> Package ntsysv.x86_64 0:1.3.59-1.fc16 will be an update
---> Package perl-CPAN-Meta.noarch 0:2.120351-1.fc16 will be updated
---> Package perl-CPAN-Meta.noarch 0:2.120630-1.fc16 will be an update
---> Package psmisc.x86_64 0:22.13-8.fc15 will be updated
---> Package psmisc.x86_64 0:22.16-1.fc16 will be an update
---> Package rpmfusion-nonfree-release.noarch 0:16-1.1 will be updated
---> Package rpmfusion-nonfree-release.noarch 0:16-3 will be an update
---> Package xorg-x11-server-Xephyr.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-Xephyr.x86_64 0:1.11.4-2.fc16 will be an update
---> Package xorg-x11-server-Xorg.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-Xorg.x86_64 0:1.11.4-2.fc16 will be an update
---> Package xorg-x11-server-common.x86_64 0:1.11.4-1.fc16 will be updated
---> Package xorg-x11-server-common.x86_64 0:1.11.4-2.fc16 will be an update
--> Finished Dependency Resolution
Error: Package: clang-2.9-6.fc16.x86_64 (@updates)
           Requires: gcc-c++ = 4.6.2
           Removing: gcc-c++-4.6.2-1.fc16.x86_64 (@fedora)
               gcc-c++ = 4.6.2-1.fc16
           Updated By: gcc-c++-4.6.3-2.fc16.x86_64 (updates)
               gcc-c++ = 4.6.3-2.fc16
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
[ronaldo@fedora ~]$

Comment 7 Nicholas Miell 2012-03-23 19:30:48 UTC
Why not just drop clang's dependency on gcc-c++ entirely?

c++config.h was moved from gcc-c++ to libstdc++-devel, so gcc-c++ shouldn't be needed.

Comment 8 Fedora Update System 2012-03-24 00:25:05 UTC
Package llvm-2.8-15.fc15:
* should fix your issue,
* was pushed to the Fedora 15 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing llvm-2.8-15.fc15'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-4571/llvm-2.8-15.fc15
then log in and leave karma (feedback).

Comment 9 Michel Lind 2012-03-26 08:44:19 UTC
*** Bug 806653 has been marked as a duplicate of this bug. ***

Comment 10 Michel Lind 2012-03-26 08:46:11 UTC
*** Bug 806035 has been marked as a duplicate of this bug. ***

Comment 11 Alexander Pupeikis 2012-03-26 15:24:59 UTC
Clang/LLVM is self hosting since February 2010. LLVM still relies on GCC support for languages like Ada, Fortran, Java. For C-based languages it's not neccessary to depend on GCC. Just break this dependency.

Comment 12 Nicholas Miell 2012-03-26 17:38:40 UTC
As I said earlier, the gcc-c++ dependency is no longer needed because the c++config.h header was moved from the gcc-c++ package to the libstdc++-devel package.

Furthermore, the gcc-c++ dependency never needed to be versioned in the first place.

Comment 13 James Antill 2012-03-26 18:39:43 UTC
*** Bug 806581 has been marked as a duplicate of this bug. ***

Comment 14 James Antill 2012-03-26 18:43:05 UTC
*** Bug 806580 has been marked as a duplicate of this bug. ***

Comment 15 Michel Lind 2012-03-29 10:08:50 UTC
(In reply to comment #12)
> As I said earlier, the gcc-c++ dependency is no longer needed because the
> c++config.h header was moved from the gcc-c++ package to the libstdc++-devel
> package.
>
That's right -- I'll make the change in the next version. Still, because gcc-c++ and libstdc++ come from the same SRPM, the change does not have much effect beyond saving the space of installing an additional package.

> Furthermore, the gcc-c++ dependency never needed to be versioned in the first
> place.
Actually, it does (though on libstdc++). The requirement was not versioned in the beginning, but clang has a really primitive way of hardcoding the libstdc++ header paths, and so either the dependency is versioned or we'll get a non-functioning clang++ when a new libstdc++ is released (as was the case until recently).

Comment 16 Adam Huffman 2012-03-29 12:32:10 UTC
Is there an updated build for F16?

Comment 17 Adam Huffman 2012-03-29 12:37:24 UTC
Okay, ignore that - it just wasn't announced in this bug.

Comment 18 Nicholas Miell 2012-03-29 22:59:31 UTC
(In reply to comment #15)
> > Furthermore, the gcc-c++ dependency never needed to be versioned in the first
> > place.
> Actually, it does (though on libstdc++). The requirement was not versioned in
> the beginning, but clang has a really primitive way of hardcoding the libstdc++
> header paths, and so either the dependency is versioned or we'll get a
> non-functioning clang++ when a new libstdc++ is released (as was the case until
> recently).

Oh, right. Yeah, they fixed that in clang 3.0.

Comment 19 Alexander Pupeikis 2012-03-30 16:26:21 UTC
Additionally, if i rightly understood, in version 3 LLVM no more depends on llvm-gcc backend.

Comment 20 Fedora Update System 2012-03-31 03:24:28 UTC
llvm-2.9-9.fc16 has been pushed to the Fedora 16 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 21 Fedora Update System 2012-04-09 01:58:56 UTC
llvm-2.8-15.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.