Support LLVM's non-standard import library format on Windows.
Test fails with:
@@ -0,0 +1,13 @@
+ghc: ^^ Could not load 'strdup', dependency unresolved. See top entry above.
+
+
+GHC.ByteCode.Linker: can't find label
+During interactive linking, GHCi couldn't find the following symbol:
+ strdup
+This may be due to you not asking GHCi to load extra object files,
+archives or DLLs needed by your current session. Restart GHCi, specifying
+the missing library using the -L/path/to/object/dir and -lmissinglibname
+flags, or simply by naming the relevant files on the GHCi command line.
+Alternatively, this link failure might indicate a bug in GHCi.
+If you suspect the latter, please report this as a GHC bug:
The problem here seems to be that the clang packaged is old.. The initial version of ucrt didn't implement the POSIX names. But at some point this was changed and Microsoft added these back in but made the compiler emit a warning: https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/strdup-wcsdup?view=msvc-170
And we can see that from the symbols being exported.. old:
0000000000000000 T _strdup
U _strdup
w strdup
and new
0000000000000000 T _strdup
0000000000000000 T strdup
Now there's little point in adding a workaround for GHC because the actual C compiler will reject it as well. So for now I will mark the test as expect broken until clang is updated in the bindist.