git: 38557f2f4558 - main - shells/ksh*: Permanently fix LLVM15 build
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 15 Feb 2023 16:56:00 UTC
The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/ports/commit/?id=38557f2f4558bb032842d36050b7ce7dd1a3bfd3 commit 38557f2f4558bb032842d36050b7ce7dd1a3bfd3 Author: Cy Schubert <cy@FreeBSD.org> AuthorDate: 2023-02-15 15:18:07 +0000 Commit: Cy Schubert <cy@FreeBSD.org> CommitDate: 2023-02-15 16:55:03 +0000 shells/ksh*: Permanently fix LLVM15 build Fix aso atomics broken by LLVM: /wrkdirs/usr/ports/shells/ksh/work/ksh-1.0.4/src/lib/libast/aso/aso.c /wrkdirs/usr/ports/shells/ksh/work/ksh-1.0.4/src/lib/libast/aso/aso.c:839:10: error: incompatible integer to pointer conversion passing 'uint64_t' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion] return _aso_casptr((void**)p, o, n); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./FEATURE/aso:19:66: note: expanded from macro '_aso_casptr' ^~~~~~~~~~~ /wrkdirs/usr/ports/shells/ksh/work/ksh-1.0.4/src/lib/libast/aso/aso.c:839:10: error: incompatible integer to pointer conversion passing 'uint64_t' (aka 'unsigned long') to parameter of type 'void *' [-Wint-conversion] return _aso_casptr((void**)p, o, n); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./FEATURE/aso:19:78: note: expanded from macro '_aso_casptr' ^~~~~~~~~~~ 2 errors generated. mamake [lib/libast]: *** exit code 1 making aso.o mamake: *** exit code 1 making lib/libast mamake: *** exit code 1 making all package: creating flat view package: make failed at Fri Feb 10 06:00:01 UTC 2023 in /wrkdirs/usr/ports/shells/ksh/work/ksh-1.0.4/arch/freebsd14.amd64-64 *** Error code 1 --- shells/ksh-devel/Makefile | 2 +- shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c | 11 +++++++++++ shells/ksh/Makefile | 2 +- shells/ksh/files/patch-src_lib_libast_aso_aso.c | 11 +++++++++++ 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/shells/ksh-devel/Makefile b/shells/ksh-devel/Makefile index 7f2844d1855d..29496a0e319c 100644 --- a/shells/ksh-devel/Makefile +++ b/shells/ksh-devel/Makefile @@ -50,7 +50,7 @@ KSH93D_DESC= Install to ${PREFIX}/bin/ksh93d (development) CFLAGS+= -DMAP_TYPE LDFLAGS+= -lm -MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses -Wno-int-conversion" CFLAGS="${CFLAGS}" +MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses" CFLAGS="${CFLAGS}" STATIC_MAKE_ENV= LDFLAGS+=-static diff --git a/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c b/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c new file mode 100644 index 000000000000..6ab5be771f7a --- /dev/null +++ b/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c @@ -0,0 +1,11 @@ +--- src/lib/libast/aso/aso.c.orig 2023-01-11 01:32:04.000000000 -0800 ++++ src/lib/libast/aso/aso.c 2023-02-15 06:41:07.380213000 -0800 +@@ -836,7 +836,7 @@ + + #if defined(_aso_casptr) + if (!state.lockf) +- return _aso_casptr((void**)p, o, n); ++ return _aso_cas64((void**)p, o, n); + #endif + k = lock(state.data, 0, p); + if (*(void* volatile*)p == o) diff --git a/shells/ksh/Makefile b/shells/ksh/Makefile index e006024685ed..ca0d38165128 100644 --- a/shells/ksh/Makefile +++ b/shells/ksh/Makefile @@ -44,7 +44,7 @@ KSH93N_DESC= Install to ${PREFIX}/bin/ksh93n (new) CFLAGS+= -DMAP_TYPE LDFLAGS+= -lm -MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses -Wno-int-conversion" CFLAGS="${CFLAGS}" +MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses" CFLAGS="${CFLAGS}" STATIC_MAKE_ENV= LDFLAGS+=-static diff --git a/shells/ksh/files/patch-src_lib_libast_aso_aso.c b/shells/ksh/files/patch-src_lib_libast_aso_aso.c new file mode 100644 index 000000000000..891c022d470e --- /dev/null +++ b/shells/ksh/files/patch-src_lib_libast_aso_aso.c @@ -0,0 +1,11 @@ +--- src/lib/libast/aso/aso.c.orig 2022-10-21 20:05:14.000000000 -0700 ++++ src/lib/libast/aso/aso.c 2023-02-15 06:39:08.156515000 -0800 +@@ -836,7 +836,7 @@ + + #if defined(_aso_casptr) + if (!state.lockf) +- return _aso_casptr((void**)p, o, n); ++ return _aso_cas64((void**)p, o, n); + #endif + k = lock(state.data, 0, p); + if (*(void* volatile*)p == o)