sync ports with The Matrix

This commit is contained in:
purplerain 2023-08-21 05:20:32 +00:00
parent f75c54fe04
commit a2b482cdca
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64 changed files with 1619 additions and 2432 deletions

View file

@ -3,7 +3,7 @@ CATEGORIES = devel
GH_ACCOUNT = abseil
GH_PROJECT = ${GH_ACCOUNT}-cpp
GH_TAGNAME = 20230125.3
GH_TAGNAME = 20230802.0
HOMEPAGE = https://abseil.io/
@ -38,36 +38,28 @@ ABSL_LIBS = \
raw_logging_internal scoped_set_env spinlock_test_common spinlock_wait \
stack_consumption stacktrace status statusor str_format_internal strerror \
strings strings_internal symbolize synchronization test_instance_tracker \
throw_delegate time time_internal_test_util time_zone
throw_delegate time time_internal_test_util time_zone \
kernel_timeout_internal string_view
.for _lib in ${ABSL_LIBS}
SHARED_LIBS += absl_${_lib} 2.0 # 2301.0.0
SHARED_LIBS += absl_${_lib} 3.0 # 2308.0.0
.endfor
WANTLIB += ${COMPILER_LIBCXX} execinfo gmock gtest m
# C++17
COMPILER = base-clang ports-gcc
COMPILER_LANGS = c++
WANTLIB = ${COMPILER_LIBCXX} execinfo m
MODULES = devel/cmake
CONFIGURE_ARGS += -DBUILD_SHARED_LIBS:BOOL=ON
# Force the same highest C++ standard because of ABI differences.
# https://github.com/abseil/abseil-cpp/issues/819
CONFIGURE_ARGS += -DCMAKE_CXX_STANDARD=17
# A future Abseil release will default ABSL_PROPAGATE_CXX_STD=ON
# for CMake >= 3.8. Abseil developers recommend enabling this option
# to ensure that our project builds correctly.
CONFIGURE_ARGS += -DABSL_PROPAGATE_CXX_STD:BOOL=ON
CONFIGURE_ARGS += -DBUILD_SHARED_LIBS=ON
# use googletest from ports
CONFIGURE_ARGS += -DABSL_USE_EXTERNAL_GOOGLETEST:BOOL=${LOCALBASE}/include/gtest
CONFIGURE_ARGS += -DABSL_USE_EXTERNAL_GOOGLETEST=${LOCALBASE}/include/gtest
# turn on tests builds
CONFIGURE_ARGS += -DBUILD_TESTING:BOOL=ON \
-DABSL_BUILD_TESTING:BOOL=ON
CONFIGURE_ARGS += -DBUILD_TESTING=ON \
-DABSL_BUILD_TESTING=ON
BUILD_DEPENDS += devel/gtest>=1.11.0pl20220208
TEST_DEPENDS += devel/gtest>=1.11.0pl20220208
LIB_DEPENDS += devel/gtest>=1.14.0
TESTTMP = ${WRKDIR}/tmp
TESTLDPATH = ${WRKDIR}/ldpath

View file

@ -1,2 +1,2 @@
SHA256 (abseil-cpp-20230125.3.tar.gz) = U2bX5/p7oNkVAU04e2bQ0ALAMjZEjhup75gSLBOzXDY=
SIZE (abseil-cpp-20230125.3.tar.gz) = 2119655
SHA256 (abseil-cpp-20230802.0.tar.gz) = WdKXavnW7PABqBo1dJpuVRozW5SdNJGM+t4Hc3udk8U=
SIZE (abseil-cpp-20230802.0.tar.gz) = 2156669

View file

@ -3,7 +3,7 @@ Use write(2) not syscall(2)
Index: absl/base/internal/raw_logging.cc
--- absl/base/internal/raw_logging.cc.orig
+++ absl/base/internal/raw_logging.cc
@@ -52,10 +52,12 @@
@@ -56,10 +56,12 @@
// ABSL_HAVE_SYSCALL_WRITE is defined when the platform provides the syscall
// syscall(SYS_write, /*int*/ fd, /*char* */ buf, /*size_t*/ len);
// for low level operations that want to avoid libc.

View file

@ -0,0 +1,18 @@
Use getthrid(2) as GetTID() implementation.
Index: absl/base/internal/sysinfo.cc
--- absl/base/internal/sysinfo.cc.orig
+++ absl/base/internal/sysinfo.cc
@@ -441,6 +441,12 @@ pid_t GetTID() {
return reinterpret_cast<pid_t>(thread);
}
+#elif defined(__OpenBSD__)
+
+pid_t GetTID() {
+ return getthrid();
+}
+
#else
// Fallback implementation of `GetTID` using `pthread_self`.

View file

