Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package nodejs-electron for openSUSE:Factory
checked in at 2023-10-27 22:29:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nodejs-electron (Old)
and /work/SRC/openSUSE:Factory/.nodejs-electron.new.17445 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nodejs-electron"
Fri Oct 27 22:29:05 2023 rev:86 rq:1120771 version:27.0.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/nodejs-electron/nodejs-electron.changes
2023-10-22 21:02:37.742968382 +0200
+++
/work/SRC/openSUSE:Factory/.nodejs-electron.new.17445/nodejs-electron.changes
2023-10-27 22:29:44.034904925 +0200
@@ -1,0 +2,7 @@
+Thu Oct 26 17:25:56 UTC 2023 - Bruno Pitrus <[email protected]>
+
+- v8: Re-enable glibc (as opposed to fdlibm) trigonometry
+ which was mistakenly disabled (v8_use_libm_trig_functions)
+ and unbundle it (system-libm.patch).
+
+-------------------------------------------------------------------
New:
----
system-libm.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nodejs-electron.spec ++++++
--- /var/tmp/diff_new_pack.klzNjD/_old 2023-10-27 22:29:47.903046793 +0200
+++ /var/tmp/diff_new_pack.klzNjD/_new 2023-10-27 22:29:47.907046940 +0200
@@ -307,6 +307,7 @@
Patch1076: crashpad-use-system-abseil.patch
Patch1077: system-wayland.patch
Patch1078: system-simdutf.patch
+Patch1079: system-libm.patch
# PATCHES to fix interaction with third-party software
@@ -1123,8 +1124,7 @@
myconf_gn+=" enable_swiftshader=false"
%endif
myconf_gn+=" is_component_ffmpeg=true"
-myconf_gn+=" use_cups=true"
-myconf_gn+=" use_aura=true"
+myconf_gn+=" use_cups=false"
# link libvulkan.so and libGLX.so instead of dlopening
myconf_gn+=" angle_use_custom_libvulkan=false"
@@ -1137,6 +1137,10 @@
#Upstream sets it by default to the value of is_clang with the comment âhas
trouble supporting MSVCâ.
#This is supposed to be enabled in chromium and compiles fine with GCC.
myconf_gn+=' angle_enable_abseil=true'
+#this is also mistakenly set to is_clang with the (untrue) comment âmacros
for determining endian type are currently clang specificâ
+#in fact, 1° clang copied those macros from gcc and 2° this should be
unbundled.
+myconf_gn+=' v8_use_libm_trig_functions=true'
+
# do not build PDF support
@@ -1240,9 +1244,6 @@
myconf_gn+=' disable_histogram_support=true'
-#disable some tracing hooks, they increase size and we do not build
chrome://tracing anyway (see disable-catapult.patch)
-myconf_gn+=" enable_trace_logging=false"
-myconf_gn+=" optional_trace_events_enabled=false"
#Do not build Chromecast
++++++ system-libm.patch ++++++
The new trigonometric code in v8/third_party is copied verbatim from glibc.
Vendoring it is rather perverse on GNU systems,
especially since the actual glibc code features dynamic dispatch for
FMA-capable systems which the bundled copy does not implement.
--- src/v8/BUILD.gn.orig 2023-10-21 08:29:36.669885000 +0000
+++ src/v8/BUILD.gn 2023-10-26 17:17:36.379773800 +0000
@@ -6230,7 +6230,7 @@ v8_component("v8_libbase") {
}
if (v8_use_libm_trig_functions) {
- deps += [ ":libm" ]
+ libs += [ "m" ]
}
# TODO(infra): Add support for qnx, freebsd, openbsd, netbsd, and solaris.
--- src/v8/src/base/ieee754.cc.orig 2023-10-21 08:19:44.750081100 +0000
+++ src/v8/src/base/ieee754.cc 2023-10-26 17:19:09.517780600 +0000
@@ -3023,11 +3023,6 @@ double tanh(double x) {
#undef SET_HIGH_WORD
#undef SET_LOW_WORD
-#if defined(V8_USE_LIBM_TRIG_FUNCTIONS) && defined(BUILDING_V8_BASE_SHARED)
-double libm_sin(double x) { return glibc_sin(x); }
-double libm_cos(double x) { return glibc_cos(x); }
-#endif
-
} // namespace ieee754
} // namespace base
} // namespace v8
--- src/v8/src/base/ieee754.h.orig 2023-10-21 08:19:44.750081100 +0000
+++ src/v8/src/base/ieee754.h 2023-10-26 17:21:25.732860000 +0000
@@ -8,7 +8,7 @@
#include "src/base/base-export.h"
#if defined(V8_USE_LIBM_TRIG_FUNCTIONS)
-#include "third_party/glibc/src/sysdeps/ieee754/dbl-64/trig.h" // nogncheck
+#include <cmath>
#endif
namespace v8 {
@@ -44,13 +44,8 @@ V8_BASE_EXPORT double atan2(double y, do
V8_BASE_EXPORT double fdlibm_sin(double x);
V8_BASE_EXPORT double fdlibm_cos(double x);
-#if !defined(BUILDING_V8_BASE_SHARED) && !defined(USING_V8_BASE_SHARED)
-inline double libm_sin(double x) { return glibc_sin(x); }
-inline double libm_cos(double x) { return glibc_cos(x); }
-#else
-V8_BASE_EXPORT double libm_sin(double x);
-V8_BASE_EXPORT double libm_cos(double x);
-#endif
+constexpr inline double (&libm_sin)(double) = ::std::sin;
+constexpr inline double (&libm_cos)(double) = ::std::cos;
#else
V8_BASE_EXPORT double cos(double x);
V8_BASE_EXPORT double sin(double x);