acassis commented on PR #3362:
URL: https://github.com/apache/nuttx-apps/pull/3362#issuecomment-3780363756

   Good work @ghnotgood, some observations/questions:
   1) what do you mean by "NOASSERTION", I noticed that netutils/telnetc for 
example is "Apache-2.0"
   2) ZLIB is also a standard and known license, I think we need to add 
ALLOW_ZLIB_COMPONENTS
   3) why Tinydtls is null, and it shows it is already depending on 
ALLOW_ECLIPSE_COMPONENTS?
   
   I think we need to implement some kind of LICENSE tracking, like I suggested 
in https://github.com/apache/nuttx/pull/8326
   
   Something like this:
   
   enum {
       NX_LIC_APACHE_2_0 = (1 << 0),
       NX_LIC_BSD_3_CLAUSE = (1 << 1),
       NX_LIC_MIT = (1 << 2),
       NX_LIC_GPL_V2 = (1 << 3),
       …
   };
   
   extern uint32_t g_nx_license_bits;
   
   #define NX_ADD_LICENSE(x) (g_nx_license_bits |= (x))
   
   Or maybe something even better, like a license map to know which 
program/library added that license, for easy tracking:
   
   // license_map.h
   
   typedef struct {
       const char *module;
       uint32_t license_bit;
       const char *license_str;
   } nx_license_map_t;
   
   extern const nx_license_map_t g_license_map[];
   
   const nx_license_map_t g_license_map[] = {
       { "net/ip", NX_LIC_BSD_3_CLAUSE, "BSD-3-Clause" },
       { "fs/fat", NX_LIC_MIT,          "MIT" },
       …
   }; //This map should be populated by a simple ADD_LICENSE() macro.
   
   printf("Licenses used:\n");
   for (each bit set) print corresponding string
   
   But this option could be disabled for deep embedded microcontrollers, to 
avoid wasting flash memory (also the license_str also don't need to be included 
in the map, it could be resolved from license_bit).
   
   @ghnotgood @simbit18 @raiden00pl @xiaoxiang781216 what do you think? I can 
implement it if all here agree that this license tracking is important.
   
   Currenly our only alternative is searching for "SPDX-License-Identifier:" 
but it is difficult to know which files where used. Remember: not all files 
compiled by NuttX are used in the final firmware.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to