[MacPorts] #39567: pslib stealth dependence on libraries from /usr/local/lib (affects gnudatalanguage)
#39567: pslib stealth dependence on libraries from /usr/local/lib (affects gnudatalanguage) -------------------------+-------------------------------- Reporter: gnwiii@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Keywords: | Port: pslib -------------------------+-------------------------------- This is mainly an attempt to record a potential issue for gnudatalanguage users. The {{{configure}}} script for pslib searches for graphics libraries in {{{/usr}}} and {{{/usr/local}}}: {{{ for i in ${withval} /usr /usr/local ; do if test -r $i/include/png.h ; then PNG_LIBDIR=-L$i/lib PNG_INCLUDEDIR=-I$i/include PNG_PREFIX=$i break fi }}} As a result, systems that have one or more of the graphics libraries mentioned in the info file will use the versions from {{{/usr/local/lib}}}. I don't know if gnudatalanguage actually uses the parts of pslib that depend on these libraries, but if the user updates the libraries in {{{/usr/local/lib}}} then gnudatalanguage may get a startup error. To avoid this macports versions of the graphics libraries in the Portfile: {{{ configure.args-append --with-png=${prefix} \ --with-jpeg=${prefix} \ --with-gif=${prefix} \ --with-tiff=${prefix} }}} Note that the gif support is not actually used because the macports library files the configure tests. Also, documentation won't be built because configure looks for an obsolete {{{docbook_to_man}}} utility. It may also be necessary to provide: {{{ pre-build { build.args LIBS=-lintl } }}} Without this, some systems give runtime errors for missing {{{_libintl_setlocale_}}}. I'm not sure pslib should be calling setlocale as that is normally a responsibilty of the calling program. CCing the gnudatalanguage maintainer as pslib doesn't appear to be used elsewhere and shows "nomaintainer". -- Ticket URL: <https://trac.macports.org/ticket/39567> MacPorts <http://www.macports.org/> Ports system for OS X
#39567: pslib stealth dependence on libraries from /usr/local/lib (affects gnudatalanguage) --------------------------+-------------------------------- Reporter: gnwiii@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: pslib | --------------------------+-------------------------------- Comment (by cal@…): The very same issue will also show up with lots and lots of other ports. We usually do not specifically deal with stuff in `/usr/local/lib` but advise users to move it aside. See wiki:FAQ#usrlocal. Since you have already done the hard part and figured out what to change to produce a working build with files present in `/usr/local`, we might aswell apply the fix. Just a note for future releases: Starting with MacPorts 2.2 this problem can be avoided by using "trace mode" (by providing the `-t` switch to `port`), which enables a library preloading- based sandbox that will hide files in `/usr/local` from the build system. -- Ticket URL: <https://trac.macports.org/ticket/39567#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#39567: pslib stealth dependence on libraries from /usr/local/lib (affects gnudatalanguage) --------------------------+-------------------------------- Reporter: gnwiii@… | Owner: macports-tickets@… Type: enhancement | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: pslib | --------------------------+-------------------------------- Comment (by takeshi@…): I added configure.args and forced linking against libgif in r107812. I don't see what happens during the pre-build phase, so I didn't include libintl. I don't know how to deal with the docbook problem. It seems that pslib needs both docbook2man and docbook-to-man (see doc/Makefile.in). I was able to install docbook2X, which includes docbook2man I was not able to compile docbook-utils. Even if I succeed, docbook-utils conflicts with docbook2X. -- Ticket URL: <https://trac.macports.org/ticket/39567#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts