#38115 closed enhancement (wontfix)
wine-crossover: add noconflict variant that doesn't conflict with other wines
Reported by: | cooljeanius (Eric Gallager) | Owned by: | jeremyhu (Jeremy Huddleston Sequoia) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.3 |
Keywords: | Cc: | ryandesign (Ryan Carsten Schmidt), jyrkiwahlstedt | |
Port: | wine-crossover |
Description
Some versions of wine-crossover, such as those bundled by WineSkin, prefix all of their files with "cx". I made a variant for the wine-crossover portfile that does the same thing:
variant noconflict description {Removes conflicts with the other Wine ports by adding a prefix to everything installed} { conflicts-delete wine wine-devel post-destroot { xinstall -d ${destroot}${prefix}/libexec/cxwine file rename ${destroot}${prefix}/bin/wineloader ${destroot}${prefix}/libexec/cxwine/cxwine file rename ${destroot}${prefix}/lib/libwine.1.0.dylib ${destroot}${prefix}/lib/libcxwine.1.0.dylib system -W ${destroot}${prefix}/lib "ln -sfv ./libcxwine.1.0.dylib ./libwine.1.dylib" system -W ${destroot}${prefix}/lib "ln -sfv ./libcxwine.1.0.dylib ./libwine.dylib" file rename ${destroot}${prefix}/lib/libwine.dylib ${destroot}${prefix}/lib/libcxwine.dylib file rename ${destroot}${prefix}/lib/libwine.1.dylib ${destroot}${prefix}/lib/libcxwine.1.dylib system "install_name_tool -change @executable_path/../lib/libwine.1.dylib ${prefix}/lib/libcxwine.1.dylib ${destroot}${prefix}/libexec/cxwine/cxwine" file rename ${destroot}${prefix}/lib/wine ${destroot}${prefix}/lib/cxwine file rename ${destroot}${prefix}/include/wine ${destroot}${prefix}/include/cxwine foreach dll [glob ${destroot}${prefix}/lib/cxwine/*.so] { system "install_name_tool -change @executable_path/../lib/libwine.1.dylib ${prefix}/lib/libcxwine.1.dylib ${dll}" } foreach binary [glob ${destroot}${prefix}/bin/*] { file rename ${binary} [file dirname ${binary}]/cx[file tail ${binary}] } system -W ${destroot}${prefix}/bin "ln -sfv ./cxwinegcc ./cxwinecpp" system -W ${destroot}${prefix}/bin "ln -sfv ./cxwinegcc ./cxwineg++" foreach manpage [glob ${destroot}${prefix}/share/man/man1/*] { file rename ${manpage} [file dirname ${manpage}]/cx[file tail ${manpage}] } file delete ${destroot}${prefix}/share/man/man1/cxwinecpp.1 file delete ${destroot}${prefix}/share/man/man1/cxwineg++.1 foreach manpage [glob ${destroot}${prefix}/share/man/*.UTF-8/man1/*] { file rename ${manpage} [file dirname ${manpage}]/cx[file tail ${manpage}] } xinstall ${filespath}/wine.in ${destroot}${prefix}/bin/cxwine reinplace s|@PREFIX@|${prefix}|g ${destroot}${prefix}/bin/cxwine file rename ${destroot}${prefix}/share/wine ${destroot}${prefix}/share/cxwine xinstall -d ${destroot}${prefix}/share/cxwine/gecko xinstall -m 644 ${distpath}/${wine_gecko_distfile} ${destroot}${prefix}/share/cxwine/gecko file rename ${destroot}${prefix}/share/applications/wine.desktop ${destroot}${prefix}/share/applications/cxwine.desktop xinstall -d ${destroot}${prefix}/share/doc/${name} xinstall -m 644 -W ${worksrcpath} \ ANNOUNCE \ AUTHORS \ COPYING.LIB \ LICENSE \ README \ ${destroot}${prefix}/share/doc/${name} } }
I'm only posting this variant here instead of an entire diff or portfile because I made some other extraneous changes to the portfile, too, that I don't want to submit.
Change History (6)
comment:1 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 12 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… jwa@… added; jeremyhu@… removed |
---|---|
Owner: | changed from macports-tickets@… to jeremyhu@… |
Summary: | Request for variant: version of wine-crossover that doesn't conflict with other wines → wine-crossover: add noconflict variant that doesn't conflict with other wines |
comment:3 follow-up: 4 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)
Resolution: | → wontfix |
---|---|
Status: | new → closed |
Yeah, I like these three ports (wine, wine-devel, wine-crossover) being essentially replacements for eachother. Is there a real benefit to having these co-exist?
comment:4 Changed 12 years ago by cooljeanius (Eric Gallager)
Replying to jeremyhu@…:
Yeah, I like these three ports (wine, wine-devel, wine-crossover) being essentially replacements for eachother. Is there a real benefit to having these co-exist?
Same reason WineSkin lets you install multiple versions of Wine: sometimes a program will work with one version of wine but not another.
comment:5 follow-up: 6 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)
But that's not limited to *just* the three versions we offer. Based on that reasoning, we should offer ports for 1.0.0, 1.0.2, 1.0.3 , ...
comment:6 Changed 12 years ago by cooljeanius (Eric Gallager)
Replying to jeremyhu@…:
But that's not limited to *just* the three versions we offer. Based on that reasoning, we should offer ports for 1.0.0, 1.0.2, 1.0.3 , ...
But of those, the Crossover version is the only that the prefix gets changed for. Well that and Crossover Games, which gets prefixed with "CXG" instead of just "CX", but wine-crossover-games
has been replaced_by
wine-crossover
for a while now...
I'm not in favor of this being a variant. Either do it all the time, or make it a subport, or don't do it at all. I would be in favor of not doing this at all; the way it is now, wine-crossover acts as a drop-in replacement for wine, which is desirable, isn't it?