diff --git a/v8-3.14.5.10-no-Werror.patch b/v8-3.14.5.10-no-Werror.patch new file mode 100644 index 0000000..9473b5e --- /dev/null +++ b/v8-3.14.5.10-no-Werror.patch @@ -0,0 +1,20 @@ +diff -up v8-3.14.5.10/SConstruct.no-error v8-3.14.5.10/SConstruct +--- v8-3.14.5.10/SConstruct.no-error 2024-02-10 07:02:57.426704910 -0500 ++++ v8-3.14.5.10/SConstruct 2024-02-10 07:03:16.481987300 -0500 +@@ -307,7 +307,6 @@ V8_EXTRA_FLAGS = { + 'gcc': { + 'all': { + 'WARNINGFLAGS': ['-Wall', +- '-Werror', + '-W', + '-Wno-unused-parameter', + '-Woverloaded-virtual', +@@ -410,7 +409,7 @@ MKSNAPSHOT_EXTRA_FLAGS = { + DTOA_EXTRA_FLAGS = { + 'gcc': { + 'all': { +- 'WARNINGFLAGS': ['-Werror', '-Wno-uninitialized'], ++ 'WARNINGFLAGS': ['-Wno-uninitialized'], + 'CCFLAGS': GCC_DTOA_EXTRA_CCFLAGS + } + }, diff --git a/v8-314-gcc11.patch b/v8-314-gcc11.patch new file mode 100644 index 0000000..980ece8 --- /dev/null +++ b/v8-314-gcc11.patch @@ -0,0 +1,53 @@ +diff --git a/src/parser.cc b/src/parser.cc +index 76ed9da..e97e91e 100644 +--- a/src/parser.cc ++++ b/src/parser.cc +@@ -4110,7 +4110,7 @@ Expression* Parser::ParseObjectLiteral(bool* ok) { + // Validate the property. + checker.CheckProperty(property, loc, CHECK_OK); + properties->Add(property, zone()); +- if (peek() != Token::RBRACE) Expect(Token::COMMA, CHECK_OK); ++ if (peek() != Token::RBRACE) { Expect(Token::COMMA, CHECK_OK); } + + if (fni_ != NULL) { + fni_->Infer(); +@@ -4180,7 +4180,7 @@ Expression* Parser::ParseObjectLiteral(bool* ok) { + properties->Add(property, zone()); + + // TODO(1240767): Consider allowing trailing comma. +- if (peek() != Token::RBRACE) Expect(Token::COMMA, CHECK_OK); ++ if (peek() != Token::RBRACE) { Expect(Token::COMMA, CHECK_OK); } + + if (fni_ != NULL) { + fni_->Infer(); +@@ -4249,7 +4249,7 @@ ZoneList* Parser::ParseArguments(bool* ok) { + return NULL; + } + done = (peek() == Token::RPAREN); +- if (!done) Expect(Token::COMMA, CHECK_OK); ++ if (!done) { Expect(Token::COMMA, CHECK_OK); } + } + Expect(Token::RPAREN, CHECK_OK); + return result; +@@ -4426,7 +4426,7 @@ FunctionLiteral* Parser::ParseFunctionLiteral(Handle function_name, + return NULL; + } + done = (peek() == Token::RPAREN); +- if (!done) Expect(Token::COMMA, CHECK_OK); ++ if (!done) { Expect(Token::COMMA, CHECK_OK); } + } + Expect(Token::RPAREN, CHECK_OK); + +diff --git a/src/preparser.cc b/src/preparser.cc +index 21da4f8..7769130 100644 +--- a/src/preparser.cc ++++ b/src/preparser.cc +@@ -1306,7 +1306,7 @@ PreParser::Expression PreParser::ParseObjectLiteral(bool* ok) { + ParseAssignmentExpression(true, CHECK_OK); + + // TODO(1240767): Consider allowing trailing comma. +- if (peek() != i::Token::RBRACE) Expect(i::Token::COMMA, CHECK_OK); ++ if (peek() != i::Token::RBRACE) { Expect(i::Token::COMMA, CHECK_OK); } + } + Expect(i::Token::RBRACE, CHECK_OK); + diff --git a/v8-314.spec b/v8-314.spec index 1158632..6104d48 100644 --- a/v8-314.spec +++ b/v8-314.spec @@ -10,6 +10,9 @@ # All copyrightable work in these spec files and patches is Copyright 2011 # Tom Callaway +# This package is like a horrible time capsule. If you're reading this, it +# is never too late to turn back. + # For the 1.2 branch, we use 0s here # For 1.3+, we use the three digit versions # Hey, now there are four digits. What do they mean? Popsicle. @@ -25,9 +28,9 @@ Name: %{truename}-314 Version: %{somajor}.%{sominor}.%{sobuild}.%{sotiny} -Release: 19%{?dist} +Release: 44%{?dist} Summary: JavaScript Engine -License: BSD +License: BSD-3-Clause URL: https://developers.google.com/v8/ # Once found at http://commondatastorage.googleapis.com/chromium-browser-official/ # Now, we're the canonical source for the tarball. :/ @@ -160,6 +163,12 @@ Patch30: v8-3.14.5.10-gcc8.patch # Python3 Patch31: v8-314-python3.patch +# gcc-11 diagnostics +Patch32: v8-314-gcc11.patch + +# Disable -Werror +Patch33: v8-3.14.5.10-no-Werror.patch + %description V8 is Google's open source JavaScript engine. V8 is written in C++ and is used in Google Chrome, the open source browser from Google. V8 implements ECMAScript @@ -184,37 +193,39 @@ Python libraries from v8. %prep %setup -q -n %{truename}-%{version} -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 -%patch10 -p1 -%patch11 -p1 -%patch12 -p1 -%patch13 -p1 -%patch14 -p1 -b .system-valgrind -%patch15 -p1 -b .abort-uncaught-exception -%patch16 -p1 -b .unhandled-ReferenceError -%patch17 -p1 -b .busy-loop -%patch18 -p1 -b .profiler-log -%patch19 -p1 -b .cve20143152 -%patch20 -p1 -b .riu -%patch21 -p1 -b .mips -%patch22 -p1 -b .r15102 -%patch23 -p1 -b .r19121 -%patch24 -p1 -b .loongson -%patch25 -p1 -b .ppc -%patch26 -p1 -b .CVE-2016-1669 -%patch27 -p1 -b .builtinname -%patch28 -p1 -b .gcc7 -%patch29 -p1 -b .ppc-harder -%patch30 -p1 -b .gcc8 -%patch31 -p1 -b .python3 +%patch -P1 -p1 +%patch -P2 -p1 +%patch -P3 -p1 +%patch -P4 -p1 +%patch -P5 -p1 +%patch -P6 -p1 +%patch -P7 -p1 +%patch -P8 -p1 +%patch -P9 -p1 +%patch -P10 -p1 +%patch -P11 -p1 +%patch -P12 -p1 +%patch -P13 -p1 +%patch -P14 -p1 -b .system-valgrind +%patch -P15 -p1 -b .abort-uncaught-exception +%patch -P16 -p1 -b .unhandled-ReferenceError +%patch -P17 -p1 -b .busy-loop +%patch -P18 -p1 -b .profiler-log +%patch -P19 -p1 -b .cve20143152 +%patch -P20 -p1 -b .riu +%patch -P21 -p1 -b .mips +%patch -P22 -p1 -b .r15102 +%patch -P23 -p1 -b .r19121 +%patch -P24 -p1 -b .loongson +%patch -P25 -p1 -b .ppc +%patch -P26 -p1 -b .CVE-2016-1669 +%patch -P27 -p1 -b .builtinname +%patch -P28 -p1 -b .gcc7 +%patch -P29 -p1 -b .ppc-harder +%patch -P30 -p1 -b .gcc8 +%patch -P31 -p1 -b .python3 +%patch -P32 -p1 -b .gcc11 +%patch -P33 -p1 -b .no-error # Do not need this lying about. rm -rf src/third_party/valgrind @@ -227,7 +238,7 @@ rm -rf src/third_party/valgrind %endif # -fno-strict-aliasing is needed with gcc 4.4 to get past some ugly code -PARSED_OPT_FLAGS=`echo \'$RPM_OPT_FLAGS %{lrt} -fPIC -fno-strict-aliasing -Wno-unused-parameter -Wno-error=strict-overflow -Wno-unused-but-set-variable -Wno-error=cast-function-type -Wno-error=class-memaccess -Wno-error=stringop-overflow= -Wno-error=array-bounds -fno-delete-null-pointer-checks\'| sed "s/ /',/g" | sed "s/',/', '/g"` +PARSED_OPT_FLAGS=`echo \'$RPM_OPT_FLAGS %{lrt} -fPIC -fno-strict-aliasing -Wno-unused-parameter -Wno-error=strict-overflow -Wno-unused-but-set-variable -Wno-error=cast-function-type -Wno-error=class-memaccess -Wno-error=stringop-overflow= -Wno-error=array-bounds -Wno-error=dangling-pointer= -Wno-error=use-after-free -fno-delete-null-pointer-checks\'| sed "s/ /',/g" | sed "s/',/', '/g"` sed -i "s|'-O3',|$PARSED_OPT_FLAGS,|g" SConstruct # clear spurious executable bits @@ -402,6 +413,82 @@ chmod -R -x %{buildroot}%{python_sitelib}/*.py* %endif %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 3.14.5.10-44 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Mon Jun 08 2026 František Zatloukal - 3.14.5.10-43 +- Rebuilt for icu 78.3 + +* Sat Jan 17 2026 Fedora Release Engineering - 3.14.5.10-42 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Wed Aug 06 2025 František Zatloukal - 3.14.5.10-41 +- Rebuilt for icu 77.1 + +* Fri Jul 25 2025 Fedora Release Engineering - 3.14.5.10-40 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 3.14.5.10-39 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sun Dec 08 2024 Pete Walter - 3.14.5.10-38 +- Rebuild for ICU 76 + +* Sat Jul 20 2024 Fedora Release Engineering - 3.14.5.10-37 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sat Feb 10 2024 Tom Callaway - 3.14.5.10-36 +- disable -Werror. This package is filled with worms, we know it. +- fix license tag + +* Sat Jan 27 2024 Fedora Release Engineering - 3.14.5.10-35 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 3.14.5.10-34 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jul 11 2023 František Zatloukal - 3.14.5.10-33 +- Rebuilt for ICU 73.2 + +* Sat Jan 21 2023 Fedora Release Engineering - 3.14.5.10-32 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Dec 31 2022 Pete Walter - 3.14.5.10-31 +- Rebuild for ICU 72 + +* Mon Aug 01 2022 Frantisek Zatloukal - 3.14.5.10-30 +- Rebuilt for ICU 71.1 + +* Sat Jul 23 2022 Fedora Release Engineering - 3.14.5.10-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 27 2022 Tom Callaway - 3.14.5.10-28 +- "fix" FTBFS + +* Sat Jan 22 2022 Fedora Release Engineering - 3.14.5.10-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 3.14.5.10-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu May 20 2021 Pete Walter - 3.14.5.10-25 +- Rebuild for ICU 69 + +* Wed May 19 2021 Pete Walter - 3.14.5.10-24 +- Rebuild for ICU 69 + +* Wed Jan 27 2021 Fedora Release Engineering - 3.14.5.10-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sun Oct 18 2020 Jeff Law - 3.14.5.10-22 +- Fix diagnostics reported by gcc-11 + +* Wed Jul 29 2020 Fedora Release Engineering - 3.14.5.10-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri May 15 2020 Pete Walter - 3.14.5.10-20 +- Rebuild for ICU 67 + * Thu Feb 6 2020 Tom Callaway - 3.14.5.10-19 - it is alive! (what have i done)