maintainer-feedback requested: [Bug 273625] www/chromium: use base iconv

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 07 Sep 2023 19:51:27 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-chromium (Nobody)
<chromium@FreeBSD.org> for maintainer-feedback:
Bug 273625: www/chromium: use base iconv
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273625



--- Description ---
The chromium build does ignore USES=iconv settings. If converters/libiconv is
installed the header ${LOCALBASE}/include/iconv.h is found before base iconv.h.
Since LIBICONV_PLUG defines from USES/iconv.mk do not affect the chromium build
system linking with -liconv was added in commit bfedd5f1f016c. Commit
eb0137c80b62d enforced use of converters/libiconv by switching to
iconv:wchar_t. However chromium builds successfully without libiconv installed
when the modification of third_party/maldoca/BUILD.gn is removed. If base iconv
is sufficient for chromium, then third_party/maldoca/BUILD.gn should simply
define LIBICONV_PLUG like this:

-- cut --
--- third_party/maldoca/BUILD.gn~	2022-11-20 12:40:52.000000000 +0100
+++ third_party/maldoca/BUILD.gn	2022-11-21 09:48:50.410589000 +0100
@@ -18,6 +18,9 @@ config("maldoca_flags") {

 config("maldoca_chromium_config") {
   defines = [ "MALDOCA_IN_CHROMIUM" ]
+  if (is_bsd) {
+    defines += [ "LIBICONV_PLUG" ]
+  }
 }

 static_library("zlibwrapper") {
-- cut --

Whether this approach works on OpenBSD, I do not know. It does work on FreeBSD.

Maybe USES=iconv should removed completely since it does not work as intended
for chromium build.