git: gcc120: Revert the '++' to 'xx' renaming hack

Aaron LI aly at crater.dragonflybsd.org
Mon Aug 17 18:49:05 PDT 2026


commit 7b156115664d38fbe34d74a25604829ca091d717
Author: Aaron LI <aly at aaronly.me>
Date:   Tue Aug 18 00:24:51 2026 +0800

    gcc120: Revert the '++' to 'xx' renaming hack
    
    This hack [1] was introduced to work around the bug with bintuils AR/MRI
    script that prevented using the '+' character in filenames.  That bug
    has been fixed in upstream between binutils 2.38 and 2.39 and has been
    backported to our in-base bintuils 2.34 and 2.27 [2][3].  So this
    renaming hack is no longer needed.
    
    However, a new problem appeared with libstdc++/product: mkdep(1) would
    fail for the 'gnu11' file group with error:
    ```
    .../gnu/lib/gcc120/libstdc++/product/../../../../../contrib/gcc-12/libstdc++-v3/src/c++11/compatibility-atomic-c++0x.cc:25:10: fatal error: gstdint.h: No such file or directory
       25 | #include "gstdint.h"
          |          ^~~~~~~~~~~
    ```
    
    This problem didn't happen before because the source file
    `compatibility-atomic-c++0x.cc` was copied and renamed to
    `compatibility-atomic-cxx0x.cc` in ${.OBJDIR}, which was the same
    directory as the generated `gstdint.h`.
    
    Fix the problem by adding `-I${.OBJDIR}` to ${gnu11_FLAGS}.
    
    [1] Fix static archive libstdc++.a for gcc 5.0
        commit a4ea91a4db69a4eb6e98252ee481b866c15f1b3f
    [2] vendor/BINUTILS234: Accept character '+' in filename for AR/MRI scripts
        commit 56ff23fea0c25c0330858e61cc51410c03f684b2
    [3] vendor/BINUTILS227: Accept character '+' in filename for AR/MRI scripts
        commit 758b211fbc0086aa3e91c4c8d628d1b128572077

Summary of changes:
 gnu/lib/gcc120/Makefile                            |  4 +--
 gnu/lib/gcc120/{libstdcxx => libstdc++}/Makefile   |  0
 .../gcc120/{libstdcxx => libstdc++}/Makefile.inc   |  4 +--
 .../{libstdcxx => libstdc++}/components/Makefile   |  0
 .../components/libconv_1998/Makefile               |  2 +-
 .../components/libconv_1998/Makefile.src           |  0
 .../components/libconv_2011/Makefile               |  2 +-
 .../components/libconv_2011/Makefile.src           |  0
 .../components/libconv_2017/Makefile               |  2 +-
 .../components/libconv_2017/Makefile.src           |  0
 .../components/libconv_2020/Makefile               |  2 +-
 .../components/libconv_2020/Makefile.src           |  0
 .../components/libconv_supc/Makefile               |  2 +-
 .../components/libconv_supc/Makefile.src           |  0
 .../{libstdcxx => libstdc++}/headers/Makefile      |  0
 .../headers/Makefile.headers                       |  0
 .../{libstdcxx => libstdc++}/headers/config.h      |  0
 .../{libstdcxx => libstdc++}/product/Makefile      | 40 ++++++++--------------
 .../{libstdcxx => libstdc++}/product/Makefile.src  |  0
 gnu/lib/gcc120/libstdc++fs/Makefile                |  4 +--
 20 files changed, 26 insertions(+), 36 deletions(-)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/Makefile (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/Makefile.inc (86%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/Makefile (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_1998/Makefile (97%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_1998/Makefile.src (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2011/Makefile (98%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2011/Makefile.src (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2017/Makefile (93%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2017/Makefile.src (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2020/Makefile (93%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_2020/Makefile.src (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_supc/Makefile (96%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/components/libconv_supc/Makefile.src (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/headers/Makefile (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/headers/Makefile.headers (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/headers/config.h (100%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/product/Makefile (57%)
 rename gnu/lib/gcc120/{libstdcxx => libstdc++}/product/Makefile.src (100%)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/7b156115664d38fbe34d74a25604829ca091d717


-- 
DragonFly BSD source repository


More information about the Commits mailing list