https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112862

--- Comment #13 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain D Sandoe <ia...@gcc.gnu.org>:

https://gcc.gnu.org/g:e439c7827f5c5723fdd7df9c5fac55319db204af

commit r14-8732-ge439c7827f5c5723fdd7df9c5fac55319db204af
Author: Iain Sandoe <i...@sandoe.co.uk>
Date:   Wed Jan 24 08:05:30 2024 +0000

    testsuite, gfortran: Update link flags [PR112862].

    The regressions here are caused by two issues:
    1. In some cases there is no generated runpath for libatomic
    2. In other cases there are duplicate paths.

    This patch simplifies the addition of the options in the main
    gfortran exp and removes the duplicates elewhere.

    We need to add options to locate libgfortran and the dependent libs
    libquadmath (supporting REAL*16) and libatomic (supporting operations
    used by coarrays).  Usually '-L' options are added to point to the
    relevant directories for the uninstalled libraries.

    In cases where libraries are available as both shared and convenience
    some additional checks are made.

    For some targets -static-xxxx options are handled by specs substitution
    and need a '-B' option rather than '-L'.  For Darwin, when embedded
    runpaths are in use (the default for all versions after macOS 10.11),
    '-B' is also needed to provide the runpath.

    When '-B' is used, this results in a '-L' for each path that exists (so
    that appending a '-L' as well is a needless duplicate).  There are also
    cases where tools warn for duplicates, leading to spurious fails.

            PR target/112862

    gcc/testsuite/ChangeLog:

            * gfortran.dg/coarray/caf.exp: Remove duplicate additions of
            libatomic handling.
            * gfortran.dg/dg.exp: Likewise.
            * lib/gfortran.exp: Decide on whether to present -B or -L to
            reference the paths to uninstalled libgfortran, libqadmath and
            libatomic and use that to generate the link flags.

Reply via email to