FreeBSD Bugzilla – Attachment 236053 Details for
Bug 265962
lang/gcc*: expose non-default -stdlib=libc++ support
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
v2.2 (apply via "git am")
bug265962.diff (text/plain), 7.95 KB, created by
Jan Beich
on 2022-08-21 19:49:18 UTC
(
hide
)
Description:
v2.2 (apply via "git am")
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2022-08-21 19:49:18 UTC
Size:
7.95 KB
patch
obsolete
>From 341da7284e764227499ff5b5526aa83acf33296c Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 20 Aug 2022 16:06:02 +0000 >Subject: [PATCH 1/4] lang/gcc11: expose non-default -stdlib=libc++ support > >gcc11: error: unrecognized command-line option '-stdlib=libc++' > >PR: 265962 >Approved by: salvadore (maintainer) >--- > lang/gcc11/Makefile | 2 ++ > lang/gcc11/files/patch-libcxxrt | 18 ++++++++++++++++++ > 2 files changed, 20 insertions(+) > create mode 100644 lang/gcc11/files/patch-libcxxrt > >diff --git a/lang/gcc11/Makefile b/lang/gcc11/Makefile >index bf886a68e040..cf03da83347a 100644 >--- a/lang/gcc11/Makefile >+++ b/lang/gcc11/Makefile >@@ -1,5 +1,6 @@ > PORTNAME= gcc > PORTVERSION= 11.3.0 >+PORTREVISION= 1 > CATEGORIES= lang > MASTER_SITES= GCC > PKGNAMESUFFIX= ${SUFFIX} >@@ -96,6 +97,7 @@ CONFIGURE_ARGS+=--disable-nls \ > --with-as=${LOCALBASE}/bin/as \ > --with-gmp=${LOCALBASE} \ > --with-gxx-include-dir=${TARGLIB}/include/c++/ \ >+ --with-gxx-libcxx-include-dir=/usr/include/c++/v1 \ > --with-ld=${LOCALBASE}/bin/ld \ > ${ICONV_CONFIGURE_ARG} \ > --with-pkgversion="FreeBSD Ports Collection" \ >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 > >From a3d70b48f3939f788a27319211988cfc8557b0d7 Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 20 Aug 2022 16:06:02 +0000 >Subject: [PATCH 2/4] lang/gcc12: expose non-default -stdlib=libc++ support > >gcc12: error: unrecognized command-line option '-stdlib=libc++' > >PR: 265962 >Approved by: salvadore (maintainer) >--- > lang/gcc12/Makefile | 2 ++ > lang/gcc12/files/patch-libcxxrt | 18 ++++++++++++++++++ > 2 files changed, 20 insertions(+) > create mode 100644 lang/gcc12/files/patch-libcxxrt > >diff --git a/lang/gcc12/Makefile b/lang/gcc12/Makefile >index 0eacf66f3ee3..674e6524e43b 100644 >--- a/lang/gcc12/Makefile >+++ b/lang/gcc12/Makefile >@@ -1,5 +1,6 @@ > PORTNAME= gcc > PORTVERSION= 12.2.0 >+PORTREVISION= 1 > CATEGORIES= lang > MASTER_SITES= GCC > PKGNAMESUFFIX= ${SUFFIX} >@@ -96,6 +97,7 @@ CONFIGURE_ARGS+=--disable-nls \ > --with-as=${LOCALBASE}/bin/as \ > --with-gmp=${LOCALBASE} \ > --with-gxx-include-dir=${TARGLIB}/include/c++/ \ >+ --with-gxx-libcxx-include-dir=/usr/include/c++/v1 \ > --with-ld=${LOCALBASE}/bin/ld \ > ${ICONV_CONFIGURE_ARG} \ > --with-pkgversion="FreeBSD Ports Collection" \ >diff --git a/lang/gcc12/files/patch-libcxxrt b/lang/gcc12/files/patch-libcxxrt >new file mode 100644 >index 000000000000..beb02cbcc480 >--- /dev/null >+++ b/lang/gcc12/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.cc.orig 2022-08-19 08:09:52 UTC >++++ gcc/cp/g++spec.cc >+@@ -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 > >From 4ca1ea65b199135c7cc7d785fdd0d270eaa6f608 Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 20 Aug 2022 16:06:02 +0000 >Subject: [PATCH 3/4] lang/gcc11-devel: expose non-default -stdlib=libc++ > support > >gcc11: error: unrecognized command-line option '-stdlib=libc++' > >PR: 265962 >Approved by: salvadore (maintainer) >--- > lang/gcc11-devel/Makefile | 2 ++ > lang/gcc11-devel/files/patch-libcxxrt | 18 ++++++++++++++++++ > 2 files changed, 20 insertions(+) > create mode 100644 lang/gcc11-devel/files/patch-libcxxrt > >diff --git a/lang/gcc11-devel/Makefile b/lang/gcc11-devel/Makefile >index 2cd4251925a3..cc779acc4c12 100644 >--- a/lang/gcc11-devel/Makefile >+++ b/lang/gcc11-devel/Makefile >@@ -1,5 +1,6 @@ > PORTNAME= gcc > PORTVERSION= 11.3.1.s20220819 >+PORTREVISION= 1 > CATEGORIES= lang > MASTER_SITES= GCC/snapshots/${DIST_VERSION} > PKGNAMESUFFIX= ${SUFFIX}-devel >@@ -103,6 +104,7 @@ CONFIGURE_ARGS+=--disable-nls \ > --with-as=${LOCALBASE}/bin/as \ > --with-gmp=${LOCALBASE} \ > --with-gxx-include-dir=${TARGLIB}/include/c++/ \ >+ --with-gxx-libcxx-include-dir=/usr/include/c++/v1 \ > --with-ld=${LOCALBASE}/bin/ld \ > ${ICONV_CONFIGURE_ARG} \ > --with-pkgversion="FreeBSD Ports Collection" \ >diff --git a/lang/gcc11-devel/files/patch-libcxxrt b/lang/gcc11-devel/files/patch-libcxxrt >new file mode 100644 >index 000000000000..a02a890266ae >--- /dev/null >+++ b/lang/gcc11-devel/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-08-19 22:32:09 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 > >From 24d69d013a5b583e9fb23814e111fd5393a34f2d Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Sat, 20 Aug 2022 16:06:02 +0000 >Subject: [PATCH 4/4] lang/gcc13-devel: expose non-default -stdlib=libc++ > support > >gcc13: error: unrecognized command-line option '-stdlib=libc++' > >PR: 265962 >Approved by: salvadore (maintainer) >--- > lang/gcc13-devel/Makefile | 2 ++ > lang/gcc13-devel/files/patch-libcxxrt | 18 ++++++++++++++++++ > 2 files changed, 20 insertions(+) > create mode 100644 lang/gcc13-devel/files/patch-libcxxrt > >diff --git a/lang/gcc13-devel/Makefile b/lang/gcc13-devel/Makefile >index 053c31430d1d..7aa7c002e20e 100644 >--- a/lang/gcc13-devel/Makefile >+++ b/lang/gcc13-devel/Makefile >@@ -1,5 +1,6 @@ > PORTNAME= gcc > PORTVERSION= 13.0.0.s20220731 >+PORTREVISION= 1 > CATEGORIES= lang > MASTER_SITES= GCC/snapshots/${DIST_VERSION} > PKGNAMESUFFIX= ${SUFFIX}-devel >@@ -105,6 +106,7 @@ CONFIGURE_ARGS+=--disable-nls \ > --with-as=${LOCALBASE}/bin/as \ > --with-gmp=${LOCALBASE} \ > --with-gxx-include-dir=${TARGLIB}/include/c++/ \ >+ --with-gxx-libcxx-include-dir=/usr/include/c++/v1 \ > --with-ld=${LOCALBASE}/bin/ld \ > ${ICONV_CONFIGURE_ARG} \ > --with-pkgversion="FreeBSD Ports Collection" \ >diff --git a/lang/gcc13-devel/files/patch-libcxxrt b/lang/gcc13-devel/files/patch-libcxxrt >new file mode 100644 >index 000000000000..4225df7aad1e >--- /dev/null >+++ b/lang/gcc13-devel/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.cc.orig 2022-07-31 22:32:16 UTC >++++ gcc/cp/g++spec.cc >+@@ -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
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
salvadore
:
maintainer-approval+
Actions:
View
|
Diff
Attachments on
bug 265962
:
236025
|
236028
|
236029
| 236053