Thank you for your review! Danny Milosavljevic writes: >> + (snippet >> + '(let ((p (open-file "argon2.pc" "a"))) > ... ^ why? > >> + (begin >> + (display >> + (string-append "prefix=/usr/local\n" >> + "exec_prefix=${prefix}\n" >> + "includedir=${prefix}/include\n" >> + "libdir=${prefix}/lib\n\n" >> + "Name: Argon2\n" >> + "Description: " >> + "The Argon2 password hashing algorithm\n" >> + "Version: 1.0.0\n" >> + "Cflags: -I${includedir}/\n" >> + "Libs: -L${libdir} -largon2\n") p) >> + (close-output-port p)))) > > Ok but please try to upstream this as well. OK, I will look into that. > >> + (zero? (system* "ln" "-s" >> + (string-append out "/lib/libargon2.so") >> + (string-append out "/lib/libargon2.so.0"))) > > The result of this will be ignored. Did you mean "(and ...)"? Oops! Yes, I will send an updated patch later today. > >> + (zero? (system* ; Fix compatability for libtool based builds. >> + "ln" "-s" >> + (string-append out "/lib/libargon2.so") >> + (string-append out "/lib/libargon2.so.0.0.0"))))))))) > > Doesn't this have a soversion other than 0? I mean it's OK, I'm just > asking to be sure - because the pkg-config file lists 1.0.0 and the > name of the pkg-config file contains no soversion at all. I am actually not sure about this. I noticed that one of the packages that depends on opendht (I think libring, but need to make sure) is looking for 'libargon2.so.0.0.0'. I did not find a way to convince it to use 'libargon2.so' other than creating this symlink. I am not sure if this is a good/acceptable way to solve this, it is probably not the intended way. I also could not find documentation on this issue and i am not sure which part of the toolchain is responsible for making the '.so.X.X.X' versions of a library. Thank you! Best, Lukas