From 7d19abda7a84ccc58ce0daca3322b98146922dd6 Mon Sep 17 00:00:00 2001 From: implicitfield <114500360+implicitfield@users.noreply.github.com> Date: Sun, 30 Apr 2023 00:50:54 +0400 Subject: [PATCH] LibC+LibRegex: Move regex_defs.h from LibC to LibRegex This is needed to avoid including LibC headers in Lagom builds. --- Toolchain/BuildClang.sh | 12 +++++++++--- Toolchain/BuildGNU.sh | 4 +++- Userland/Libraries/LibC/regex.h | 2 +- .../{LibC/bits/regex_defs.h => LibRegex/RegexDefs.h} | 0 Userland/Libraries/LibRegex/RegexError.h | 6 +----- Userland/Libraries/LibRegex/RegexOptions.h | 6 +----- 6 files changed, 15 insertions(+), 15 deletions(-) rename Userland/Libraries/{LibC/bits/regex_defs.h => LibRegex/RegexDefs.h} (100%) diff --git a/Toolchain/BuildClang.sh b/Toolchain/BuildClang.sh index 0bfb581b08..d1271593ea 100755 --- a/Toolchain/BuildClang.sh +++ b/Toolchain/BuildClang.sh @@ -247,14 +247,20 @@ popd # === COPY HEADERS === SRC_ROOT=$($REALPATH "$DIR"/..) -FILES=$(find "$SRC_ROOT"/Kernel/API "$SRC_ROOT"/Userland/Libraries/LibC -name '*.h' -print) - +FILES=$(find \ + "$SRC_ROOT"/Kernel/API \ + "$SRC_ROOT"/Userland/Libraries/LibC \ + "$SRC_ROOT"/Userland/Libraries/LibRegex/RegexDefs.h \ + -name '*.h' -print) for arch in $ARCHS; do mkdir -p "$BUILD/${arch}clang" pushd "$BUILD/${arch}clang" mkdir -p Root/usr/include/ for header in $FILES; do - target=$(echo "$header" | "$SED" -e "s|$SRC_ROOT/Userland/Libraries/LibC||" -e "s|$SRC_ROOT/Kernel/|Kernel/|") + target=$(echo "$header" | "$SED" \ + -e "s|$SRC_ROOT/Userland/Libraries/LibC||" \ + -e "s|$SRC_ROOT/Kernel/|Kernel/|" \ + -e "s|$SRC_ROOT/Userland/Libraries/LibRegex/|LibRegex/|") buildstep "system_headers" "$INSTALL" -D "$header" "Root/usr/include/$target" done popd diff --git a/Toolchain/BuildGNU.sh b/Toolchain/BuildGNU.sh index 339a06ad3c..5a87e87682 100755 --- a/Toolchain/BuildGNU.sh +++ b/Toolchain/BuildGNU.sh @@ -270,12 +270,14 @@ pushd "$DIR/Build/$ARCH" "$SRC_ROOT"/Kernel/API \ "$SRC_ROOT"/Kernel/Arch \ "$SRC_ROOT"/Userland/Libraries/LibC \ + "$SRC_ROOT"/Userland/Libraries/LibRegex/RegexDefs.h \ -name '*.h' -print) for header in $FILES; do target=$(echo "$header" | sed \ -e "s|$SRC_ROOT/AK/|AK/|" \ -e "s|$SRC_ROOT/Userland/Libraries/LibC||" \ - -e "s|$SRC_ROOT/Kernel/|Kernel/|") + -e "s|$SRC_ROOT/Kernel/|Kernel/|" \ + -e "s|$SRC_ROOT/Userland/Libraries/LibRegex/|LibRegex/|") buildstep "system_headers" mkdir -p "$(dirname "Root/usr/include/$target")" buildstep "system_headers" $INSTALL "$header" "Root/usr/include/$target" done diff --git a/Userland/Libraries/LibC/regex.h b/Userland/Libraries/LibC/regex.h index 6d82d883ea..e408b52bb4 100644 --- a/Userland/Libraries/LibC/regex.h +++ b/Userland/Libraries/LibC/regex.h @@ -6,7 +6,7 @@ #pragma once -#include "bits/regex_defs.h" +#include #include #include #include diff --git a/Userland/Libraries/LibC/bits/regex_defs.h b/Userland/Libraries/LibRegex/RegexDefs.h similarity index 100% rename from Userland/Libraries/LibC/bits/regex_defs.h rename to Userland/Libraries/LibRegex/RegexDefs.h diff --git a/Userland/Libraries/LibRegex/RegexError.h b/Userland/Libraries/LibRegex/RegexError.h index 27eeab5886..dc75683984 100644 --- a/Userland/Libraries/LibRegex/RegexError.h +++ b/Userland/Libraries/LibRegex/RegexError.h @@ -6,13 +6,9 @@ #pragma once +#include "RegexDefs.h" #include #include -#ifdef AK_OS_SERENITY -# include -#else -# include -#endif namespace regex { diff --git a/Userland/Libraries/LibRegex/RegexOptions.h b/Userland/Libraries/LibRegex/RegexOptions.h index d244de8ebf..94167e9136 100644 --- a/Userland/Libraries/LibRegex/RegexOptions.h +++ b/Userland/Libraries/LibRegex/RegexOptions.h @@ -6,13 +6,9 @@ #pragma once +#include "RegexDefs.h" #include #include -#ifdef AK_OS_SERENITY -# include -#else -# include -#endif namespace regex {