copyright open-source-software
What is a binary form in software BSD license (and other licenses that didn&#39;t define it)?
<p>BSD license says (emphasis mine):</p>
<blockquote>
<p>Redistribution and use in <strong>source and binary forms</strong>, with or without modification, are permitted provided that the following conditions are met...</p>
</blockquote>
<p>It sounds &quot;binary form&quot; refers to the form of software in which the content is just an array of 1's and 0's, which are, after all, &quot;binary&quot;.</p>
<p>But what about the output form that is not exactly 1's and 0's? For instance, JavaScript files get minified/uglified in a &quot;bundling process&quot; (a usual step in website and JS library building), the output isn't exactly 1's and 0's, but very-difficult-to-read files, for example:</p>
<pre><code>!function(a,b){&quot;object&quot;==typeof module&amp;&amp;&quot;object&quot;==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error(&quot;jQuery requires a window with a document&quot;);return b(a)}:b(a)}(&quot;undefined&quot;!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m=&quot;1.12.4&quot;,n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z]
</code></pre>
<p>Are these output files covered by the definition of &quot;binary form&quot; of the BSD license?</p>
<p>Another example is raw HTML, CSS, and textual files - after &quot;bundling&quot;, they usually stay more or less the same as the source. Are they covered by the definition of &quot;binary form&quot; in the BSD license?</p>
<p>This is a hypothetical question to test the robustness of the license's wording.</p>

<p>Ultimately, these terms would have to be interpreted by a court in order to get clarity. But the phrasing “source or binary form” should likely be understood as “not just source form, but <em>any</em> form of the software”. The BSD license family does not have different conditions for different forms of the software, so it is not necessary to understand what precisely a binary form is – just whether a software is in “source or binary form”.</p>
<p>As far as I can see, minified or bundled software are a “source or binary form”. The BSD licenses' attribution requirements will apply.</p>
<p>There are licenses that do make a distinction. For example, the Boost license is BSD-like with respect to the source code, but exempts binary forms from its attribution requirements. But Boost provides a clearer definition: “machine-executable object code generated by
a source language processor”. The GPL family also makes a distinction, because it always requires the source code to be made available. The GPLv3 defines the source code as the “preferred form for making modifications”, and object code (binary form) as any non-source form.</p>
