git: 51b815d204e7 - main - www/envoy: unbreak the port's build on i386 (at least)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 16 Jun 2023 11:26:43 UTC
The branch main has been updated by danfe:
URL: https://cgit.FreeBSD.org/ports/commit/?id=51b815d204e78b3af2cbdbbba67e06e4017d8515
commit 51b815d204e78b3af2cbdbbba67e06e4017d8515
Author: Alexey Dokuchaev <danfe@FreeBSD.org>
AuthorDate: 2023-06-16 11:26:06 +0000
Commit: Alexey Dokuchaev <danfe@FreeBSD.org>
CommitDate: 2023-06-16 11:26:06 +0000
www/envoy: unbreak the port's build on i386 (at least)
Abseil developers say they don't know of anything faster than
CityHash32 for 32-bit x86 code, thus we must link this symbol
to unbreak the build:
ld: error: undefined symbol: absl::lts_20220623::
hash_internal::CityHash32(char const*, unsigned int)
>>> referenced by access_log_impl.cc
---
www/envoy/Makefile | 1 -
www/envoy/files/makefile-main | 5 ++++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/www/envoy/Makefile b/www/envoy/Makefile
index 6765c0d10dd7..d19216c4f84d 100644
--- a/www/envoy/Makefile
+++ b/www/envoy/Makefile
@@ -11,7 +11,6 @@ WWW= https://www.envoyproxy.io/
LICENSE= APACHE20
-BROKEN_i386= makes a lot of 64-bit assumptions (patches welcome)
BROKEN_SSL= base openssl libressl libressl-devel
BROKEN_SSL_REASON= requires BoringSSL
diff --git a/www/envoy/files/makefile-main b/www/envoy/files/makefile-main
index 1821e2ec7602..55fbea6677e5 100644
--- a/www/envoy/files/makefile-main
+++ b/www/envoy/files/makefile-main
@@ -724,8 +724,11 @@ server/admin/html/admin_html_gen.h:
%.o: %.cc
$(CCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $(<:.cc=.o) -c $<
+maybe_city = $(if $(shell nm -C common/access_log/access_log_impl.o \
+ | grep ::hash_internal::CityHash),city)
+
ABSEIL_LIBS=\
- base cord cordz_functions cordz_info flags_commandlineflag \
+ base $(maybe_city) cord cordz_functions cordz_info flags_commandlineflag \
flags_internal flags_marshalling flags_parse flags_reflection \
hash raw_hash_set spinlock_wait stacktrace status statusor \
str_format_internal strings symbolize synchronization \