[MacPorts] #34831: eliminate missing symbols from gdb compatible compilers
MacPorts
noreply at macports.org
Mon Jun 11 08:48:32 PDT 2012
#34831: eliminate missing symbols from gdb compatible compilers
-------------------------------------------+--------------------------------
Reporter: sean.michael.farley@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.1.1
Keywords: | Port: apple-gcc40,apple-gcc42,gcc42,gcc43,gcc44,gcc45,gcc46,gcc47,gcc48,clang-2.9,clang-3.0,clang-3.1,clang-3.2,dragonegg-3.0,dragonegg-3.1,dragonegg-3.2,llvm-2.9,llvm-3.0,llvm-3.1,llvm-3.2,llvm-gcc42,g95
-------------------------------------------+--------------------------------
The hundreds of lines of output of missing object files causes much grief
and, in some cases, will prevent debugging entirely.
The goal of this patch is to completely get rid of all warnings and errors
due to missing symbols. The importance of this is high since all compilers
are effected and this in turn affects *any* user compiled code.
For compilers that are gdb compatible (c, c++, and fortran), the portfile
needs to keep the debug symbols. This patch fixes dsymutil being called
for apple-gcc4{0,2}, gcc4{2,3,4,5,6,7,8}, {clang,llvm}-{2.9,3.0,3.1},
llvm-gcc42, g95, and dragonegg-3.{0,1,2}. Alternatively, as suggested by
Jeremy, each portfile could strip the symbols from the compiler's shared
libraries. This could work but I don't know how to implement this method
off the top of my head.
Attached to this ticket is:
1) patch that calls dsymutil for each port
2) a simple test program
3) the gdb output of (2)
--
Ticket URL: <https://trac.macports.org/ticket/34831>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list