Package: devscripts
Version: 2.10.38
Severity: wishlist

Hello,

It would be great if licensecheck could manage more things:
* CeCILL licenses
* SGI free license
* Artistic license
* Fortran files
* Scilab files

You will find the patch doing all this as attachment.

Don't hesitate if you want me to split it to seperate bug report &
patches.

Regards,
Sylvestre

--- licensecheck.orig	2008-10-07 14:19:24.000000000 +0200
+++ licensecheck	2008-10-07 14:17:49.000000000 +0200
@@ -151,7 +151,8 @@
 $default_ignore_regex =~ s/^#.*$//mg;
 $default_ignore_regex =~ s/\n//sg;
 
-my $default_check_regex = '\.(c(c|pp|xx)?|h(h|pp|xx)?|p(l|m)|sh|php|py|rb|java|el)$';
+
+my $default_check_regex = '\.(c(c|pp|xx)?|h(h|pp|xx)|f(77|90)?|p(l|m)|sh|php|py|rb|java|el|sci|sce)$';
 
 my $modified_conf_msg;
 
@@ -285,6 +286,7 @@
     $content =~ tr/\t\r\n/ /;
     $content =~ tr% A-Za-z.,@;0-9\(\)/-%%cd;
     $content =~ s#//##g;
+    $content =~ s/ c //g; # Remove fortran comments
     $content =~ tr/ //s;
 
     $license = parselicense($content);
@@ -445,6 +447,10 @@
 	$license = "Artistic (v$1) $license";
     }
 
+    if ($licensetext =~ /is free software under the Artistic license/) {
+	$license = "Artistic $license";
+    }
+
     if ($licensetext =~ /This program is free software; you can redistribute it and\/or modify it under the same terms as Perl itself/) {
 	$license = "Perl $license";
     }
@@ -457,6 +463,18 @@
 	$license = "PHP (v$1) $license";
     }
 
+    if ($licensetext =~ / under the terms of the CeCILL /) {
+	$license = "CeCILL $license";
+    }
+
+    if ($licensetext =~ / under the terms of the CeCILL-([^ ]+) /) {
+	$license = "CeCILL-$1 $license";
+    }
+
+    if ($licensetext =~ / under the SGI Free Software License B/) {
+	$license = "SGI Free Software License B $license";
+    }
+
     if ($licensetext =~ /is in the public domain/i) {
 	$license = "Public domain";
     }

Reply via email to