A directory contains a program's source code, a file named "
LICENSE" that indicates that the program is licensed under license A, and a library ("
lib.c") containing license B. A is wider and less specific than B because it applies to multiple files without specifying them.
What happens by default in the case wherein A and B are different? Does A apply to
- How are conflicts resolved?
- Do B's provisions override the conflicting provisions in A?
- Do A's provisions override the conflicting provisions in B?
- Do the most restrictive provisions prevail?
- Do the most permissive provisions prevail?
- Is A ignored entirely for
I was unable to find an answer to this question through Google but common sense suggests that either
- A is always ignored or
- if the licenses conflict, then solution #1 is implemented.
An article (under the heading "Conflicting provisions") that I found explains that in contracts with conflicting provisions more specific provisions prevail over wider provisions. I don't know the degree whereto this conflict resolution applies here but I imagine that it could imply solution #1 if the licenses are combined. That still does not answer the initial question about whether A applies to
lib.c or not but I presume that it applies unless B explicitly states otherwise.
You might say that this is balderdash and that I should just clear up the ambiguity in the documentation and I guess that you would be correct but say that to everybody else.
The compilation result's licensing is not on this question's topic.