@ -7,7 +7,7 @@ defaults to --exec-only.
Index: absl/debugging/CMakeLists.txt
--- absl/debugging/CMakeLists.txt.orig
+++ absl/debugging/CMakeLists.txt
@@ -89,6 +89,7 @@ absl_cc_library(
@@ -90,6 +90,7 @@ absl_cc_library(
PUBLIC
)
@ -15,15 +15,15 @@ Index: absl/debugging/CMakeLists.txt
absl_cc_test(
NAME
symbolize_test
@@ -110,6 +111,7 @@ absl_cc_test(
absl::strings
@@ -112,6 +113,7 @@ absl_cc_test(
absl::symbolize
GTest::gmock
)
+endif()
# Internal-only target, do not depend on directly.
absl_cc_library(
@@ -220,6 +222,7 @@ absl_cc_test(
@@ -223,6 +225,7 @@ absl_cc_test(
GTest::gmock_main
)
@ -31,15 +31,15 @@ Index: absl/debugging/CMakeLists.txt
absl_cc_library(
NAME
leak_check
@@ -249,6 +252,7 @@ absl_cc_test(
absl::base
@@ -253,6 +256,7 @@ absl_cc_test(
absl::log
GTest::gmock_main
)
+endif()
# Internal-only target, do not depend on directly.
absl_cc_library(
@@ -267,6 +271,7 @@ absl_cc_library(
@@ -271,6 +275,7 @@ absl_cc_library(
TESTONLY
)
@ -47,7 +47,7 @@ Index: absl/debugging/CMakeLists.txt
absl_cc_test(
NAME
stack_consumption_test
@@ -292,3 +297,4 @@ absl_cc_library(
@@ -296,3 +301,4 @@ absl_cc_library(
absl::leak_check
PUBLIC
)

View file

@ -1,7 +1,7 @@
Index: absl/status/status.cc
--- absl/status/status.cc.orig
+++ absl/status/status.cc
@@ -467,14 +467,18 @@ StatusCode ErrnoToStatusCode(int error_number) {
@@ -464,14 +464,18 @@ StatusCode ErrnoToStatusCode(int error_number) {
case EFAULT: // Bad address
case EILSEQ: // Illegal byte sequence
case ENOPROTOOPT: // Protocol not available
@ -20,7 +20,7 @@ Index: absl/status/status.cc
return StatusCode::kDeadlineExceeded;
case ENODEV: // No such device
case ENOENT: // No such file or directory
@@ -533,9 +537,13 @@ StatusCode ErrnoToStatusCode(int error_number) {
@@ -530,9 +534,13 @@ StatusCode ErrnoToStatusCode(int error_number) {
case EMLINK: // Too many links
case ENFILE: // Too many open files in system
case ENOBUFS: // No buffer space available
@ -34,7 +34,7 @@ Index: absl/status/status.cc
#ifdef EUSERS
case EUSERS: // Too many users
#endif
@@ -578,7 +586,9 @@ StatusCode ErrnoToStatusCode(int error_number) {
@@ -575,7 +583,9 @@ StatusCode ErrnoToStatusCode(int error_number) {
case ENETRESET: // Connection aborted by network
case ENETUNREACH: // Network unreachable
case ENOLCK: // No locks available

View file

@ -28,6 +28,7 @@ include/absl/base/internal/inline_variable_testing.h
include/absl/base/internal/invoke.h
include/absl/base/internal/low_level_alloc.h
include/absl/base/internal/low_level_scheduling.h
include/absl/base/internal/nullability_impl.h
include/absl/base/internal/per_thread_tls.h
include/absl/base/internal/prefetch.h
include/absl/base/internal/pretty_function.h
@ -51,10 +52,12 @@ include/absl/base/internal/unscaledcycleclock.h
include/absl/base/internal/unscaledcycleclock_config.h
include/absl/base/log_severity.h
include/absl/base/macros.h
include/absl/base/nullability.h
include/absl/base/optimization.h
include/absl/base/options.h
include/absl/base/policy_checks.h
include/absl/base/port.h
include/absl/base/prefetch.h
include/absl/base/thread_annotations.h
include/absl/cleanup/
include/absl/cleanup/cleanup.h
@ -176,13 +179,14 @@ include/absl/hash/hash_testing.h
include/absl/hash/internal/
include/absl/hash/internal/city.h
include/absl/hash/internal/hash.h
include/absl/hash/internal/hash_test.h
include/absl/hash/internal/low_level_hash.h
include/absl/hash/internal/spy_hash_state.h
include/absl/log/
include/absl/log/absl_check.h
include/absl/log/absl_log.h
include/absl/log/check.h
include/absl/log/check_test_impl.h
include/absl/log/check_test_impl.inc
include/absl/log/die_if_null.h
include/absl/log/flags.h
include/absl/log/globals.h
@ -209,7 +213,7 @@ include/absl/log/internal/test_helpers.h
include/absl/log/internal/test_matchers.h
include/absl/log/internal/voidify.h
include/absl/log/log.h
include/absl/log/log_basic_test_impl.h
include/absl/log/log_basic_test_impl.inc
include/absl/log/log_entry.h
include/absl/log/log_sink.h
include/absl/log/log_sink_registry.h
@ -357,11 +361,17 @@ include/absl/synchronization/blocking_counter.h
include/absl/synchronization/internal/
include/absl/synchronization/internal/create_thread_identity.h
include/absl/synchronization/internal/futex.h
include/absl/synchronization/internal/futex_waiter.h
include/absl/synchronization/internal/graphcycles.h
include/absl/synchronization/internal/kernel_timeout.h
include/absl/synchronization/internal/per_thread_sem.h
include/absl/synchronization/internal/pthread_waiter.h
include/absl/synchronization/internal/sem_waiter.h
include/absl/synchronization/internal/stdcpp_waiter.h
include/absl/synchronization/internal/thread_pool.h
include/absl/synchronization/internal/waiter.h
include/absl/synchronization/internal/waiter_base.h
include/absl/synchronization/internal/win32_waiter.h
include/absl/synchronization/mutex.h
include/absl/synchronization/notification.h
include/absl/time/
@ -408,8 +418,9 @@ include/absl/types/optional.h
include/absl/types/span.h
include/absl/types/variant.h
include/absl/utility/
include/absl/utility/internal/
include/absl/utility/internal/if_constexpr.h
include/absl/utility/utility.h
lib/cmake/
lib/cmake/absl/
lib/cmake/absl/abslConfig.cmake
lib/cmake/absl/abslConfigVersion.cmake
@ -456,6 +467,7 @@ lib/cmake/absl/abslTargets.cmake
@lib lib/libabsl_hash_generator_testing.so.${LIBabsl_hash_generator_testing_VERSION}
@lib lib/libabsl_hashtablez_sampler.so.${LIBabsl_hashtablez_sampler_VERSION}
@lib lib/libabsl_int128.so.${LIBabsl_int128_VERSION}
@lib lib/libabsl_kernel_timeout_internal.so.${LIBabsl_kernel_timeout_internal_VERSION}
@lib lib/libabsl_log_entry.so.${LIBabsl_log_entry_VERSION}
@lib lib/libabsl_log_flags.so.${LIBabsl_log_flags_VERSION}
@lib lib/libabsl_log_globals.so.${LIBabsl_log_globals_VERSION}
@ -501,6 +513,7 @@ lib/cmake/absl/abslTargets.cmake
@lib lib/libabsl_statusor.so.${LIBabsl_statusor_VERSION}
@lib lib/libabsl_str_format_internal.so.${LIBabsl_str_format_internal_VERSION}
@lib lib/libabsl_strerror.so.${LIBabsl_strerror_VERSION}
@lib lib/libabsl_string_view.so.${LIBabsl_string_view_VERSION}
@lib lib/libabsl_strings.so.${LIBabsl_strings_VERSION}
@lib lib/libabsl_strings_internal.so.${LIBabsl_strings_internal_VERSION}
@lib lib/libabsl_symbolize.so.${LIBabsl_symbolize_VERSION}
@ -596,6 +609,7 @@ lib/pkgconfig/absl_hash_testing.pc
lib/pkgconfig/absl_hashtable_debug.pc
lib/pkgconfig/absl_hashtable_debug_hooks.pc
lib/pkgconfig/absl_hashtablez_sampler.pc
lib/pkgconfig/absl_if_constexpr.pc
lib/pkgconfig/absl_inlined_vector.pc
lib/pkgconfig/absl_inlined_vector_internal.pc
lib/pkgconfig/absl_int128.pc
@ -640,6 +654,7 @@ lib/pkgconfig/absl_node_hash_set.pc
lib/pkgconfig/absl_node_slot_policy.pc
lib/pkgconfig/absl_non_temporal_arm_intrinsics.pc
lib/pkgconfig/absl_non_temporal_memcpy.pc
lib/pkgconfig/absl_nullability.pc
lib/pkgconfig/absl_numeric.pc
lib/pkgconfig/absl_numeric_representation.pc
lib/pkgconfig/absl_optional.pc
@ -695,6 +710,7 @@ lib/pkgconfig/absl_statusor.pc
lib/pkgconfig/absl_str_format.pc
lib/pkgconfig/absl_str_format_internal.pc
lib/pkgconfig/absl_strerror.pc
lib/pkgconfig/absl_string_view.pc
lib/pkgconfig/absl_strings.pc
lib/pkgconfig/absl_strings_internal.pc
lib/pkgconfig/absl_symbolize.pc