CDDL is a weak-copyleft license. Anything that's a derivative of CDDL-licensed works must also be licensed under CDDL. This is in contrast to permissive licenses like BSD; you can derive a BSD-licensed work and license your changes under whatever license you wish, so long as you preserve the copyright notices (including the BSD license text).
Worth noting is how this differs from a strong-copyleft license like the GPL. If you combine a strong-copyleft licensed work with another work, the whole work must be available under the terms of the strong-copyleft license, even if the combined portions are not derivatives of each other.
So to give an example scenario: suppose there's an open source software for making Neapolitan pizzas, free-pizza
. You extend (i.e. derive) the library so that it can make ice-cream pizzas, and call it free-icecream-pizza
. You then combine it with an unrelated piece of software you wrote that slices circular food of any kind (including cakes and pies), free-food-slicer
, to create a combined piece of software that you call free-sliced-icecream-pizza
.
- If
free-pizza
was permissive (e.g. BSD), you can distribute free-icecream-pizza
and free-sliced-icecream-pizza
under whatever license you wish, so long as the copyright notices for free-pizza
are retained.
- If
free-pizza
was weak-copylefted (e.g. CDDL), you must make free-icecream-pizza
available under the same license, including when it's combined in free-sliced-icecream-pizza
, but the free-food-slicer
portion can be whatever license you want.
- If
free-pizza
was strong-copylefted (e.g. GPL), all three components - free-pizza
, free-icecream-pizza
, free-sliced-icecream-pizza
- must be available under the strong-copyleft license. You can still distribute the non-free-pizza
portions under other licenses, but this must be in addition to the strong-copyleft license.