Il 14/11/2013 15:08, Rainer Orth ha scritto:
> libcilkrts.so fails to link on Solaris 9/x86 with Sun as since this
> configuration lacks visibility support:
> 
> Text relocation remains                         referenced
>     against symbol                  offset      in file
> __cilkrts_get_tls_worker            0x41        .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x254       .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x5c9       .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x609       .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x6e7       .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x774       .libs/cilk-abi.o
> __cilkrts_get_tls_worker            0x271       .libs/cilk-abi-cilk-for.o
> __cilkrts_get_tls_worker            0x361       .libs/cilk-abi-cilk-for.o
> __cilkrts_get_tls_worker            0x10        .libs/cilk_api.o
> __cilkrts_get_tls_worker            0xc1        .libs/cilk_api.o
> __cilkrts_get_tls_worker            0x194       .libs/cilk_api.o
> __cilkrts_get_tls_worker            0x241       .libs/cilk_api.o
> __cilkrts_get_tls_worker            0x324       .libs/cilk_api.o
> __cilkrts_get_tls_worker            0x706       .libs/reducer_impl.o
> __cilkrts_get_tls_worker            0x893       .libs/reducer_impl.o
> [...]
> __cilkrts_bump_worker_rank_internal 0x32c       .libs/cilk_api.o
> __cilkrts_init_worker_sysdep        0x262c      .libs/scheduler.o
> ld: fatal: relocations remain against allocatable but non-writable sections
> collect2: error: ld returned 1 exit status
> make[2]: *** [libcilkrts.la] Error 1
> 
> During the build, one sees many warnings like this:
> 
> /vol/gcc/src/hg/trunk/local/libcilkrts/runtime/cilk-abi.c: In function 
> '__cilkrt
> s_enter_frame_fast':
> /vol/gcc/src/hg/trunk/local/libcilkrts/runtime/cilk-abi.c:144:1: warning: 
> visibi
> lity attribute not supported in this configuration; ignored [-Wattributes]
> 
> This can be cured by actually checking if a given configuration supports
> __attribute((visibility)) instead of just assuming gcc on Unix systems
> does.  The following patch does just that.
> 
> Tested by reconfiguring and rebuilding libcilkrts on i386-pc-solaris2.9
> (which now builds) and i386-pc-solaris2.11 (where elfdump -s still show
> many symbols as protected as they should be).
> 
> Ok for mainline?
> 
>       Rainer
> 
> 
> 2013-11-14  Rainer Orth  <r...@cebitec.uni-bielefeld.de>
> 
>       * configure.ac (libcilkrts_cv_have_attribute_visibility): Check
>       for __attribute__((visibility)).
>       * configure: Regenerate.
>       * include/cilk/common.h (CILK_EXPORT, CILK_EXPORT_DATA): Only use
>       __attribute__((visibility)) if HAVE_ATTRIBUTE_VISIBILITY.
> 
> 
> 
> 

Any chance to move the test to config/?

Otherwise ok.

Paolo

Reply via email to