[all-commits] [llvm/llvm-project] 05422e: [Driver] Fix linking with -lm on Solaris (#65632)

Rainer Orth via All-commits all-commits at lists.llvm.org
Sun Nov 12 23:28:25 PST 2023


  Branch: refs/heads/release/17.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 05422e1dcf94d2f5178818450ff0fce816755a7e
      https://github.com/llvm/llvm-project/commit/05422e1dcf94d2f5178818450ff0fce816755a7e
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2023-11-13 (Mon, 13 Nov 2023)

  Changed paths:
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/test/Driver/solaris-ld.c

  Log Message:
  -----------
  [Driver] Fix linking with -lm on Solaris (#65632)

As noticed in D158846, the Solaris driver deviates from other targets in
that it links every executable with `-lm`, but doesn't for shared
objects. For C code, this is unnecessary, while for C++ `libm` is always
needed, even for shared objects.

This patch fixes this by following the `Gnu.cpp` precedent. It adjusts
the `solaris-ld.c` test accordingly, adding some more tests.

Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11`, and
`x86_64-pc-linux-gnu`.

(cherry picked from commit 1e6b0df3503567488e7df2d574c90f8f31a001a2)




More information about the All-commits mailing list