Skip to content

Commit 76c279a

Browse files
committed
Use a regex to perform license check
1 parent fc5bbdf commit 76c279a

File tree

1 file changed

+12
-27
lines changed

1 file changed

+12
-27
lines changed

src/etc/licenseck.py

Lines changed: 12 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,18 @@
88
# option. This file may not be copied, modified, or distributed
99
# except according to those terms.
1010

11-
license1 = """// Copyright """
12-
license2 = """ The Rust Project Developers. See the COPYRIGHT
13-
// file at the top-level directory of this distribution and at
14-
// http://rust-lang.org/COPYRIGHT.
15-
//
16-
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
17-
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
18-
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
19-
// option. This file may not be copied, modified, or distributed
20-
// except according to those terms.
21-
"""
11+
import re
2212

23-
license3 = """# Copyright """
24-
license4 = """ The Rust Project Developers. See the COPYRIGHT
25-
# file at the top-level directory of this distribution and at
26-
# http://rust-lang.org/COPYRIGHT.
27-
#
28-
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
29-
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
30-
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
31-
# option. This file may not be copied, modified, or distributed
32-
# except according to those terms.
33-
"""
13+
license_re = re.compile(
14+
u"""(#|//) Copyright .* The Rust Project Developers. See the COPYRIGHT
15+
\\1 file at the top-level directory of this distribution and at
16+
\\1 http://rust-lang.org/COPYRIGHT.
17+
\\1
18+
\\1 Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
19+
\\1 http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
20+
\\1 <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
21+
\\1 option. This file may not be copied, modified, or distributed
22+
\\1 except according to those terms.""")
3423

3524
exceptions = [
3625
"rt/rust_android_dummy.cpp", # BSD, chromium
@@ -67,8 +56,4 @@ def check_license(name, contents):
6756

6857
# License check
6958
boilerplate = contents[:500]
70-
if (license1 not in boilerplate or license2 not in boilerplate) and \
71-
(license3 not in boilerplate or license4 not in boilerplate):
72-
return False
73-
74-
return True
59+
return bool(license_re.search(boilerplate))

0 commit comments

Comments
 (0)