From f1debdbac5227d21b124bd79069926b8e627a786 Mon Sep 17 00:00:00 2001 From: crueter Date: Tue, 21 Oct 2025 21:00:26 +0200 Subject: [PATCH] [license-header] make it actually work with posix shells (#2797) 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 Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2797 Reviewed-by: MaranBr Reviewed-by: Lizzie --- .ci/license-header.sh | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/.ci/license-header.sh b/.ci/license-header.sh index 986b364845..874f29aa45 100755 --- a/.ci/license-header.sh +++ b/.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" >/dev/null; then # SRC_FILES is Kotlin/C++ # OTHER_FILES is sh, CMake case "$begin" in