On Thu Jun 05 18:02, Vincent Danjean wrote: > What I'm thinking with a program that links with 2 libraries: > NOT valid: progA[GPL]{libssl}
if this is not valid then neither is: > valid: progA[GPL+ssl]{libssl,libB[GPL]} here you are linking libssl and libB[GPL] into the same process so the resulting binaries must be distributed under a licence which satisfies both clauses, which you cannot. It's exactly the same as: > progA[GPL]{libssl} and > NOT valid: progA[BSD]{libssl,libB[GPL]} and > NOT valid: progA[GPL]{libB[LGPL+ssl]{libssl}} and also therefore: > valid: progA[GPL+ssl]{libB[LGPL+ssl]{libssl},libC[GPL]} which is also not allowed. Nor is: > valid: progA[GPL+ssl]{libB[BSD]{libssl},libC[GPL]} Basically, you have to take the entire linked set and satisfy all licences simultaneously. If any component is GPL and any other component openssl, the result is not distributable. Incidentally that also applies for: A[GPLv3]{B[GPLv2+]{C[GPL2]}} even though A and B can be combined as can B and C. Note that this does not apply to "system libraries" which the GPL specifically exempts (eg libc). Matt
signature.asc
Description: Digital signature