git: 3eff87c4dc8d - 2023Q1 - emulators/yuzu: switch to newer libc++
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 02 Feb 2023 06:39:08 UTC
The branch 2023Q1 has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=3eff87c4dc8d063ac99abb4569c90a20291cbfd5 commit 3eff87c4dc8d063ac99abb4569c90a20291cbfd5 Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2023-01-31 01:50:14 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2023-02-02 06:39:02 +0000 emulators/yuzu: switch to newer libc++ Disable src/common/polyfill_ranges.h as it's not tested by upstream CI and breaks build with recent libc++ versions. (cherry picked from commit 71ce3cb476ac72829c957d0d1a739aa5ddad993a) --- emulators/yuzu/Makefile | 19 ++++++++++++++----- emulators/yuzu/distinfo | 4 ++-- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/emulators/yuzu/Makefile b/emulators/yuzu/Makefile index ab506cfb21ce..2a9a5a6f2127 100644 --- a/emulators/yuzu/Makefile +++ b/emulators/yuzu/Makefile @@ -1,5 +1,6 @@ PORTNAME= yuzu PORTVERSION= s20230130 +PORTREVISION= 1 CATEGORIES= emulators wayland .if make(makesum) MASTER_SITES= https://api.yuzu-emu.org/gamedb/?dummy=/:gamedb @@ -71,7 +72,6 @@ CMAKE_ON+= BUNDLE_SPEEX # only used by cubeb tests CMAKE_OFF= YUZU_CHECK_SUBMODULES YUZU_USE_EXTERNAL_SDL2 YUZU_USE_EXTERNAL_VULKAN_HEADERS CMAKE_OFF+= ${CMAKE_TESTING_ON} CMAKE_TESTING_ON= YUZU_TESTS -CXXFLAGS+= -D_LIBCPP_HAS_NO_INCOMPLETE_RANGES # common/polyfill_ranges.h LDFLAGS+= -Wl,--as-needed # Qt5Network ELF_FEATURES= ${PLIST_FILES:Mbin/*:S/^/+wxneeded:/} PLIST_FILES= bin/${PORTNAME}-cmd \ @@ -151,17 +151,26 @@ post-patch-VAAPI-off: @${REINPLACE_CMD} -i .nova '/pkg_check.*libva/d' \ ${WRKSRC}/CMakeLists.txt -# libc++ >= 14 defines std::ranges outside -D_LIBCPP_HAS_NO_INCOMPLETE_RANGES -.if exists(/usr/include/c++/v1/__memory/concepts.h) +# XXX Drop after FreeBSD 13.2 EOL around 2024-05-01 (don't forget distinfo) +.if !exists(/usr/include/c++/v1/__ranges/as_rvalue_view.h) || make(makesum) || make(fetch) +. if !exists(/usr/include/c++/v1/__memory/concepts.h) +USES+= llvm:min=14,build +CC= clang${LLVM_VERSION} +CXX= clang++${LLVM_VERSION} +CPP= clang-cpp${LLVM_VERSION} +CONFIGURE_ENV+= CC="${CC}" CXX="${CXX}" CPP="${CPP}" +. endif + # XXX Move into separate port and standardize via USES -GH_TUPLE+= llvm:llvm-project:llvmorg-13.0.1:libcxx +GH_TUPLE+= llvm:llvm-project:llvmorg-16.0.0-rc1:libcxx CXXFLAGS+= -nostdinc++ -isystem${WRKDIR}/libcxx_prefix/include/c++/v1 -# Don't link against old libc++ to avoid ABI mismatch in Qt +# Don't link against new libc++ to avoid ABI mismatch in Qt #LDFLAGS+= -nostdlib++ -L${WRKDIR}/libcxx_prefix/lib -l:libc++.a -lcxxrt pre-configure: bundled-libcxx bundled-libcxx: @${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS:M*Ninja*} \ + -DLIBCXX_INCLUDE_BENCHMARKS:BOOL=OFF \ -DCMAKE_INSTALL_PREFIX:PATH=${WRKDIR}/libcxx_prefix \ -B ${WRKDIR}/libcxx_build -S ${WRKSRC_libcxx}/libcxx @${DO_MAKE_BUILD:NDESTDIR*} install -C ${WRKDIR}/libcxx_build diff --git a/emulators/yuzu/distinfo b/emulators/yuzu/distinfo index e967daffaf40..a68b4ac367a4 100644 --- a/emulators/yuzu/distinfo +++ b/emulators/yuzu/distinfo @@ -21,7 +21,7 @@ SHA256 (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 8629757290774a34ed SIZE (kinetiknz-cubeb-cubeb-0.2-1350-gf79e0cf_GH0.tar.gz) = 220847 SHA256 (yhirose-cpp-httplib-v0.10.8-1-g305a7ab_GH0.tar.gz) = 2b8ebbe60c5fab1254e454518108cb8da5ee3a07e1cf9f432448d985efe4a003 SIZE (yhirose-cpp-httplib-v0.10.8-1-g305a7ab_GH0.tar.gz) = 620778 -SHA256 (llvm-llvm-project-llvmorg-13.0.1_GH0.tar.gz) = 09c50d558bd975c41157364421820228df66632802a4a6a7c9c17f86a7340802 -SIZE (llvm-llvm-project-llvmorg-13.0.1_GH0.tar.gz) = 147290251 +SHA256 (llvm-llvm-project-llvmorg-16.0.0-rc1_GH0.tar.gz) = e1b8d991921c8e9564359b17955878716dc68201ded4699c6b175b14fe3085aa +SIZE (llvm-llvm-project-llvmorg-16.0.0-rc1_GH0.tar.gz) = 180127224 SHA256 (c17d71240b23.patch) = 4aaf5522ec3f7d393cec59638220d6142489c4e946060ec94444ca3f47e2b2a7 SIZE (c17d71240b23.patch) = 7562