Opened 11 years ago

Closed 7 years ago

#39085 closed enhancement (fixed)

wine, wine-crossover, wine-devel: update dependencies

Reported by: Ionic (Mihai Moldovan) Owned by: Ionic (Mihai Moldovan)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: ryandesign (Ryan Carsten Schmidt), jyrkiwahlstedt, cooljeanius (Eric Gallager), aaron@…, peter@…, jeremyhu (Jeremy Huddleston Sequoia), vtjnash (Jameson Nash), macports@…, mojca (Mojca Miklavec)
Port: wine wine-crossover wine-devel

Description

wine is not using X11 anymore on OS X, starting from 1.5.22. By default, it is now using its "winemac" display driver, which integrates nicely with Cocoa and doesn't need X11 anymore.

Also, as a fact, the binary and libraries are not linked anymore against any X11 lib.

We could probably remove the following dependencies:

fontconfig
freetype
jpeg
lcms
libpng
tiff
xorg-libsm
xorg-libXcomposite
xorg-libXcursor
xorg-libXi
xorg-libXinerama
xorg-libXrandr
xorg-libXxf86vm
xrender
mesa

I'll play with that and see what is possibly and what is not.

Attachments (1)

wine-devel-deps.1028112013.diff (604 bytes) - added by cooljeanius (Eric Gallager) 11 years ago.
port-depcheck.sh output for wine-devel

Download all attachments as: .zip

Change History (24)

comment:1 Changed 11 years ago by cooljeanius (Eric Gallager)

Cc: egall@… added

Cc Me!

comment:2 Changed 11 years ago by cooljeanius (Eric Gallager)

Shouldn't it also be moved out of the "X11" category too, then?

comment:3 Changed 11 years ago by Ionic (Mihai Moldovan)

Yes. Maybe put it into "aqua"? Certainly not "emulators". ;)

comment:4 Changed 11 years ago by cooljeanius (Eric Gallager)

Ran it over with my port-depcheck.sh script, will attach the output from that next...

Last edited 11 years ago by cooljeanius (Eric Gallager) (previous) (diff)

Changed 11 years ago by cooljeanius (Eric Gallager)

port-depcheck.sh output for wine-devel

comment:5 in reply to:  description ; Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ionic@…:

Also, as a fact, the binary and libraries are not linked anymore against any X11 lib.

Not entirely true:

$ port installed wine-devel
The following ports are currently installed:
  wine-devel @1.5.30_1 (active)
$ otool -L /opt/local/lib/wine/winex11.drv.so
/opt/local/lib/wine/winex11.drv.so:
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 57.0.0)
	/opt/local/lib/libSM.6.dylib (compatibility version 7.0.0, current version 7.1.0)
	/opt/local/lib/libICE.6.dylib (compatibility version 10.0.0, current version 10.0.0)
	/opt/local/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libX11.6.dylib (compatibility version 10.0.0, current version 10.0.0)
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8)
	@rpath/libwine.1.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

comment:6 in reply to:  5 Changed 11 years ago by cooljeanius (Eric Gallager)

Replying to ryandesign@…:

Replying to ionic@…:

Also, as a fact, the binary and libraries are not linked anymore against any X11 lib.

Not entirely true:

$ port installed wine-devel
The following ports are currently installed:
  wine-devel @1.5.30_1 (active)
$ otool -L /opt/local/lib/wine/winex11.drv.so
/opt/local/lib/wine/winex11.drv.so:
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 57.0.0)
	/opt/local/lib/libSM.6.dylib (compatibility version 7.0.0, current version 7.1.0)
	/opt/local/lib/libICE.6.dylib (compatibility version 10.0.0, current version 10.0.0)
	/opt/local/lib/libXext.6.dylib (compatibility version 11.0.0, current version 11.0.0)
	/opt/local/lib/libX11.6.dylib (compatibility version 10.0.0, current version 10.0.0)
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.8)
	@rpath/libwine.1.dylib (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)

Yeah, that's what the diff I attached was supposed to show...

In other words, apparently we could remove the library dependencies on:

