Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 468810 - dev-libs/nettle: does not install its DSO's into LIBDIR
Summary: dev-libs/nettle: does not install its DSO's into LIBDIR
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Crypto team [DISABLED]
URL:
Whiteboard:
Keywords:
Depends on: 239190
Blocks:
  Show dependency tree
 
Reported: 2013-05-07 00:38 UTC by Anthony Basile
Modified: 2013-05-11 10:17 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anthony Basile gentoo-dev 2013-05-07 00:38:28 UTC
I hit this on profile = hardened/linux/uclibc/amd64, but it would affect all "exotic" multilib systems like mips with o32-n32-n64 abis.  Emerging nettle installs libhogweed.so* and libnettle.so* into /usr/lib64 rather than /usr/$LIBDIR.  This is because its build system does the following (reading from configure.ac):

# Linux conventions are a mess... According to the Linux File
# Hierarchy Standard, all architectures except IA64 puts 32-bit
# libraries in lib, and 64-bit in lib64. Some distributions,
# e.g., Fedora and Gentoo, adhere to this standard, while at
# least Debian has decided to put 64-bit libraries in lib and
# 32-bit libraries in lib32.

# We try to figure out the convention, except if we're cross
# compiling. We use lib${ABI} if /usr/lib${ABI} exists and
# appears to not be a symlink to a different name.
*:linux*:32|*:linux*:64)
  if test "$cross_compiling" = yes ; then
    AC_MSG_WARN([Cross compiling for linux. Can't guess if libraries go in lib${ABI} or lib.]); dnl '
  else
    # The dash builtin pwd tries to be "helpful" and remember
    # symlink names. Use -P option, and hope it's portable enough.
    test -d /usr/lib${ABI} \
      && (cd /usr/lib${ABI} && pwd -P | grep >/dev/null "/lib${ABI}"'$') \
      && libdir='${exec_prefix}/'"lib${ABI}"
  fi
  ;;


A quick fix is to edit the ebuild and add --libdir=/usr/$(get_libdir) to econf (inheriting multilib of course).  A better fix would be to rethink the above logic and push upstream.

This is related to bug #466732 and another instance of bug #39190.



Reproducible: Always
Comment 1 Anthony Basile gentoo-dev 2013-05-07 00:40:23 UTC
Oops.  I didn't cut and paste right ... another instance of bug #239190.
Comment 2 Alon Bar-Lev (RETIRED) gentoo-dev 2013-05-11 10:17:18 UTC
Fixed in nettle-2.7, thanks!