diff --git a/x11/contour/Makefile b/x11/contour/Makefile index 9bdd9041f892..5c3604862fba 100644 --- a/x11/contour/Makefile +++ b/x11/contour/Makefile @@ -1,73 +1,73 @@ PORTNAME= contour DISTVERSIONPREFIX= v -DISTVERSION= 0.6.1.7494 -PORTREVISION= 2 +DISTVERSION= 0.6.2.8008 CATEGORIES= x11 MAINTAINER= tagattie@FreeBSD.org COMMENT= Modern C++ terminal emulator WWW= https://contour-terminal.org/ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE.txt BUILD_DEPENDS= ${LOCALBASE}/lib/cmake/boxed-cpp/boxed-cpp-config.cmake:devel/boxed-cpp \ ${LOCALBASE}/lib/cmake/reflection-cpp/reflection-cpp-config.cmake:devel/reflection-cpp \ ${LOCALBASE}/share/cmake/Microsoft.GSL/Microsoft.GSLConfig.cmake:devel/microsoft-gsl \ ${LOCALBASE}/lib/cmake/range-v3/range-v3-config.cmake:devel/range-v3 LIB_DEPENDS= libunicode.so:devel/libunicode-contour \ libyaml-cpp.so:devel/yaml-cpp \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libssh2.so:security/libssh2 \ libfontconfig.so:x11-fonts/fontconfig TEST_DEPENDS= ${LOCALBASE}/lib/cmake/Catch2/Catch2Config.cmake:devel/catch2 -USES= cmake:testing desktop-file-utils gl pkgconfig qt:6 xorg +USES= cmake:testing desktop-file-utils gl gnome pkgconfig qt:6 xorg USE_GITHUB= yes GH_ACCOUNT= contour-terminal USE_XORG= xcb -USE_GL= gl opengl -USE_QT= 5compat base declarative multimedia tools:build +USE_GL= opengl +USE_GNOME= cairo +USE_QT= base declarative multimedia tools:build CMAKE_ON= CONTOUR_INSTALL_TOOLS CMAKE_TESTING_ON= CONTOUR_TESTING -PORTDOCS= README.md SECURITY.md TODO.md +PORTDOCS= README.md SECURITY.md OPTIONS_DEFINE= DOCS .include .if ${OPSYS} == FreeBSD && ${ARCH} == i386 EXTRA_PATCHES= ${PATCHDIR}/extra-patch-src_crispy_read__selector.h .endif # FreeBSD 13 does not have tic in base, so we need one from ports .if ${OPSYS} == FreeBSD && ${OSREL:R} == 13 BUILD_DEPENDS+= tic:devel/ncurses .endif .if ${ARCH:Mpowerpc*} USES+= compiler:gcc-c++11-lib .endif post-install: @${RM} -r ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${PREFIX}/etc/bash_completion.d \ ${STAGEDIR}${PREFIX}/share/fish/vendor_completions.d \ ${STAGEDIR}${PREFIX}/share/zsh/site-functions ${INSTALL_DATA} ${WRKSRC}/src/contour/shell-integration/shell-integration.bash \ ${STAGEDIR}${PREFIX}/etc/bash_completion.d/${PORTNAME} ${INSTALL_DATA} ${WRKSRC}/src/contour/shell-integration/shell-integration.fish \ ${STAGEDIR}${PREFIX}/share/fish/vendor_completions.d/${PORTNAME}.fish ${INSTALL_DATA} ${WRKSRC}/src/contour/shell-integration/shell-integration.zsh \ ${STAGEDIR}${PREFIX}/share/zsh/site-functions/_${PORTNAME} post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} .include diff --git a/x11/contour/distinfo b/x11/contour/distinfo index 839d444335a7..0552cc861ad4 100644 --- a/x11/contour/distinfo +++ b/x11/contour/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1748848147 -SHA256 (contour-terminal-contour-v0.6.1.7494_GH0.tar.gz) = 15090a08cf05124bf05074130cc6460d1d34c6d80f1058c63202effa032b8f6f -SIZE (contour-terminal-contour-v0.6.1.7494_GH0.tar.gz) = 10329146 +TIMESTAMP = 1767948273 +SHA256 (contour-terminal-contour-v0.6.2.8008_GH0.tar.gz) = 0018f111530ffb5fc669fdd9e400f730156c4d8cfd03ec9e06da555d6bc921e5 +SIZE (contour-terminal-contour-v0.6.2.8008_GH0.tar.gz) = 10374198 diff --git a/x11/contour/files/extra-patch-src_crispy_read__selector.h b/x11/contour/files/extra-patch-src_crispy_read__selector.h index 0246b1b3aae2..c8e21f8dd3ba 100644 --- a/x11/contour/files/extra-patch-src_crispy_read__selector.h +++ b/x11/contour/files/extra-patch-src_crispy_read__selector.h @@ -1,11 +1,11 @@ ---- src/crispy/read_selector.h.orig 2025-06-02 12:31:49 UTC +--- src/crispy/read_selector.h.orig 2026-01-06 17:41:07 UTC +++ src/crispy/read_selector.h -@@ -108,7 +108,7 @@ class posix_read_selector +@@ -107,7 +107,7 @@ class posix_read_selector if (timeout.has_value()) { tv = std::make_unique( - timeval { .tv_sec = timeout->count() / 1000, + timeval { .tv_sec = static_cast(timeout->count() / 1000), .tv_usec = static_cast((timeout->count() % 1000) * 1000) }); } diff --git a/x11/contour/files/patch-src_crispy_FNV.h b/x11/contour/files/patch-src_crispy_FNV.h new file mode 100644 index 000000000000..83a63216ccea --- /dev/null +++ b/x11/contour/files/patch-src_crispy_FNV.h @@ -0,0 +1,67 @@ +--- src/crispy/FNV.h.orig 2026-01-06 17:41:07 UTC ++++ src/crispy/FNV.h +@@ -41,16 +41,47 @@ class fnv + return (*this)((*this)(memory, value), moreValues...); + } + +- template +- constexpr U operator()(U memory, std::basic_string_view str, V... moreValues) const noexcept ++ /// Incrementally hashes a trivially copyable value. ++ /// ++ /// The value is treated as a sequence of bytes and hashed byte-wise. ++ /// This overload explicitly excludes std::string and std::string_view, ++ /// which are handled by dedicated overloads. ++ template && ++ !std::is_same_v && ++ !std::is_same_v>> ++ constexpr U operator()(U memory, V const& value) const noexcept + { ++ auto const* bytes = ++ reinterpret_cast(&value); ++ for (std::size_t i = 0; i < sizeof(V); ++i) ++ memory = (*this)(memory, bytes[i]); ++ return memory; ++ } ++ ++ /// Incrementally hashes a string view and additional values (char only). ++ /// ++ /// Each character in @p str is hashed sequentially before applying ++ /// the remaining values in @p moreValues. ++ template >> ++ constexpr U operator()(U memory, ++ std::string_view str, ++ V... moreValues) const noexcept ++ { + for (auto const ch: str) + memory = (*this)(memory, ch); + return (*this)(memory, moreValues...); + } + + /// Builds the FNV hash between [_begin, _end) +- constexpr U operator()(U memory, std::basic_string_view str) const noexcept ++ /// Builds the FNV hash for a string view (char only). ++ /// ++ /// Hashes all characters in @p str starting from the given memory value. ++ template >> ++ constexpr U operator()(U memory, std::string_view str) const noexcept + { + for (auto const ch: str) + memory = (*this)(memory, ch); +@@ -70,7 +101,12 @@ class fnv + constexpr U operator()(T const* data, size_t len) const noexcept { return (*this)(data, data + len); } + + /// Builds the FNV hash between [_begin, _begin + len) +- constexpr U operator()(std::basic_string const& str) const noexcept ++ /// Builds the FNV hash for a std::string (char only). ++ /// ++ /// Hashes the string's character data sequentially. ++ template >> ++ constexpr U operator()(std::string const& str) const noexcept + { + return (*this)(str.data(), str.data() + str.size()); + } diff --git a/x11/contour/pkg-plist b/x11/contour/pkg-plist index 967fd3b4b228..e31fde66c52b 100644 --- a/x11/contour/pkg-plist +++ b/x11/contour/pkg-plist @@ -1,14 +1,14 @@ bin/contour etc/bash_completion.d/contour share/applications/org.contourterminal.Contour.desktop share/fish/vendor_completions.d/contour.fish share/icons/hicolor/128x128/apps/org.contourterminal.Contour.png share/icons/hicolor/256x256/apps/org.contourterminal.Contour.png share/icons/hicolor/32x32/apps/org.contourterminal.Contour.png share/icons/hicolor/512x512/apps/org.contourterminal.Contour.png share/icons/hicolor/64x64/apps/org.contourterminal.Contour.png -share/kservices5/ServiceMenus/org.contourterminal.Contour.OpenHere.desktop -share/kservices5/ServiceMenus/org.contourterminal.Contour.RunIn.desktop +share/kio/servicemenus/org.contourterminal.Contour.OpenHere.desktop +share/kio/servicemenus/org.contourterminal.Contour.RunIn.desktop share/metainfo/org.contourterminal.Contour.metainfo.xml share/terminfo/c/contour share/zsh/site-functions/_contour