<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2017-09-05 20:21 GMT+03:00 Davide Italiano via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Picking a random Solaris commit.<br>
I'd like to bring this up sooner rather than later.<br>
It seems there's been a decent amount of interest/support to make<br>
clang working on Solaris.<br>
It's also not a mystery anymore that Solaris has been discontinued<br>
and, as it stands, the LLVM/clang support for the OS is not completed.<br>
I'm not entirely sure what are the plans, but in case nobody is<br>
interested, I'd rather avoid the maintenance burden and remove the<br>
support from the tree as it happened in similar circumstances (see<br>
e.g. <a href="https://reviews.llvm.org/D35707" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D35707</a>).<br>
<br>
Feedor, what do you think about it?<br></blockquote><div><br></div><div>Well, you see, I'm *still* with Oracle but as you see I have already switched to my personal mail here</div><div>and I would rather not represent the view of my current employer right now.</div><div><br></div><div>As some people already pointed out Oracle Solaris is not  the only Solaris out there.</div><div>My Solaris changes (including those that were not yet integrated) were developed on Oracle Solaris 11,</div><div>but I tried to make them as generic as possible, so majority of them should still relevant for other Solarii</div><div>(even non-integrated gcc toolchain detection one, which is mostly a cleanup and non-specific bugfixes).</div><div><br></div><div>As for this particular change, its main part introduces a generic Unix linker detection, not specific to Solaris at all.</div><div>Linker differentiation is most important for Solaris indeed due to Solaris linker being so different,</div><div>but I dont see how it adds support burden (in this particular case).</div><div><br></div><div>best regards,</div><div>  Fedor.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
On Wed, Jul 12, 2017 at 2:43 PM, Rui Ueyama via llvm-commits<br>
<<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br>
> Author: ruiu<br>
> Date: Wed Jul 12 14:43:14 2017<br>
> New Revision: 307852<br>
><br>
> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=307852&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project?rev=307852&view=rev</a><br>
> Log:<br>
> [Solaris] Detect Solaris LD, use detection results to pass Solaris-ld options<br>
><br>
> Solaris ld is not the only linker available on Solaris.<br>
> Introducing linker detection and using LLVM_LINKER_IS_SOLARISLD to<br>
> select Solaris-ld specific handling.<br>
><br>
> Patch by: Fedor Sergeev<br>
><br>
> Differential Revision: <a href="https://reviews.llvm.org/D35325" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D35325</a><br>
><br>
> Modified:<br>
>     llvm/trunk/cmake/modules/<wbr>AddLLVM.cmake<br>
><br>
> Modified: llvm/trunk/cmake/modules/<wbr>AddLLVM.cmake<br>
> URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/cmake/modules/AddLLVM.cmake?rev=307852&r1=307851&r2=307852&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-<wbr>project/llvm/trunk/cmake/<wbr>modules/AddLLVM.cmake?rev=<wbr>307852&r1=307851&r2=307852&<wbr>view=diff</a><br>
> ==============================<wbr>==============================<wbr>==================<br>
> --- llvm/trunk/cmake/modules/<wbr>AddLLVM.cmake (original)<br>
> +++ llvm/trunk/cmake/modules/<wbr>AddLLVM.cmake Wed Jul 12 14:43:14 2017<br>
> @@ -91,7 +91,7 @@ function(add_llvm_symbol_<wbr>exports target_<br>
>        DEPENDS ${export_file}<br>
>        VERBATIM<br>
>        COMMENT "Creating export file for ${target_name}")<br>
> -    if (${CMAKE_SYSTEM_NAME} MATCHES "SunOS")<br>
> +    if (${LLVM_LINKER_IS_SOLARISLD})<br>
>        set_property(TARGET ${target_name} APPEND_STRING PROPERTY<br>
>                     LINK_FLAGS "  -Wl,-M,${CMAKE_CURRENT_BINARY_<wbr>DIR}/${native_export_file}")<br>
>      else()<br>
> @@ -148,13 +148,28 @@ function(add_llvm_symbol_<wbr>exports target_<br>
>  endfunction(add_llvm_symbol_<wbr>exports)<br>
><br>
>  if(NOT WIN32 AND NOT APPLE)<br>
> +  # Detect what linker we have here<br>
>    execute_process(<br>
>      COMMAND ${CMAKE_C_COMPILER} -Wl,--version<br>
>      OUTPUT_VARIABLE stdout<br>
> -    ERROR_QUIET<br>
> +    ERROR_VARIABLE stderr<br>
>      )<br>
> +  set(LLVM_LINKER_DETECTED ON)<br>
>    if("${stdout}" MATCHES "GNU gold")<br>
>      set(LLVM_LINKER_IS_GOLD ON)<br>
> +    message(STATUS "Linker detection: GNU Gold")<br>
> +  elseif("${stdout}" MATCHES "^LLD")<br>
> +    set(LLVM_LINKER_IS_LLD ON)<br>
> +    message(STATUS "Linker detection: LLD")<br>
> +  elseif("${stdout}" MATCHES "GNU ld")<br>
> +    set(LLVM_LINKER_IS_GNULD ON)<br>
> +    message(STATUS "Linker detection: GNU ld")<br>
> +  elseif("${stderr}" MATCHES "Solaris Link Editors")<br>
> +    set(LLVM_LINKER_IS_SOLARISLD ON)<br>
> +    message(STATUS "Linker detection: Solaris ld")<br>
> +  else()<br>
> +    set(LLVM_LINKER_DETECTED OFF)<br>
> +    message(STATUS "Linker detection: unknown")<br>
>    endif()<br>
>  endif()<br>
><br>
><br>
><br>
> ______________________________<wbr>_________________<br>
> llvm-commits mailing list<br>
> <a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
--<br>
Davide<br>
<br>
"There are no solved problems; there are only problems that are more<br>
or less solved" -- Henri Poincare<br>
______________________________<wbr>_________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
</font></span></blockquote></div><br></div></div>