git: cac460734976 - main - emulators/rpcs3: limit llvm13 dependency to FreeBSD 12.3
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 24 Dec 2022 16:37:14 UTC
The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=cac460734976d1db837a52a2ddd047c0adaf8194 commit cac460734976d1db837a52a2ddd047c0adaf8194 Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2022-12-24 15:38:02 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2022-12-24 16:35:07 +0000 emulators/rpcs3: limit llvm13 dependency to FreeBSD 12.3 Base clang 10 is too old: rpcs3/util/types.hpp:1170:20: error: substitution into constraint expression resulted in a non-constant expression concept PtrSame = (is_same_ptr<X, Y>()); ^~~~~~~~~~~~~~~~~~~ rpcs3/Emu/IdManager.h:701:18: note: while checking the satisfaction of concept 'PtrSame<lv2_fs_object, lv2_file>' requested here static_assert((PtrSame<T, Get> && ...), "Invalid ID type combination"); ^~~~~~~~~~~~~~~ rpcs3/Emu/VFS.cpp:940:7: note: in instantiation of function template specialization 'idm::select<lv2_fs_object, lv2_file, (lambda at rpcs3/Emu/VFS.cpp:940:39), std::__1::integral_constant<bool, true> >' requested here idm::select<lv2_fs_object, lv2_file>([&](u32 id, lv2_file& file) ^ Base libc++ 10 is too old: rpcs3/Emu/RSX/Common/simple_array.hpp:287:17: error: no template named 'predicate' in namespace 'std' bool any(std::predicate<const Ty&> auto predicate) const ~~~~~^ rpcs3/Emu/RSX/Common/simple_array.hpp:299:20: error: no template named 'predicate' in namespace 'std' void filter(std::predicate<const Ty&> auto predicate) ~~~~~^ rpcs3/Emu/RSX/Common/simple_array.hpp:317:18: error: no template named 'predicate' in namespace 'std' void sort(std::predicate<const Ty&, const Ty&> auto predicate) ~~~~~^ --- emulators/rpcs3/Makefile | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile index df3b4ff3cca1..caad21ce8fbf 100644 --- a/emulators/rpcs3/Makefile +++ b/emulators/rpcs3/Makefile @@ -2,7 +2,7 @@ PORTNAME= rpcs3 DISTVERSIONPREFIX= v DISTVERSION= 0.0.25-14499 # git rev-list --count HEAD DISTVERSIONSUFFIX= -g5b95cfda40 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= emulators wayland MAINTAINER= jbeich@FreeBSD.org @@ -106,17 +106,12 @@ post-patch: -e '/GIT_VERSION/s/local_build/${GH_TAGNAME:C/[^-]*-//}/' \ ${WRKSRC}/${PORTNAME}/git-version.cmake -.include <bsd.port.pre.mk> - -# Ignore Mk/bsd.default-versions.mk but respect make.conf(5) -.if !defined(DEFAULT_VERSIONS) || ! ${DEFAULT_VERSIONS:Mllvm*} -LLVM_DEFAULT= 13 # bump if not latest release -.endif -BUILD_DEPENDS+= clang++${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} -USES:= ${USES:Ncompiler*} -CC= clang${LLVM_DEFAULT} -CXX= clang++${LLVM_DEFAULT} -CPP= clang-cpp${LLVM_DEFAULT} +# XXX Drop after FreeBSD 12.3 EOL around 2023-03-01 (don't forget distinfo) +.if !exists(/usr/include/c++/v1/concepts) || make(makesum) || make(fetch) +USES+= llvm:13,build +CC= clang${LLVM_VERSION} +CXX= clang++${LLVM_VERSION} +CPP= clang-cpp${LLVM_VERSION} # XXX Move into separate port and standardize via USES GH_TUPLE+= llvm:llvm-project:llvmorg-13.0.1:libcxx @@ -129,5 +124,6 @@ bundled-libcxx: -DCMAKE_INSTALL_PREFIX:PATH=${WRKDIR}/libcxx_prefix \ -B ${WRKDIR}/libcxx_build -S ${WRKSRC_libcxx}/libcxx @${DO_MAKE_BUILD:NDESTDIR*} install -C ${WRKDIR}/libcxx_build +.endif -.include <bsd.port.post.mk> +.include <bsd.port.mk>