diff --git a/devel/string_theory/Makefile b/devel/string_theory/Makefile index c5bd1ba7d08d..ff65c54d7e4f 100644 --- a/devel/string_theory/Makefile +++ b/devel/string_theory/Makefile @@ -1,23 +1,33 @@ PORTNAME= string_theory -PORTVERSION= 3.8 +PORTVERSION= 3.9 CATEGORIES= devel -MASTER_SITES= https://github.com/zrax/string_theory/releases/download/${PORTVERSION}/ MAINTAINER= sunpoet@FreeBSD.org COMMENT= Modern C++ library for string manipulation and storage WWW= https://github.com/zrax/string_theory LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -USES= cmake:testing compiler:c++20-lang +TEST_DEPENDS= googletest>=0:devel/googletest -CMAKE_OFF= ST_BUILD_PROFILE_TEST \ - ST_BUILD_TESTS \ - ST_BUILD_TEST_COVERAGE +USES= cmake:testing compiler:c++20-lang localbase:ldflags + +CMAKE_OFF= ST_BUILD_TEST_COVERAGE \ + ST_BUILD_TESTS CMAKE_ON= ST_ENABLE_STL_FILESYSTEM \ ST_ENABLE_STL_STRINGS -CMAKE_TESTING_ON= ST_BUILD_TESTS +CMAKE_TESTING_OFF= \ + BUILD_GMOCK \ + INSTALL_GTEST \ + ST_BUILD_PROFILE_TEST +CMAKE_TESTING_ON= \ + ST_BUILD_TEST_COVERAGE \ + ST_BUILD_TESTS \ + ST_USE_SYSTEM_GTEST NO_ARCH= yes +USE_GITHUB= yes +GH_ACCOUNT= zrax + .include diff --git a/devel/string_theory/distinfo b/devel/string_theory/distinfo index 355218bb2d78..28587bef31a4 100644 --- a/devel/string_theory/distinfo +++ b/devel/string_theory/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1696963431 -SHA256 (string_theory-3.8.tar.gz) = 2b43daf9424e3136327e71b70abe0b15d51427653778df7b149574ef1dfec890 -SIZE (string_theory-3.8.tar.gz) = 954929 +TIMESTAMP = 1767157579 +SHA256 (zrax-string_theory-3.9_GH0.tar.gz) = 9bb0a9697319964479f813d9c61e3c5a1f57f7e8a5bc6db14cba7489addc3f49 +SIZE (zrax-string_theory-3.9_GH0.tar.gz) = 68952 diff --git a/devel/string_theory/files/patch-test b/devel/string_theory/files/patch-test new file mode 100644 index 000000000000..5c431ea7e4db --- /dev/null +++ b/devel/string_theory/files/patch-test @@ -0,0 +1,44 @@ +--- test/test_buffer.cpp.orig 2025-01-10 20:58:36 UTC ++++ test/test_buffer.cpp +@@ -310,41 +310,6 @@ TEST(char_buffer, move) + EXPECT_EQ(24U, wdest2.size()); + } + +-#if (defined(__clang__) && ((__clang_major__ > 3) || (__clang_major__ == 3 && __clang_minor__ > 5))) \ +- || (defined(__GNUC__) && (__GNUC__ >= 13)) +-# pragma GCC diagnostic push +-# pragma GCC diagnostic ignored "-Wself-move" +-# if defined(__clang__) && (__clang_major__ > 6) +-# pragma GCC diagnostic ignored "-Wself-assign-overloaded" +-# endif +-#endif +- +-TEST(char_buffer, self_assign) +-{ +- // If this changes, this test may need to be updated to match +- ASSERT_EQ(16, ST_MAX_SSO_LENGTH); +- +- ST::char_buffer sbuf; +- sbuf = sbuf; +- EXPECT_EQ(0, T_strcmp(sbuf.data(), "")); +- +- ST::char_buffer shortbuf("0123456789", 10); +- sbuf = shortbuf; +- EXPECT_EQ(0, T_strcmp(sbuf.data(), "0123456789")); +- sbuf = sbuf; +- EXPECT_EQ(0, T_strcmp(sbuf.data(), "0123456789")); +- sbuf = std::move(sbuf); +- // Content not guaranteed after self-move +- +- ST::char_buffer longbuf("0123456789abcdefghij", 20); +- sbuf = longbuf; +- EXPECT_EQ(0, T_strcmp(sbuf.data(), "0123456789abcdefghij")); +- sbuf = sbuf; +- EXPECT_EQ(0, T_strcmp(sbuf.data(), "0123456789abcdefghij")); +- sbuf = std::move(sbuf); +- // Content not guaranteed after self-move +-} +- + #if defined(__clang__) && ((__clang_major__ > 3) || (__clang_major__ == 3 && __clang_minor__ > 5)) + # pragma GCC diagnostic pop + #endif