Bug#695967: [new check] GFDL invariant
Package: lintian
Version: 2.5.10.2
Severity: wishlist
tag: patch
Please found some patch in order to check GFDL liense
diff --git a/checks/cruft b/checks/cruft
index 1121e16..e3a4498 100644
--- a/checks/cruft
+++ b/checks/cruft
@@ -412,11 +412,31 @@ sub find_cruft {
# test license problem is source file (only text file)
if (-T $basename) {
open my $F, '<', $basename or fail "can't open $name: $!";
+
+ # GFDL state variable
+ my $foundGFDL = 0;
while (my $line = <$F>) {
# json evil license
if ($line =~ m/Software\s+shall\s+be\s+used\s+for\s+Good\s*,?\s*not\s+Evil/i) {
tag 'license-problem-json-evil', $name;
}
+ # GFDL state machine
+ if($line =~ m/GNU\s+Free\s+Documentation\s+License/) {
+ $foundGFDL = 1;
+ }
+ if($foundGFDL) {
+ # match in two part in order to not match italic html license example
+ if($line =~ m/with\s+the\s+Invariant\s+Sections\s+being/i) {
+ if($line !~ m/list\s+their\s+titles/i) {
+ tag 'license-problem-gfdl-invariants', $name;
+ }
+ }
+ if($line =~ m/the\s+Front-Cover\s+Texts\s+being/i) {
+ if($line !~ m/the\s+Front-Cover\s+Texts\s+being\s+(?:<var>)?\s+list/) {
+ tag 'license-problem-gfdl-invariants', $name;
+ }
+ }
+ }
}
close $F or fail "can not close opened file $name: $!"
}
diff --git a/checks/cruft.desc b/checks/cruft.desc
index 084354d..2ba0866 100644
--- a/checks/cruft.desc
+++ b/checks/cruft.desc
@@ -486,3 +486,9 @@ Info: The given source file is copyrighted under the non free
license of json and the infamous clause:
The Software shall be used for Good, not Evil.
Ref: http://wiki.debian.org/qa.debian.org/jsonevil
+
+Tag: license-problem-gfdl-invariants
+Severity: serious
+Certainty: possible
+Info: The given source file contain is licensed under
+ GFDL with invariant section or frontcover.
Reply to: