[xml] (Broken) multi-arch support in xml2-config

I noticed that this bit was added about a month ago to xml2-config.in:

        if [ "`ldd /bin/sh | grep lib64`" = "" ]

This caused a subsequent build of LibXSLT to fail, because the needed library was under $prefix/lib/, and the build system was looking under $prefix/lib64/.

I'm not seeing why this code is there. There are multiple problems with this approach:

* Custom libdir values specified at configure time (i.e. --libdir=blah)
  are ignored in favor of the common-case default

* The lib64 subdir, if returned, is returned solely based on how /bin/sh
  is linked---rather than whether "make install" actually puts the library
  there or not

* As written, there isn't even a way to request an architecture explicitly
  if more than one is installed (something like --lib32/--lib64 options or

* "lib" versus "lib64" isn't the only possible distinction, either; my
  64-bit Ubuntu system, for example, has /usr/lib/ and /usr/lib32/.

* The "foo-config" script mechanism, to the degree that it can work in a
  multi-arch scenario, works a lot more cleanly when you have one instance
  of the script per architecture (rather than one script handling multiple
  architectures). All I would do then is set my PATH appropriately, e.g.




  when LibXML2 is installed for both amd64 and i386 under /usr/arch/.

What was the motivation for trying to shoehorn multi-arch support into xml2-config?


Daniel Richard G. || danielg teragram com || Software Developer
Teragram Linguistic Technologies (a division of SAS)

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]