Bug#848368: llvm-toolchain-3.9: Please add ELF symbols versions to the libraries

Sylvestre Ledru sylvestre at debian.org
Sat Jan 21 08:52:58 UTC 2017


Hello,

First, Rebecca, many thanks for the patch :)


Le 18/01/2017 à 19:54, Lisandro Damián Nicanor Pérez Meyer a écrit :
> On martes, 17 de enero de 2017 22:21:51 ART Rebecca N. Palmer wrote:
> [snip] 
>> This suggests the fix (warning: untested and not my area of expertise -
>> and if it is using that line, why is there no -Wl,--no-whole-archive in
>> the build log?):
> This part I don't know.
>
>> --- a/tools/llvm-shlib/CMakeLists.txt
>> +++ b/tools/llvm-shlib/CMakeLists.txt
>> @@ -42,7 +42,7 @@
>>   list(REMOVE_DUPLICATES LIB_NAMES)
>>   if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" OR "${CMAKE_SYSTEM_NAME}"
>> STREQUAL "GNU" OR "${CMAKE_SYSTEM_NAME}" STREQUAL "kFreeBSD") # FIXME:
>> It should be "GNU ld for elf"
>>     # GNU ld doesn't resolve symbols in the version script.
>> -  set(LIB_NAMES -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
>> +  set(LIB_NAMES
>> -Wl,--version-script,../../../tools/llvm-shlib/simple_version_script.map
>> -Wl,--whole-archive ${LIB_NAMES} -Wl,--no-whole-archive)
>>   elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
>>     set(LIB_NAMES -Wl,-all_load ${LIB_NAMES})
>>   endif()
>> --- a/dev/null
>> +++ b/simple_version_script.map
>> @@ -0,0 +1,1 @@
>> +LLVM_3.9 { global: *; };
> Probably the "../../../tools" path should be replaced by $
> {CMAKE_CURRENT_SOURCE_DIR}/tools


I think that we will have to replicate the change in
tools/llvm-shlib/CMakeLists.txt
for most (every?) library that llvm-toolchain ships as a matter of
consistency.

I feel a bit uncomfortable to implement the ELF symbol versions that
late in the cycle.
Especially for two reasons: I don't know enough that stuff to evaluate
and fix side effects
it has always been like that without causing too much issue.

Can we lower the priority and I will fix that for the next stable release?

Cheers,
S


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-llvm-team/attachments/20170121/c6fe707f/attachment.sig>


More information about the Pkg-llvm-team mailing list