-
-
Notifications
You must be signed in to change notification settings - Fork 124
Description
Hi, downstream issue msys2/MINGW-packages#13390
For the first issue, copying relevant info here:
Previously, with 1.8.0, I got:
$ pkgconf --static --libs opusurl
-LC:/msys64/ucrt64/lib -lopusurl -lopusfile -LC:/msys64/ucrt64/lib -logg -lopus -lm -lssp -LC:/msys64/ucrt64/lib -lssl -LC:/msys64/ucrt64/lib -lws2_32 -lgdi32 -lcrypt32 -lcrypto -lws2_32 -lgdi32 -lcrypt32
(note the -lssl
being after -lopusurl
)
After MSYS2 updated to 1.9.3, I got:
$ pkgconf --static --libs opusurl
-LC:/msys64/ucrt64/lib -lssl -LC:/msys64/ucrt64/lib -lcrypto -lws2_32 -lgdi32 -lcrypt32 -lopusurl -lopusfile -LC:/msys64/ucrt64/lib -logg -lopus -lm -lssp
(note the position of -lssl
)
I've narrowed that issue down to 197fcad, I have one that seems to work for opusurl, but not for another issue.
Second issue that is not present in the downstream issue since I just now found out about it:
with a custom compiled static gnutls and 1.8.0, I got:
$ pkgconf --static --libs gnutls
-LD:/mabs/local32/lib -lgnutls -lws2_32 -lws2_32 -lws2_32 -lgmp -latomic -ladvapi32 -lcrypt32 -lncrypt -lbcrypt -lcrypt32 -LD:/mabs/msys64/mingw32/lib -lnettle -lhogweed -lgmp -LD:/mabs/msys64/mingw32/lib -lnettle -ltasn1 -lz -lbrotlienc -LD:/mabs/msys64/mingw32/lib -lbrotlicommon -lbrotlidec -LD:/mabs/msys64/mingw32/lib -lbrotlicommon -lzstd
(note the duplicate -lnettle
after -lhogweed
)
However, with 1.9.3, I got:
$ pkgconf --static --libs gnutls
-LD:/mabs/local32/lib -lgnutls -lws2_32 -lws2_32 -lws2_32 -lgmp -latomic -ladvapi32 -lcrypt32 -lncrypt -lbcrypt -lcrypt32 -LD:/mabs/msys64/mingw32/lib -lnettle -lhogweed -lgmp -ltasn1 -lz -lbrotlienc -LD:/mabs/msys64/mingw32/lib -lbrotlicommon -lbrotlidec -lzstd
(notice the lack of the duplicate -lnettle
after -lhogweed
)
gnutls.pc lists Requires.private: nettle, hogweed, libtasn1, zlib, libbrotlienc, libbrotlidec, libzstd
hogweed.pc (from msys2) lists Requires.private: nettle
nettle.pc (from msys2) lists Libs: -L${libdir} -lnettle
Somehow, the fact that hogweed depends on nettle either disappears or isn't sorted properly.
Down-downstream issue for this is m-ab-s/media-autobuild_suite#2298 (comment)
link line copied here from ffmpeg's config.log
ccache g++ -pipe -static-libgcc -static-libstdc++ -L/local64/lib -L/mingw64/lib -Wl,--nxcompat,--dynamicbase -Wl,--high-entropy-va -Wl,--as-needed -Wl,--pic-executable,-e,mainCRTStartup -Wl,--image-base,0x140000000 -ID:/mabs/local64/include -ID:/mabs/msys64/mingw64/include -LD:/mabs/local64/lib -LD:/mabs/msys64/mingw64/lib -LD:/mabs/msys64/mingw64/lib -o /tmp/ffconf.iqeyOE8l/test.exe /tmp/ffconf.iqeyOE8l/test.o -lgnutls -lws2_32 -lws2_32 -lws2_32 -lgmp -latomic -ladvapi32 -lcrypt32 -lncrypt -lbcrypt -lcrypt32 -lnettle -lhogweed -lgmp -ltasn1 -lz -lbrotlienc -lbrotlicommon -lbrotlidec -lzstd
D:/mabs/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/12.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: D:/mabs/msys64/mingw64/lib/libhogweed.a(pkcs1-sec-decrypt.o):(.text+0xa0): undefined reference to `nettle_cnd_memcpy'
This one seems to affect linux as well as compiling latest master (0226cdd) shows the lack of nettle after hogweed as well, despite it being present in 1.8.0. The first issue is not present on linux