I'd actually recommend MPL instead, because it enforces copyleft on the source file level rather than the library level. This makes it unambiguously applicable to just about anything other than Smalltalk, whereas the LGPL's terminology is slanted towards C/++ semantics.