Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 24 Dec 2022 16:37:14 GMT
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: cac460734976 - main - emulators/rpcs3: limit llvm13 dependency to FreeBSD 12.3
Message-ID:  <202212241637.2BOGbE1C075193@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202212241637.2BOGbE1C075193>