Browse Source
[license-header] make it actually work with posix shells
grep doesn't support -P in POSIX, so to get around this we just replace
\n with space and match that with a POSIX basic expression
Signed-off-by: crueter <crueter@eden-emu.dev>
pull/2797/head
crueter
5 months ago
No known key found for this signature in database
GPG Key ID: 425ACD2D4830EBC6
1 changed files with
7 additions and
9 deletions
.ci/license-header.sh
@ -66,20 +66,18 @@ header_line2() {
echo " $1 SPDX-License-Identifier: $LICENSE "
}
# PCRE header string
pcre_header( ) {
begin = " $1 "
echo " (?s) $( header_line1 " $begin " ) .* $( header_line2 " $begin " ) "
}
check_header( ) {
begin = " $1 "
file = " $2 "
content = " $( head -n5 < " $2 " ) "
header = " $( pcre_header " $begin " ) "
# separate things out as spaces to make our lives 100000000x easier
content = " $( head -n5 < " $2 " | tr '\n' ' ' ) "
line1 = " $( header_line1 " $begin " ) "
line2 = " $( header_line2 " $begin " ) "
if ! echo " $content " | grep -Pzo " $header " > /dev/null; then
# perl and awk are actually awful, so to avoid this problem we avoid it by avoiding it
if ! echo " $content " | grep -o " $line1 $line2 " ; then
# SRC_FILES is Kotlin/C++
# OTHER_FILES is sh, CMake
case " $begin " in