Wolfgang,

" I wonder if we should turn the comment as we have it now into actual code, i. 
e. into a macro that compiles the license ID into the generated object file.  
We could easily make the linker combine identical tags into a single entry, to 
the total memory overhead would be minimal - but then it would be possible to 
easily find out which components have actually been built into the final 
product, so which licenses apply tho that.  You don;t have to bother about 
license terms for code that you don;t actually use in your product, right?"

Ed (can't remember his last name) from Cisco actually prototyped this and did 
some real examples. He was also capturing the copyrights I believe which did 
make the memory requirements somewhat higher. If we only captured license 
information it would be doable but we would have to decide that the copyright 
info in there was something we could do without or get a different way. Maybe 
we can get Ed to re-post his work. I agree it was nice and solved some thorny 
issues.

Should we also add similar tags to list known patents etc.?  for example, the 
FAT code could be augmented like that:

Interesting tag. I know Yocto does something similar with packages and warning 
that there might be patents in an area. I don't recall the exact language  and 
Im pretty sure they don't list  a specific patent but use an mp3 codec and you 
will see it :). It's useful.

I agree there could be more tags as you suggest. This is one reason why I left 
the door open on the wiki page for that. As an example I would like to see one 
to capture license exceptions. As an example consider FreeRTOS. It could say as 
an example:

SPDX-License-Identifier: GPL-2.0  
SPDX-License-Exception:  " The modification to the GPL is included to allow you 
to distribute a combined work that includes FreeRTOS without being obliged to 
provide the source code for proprietary components outside of the FreeRTOS 
kernel."

 It seems as though we are reaching some consensus on the Identifier and that 
we should be considering other tags as well? I will try and summarize so I can 
update wiki page.


Jack

-----Original Message-----
From: Wolfgang Denk [mailto:w...@denx.de] 
Sent: Thursday, October 10, 2013 6:43 AM
To: Lamons, Scott (Open Source Program Office)
Cc: Manbeck, Jack; Jilayne Lovejoy; spdx-tech@lists.spdx.org; Meier, Roger; 
SPDX-biz; SPDX-legal
Subject: Re: meta-tag page

Dear Scott,

In message 
<36b44e6fbcd79f48b50fd2e0122f7dce3bab2...@g9w0766.americas.hpqcorp.net> you 
wrote:
> 
> I applaud the your efforts in the u-boot project to clean up the 
> licensing and make a clear choice using the spdx license tag;

Thanks!

>                                                               however 
> I'm not convinced that all projects would be willing or even able to 
> do that and therefore I stand pretty firm in my opinion that it 
> shouldn't be a requirement to do so -- perhaps a recommendation or 
> best practice. IMO, there's still a lot of value in adding the tags 
> because they will enable automated production of SPDX and required 
> notices.

I agree.  Especially for smaller projects with a more homogenous code base 
there is probably not so much benefit to switch.  On the other hand, in complex 
projects (like U-Boot, which borrows code from a lot of other projects, 
including for example the Linux kernel, BusyBox, libfdt, YAFFS, ...) we may be 
faced with a mix of different license terms.  If such code is used in 
commercial projects (where things like license clearing reports become an 
issue), the change can greatly reduce the effort for any such license audits.


Actually I wonder if we should not take the idea even a step further.
So far we only focus on the license terms of the source code.
However, U-Boot is very flexible to configure, and as is it is not trvial to 
tell if a specific piece of code actually gets linked into the final product.  
I wonder if we should turn the comment as we have it now into actual code, i. 
e. into a macro that compiles the license ID into the generated object file.  
We could easily make the linker combine identical tags into a single entry, to 
the total memory overhead would be minimal - but then it would be possible to 
easily find out which components have actually been built into the final 
product, so which licenses apply tho that.  You don;t have to bother about 
license terms for code that you don;t actually use in your product, right?


And there is another topic that's on my mind.  License terms for the source 
code are one thing, but there are is additional information that may be 
relevant when releasing a product, for example (known) patents or other 
intellectual property rights that may apply.  For example, despite the fact 
that all code to implement FAT/VFAT file system support is licensed under 
GPL-2.0+ in U-Boot, we know that Microsoft holds patents on parts of that 
technology, which may become an issue if you include VFAT support in your 
product.

Should we also add similar tags to list known patents etc.?  for example, the 
FAT code could be augmented like that:

SPDX-Patent-Notice: US5,579,517 US5,758,352 US5,745,902 US6,286,013 EP0618550

[Of course I'm not sure if SPDX would cover such an entry; I'm just interested 
in feedback for the general idea.]


>          I do wonder however if the tag should contain some link or 
> reference to the actual license text as discussed in some of the other 
> replies to this post. I actually don't like the idea of a link because 
> there's really no guarantee it survives the lifespan of the code. This 
> suggests to me that centralizing the license text (e.g in the root 
> directory or license subdirectory) and some sort of reference to the 
> file level tagging needs to be part of our recommendation or best 
> practice.

I fully agree that just providing an URL to the (current) location of a license 
is not sufficient, as we have zero control of the location or content of such 
documents - they may disappear or be modified any time, which would leave the 
license terms of our project undefined.
I think iti is mandatory to include a verbatim copy of the applicable license 
texts as part of the source code of the project.

> Thanks for your feedback and helping us "blaze the trail" on this initiative.

Thanks for picking it up - I'm glad to see things get rolling!

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de "An 
organization dries up if you don't challenge it with growth."
       - Mark Shepherd, former President and CEO of Texas Instruments
_______________________________________________
Spdx-tech mailing list
Spdx-tech@lists.spdx.org
https://lists.spdx.org/mailman/listinfo/spdx-tech

Reply via email to