head 1.2; access; symbols pkgsrc-2026Q1:1.2.0.2 pkgsrc-2026Q1-base:1.2 pkgsrc-2025Q4:1.1.0.16 pkgsrc-2025Q4-base:1.1 pkgsrc-2025Q3:1.1.0.14 pkgsrc-2025Q3-base:1.1 pkgsrc-2025Q2:1.1.0.12 pkgsrc-2025Q2-base:1.1 pkgsrc-2025Q1:1.1.0.10 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.8 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.6 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.4 pkgsrc-2024Q2-base:1.1 pkgsrc-2024Q1:1.1.0.2 pkgsrc-2024Q1-base:1.1; locks; strict; comment @# @; 1.2 date 2026.02.24.20.48.20; author christos; state Exp; branches; next 1.1; commitid FHKIOTKBkDqMHFvG; 1.1 date 2024.01.01.12.01.00; author ryoon; state Exp; branches; next ; commitid O2PcmBt1d9Sm1KSE; desc @@ 1.2 log @fix for new elf versym type. @ text @$NetBSD: patch-third__party_abseil-cpp_netbsd-sunos.patch,v 1.1 2024/01/01 12:01:00 ryoon Exp $ --- third_party/abseil-cpp/netbsd-sunos.patch.orig 2023-11-29 10:06:39.399538673 +0000 +++ third_party/abseil-cpp/netbsd-sunos.patch @@@@ -0,0 +1,85 @@@@ +--- absl/debugging/internal/vdso_support.cc 2021-11-04 00:26:14.000000000 +0900 ++++ absl/debugging/internal/vdso_support.cc 2023-11-29 18:58:33.941707708 +0900 +@@@@ -50,8 +50,14 @@@@ + #define AT_SYSINFO_EHDR 33 // for crosstoolv10 + #endif + ++#if defined(__NetBSD__) ++using Elf32_auxv_t = Aux32Info; ++using Elf64_auxv_t = Aux64Info; ++#endif + #if defined(__FreeBSD__) ++#if defined(__ELF_WORD_SIZE) && __ELF_WORD_SIZE == 64 + using Elf64_auxv_t = Elf64_Auxinfo; ++#endif + using Elf32_auxv_t = Elf32_Auxinfo; + #endif + +@@@@ -93,6 +101,9 @@@@ + } + } + #endif // ABSL_HAVE_GETAUXVAL ++#if defined(__sun) ++ return nullptr; ++#else // !__sun + if (vdso_base_.load(std::memory_order_relaxed) == kInvalidBase) { + int fd = open("/proc/self/auxv", O_RDONLY); + if (fd == -1) { +@@@@ -104,8 +115,13 @@@@ + ElfW(auxv_t) aux; + while (read(fd, &aux, sizeof(aux)) == sizeof(aux)) { + if (aux.a_type == AT_SYSINFO_EHDR) { ++#if defined(__NetBSD__) ++ vdso_base_.store(reinterpret_cast(aux.a_v), ++ std::memory_order_relaxed); ++#else + vdso_base_.store(reinterpret_cast(aux.a_un.a_val), + std::memory_order_relaxed); ++#endif + break; + } + } +@@@@ -127,6 +143,7 @@@@ + // from assigning to getcpu_fn_ more than once. + getcpu_fn_.store(fn, std::memory_order_relaxed); + return vdso_base_.load(std::memory_order_relaxed); ++#endif // __sun + } + + const void *VDSOSupport::SetBase(const void *base) { + +--- absl/debugging/internal/elf_mem_image.cc 2021-11-04 00:26:14.000000000 +0900 ++++ absl/debugging/internal/elf_mem_image.cc 2023-09-18 23:40:01.000000000 +0900 +@@@@ -351,7 +350,11 @@@@ + const ElfW(Versym) *version_symbol = image->GetVersym(index_); + ABSL_RAW_CHECK(symbol && version_symbol, ""); + const char *const symbol_name = image->GetDynstr(symbol->st_name); ++#if defined(__NetBSD__) && (_SYS_EXEC_ELF_H_ + 0) < 2 ++ const int version_index = version_symbol->vs_vers & VERSYM_VERSION; ++#else + const ElfW(Versym) version_index = version_symbol[0] & VERSYM_VERSION; ++#endif + const ElfW(Verdef) *version_definition = nullptr; + const char *version_name = ""; + if (symbol->st_shndx == SHN_UNDEF) { + +--- absl/base/config.h.orig 2023-11-29 11:18:01.165394118 +0000 ++++ absl/base/config.h +@@@@ -414,7 +414,7 @@@@ static_assert(ABSL_INTERNAL_INLINE_NAMES + defined(_AIX) || defined(__ros__) || defined(__native_client__) || \ + defined(__asmjs__) || defined(__wasm__) || defined(__Fuchsia__) || \ + defined(__sun) || defined(__ASYLO__) || defined(__myriad2__) || \ +- defined(__HAIKU__) ++ defined(__HAIKU__) || defined(__NetBSD__) + #define ABSL_HAVE_MMAP 1 + #endif + +@@@@ -425,7 +425,7 @@@@ static_assert(ABSL_INTERNAL_INLINE_NAMES + #ifdef ABSL_HAVE_PTHREAD_GETSCHEDPARAM + #error ABSL_HAVE_PTHREAD_GETSCHEDPARAM cannot be directly set + #elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || \ +- defined(_AIX) || defined(__ros__) ++ defined(_AIX) || defined(__ros__) || defined(__NetBSD__) + #define ABSL_HAVE_PTHREAD_GETSCHEDPARAM 1 + #endif + @ 1.1 log @devel/bazel: import bazel-6.4.0 {Fast, Correct} - Choose two Build and test software of any size, quickly and reliably. * Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds. * One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux. * Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo. * Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community. @ text @d1 1 a1 1 $NetBSD$ d62 1 a62 1 ++#if defined(__NetBSD__) @