expat
fontconfig
freetype
gnutls
jpeg
libiconv
libpng
libxslt
ncurses
tiff
xorg-libXcomposite
xorg-libXcursor
xorg-libXi
xorg-libXinerama
xorg-libXrandr
xorg-libXxf86vm
xrender

as long as we also added new library dependencies on:

gettext
glib2
xorg-libX11
xorg-libXext
xorg-libice
Last edited 11 years ago by cooljeanius (Eric Gallager) (previous) (diff)

comment:7 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ionic@…:

Yes. Maybe put it into "aqua"? Certainly not "emulators". ;)

I wouldn't have a problem putting it in "emulators". It may not emulate the hardware of another computer, but it does emulate an operating system and fulfill the same role as other emulators: to run non-native software.

comment:8 in reply to:  7 Changed 11 years ago by cooljeanius (Eric Gallager)

Replying to ryandesign@…:

Replying to ionic@…:

Yes. Maybe put it into "aqua"? Certainly not "emulators". ;)

I wouldn't have a problem putting it in "emulators". It may not emulate the hardware of another computer, but it does emulate an operating system and fulfill the same role as other emulators: to run non-native software.

I think ionic was just making a joke about the acronym...

comment:9 Changed 11 years ago by Ionic (Mihai Moldovan)

Kind of, but from a technical view it's really not an emulator, but rather a reimplementation of the win32api (and more), as well as a redirector. Maybe "cross, aqua" is a better place.

Then again, even Gentoo categorizes it as app-emulation/wine, so I don't want to nitpick.

I'm wondering if a x11 variant (or no_x11? but I've seen commits changing no_x11 to x11) would be a viable option to disable X11 support entirely, once the "winemac" driver is mature enough to replace the "winex11" driver. Obviously it's already used by default (though there may be ways to switch back to the winex11 driver.)

In the long run, getting rid of X11 entirely for wine doesn't sound too bad.

comment:10 Changed 11 years ago by aaron@…

Adding a thought on this: since there's both wine and wine-devel, it might make sense that standard wine defaults to +x11, possibly providing a -x11 variant, while wine-devel removes x11 entirely, since that's the direction upstream is heading.

Last edited 11 years ago by aaron@… (previous) (diff)

comment:11 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

I'm happy to remove the X11 dependencies from wine-devel immediately, and from wine as soon as it's updated to 1.6, which I expect will be soon. I was not aware of the situation until this ticket was filed, and the only reason I haven't changed the ports yet is laziness. Would someone like to prepare and attach a patch for review?

comment:12 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: aaron@… added

comment:13 Changed 11 years ago by peter@…

Cc: peter@… added

Cc Me!

comment:14 in reply to:  11 Changed 11 years ago by cooljeanius (Eric Gallager)

Replying to ryandesign@…:

and from wine as soon as it's updated to 1.6, which I expect will be soon.

(for reference, this happened in r108318 btw)

comment:15 Changed 11 years ago by mf2k (Frank Schima)

Port: wine added
Version: 2.1.3

comment:16 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: jeremyhu@… added
Port: wine-crossover added
Summary: update wine-devel dependencieswine, wine-crossover, wine-devel: update dependencies

wine, wine-crossover and wine-devel are all >= 1.6.0 now. If anyone wants to supply a patch I'm happy to review it.

comment:17 Changed 10 years ago by vtjnash (Jameson Nash)

Cc: vtjnash@… added

Cc Me!

comment:18 Changed 9 years ago by Ionic (Mihai Moldovan)

Yeah, that's all a little bit more complicated than it seems due to wine loading libraries via dlopen().

I'm evaluating the situation/working on it.

comment:19 Changed 9 years ago by Ionic (Mihai Moldovan)

Owner: changed from macports-tickets@… to ionic@…

comment:20 Changed 8 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:22 Changed 7 years ago by mojca (Mojca Miklavec)

Cc: mojca added

comment:23 Changed 7 years ago by Chris Rawnsley <chris@…>

Resolution: fixed
Status: newclosed

In df1977479ee137435dbc8a42c48385e6e18dee5a/macports-ports:

wine*: X11 is an optional dependency

Closes: #49800
Closes: #39085

Note: See TracTickets for help on using tickets.