Opened 14 years ago
Closed 14 years ago
#25349 closed defect (fixed)
wine, wine-devel, wine-crossover-games add xrender library dependency
Reported by: | kthenriksson@… | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.9.1 |
Keywords: | Cc: | jyrkiwahlstedt, jeremyhu (Jeremy Huddleston Sequoia) | |
Port: | wine, wine-devel, wine-crossover-games |
Description
The configure script explicitly checks for xrender, and so there should be a direct dependency. In addition the direct dependency is needed for the new architecture checking magic to work properly.
Change History (5)
comment:1 Changed 14 years ago by jmroot (Joshua Root)
Cc: | jwa@… added |
---|---|
Owner: | changed from macports-tickets@… to ryandesign@… |
comment:2 follow-up: 3 Changed 14 years ago by kthenriksson@…
Sorry for not ccing.
I noticed that my xrender -universal was not upgraded when I installed wine-devel, but it's possible that I had xorg-libXcursor +universal activated at the time, which would be why wine-devel did not touch xrender. So I guess the error was on my end.
It's long seemed strange to me though that dependencies don't care about ports being deactivated, only uninstalled. It seems like there should be a warning or an error to prevent the situation I got into with xrender above. If deactivating a port will break something, the user should be told I think.
comment:3 follow-up: 4 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to kthenriksson@…:
The configure script explicitly checks for xrender, and so there should be a direct dependency.
Perhaps. But as Joshua said, wine-devel depends on xorg-libXcursor which depends on xrender so there should not have been a problem.
In addition the direct dependency is needed for the new architecture checking magic to work properly.
I don't think that's correct.
Replying to kthenriksson@…:
I noticed that my xrender -universal was not upgraded when I installed wine-devel, but it's possible that I had xorg-libXcursor +universal activated at the time, which would be why wine-devel did not touch xrender. So I guess the error was on my end.
It should not have been possible for you to install xorg-libXcursor +universal if its dependency xrender was not installed universal. Did you install them with MacPorts 1.8.x or 1.9.x? 1.9.x should have definitely prevented the problem; if it was with 1.8.x I would have expected xorg-libXcursor to have failed to build.
It's long seemed strange to me though that dependencies don't care about ports being deactivated, only uninstalled. It seems like there should be a warning or an error to prevent the situation I got into with xrender above. If deactivating a port will break something, the user should be told I think.
As of MacPorts 1.9, MacPorts does now warn if you try to deactivate a port that's being used by another port.
comment:4 follow-up: 5 Changed 14 years ago by kthenriksson@…
Replying to ryandesign@…:
It should not have been possible for you to install xorg-libXcursor +universal if its dependency xrender was not installed universal. Did you install them with MacPorts 1.8.x or 1.9.x? 1.9.x should have definitely prevented the problem; if it was with 1.8.x I would have expected xorg-libXcursor to have failed to build.
Well what happened is that xrender was installed +universal but it was also installed -universal and it was activated -universal. A sequence that results in this is
- port install xorg-libXcursor +universal
- port install xrender
For good measure, install all dependencies for wine-devel +universal before running the second command above. Once this is done, install wine-devel. There will be no error message at any point during this process, until the wine build fails because it can't find xrender.
If this seems implausible, imagine that wine-devel is already installed and then you manually install xrender as above. This results in the same problem when attempting to upgrade wine-devel.
comment:5 Changed 14 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | jeremyhu@… added |
---|---|
Port: | wine wine-crossover-games added |
Resolution: | → fixed |
Status: | new → closed |
Summary: | wine-devel should have a library dependency on port:xrender → wine, wine-devel, wine-crossover-games add xrender library dependency |
Replying to kthenriksson@…:
imagine that wine-devel is already installed and then you manually install xrender as above. This results in the same problem when attempting to upgrade wine-devel.
Nothing I can change in any port will prevent that course of action from resulting in that problem, so don't do that. :) It was an error for you to install xrender nonuniversal when you already had xrender installed universal and other ports installed that required xrender to be installed universal.
I agree that we are explicitly requesting xrender support (via the --with-xrender
configure argument) so I added the xrender dependency to wine-devel in r69827, to wine-crossover-games in r69830, and to wine in r69831.
Please remember to cc the maintainers. The dependency via xorg-libXcursor should be fine AFAICT.