Andres Freund <andres@anarazel.de> writes:
> On 2025-03-04 19:58:38 +0100, Tomas Vondra wrote:
>> I noticed sifaka started failing right after I pushed this:
> It's worth noting that
> a) sifaka doesn't build with ldap support
> b) the failure is in checkprep, not when running the tests
> c) the buildfarm unfortunately doesn't archive install.log, so it's hard to
> know what actually went wrong
Yeah, I've been poking at that. It's not at all clear why the
animal is trying to run src/test/modules/ldap_password_func
now when it didn't before. I've been through the diffs between
BF client 18 and 19 multiple times and nothing jumps out at me.
What's clear though is that it *is* trying to do "make check"
in that directory, and the link step blows up with
ccache clang -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla
-Werror=unguarded-availability-new-Wendif-labels -Wmissing-format-attribute -Wcast-function-type -Wformat-security
-Wmissing-variable-declarations-fno-strict-aliasing -fwrapv -fexcess-precision=standard
-Wno-unused-command-line-argument-Wno-compound-token-split-by-macro -Wno-cast-function-type-strict -g -O2
-fvisibility=hidden-bundle -o ldap_password_func.dylib ldap_password_func.o -L../../../../src/port
-L../../../../src/common -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.2.sdk
-L/opt/local/libexec/llvm-17/lib-L/opt/local/lib -Wl,-dead_strip_dylibs -fvisibility=hidden -bundle_loader
../../../../src/backend/postgres
Undefined symbols for architecture arm64:
"_ldap_password_hook", referenced from:
__PG_init in ldap_password_func.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
That happens because
(a) ldap_password_hook is not defined unless USE_LDAP;
(b) macOS's linker is persnickety and reports the missing symbol
at shlib link time, not shlib load time.
Maybe we should rethink (a)? In the meantime I'm trying to hack
the script so it skips that test module, and finding out that
my Perl is rustier than I thought.
regards, tom lane