Well these are observational findings, perhaps related to Arch’s specifics, being so called ‘bleeding edge’ by nature.
I report these findings in case it’s known to you and a fix can be pointed to, or in case these findings might be useful in the future. I am well aware your build infrastructure is quite different and well described in your factory pages. I am not an IT pro, and won’t ever have such knowledge to venture in advanced tasks like a new pull request.
So in all, I’ll maintain locally a few tweaks that allow me to build Slicer.
As for the ssh2 issue, the new curl pulled in has much to do with ssh2 :
LANG=C LC_ALL=C readelf -hs src/Slicer-SuperBuild/curl-build/lib/libcurl.a |grep ssh
30: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Curl_ssh_init
35: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Curl_ssh_cleanup
9: 0000000000000000 80 OBJECT LOCAL DEFAULT 4 ssh_buffer.0
24: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Curl_ssh_version
File: src/Slicer-SuperBuild/curl-build/lib/libcurl.a(libssh.c.o)
1: 0000000000000000 0 FILE LOCAL DEFAULT ABS libssh.c
File: src/Slicer-SuperBuild/curl-build/lib/libcurl.a(libssh2.c.o)
1: 0000000000000000 0 FILE LOCAL DEFAULT ABS libssh2.c
5: 0000000000000000 9 FUNC LOCAL DEFAULT 1 my_libssh2_malloc
6: 0000000000000010 9 FUNC LOCAL DEFAULT 1 my_libssh2_realloc
7: 0000000000000020 17 FUNC LOCAL DEFAULT 1 my_libssh2_free
… …
May be I don’t interpret it rightly. I may of course give you more information you may need.