34

Can I develop a BSD-licensed software that extends an Apache-licensed software (and vice-versa)?

Jimmy Hoffa
  • 16,039
  • 3
  • 69
  • 80
michelemarcon
  • 598
  • 1
  • 5
  • 8

4 Answers4

32

The short answer is that if you use open source software in your project, you must satisfy all the requirements laid out in that license.

Neither BSD nor Apache 2.0 is a "viral" license, meaning AFAIK it makes no demands on the other source code you include it with. That also means that unlike GPL, you aren't releasing a "product" under a BSD or Apache license, but each file or section of code is licensed under the license that the author released it under.

So you could have a project where one module was BSD and one module was Apache, and I see no reason why you couldn't distribute that, as long as you were explicit about it. Note that IANAL.

Do you have the right to take Apache licensed code and re-license it as BSD? I highly doubt it. I believe Apache has a couple more restrictions on it than BSD. You'd have to keep the original copyright notice, of course, but I also believe you have to do a bit extra when releasing changes to it, and you couldn't (or at least shouldn't) remove those conditions by changing the license.

You may include (extend) BSD licensed code in an Apache v2.0 licensed code base, including source code managed by the Apache Software Foundation.

For the purposes of being a dependency to an Apache product, which licenses are considered to be similar in terms to the Apache License 2.0? Works under the following licenses may be included within Apache products:

• BSD (without advertising clause). Including variants:

◦ BSD 2-clause

◦ BSD 3-clause

Please consult your attorney for risk and compliance advise.

Jason Pyeron
  • 103
  • 4
Scott Whitlock
  • 21,874
  • 5
  • 60
  • 88
16

Short answer: Yes. The Apache Software License was based in large part on BSD and MIT style licenses. The common understanding while I was working on Apache code a while back was that you could incorporate BSD, MIT, and similar licensed libraries but you could not do the same for GPL based licenses.

If you have further questions, I highly recommend going directly to Apache:

They are a group of really nice guys, and they are pretty reasonable.

Bart van Ingen Schenau
  • 71,712
  • 20
  • 110
  • 179
Berin Loritsch
  • 45,784
  • 7
  • 87
  • 160
5

The best answer for this can be found in the apache third party license policy. This is the policy that all apache projects have to follow when using libs with other licenses. As you can see BSD is listed in Category A - Authorized licenses. So it should be no problem using this license. You can also find policies for other licenses here which is quite helpful. In fact I think the Apache policy may also be a good starting point for you own licensing policy if you work for a company.

http://www.apache.org/legal/resolved.html

2

Here is very useful site:

In your case: apache-2.0 and BSD.

In both of them you must:

  • Include copyright

But in Apache, unlike BSD you must:

  • Include License
  • State Changes
  • Include Notice

UPD

This info taken from tldrlegal.com

And as they notice:

This is only a short summary of the Full Text. No information on TLDRLegal is legal advice.

Please, see discussion in comments with @DmitryAlexandrov for more info.

skywinder
  • 137
  • 4
  • 2
    This answer doesn't address the issue of extending an apache licensed project with a BSD license. –  Jun 23 '14 at 17:17
  • @MichaelT this answer helps to understand difference between these licenses. Thus, of course, help to understand the aspects in which they are compatible, and which is not. – skywinder Jun 23 '14 at 19:47
  • What do mean by ‘unlike BSD [Licence]’? BSDL (all three of them) *does* require to include copyright notices and licence conditions both in source and binary distributions. – Dmitry Alexandrov Jan 03 '15 at 09:08
  • @DmitryAlexandrov probably I missed smth. I found it here: https://tldrlegal.com/license/bsd-3-clause-license-(revised) and here: https://tldrlegal.com/license/apache-license-2.0-(apache-2.0) in column **must** – skywinder Jan 05 '15 at 07:12
  • 1
    @skywinder I guess, you missed [the text of the licence](https://directory.fsf.org/wiki/License:BSD_3Clause). :-) Please, don’t delete the answer, it might be useful as an illustration on why such wiki-pages as tldrlegal.com are harmful. – Dmitry Alexandrov Jan 06 '15 at 01:14
  • 1
    @DmitryAlexandrov Got it, I updated answer, to notice users about potential mismatches. – skywinder Jan 06 '15 at 14:04