Re: git: 7a7408cd7731 - main - security/botan3: Broken on aarch64, amd64 and 13
Date: Sun, 19 May 2024 09:47:34 UTC
Am 18.05.24 um 20:59 schrieb Yuri Victorovich:
> The branch main has been updated by yuri:
>
> URL: https://cgit.FreeBSD.org/ports/commit/?id=7a7408cd7731d6e05ccbc6e895ca84600eb26bfe
>
> commit 7a7408cd7731d6e05ccbc6e895ca84600eb26bfe
> Author: Yuri Victorovich <yuri@FreeBSD.org>
> AuthorDate: 2024-05-18 18:58:46 +0000
> Commit: Yuri Victorovich <yuri@FreeBSD.org>
> CommitDate: 2024-05-18 18:58:46 +0000
>
> security/botan3: Broken on aarch64, amd64 and 13
>
> Reported by: fallout
> ---
> security/botan3/Makefile | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/security/botan3/Makefile b/security/botan3/Makefile
> index 8ddf75dfbc36..64282de2bc4b 100644
> --- a/security/botan3/Makefile
> +++ b/security/botan3/Makefile
> @@ -12,7 +12,9 @@ WWW= https://botan.randombit.net/
> LICENSE= BSD2CLAUSE
> LICENSE_FILE= ${WRKSRC}/license.txt
>
> -BROKEN_armv6= include/arm_neon.h:28:2: error: "NEON support not enabled"
> +BROKEN_amd64= clang crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279136
> +BROKEN_aarch64= clang crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279136
> +BROKEN_FreeBSD_13= compilation fails: no member named 'find' in namespace 'std::ranges'
>
> LIB_DEPENDS= libboost_filesystem.so:devel/boost-libs
>
Dima, Yuri,
Update: LLVM15 compiles this nicely on FreeBSD 14 amd64, yet
* I get a "pathfix" warning at the end that pathfix won't fix (we'd need
to patch the configure.py or other stuff instead) and
* I find that the build hardcodes the /usr/local/llvm15/bin/c++ path so
that it does not use ccache... so when using ccache, we would have to
wrap it. --compiler-cache=... to the rescue.
Finally, we might want to resolve the conflict with Botan2, which seems
to be ONLY around the manual page, so Botan2 may want to rename its to
botan2(1).
I am attaching a patch, which isn't complete, I didn't test LLVM14, I
didn't test ARM64 (can't for lack of a system), I didn't hack FreeBSD
13, and didn't remove the BROKEN line.
In case it doesn't make it here, see
https://people.freebsd.org/~mandree/botan3-wip.patch
ldd doesn't show we depend on boot::filesystem - is it safe to remove
the LIB_DEPENDS? I've commented it out.
-------
Hi Yuri,
what's become of the LLVM version constraining lines that Dima commented
out in 21d88aba74501? Have you tried pinning LLVM to versions 14-15 by
enabling those commented lines again?
Alternatively, could/should we use GCC with libc++?
(Look at graphics/rawtherapee for how it's done, albeit with older C++
standards than C++20.)
Also, for std::ranges::find if our C++ doesn't cut it, we might consider
adding Boost as a dependency and use boost::ranges::find if it's usable
for what Botan3 tries to do with it (I haven't looked):
<https://www.boost.org/doc/libs/1_85_0/libs/range/doc/html/range/reference/algorithms/non_mutating/find.html>
Regards,
Matthias
--
Matthias Andree
FreeBSD ports committer