Bug 177508

Summary: Libraries not being correctly placed in rpms
Product: [Fedora] Fedora Reporter: Paul F. Johnson <paul>
Component: monoAssignee: Alexander Larsson <alexl>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-01-12 16:00:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 177512    

Description Paul F. Johnson 2006-01-11 11:22:31 UTC
Description of problem:

All mono packages (inclusive of gtksharp etc) need to have their libraries
placed in the lib64 directory on 64 bit architecture. There are no operational
problems in doing this and would ensure anything built for FE will be correctly
placed.

Steps to Reproduce:
1. rebuild all mono packages using _libdir on the target rather than
specifically saying /usr/lib (the ./autogen.sh script will accept installing the
libraries in lib64 as a command line option) 
  
Actual results:
Anything currently trying to be built for FE (or core) on non-32 bit
architecture have to explictly say "/usr/lib" rather than the correct method of
%{libdir}

Expected results:
Mono libraries should be in %{libdir}

Additional info:

The rebuild would also need to be done for all other mono packages and sub-packages.

Comment 1 Paul F. Johnson 2006-01-11 11:43:45 UTC
simple fix

In the %prep section add

%ifarch x86_64 ia64
%configure --with-ikvm=yes --with-jit=yes --libdir=/usr/lib64
%else
%configure --with-ikvm=yes --with-jit=yes
%endif

Comment 2 Alexander Larsson 2006-01-12 16:00:01 UTC
All native libraries are in lib64, while non-arch dependent libs are in
/usr/lib. This is what upstream and suse does. I see no need to have the arch
indep files in  lib64. We follow upstream here. If you want to argue this, do so
upstream, they are much more knowledable about what is right than I.

Comment 3 Paul F. Johnson 2006-01-12 16:08:09 UTC
This has been discussed upstream, quite a lot in fact!

The concensus is that the libraries should go whereever the default is for the
architecture.

Comment 4 Alexander Larsson 2006-01-13 08:53:37 UTC
How come the upstream packages don't do this then?

Also, i don't understand the "default for the architecture" thing. Its default
for libraries to go into lib if they are 32bit and lib64 if they are 64bit.
However, the .dlls are not 64bit really. They are arch-independent.