Subject: Invalid %host-type on macOS, breaking dynamic loading

From: Matthew Keeter <[email-masked]>
Date: Sat, 15 May 2021 19:21:32 -0400

Good evening,

I’m running into an interesting issue with Guile 3.07, where dynamic-link has stopped working (macOS 10.14).

(details in this thread: https://github.com/libfive/libfive/issues/440)

Hunting through the code, I see that foreign-library.scm defines system-library-extensions by checking
	(string-contains %host-type "-darwin-“)

However, my local %host-type is "x86_64-apple-darwin18.7.0” – note the lack of dash after “darwin”, which means this doesn’t match, so it doesn’t look for files ending in “dylib”

Is this a Guile bug, or is the %host-type triple constructed wrong somehow?

(I know that dynamic-link is deprecated, but load-dynamic-library is also broken due to this)

Thanks,
Matt Keeter