
Ruediger Berlich wrote:
Dear Peter,
my question evolves from the following excerpt from the BSL:
"Permission is hereby granted [...] to prepare derivative works [...] subject to the following: The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included [...] (in) all derivative works of the Software, [...]".
My interpretation of this is the following (and it is quite possible that to an English native speaker accustomed to legal speach this is an entirely stupid view ;-)
If the definition of "derivative works" includes activities commonly understood as "usage" then, as per the above excerpt, basically any person just using Boost in an application has to a) include a copyright notice for the corresponding Boost library's author in the code (despite the fact that no modifications of that library's code took place) b) include the Boost license in his/her code.
... It would help if we use specific examples. Let's say that you have // foo.cpp // Copyright 2007 Joe Q. Author. All rights reserved. #include <boost/shared_ptr.hpp> int main() { boost::shared_ptr<int> px( new int( 5 ) ); } Are you concerned that this foo.cpp may be considered a derivative work of boost/shared_ptr.hpp? My non-lawyer opinion is that it isn't, even if we use a Boost interface that is not already in TR1 and on its way to C++0x. Are you concerned that foo.o/.obj is a derivative work of shared_ptr.hpp? It may or may not be - this is a somewhat gray area because of the inlining - but the BSL specifically places no restrictions on derivative works in .obj form.