I find out wine automatically catches up some libraries if they're installed and builds the stuff that depends links to 'em, here's what I have (ignore versions mess, it's half-updated 7.0 ports tree): # cd /usr/local/lib/wine && (ldd *.so | grep " => " | sed "s/ (0x.*)//g;" | sort | uniq) libGL.so.1 => /usr/local/lib/libGL.so.1 libGLU.so.1 => /usr/local/lib/libGLU.so.1 libICE.so.6 => /usr/local/lib/libICE.so.6 libSM.so.6 => /usr/local/lib/libSM.so.6 libX11.so.6 => /usr/local/lib/libX11.so.6 libXau.so.6 => /usr/local/lib/libXau.so.6 libXdamage.so.1 => /usr/local/lib/libXdamage.so.1 libXdmcp.so.6 => /usr/local/lib/libXdmcp.so.6 libXext.so.6 => /usr/local/lib/libXext.so.6 libXfixes.so.3 => /usr/local/lib/libXfixes.so.3 libXt.so.6 => /usr/local/lib/libXt.so.6 libXxf86vm.so.1 => /usr/local/lib/libXxf86vm.so.1 libaudio.so.2 => /usr/local/lib/libaudio.so.2 libaudiofile.so.0 => /usr/local/lib/libaudiofile.so.0 libc.so.6 => /usr/local/lib/compat/libc.so.6 libc.so.7 => /lib/libc.so.7 libcrypto.so.5 => /lib/libcrypto.so.5 libdrm.so.2 => /usr/local/lib/libdrm.so.2 libesd.so.2 => /usr/local/lib/libesd.so.2 libexif.so.12 => /usr/local/lib/libexif.so.12 libgcc_s.so.1 => /lib/libgcc_s.so.1 libgphoto2.so.2 => /usr/local/lib/libgphoto2.so.2 libgphoto2_port.so.0 => /usr/local/lib/libgphoto2_port.so.0 libiconv.so.3 => /usr/local/lib/libiconv.so.3 libintl.so.8 => /usr/local/lib/libintl.so.8 liblber-2.3.so.2 => /usr/local/lib/liblber-2.3.so.2 liblcms.so.1 => /usr/local/lib/liblcms.so.1 libldap_r-2.3.so.2 => /usr/local/lib/libldap_r-2.3.so.2 libltdl.so.4 => /usr/local/lib/libltdl.so.4 libm.so.4 => /usr/local/lib/compat/libm.so.4 libm.so.5 => /lib/libm.so.5 librpcsvc.so.4 => /usr/lib/librpcsvc.so.4 libsasl2.so.2 => /usr/local/lib/libsasl2.so.2 libssl.so.5 => /usr/lib/libssl.so.5 libstdc++.so.6 => /usr/lib/libstdc++.so.6 libthr.so.3 => /lib/libthr.so.3 libwine.so.1 => /usr/local/lib/libwine.so.1 libxml2.so.5 => /usr/local/lib/libxml2.so.5 libxslt.so.2 => /usr/local/lib/libxslt.so.2 libz.so.3 => /usr/local/lib/compat/libz.so.3 libz.so.4 => /lib/libz.so.4 Here you see it actually depends also on openldap-client, libgphoto2, nas, esound, etc. I suggest someone can write a script to scan a system with a huge set of packages installed to catch all such "hidden" dependencies, like this: 1) for every package: 2) get a list of *.so.* in all of its dependent packages 3) get a list of all *.so.* referred by all libraries from this package 4) subtract (2) from (3), and so get all missing dependencies for this package How-To-Repeat: Install graphics/libgphoto2, then emulators/wine, the latter will link to the library of the first.
Responsible Changed From-To: freebsd-ports-bugs->gerald Over to maintainer (via the GNATS Auto Assign Tool)
State Changed From-To: open->feedback This is a good observation. I am actually aware of the problem and have a list of such dependencies, but in discussions we decided not to make this port (and the package!) too expensive and include every single of them. That said, I added one or two such dependencies earlier this year, and if you have a strong argument for one, please let me know and I'll see whether we can add that. (Ultimately, what we'd need is a feature in Wine that allows to disable functionality during configure time to avoid the addition of such undesirabled dependencies.)
State Changed From-To: feedback->closed
gerald 2007-12-29 19:27:27 UTC FreeBSD ports repository Modified files: emulators/wine Makefile Log: Add cups-base as a library dependency. PR: 117627 Reported by: Kyryll A Mirnenko <mirya@zoc.com.ua> Submitted by: Tijl Coosemans <tijl@ulyssis.org> Revision Changes Path 1.248 +2 -1 ports/emulators/wine/Makefile _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
[ Somehow GNATS ate my text explaining the status change. ] I am going to add cups-base as an additional dependency of emulators/wine. Verifying the list of dependencies we could add, I found the following configure: libxslt development files not found. Wine will be built without xslt support. (msxml.dll) configure: libhal development files not found. Wine will be built without dynamic device support. (explorer.exe) configure: libsane development files not found. Wine will be built without scanner support. (sane.ds/twain_32.dll) configure: libgphoto2 development files not found. Wine will be built without Digital Camera support. (gphoto2.ds/twain_32.dll) configure: libldap (OpenLDAP) development files not found. Wine will be built without LDAP support. (wldap32.dll) configure: libcapi20 development files not found. Wine will be built without ISDN support. (capi2032.dll) in addition to options for sound. This would blow up our dependency list quite a bit for a very small subset of use cases (as evidenced by a complete lack of user requests for any of these) so I am refraining from these further additions on top of cups-base for the time being.
Please remove the dependency on CUPS (or probably better make it optional via make config). I don't want to have CUPS installed just because I install wine.
Please do remove the unconditional dependency on cups. I use LPRng on my system at the moment, and now I can't upgrade wine when needed (cups conflicts with LPRng). Attempting to "portupgrade -MWITHOUT_CUPS=true -a" now tries to install cups even though I am explicitly trying not to do so.
We're going to make CUPS an optional dependency; tune into ports/119155 for further progress. Gerald