lex 或 bison 自动生成的源代码中的 GNU 标记
GNU marks in auto generated source by lex or bison
我想提交一些由 lex 和 bison 生成的代码。由于它们中有 gnu 标记,如果以后对非开源商业项目造成麻烦,我是认真的。
感谢您的任何建议。
lex(您可能指的是 flex
)是 not a GNU project,并且不是 GPL 许可的(它使用宽松的 BSD 许可)。所以它的输出中没有 "gnu marks" 。您可能正在谈论诸如
之类的文本
#line 3 "lex.yy.c"
#define YY_INT_ALIGNED short int
/* A lexical scanner generated by flex */
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
#define YY_FLEX_SUBMINOR_VERSION 35
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
这是传统的 C 预处理器系列,与许可无关。
Bison 的输出在其许可中是 explicitly addressed,这不是问题:
The distribution terms for Bison-generated parsers permit using the parsers in nonfree programs.
我想提交一些由 lex 和 bison 生成的代码。由于它们中有 gnu 标记,如果以后对非开源商业项目造成麻烦,我是认真的。
感谢您的任何建议。
lex(您可能指的是 flex
)是 not a GNU project,并且不是 GPL 许可的(它使用宽松的 BSD 许可)。所以它的输出中没有 "gnu marks" 。您可能正在谈论诸如
#line 3 "lex.yy.c"
#define YY_INT_ALIGNED short int
/* A lexical scanner generated by flex */
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
#define YY_FLEX_SUBMINOR_VERSION 35
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
这是传统的 C 预处理器系列,与许可无关。
Bison 的输出在其许可中是 explicitly addressed,这不是问题:
The distribution terms for Bison-generated parsers permit using the parsers in nonfree programs.