aboutsummaryrefslogtreecommitdiff
path: root/lang/gcc11/files/patch-libcxxrt
diff options
context:
space:
mode:
authorJan Beich <jbeich@FreeBSD.org>2022-08-20 16:06:02 +0000
committerJan Beich <jbeich@FreeBSD.org>2022-08-25 21:35:37 +0000
commit65fe81d73e72f1303557c9809a73716cc7fcd77b (patch)
treed0faff92c2b4d67d91d2641485910bbfaaac118f /lang/gcc11/files/patch-libcxxrt
parente6e0bd06a2eec3f9f5e2780869ce3682d6c81391 (diff)
downloadports-65fe81d73e72f1303557c9809a73716cc7fcd77b.tar.gz
ports-65fe81d73e72f1303557c9809a73716cc7fcd77b.zip
lang/gcc11: Expose non-default -stdlib=libc++ support
Fix -stdlib=libc++ option which produced "error: unrecognized command-line option '-stdlib=libc++'". PR: 265962 Approved by: salvadore (maintainer) Exp-run by: antoine (via bug 265964)
Diffstat (limited to 'lang/gcc11/files/patch-libcxxrt')
-rw-r--r--lang/gcc11/files/patch-libcxxrt18
1 files changed, 18 insertions, 0 deletions
diff --git a/lang/gcc11/files/patch-libcxxrt b/lang/gcc11/files/patch-libcxxrt
new file mode 100644
index 000000000000..4e8a5c34305f
--- /dev/null
+++ b/lang/gcc11/files/patch-libcxxrt
@@ -0,0 +1,18 @@
+libc++ on FreeBSD always uses PathScale libcxxrt and cannot change to
+LLVM libc++abi without breaking backward compatibility. Besides, mixing
+different C++ ABIs is not supported unless subset via DT_FILTER.
+
+https://github.com/llvm/llvm-project/commit/35479ffb1251
+https://github.com/freebsd/freebsd-src/commit/cf56074e5271
+
+--- gcc/cp/g++spec.c.orig 2022-04-21 07:58:53 UTC
++++ gcc/cp/g++spec.c
+@@ -60,7 +60,7 @@ along with GCC; see the file COPYING3. If not see
+ #endif
+
+ #ifndef LIBCXXABI
+-#define LIBCXXABI "c++abi"
++#define LIBCXXABI "cxxrt"
+ #endif
+ #ifndef LIBCXXABI_PROFILE
+ #define LIBCXXABI_PROFILE LIBCXXABI