From 634986a6a6dcab3f06fe552606e5700f3fb3d383 Mon Sep 17 00:00:00 2001
From: Grisha Levit <grishalevit@gmail.com>
Date: Tue, 29 Jul 2025 17:36:30 -0400
Subject: [PATCH] build: fix macOS build without libintl

* configure.ac (USE_NLS): new AM_CONDITIONAL.
* src/local.mk: add @INTL_MACOSX_LIBS@ to <prog>_LDADD that need it.
---
 configure.ac |  2 +-
 src/local.mk | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/configure.ac b/configure.ac
index b44687204..1a188ebbb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -845,13 +845,13 @@ AC_SUBST([EXTRA_MANS])          AM_SUBST_NOTMAKE([EXTRA_MANS])
 AC_SUBST([built_programs], [$optional_bin_progs])
 
 AM_CONDITIONAL([CROSS_COMPILING], [test "$cross_compiling" = yes])
-
 ############################################################################
 
 # As long as "grep 'PRI[diouxX]' po/*.pot" reports matches in
 # translatable strings, we must use need-formatstring-macros here.
 AM_GNU_GETTEXT([external], [need-formatstring-macros])
 AM_GNU_GETTEXT_VERSION([0.19.2])
+AM_CONDITIONAL([USE_NLS], [test "$USE_NLS" = yes])
 
 # For a test of uniq: it uses the $LOCALE_FR envvar.
 gt_LOCALE_FR
diff --git a/src/local.mk b/src/local.mk
index 50957a8cd..fe105212b 100644
--- a/src/local.mk
+++ b/src/local.mk
@@ -335,6 +335,16 @@ src_sort_LDADD += $(LIBPMULTITHREAD)
 # for pthread_sigmask
 src_sort_LDADD += $(PTHREAD_SIGMASK_LIB)
 
+if !USE_NLS
+# for CFPreferencesCopyAppValue
+src_date_LDADD += @INTL_MACOSX_LIBS@
+src_du_LDADD += @INTL_MACOSX_LIBS@
+src_ls_LDADD += @INTL_MACOSX_LIBS@
+src_pr_LDADD += @INTL_MACOSX_LIBS@
+src_stat_LDADD += @INTL_MACOSX_LIBS@
+src_uptime_LDADD += @INTL_MACOSX_LIBS@
+endif
+
 # Get the release year from lib/version-etc.c.
 RELEASE_YEAR = \
   `sed -n '/.*COPYRIGHT_YEAR = \([0-9][0-9][0-9][0-9]\) };/s//\1/p' \
-- 
2.50.1

