Fixes JavaScriptCore on musl platforms, taken and reformatted from the Gentoo musl overlay: https://gitweb.gentoo.org/proj/musl.git/tree/net-libs/webkit-gtk/files/webkit-gtk-2.18.1-musl.patch --- a/Source/JavaScriptCore/runtime/MachineContext.h +++ b/Source/JavaScriptCore/runtime/MachineContext.h @@ -146,7 +146,7 @@ inline void*& stackPointer(mcontext_t& machineContext) #error Unknown Architecture #endif -#elif defined(__GLIBC__) || defined(__BIONIC__) +#elif defined(__linux__) #if CPU(X86) return reinterpret_cast((uintptr_t&) machineContext.gregs[REG_ESP]); @@ -251,7 +251,7 @@ inline void*& framePointer(mcontext_t& machineContext) #error Unknown Architecture #endif -#elif defined(__GLIBC__) || defined(__BIONIC__) +#elif defined(__linux__) // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) @@ -354,7 +354,7 @@ inline void*& instructionPointer(mcontext_t& machineContext) #error Unknown Architecture #endif -#elif defined(__GLIBC__) || defined(__BIONIC__) +#elif defined(__linux__) // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) @@ -466,7 +466,7 @@ inline void*& argumentPointer<1>(mcontext_t& machineContext) #error Unknown Architecture #endif -#elif defined(__GLIBC__) || defined(__BIONIC__) +#elif defined(__linux__) // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) @@ -583,7 +583,7 @@ inline void*& llintInstructionPointer(mcontext_t& machineContext) #error Unknown Architecture #endif -#elif defined(__GLIBC__) || defined(__BIONIC__) +#elif defined(__linux__) // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) --- a/Source/JavaScriptCore/runtime/Options.h +++ b/Source/JavaScriptCore/runtime/Options.h @@ -126,9 +126,9 @@ \ v(bool, reportMustSucceedExecutableAllocations, false, Normal, nullptr) \ \ - v(unsigned, maxPerThreadStackUsage, 4 * MB, Normal, "Max allowed stack usage by the VM") \ - v(unsigned, softReservedZoneSize, 128 * KB, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \ - v(unsigned, reservedZoneSize, 64 * KB, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \ + v(unsigned, maxPerThreadStackUsage, 80 * KB, Normal, "Max allowed stack usage by the VM") \ + v(unsigned, softReservedZoneSize, 32 * KB, Normal, "A buffer greater than reservedZoneSize that reserves space for stringifying exceptions.") \ + v(unsigned, reservedZoneSize, 16 * KB, Normal, "The amount of stack space we guarantee to our clients (and to interal VM code that does not call out to clients).") \ \ v(bool, crashIfCantAllocateJITMemory, false, Normal, nullptr) \ v(unsigned, jitMemoryReservationSize, 0, Normal, "Set this number to change the executable allocation size in ExecutableAllocatorFixedVMPool. (In bytes.)") \ --- a/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp +++ b/Source/ThirdParty/ANGLE/src/compiler/preprocessor/ExpressionParser.cpp @@ -836,7 +836,7 @@ #if YYERROR_VERBOSE # ifndef yystrlen -# if defined __GLIBC__ && defined _STRING_H +# if defined __linux__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ @@ -852,7 +852,7 @@ # endif # ifndef yystpcpy -# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in --- a/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp +++ b/Source/ThirdParty/ANGLE/src/compiler/translator/glslang_tab.cpp @@ -1975,7 +1975,7 @@ #if YYERROR_VERBOSE # ifndef yystrlen -# if defined __GLIBC__ && defined _STRING_H +# if defined __linux__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ @@ -1991,7 +1991,7 @@ # endif # ifndef yystpcpy -# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in --- a/Source/WTF/wtf/Platform.h +++ b/Source/WTF/wtf/Platform.h @@ -679,7 +679,7 @@ #define HAVE_CFNETWORK_STORAGE_PARTITIONING 1 #endif -#if OS(DARWIN) || ((OS(FREEBSD) || defined(__GLIBC__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) +#if OS(DARWIN) || ((OS(FREEBSD) || defined(__linux__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) #define HAVE_MACHINE_CONTEXT 1 #endif --- a/Source/WebCore/xml/XPathGrammar.cpp +++ b/Source/WebCore/xml/XPathGrammar.cpp @@ -967,7 +967,7 @@ #if YYERROR_VERBOSE # ifndef yystrlen -# if defined __GLIBC__ && defined _STRING_H +# if defined __linux__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ @@ -990,7 +990,7 @@ # endif # ifndef yystpcpy -# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# if defined __linux__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in