Broken dependencies in EPEL - 2011-10-23

Erik van Pienbroek erik at vanpienbroek.nl
Sun Oct 23 10:34:17 UTC 2011


Fedora EPEL repoclosure schreef op zo 23-10-2011 om 04:32 [+0000]:
> Your following packages in the repository suffer from broken dependencies:
> 
> ======================================================================
> The results in this summary consider Test Updates!
> ======================================================================
> 
> package: mingw32-libpng-1.2.37-3.el6.noarch from fedora-epel-6-ppc64
>   unresolved deps:
>      mingw32(msvcrt.dll)
>      mingw32(zlib1.dll)
>      mingw32(kernel32.dll)
>      mingw32-filesystem >= 0:63
>      mingw32-runtime

Could anybody who is interested in mingw32 packages on RHEL6/CentOS6
please fix this? We've been seeing these reports for some time now and I
think it's about time that somebody who is interested in maintaining the
mingw32 toolchain on RHEL6/CentOS6 to step up and fix this.

The issue here is that Red Hat started to provide several mingw32
packages as of RHEL 6.1, but only provided packages for the x86_64
architecture. As all (non-toolchain) mingw32-* packages are noarch they
are supposed to work on all architectures (like ppc64). Due to this fact
the Bodhi update system keeps sending us notifications that there are
unresolved dependencies for the ppc64 architecture (possibly also other
architectures) which makes the mingw32 packages in question fail to
install on these architectures.

The answer to these kind of failures can be found at
https://fedoraproject.org/wiki/EPEL:Packaging#Limited_Arch_Packages
This wiki page mentions that in order to resolve these kind of failures
the packages in question (in this case all mingw32-* packages as
provided by Red Hat) have to be added to EPEL and build there with a
lower EVR than the original Red Hat mingw32-* packages.

There's a small catch here: the mingw32 toolchain has to be bootstrapped
first before it can be made available for other architectures. Luckily
enough I already spent some time to write an instruction how the mingw32
toolchain can be bootstrapped for the CentOS folks (so they can rebuild
the Red Hat rpms and publish it in their repos). This instruction can be
found at http://bugs.centos.org/view.php?id=5180

So what needs to happen now is:
- Identify which (EPEL-supported) architectures don't have the mingw32
packages yet
- Write down a plan to get the mingw32 toolchain bootstrapped (take good
care of the EVR as some packages have to be built multiple times!) and
what other Red Hat provided mingw32 packages have to be built
- Present this plan to the epel-devel mailing list and have it approved
- Request commit ACLs in pkgdb and EL-6 branches for the packages which
need to be built
- Perform the plan
- Push the built packages in the EPEL-6 repo

Afterwards any future updates to the Red Hat mingw32 packages will have
to be monitored and applied to the EPEL packages

As you can see I already did some preparations to make it easier to get
this issue resolved. However, I don't intend to perform the tasks I
mentioned above as I'm not a RHEL-6/CentOS-6 user (at least not for the
mingw32 packages) and I don't monitor any updates done by Red Hat. So I
would prefer if somebody who is more active in the RHEL-6/CentOS-6 world
would pick up this set of tasks.

Anybody interested in taking up this job?

Kind regards,

Erik van Pienbroek




More information about the mingw mailing list