[MacPorts] #43594: xmlpatch @0.3.3: "check" should be a library dependency, not just a build dependency
#43594: xmlpatch @0.3.3: "check" should be a library dependency, not just a build dependency ---------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Keywords: | Port: xmlpatch ---------------------+-------------------------------- I recently had to deactivate my installation of the "check" port to upgrade gstreamer1, because gstreamer1 has the following in its Portfile: {{{ conflicts_build check }}} After doing this and installing another port, rev-upgrade then kicked in, and found that xmlpatch had been broken by the deactivation of "check": {{{ ---> Scanning binaries for linking errors Could not open /opt/local/lib/libcheck.0.dylib: Error opening or reading file (referenced from /opt/local/lib/tests/xml_diff/test-diff) DEBUG: Marking /opt/local/lib/tests/xml_diff/test-diff as broken DEBUG: Marking /opt/local/lib/tests/xml_diff/test-diff as broken }}} Just to confirm, the binary mentioned does actually come from xmlpatch: {{{ $ port provides /opt/local/lib/tests/xml_diff/test-diff /opt/local/lib/tests/xml_diff/test-diff is provided by: xmlpatch }}} Running `otool -L` manually confirms the linkage: {{{ $ otool -L /opt/local/lib/tests/xml_diff/test-diff /opt/local/lib/tests/xml_diff/test-diff: /opt/local/lib/libcheck.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libxmlpatch.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libxmldiff.0.dylib (compatibility version 1.0.0, current version 1.0.0) /opt/local/lib/libxml2.2.dylib (compatibility version 12.0.0, current version 12.1.0) /opt/local/lib/libglib-2.0.0.dylib (compatibility version 3801.0.0, current version 3801.2.0) /opt/local/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.2.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) }}} The build dependency that xmlpatch has on "check" should be updated to be a library dependency to reflect the fact that this linkage occurs. Either that or you could try linking "check" in statically only, or you could prevent the tests from being installed. Personally I would think that just changing the dependency style from `depends_build` to `depends_lib` would be easiest though. (also, looking at the linkages, you should probably also add a library dependency on gettext, as well, for libintl, although that is not quite as important because so much other stuff depends on gettext that it is much less likely to get deactivated than "check" is, and also `nm` says that xmlpatch does not actually use any symbols from libintl, even though it links against it...) -- Ticket URL: <https://trac.macports.org/ticket/43594> MacPorts <http://www.macports.org/> Ports system for OS X
#43594: xmlpatch @0.3.3: "check" should be a library dependency, not just a build dependency -----------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: xmlpatch | -----------------------+-------------------------------- Comment (by twic@…): Replying to [ticket:43594 egall@…]:
you could prevent the tests from being installed
That's definitely the right fix. I'm not sure how to achieve it, though - i'll have to look into it.
(also, looking at the linkages, you should probably also add a library dependency on gettext, as well, for libintl, although that is not quite as important because so much other stuff depends on gettext that it is much less likely to get deactivated than "check" is, and also `nm` says that xmlpatch does not actually use any symbols from libintl, even though it links against it...)
This clearly also wants looking into. I suspect that libintl is a transitive dependency of something else; it may or may not actually be needed. It'd be nice to upgrade to version 0.4.0 as well, once the bugs are fixed. -- Ticket URL: <https://trac.macports.org/ticket/43594#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#43594: xmlpatch @0.3.3: "check" should be a library dependency, not just a build dependency -----------------------+-------------------- Reporter: egall@… | Owner: twic@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.1 Resolution: | Keywords: Port: xmlpatch | -----------------------+-------------------- Changes (by mf2k@…): * cc: twic@… (removed) * owner: macports-tickets@… => twic@… -- Ticket URL: <https://trac.macports.org/ticket/43594#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts