Hello, after recent change (bug 379801) wine depends on prelink during build. This dependency is unconditional on non-hardened systems. However, wine can build and work without dependency on prelink, that's why this dep must be optional and controlled via an USE flag. Currently USE="hardened" may be used to achieve this, but this method is a confusing and improper use of hardened flag. I'm so concerned about this because I do not want prelink to be used on the system-wide scale on my setup. Portage documentation about prelink is confusing and it looks like automagick is applied when prelink binary is detected: http://www.gentoo.org/doc/en/prelink-howto.xml says that "Portage will automatically support prelink if it can find the prelink binary." But six years old bug 84109 says "Portage will not automatically prelink binaries". I don't know whom to trust. This is an irony: portage devs fight hardly against automagick in the package build systems, but the same automagick is applied by portage itself in the case of prelink. If this guess is true, then the proper fix will be to add an appropriate FEATURES flag to allow people to instruct portage to ignore prelink if they don't want to use it system-wide. Perhaps, developers thought that if prelink is installed this unconditionally implies it must be used system-wide, but wine example shows that prelink may be used for very specific needs for a single application only.
i see no wording in the upstream documentation that indicates this should be optional for people http://wiki.winehq.org/Prelink
(In reply to comment #1) > i see no wording in the upstream documentation that indicates this should be > optional for people > > http://wiki.winehq.org/Prelink You failed to read your own link provided. "Prelink might be helpful when building WINE." "might be helpful" != "must be used". This is entirely optional, and optionality is proved by years of experience. Also due to gentoo development policy, any potentially optional dependency should be controlled via use flag, so your objection violates this policy as well.
if you're going to be abrasive, then go somewhere else. you skipped right over the part that states: so that Windows programs that rely on the address being the same across different programs work correctly
also, "build" is not the same thing as "run". wine *builds* fine without prelink, but prelink is used *after* it is compiled to fix the addresses in the compiled ELFs.
(In reply to comment #3) > so that Windows programs that rely on the address being the same across > different programs work correctly These programs are buggy by definition and prelink is just a workaround for them. During 6 years there was no even a single report about a problem regarding wine with missing prelink. You may consider this feature as optional support for buggy "windows programs that rely on the address being the same across different programs work correctly".
people dont report "i need prelink". they have no idea that they do. instead, they report "xxx program doesnt work" or "xxx crashes". so there's no way you can draw the conclusion that no one has needed it because they haven't explicitly asked for it. without any real details as to how often this manifests itself, there isn't really a way to move forward. i could add IUSE=+prelink so that people get it by default but some could opt out who really want to.
(In reply to comment #6) > i could add IUSE=+prelink so that people get it > by default but some could opt out who really want to. This is a fair solution from my pow.
(In reply to comment #7) > (In reply to comment #6) > > i could add IUSE=+prelink so that people get it > > by default but some could opt out who really want to. > > This is a fair solution from my pow. I totally agree.
Why this bug is closed as "won't fix"? Is it THAT hard to make IUSE="+prelink"?
Apparently this bug is fixed in wine since 26 Dec 2012: 26 Dec 2012; Mike Frysinger <vapier@gentoo.org> metadata.xml, wine-1.2.3.ebuild, wine-1.3.28.ebuild, wine-1.4.1.ebuild, wine-1.4.ebuild, wine-1.5.0.ebuild, wine-1.5.1.ebuild, wine-1.5.10-r1.ebuild, wine-1.5.11-r1.ebuild, wine-1.5.12-r1.ebuild, wine-1.5.13-r1.ebuild, wine-1.5.14-r1.ebuild, wine-1.5.15-r2.ebuild, wine-1.5.16-r1.ebuild, wine-1.5.17.ebuild, wine-1.5.18.ebuild, wine-1.5.19.ebuild, wine-1.5.2.ebuild, wine-1.5.20.ebuild, wine-1.5.3.ebuild, wine-1.5.4.ebuild, wine-1.5.5.ebuild, wine-1.5.6.ebuild, wine-1.5.7.ebuild, wine-1.5.8.ebuild, wine-1.5.9.ebuild, wine-9999.ebuild: Change USE=hardened to USE=prelink #381033.