Please downgrade! It seems deno 2.0 rc uses 0.106.0.

I also changed a bit of the specfile so we can reuse this patched version. See https://build.opensuse.org/package/show/home:uncomfyhalomacro:branches:devel:languages:javascript/deno

- update to version 0.106.0 -> NOTICE: this version will become 129.0.0 in the future
  * feat: cppgc NameProvider
  * re-add deprecated cppgc api
  * Rolling to V8 12.9.202.13
  * Rolling to V8 12.9.202.12
  * feat: add Module::is_graph_async
  * download ninja/gn from cipd
  * Rolling to V8 12.9.202.11
  * Update to v0.105.1
  * Rolling to V8 12.9.202.9
  * Rolling to V8 12.9.202.8
  * Rolling to V8 12.9.202.7
  * fix: Check for null pointer returned by `ValueSerializer::Release`
  * Allow `ValueSerializerImpl` and `ValueDeserializerImpl` impls to be re-entrant
  * remove unused submodule
  * disable pointer compression
  * Backport ESM TLA fixes
  * Rolling to V8 12.9.202.5
  * feat: add InspectorClient::ensureDefaultContextInGroup
  * chore: respect explicitly set RUSTY_V8_SRC_BINDING_PATH
  * Disable relative vtable on Android
  * Rolling to V8 12.9.202.4
- Add ./rusty_v8-rpmlintrc. This is not C
- Make deno use this as a crate path by updating deno's Cargo.toml
- GN is looking for clang at lib and not lib64. 
  * Use sed to change lib -> lib64
- update _service file
- remove vendor.tar.xz
- use a new vendor tarball vendor.tar.zst
- remove cargo_config

OBS-URL: https://build.opensuse.org/package/show/devel:languages:javascript/rusty_v8?expand=0&rev=81
This commit is contained in:
Avindra Goolcharan 2024-10-03 19:08:08 +00:00 committed by Git OBS Bridge
parent 94bb8d453e
commit 9ce440f193
13 changed files with 127 additions and 57 deletions

View File

@ -2,21 +2,23 @@
<service name="tar_scm" mode="manual"> <service name="tar_scm" mode="manual">
<param name="url">https://github.com/denoland/rusty_v8</param> <param name="url">https://github.com/denoland/rusty_v8</param>
<param name="scm">git</param> <param name="scm">git</param>
<param name="revision">v0.106.0</param>
<param name="version">0.106.0</param>
<param name="revision">v129.0.0</param>
<param name="version">129.0.0</param>
<param name="exclude">.git</param> <param name="exclude">.git</param>
<param name="exclude">.github</param> <param name="exclude">.github</param>
<param name="exclude">.gitignore</param> <param name="exclude">.gitignore</param>
<param name="exclude">.prettierrc.json</param> <param name="exclude">.prettierrc.json</param>
<param name="exclude">.rustfmt.toml</param> <param name="exclude">.rustfmt.toml</param>
</service> </service>
<service name="tar" mode="manual"/> <service mode="manual" name="tar" />
<service name="recompress" mode="manual"> <service mode="manual" name="recompress">
<param name="file">*.tar</param> <param name="file">rusty_v8*.tar</param>
<param name="compression">xz</param> <param name="compression">zst</param>
</service>
<service name="cargo_vendor" mode="manual">
<param name="src">rusty_v8</param>
<param name="compression">zst</param>
<param name="update">false</param>
</service> </service>
</services> </services>

View File

@ -1,5 +0,0 @@
[source.crates-io]
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "vendor"

View File

@ -1,8 +1,8 @@
diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
index d4de2e0cca0..57359c32121 100644 index fcca59b0f..fdf14f306 100644
--- a/build/config/clang/BUILD.gn --- a/build/config/clang/BUILD.gn
+++ b/build/config/clang/BUILD.gn +++ b/build/config/clang/BUILD.gn
@@ -130,12 +130,15 @@ template("clang_lib") { @@ -192,12 +192,15 @@ template("clang_lib") {
} else if (is_linux || is_chromeos) { } else if (is_linux || is_chromeos) {
if (current_cpu == "x64") { if (current_cpu == "x64") {
_dir = "x86_64-unknown-linux-gnu" _dir = "x86_64-unknown-linux-gnu"
@ -18,7 +18,7 @@ index d4de2e0cca0..57359c32121 100644
} else { } else {
assert(false) # Unhandled cpu type assert(false) # Unhandled cpu type
} }
@@ -166,6 +169,11 @@ template("clang_lib") { @@ -228,6 +231,11 @@ template("clang_lib") {
assert(false) # Unhandled target platform assert(false) # Unhandled target platform
} }

View File

@ -19,3 +19,4 @@
} }
let target_triple = env::var("TARGET").unwrap(); let target_triple = env::var("TARGET").unwrap();

View File

@ -1,13 +0,0 @@
Fix usr prefix
index fcca59b..02480f8 100644
--- a/build/config/clang/BUILD.gn
+++ b/build/config/clang/BUILD.gn
@@ -171,7 +171,7 @@ template("clang_lib") {
config(target_name) {
_dir = ""
_libname = invoker.libname
- _prefix = "lib"
+ _prefix = "lib64"
_suffix = ""
_ext = "a"
if (is_win) {

3
rusty_v8-0.106.0.tar.zst Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4a0b5a8c36bcaea3872d5ffb1a098b8213cb91001c99910fca1d7d3659a8f6a5
size 73511874

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:89af37dbb408fb9e7b1d433487d290ee09fc77284cd2e12f309e6bfddd2c41a6
size 58757856

11
rusty_v8-rpmlintrc Normal file
View File

@ -0,0 +1,11 @@
# This is not C, dear
addFilter("E: devel-file-in-non-devel-package")
addFilter("E: bin-sh-syntax-error")
addFilter("E: env-script-interpreter")
addFilter("E: zero-length")
addFilter("E: version-control-internal-file")
addFilter("E: wrong-script-interpreter")
addFilter("E: script-without-shebang")
addFilter("E: non-executable-script")
addFilter("W: position-independent-executable-suggested")
addFilter("W: potential-bashisms")

View File

@ -1,3 +1,37 @@
-------------------------------------------------------------------
Thu Oct 3 10:10:51 UTC 2024 - Soc Virnyl Estela <obs@uncomfyhalomacro.pl>
- update to version 0.106.0 -> NOTICE: this version will become 129.0.0 in the future
* feat: cppgc NameProvider
* re-add deprecated cppgc api
* Rolling to V8 12.9.202.13
* Rolling to V8 12.9.202.12
* feat: add Module::is_graph_async
* download ninja/gn from cipd
* Rolling to V8 12.9.202.11
* Update to v0.105.1
* Rolling to V8 12.9.202.9
* Rolling to V8 12.9.202.8
* Rolling to V8 12.9.202.7
* fix: Check for null pointer returned by `ValueSerializer::Release`
* Allow `ValueSerializerImpl` and `ValueDeserializerImpl` impls to be re-entrant
* remove unused submodule
* disable pointer compression
* Backport ESM TLA fixes
* Rolling to V8 12.9.202.5
* feat: add InspectorClient::ensureDefaultContextInGroup
* chore: respect explicitly set RUSTY_V8_SRC_BINDING_PATH
* Disable relative vtable on Android
* Rolling to V8 12.9.202.4
- Add ./rusty_v8-rpmlintrc. This is not C
- Make deno use this as a crate path by updating deno's Cargo.toml
- GN is looking for clang at lib and not lib64.
* Use sed to change lib -> lib64
- update _service file
- remove vendor.tar.xz
- use a new vendor tarball vendor.tar.zst
- remove cargo_config
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Aug 22 20:25:50 UTC 2024 - Avindra Goolcharan <avindra@opensuse.org> Thu Aug 22 20:25:50 UTC 2024 - Avindra Goolcharan <avindra@opensuse.org>

4
rusty_v8.obsinfo Normal file
View File

@ -0,0 +1,4 @@
name: rusty_v8
version: 129.0.0
mtime: 1706983689
commit: ab019251a4c45ee4edb4f7415eec762a589d87f8

View File

@ -15,25 +15,29 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/ # Please submit bugfixes or comments via https://bugs.opensuse.org/
# #
%global __requires_exclude_from ^%{_libdir}/crates/rusty_v8/.*$
Name: rusty_v8 Name: rusty_v8
Version: 129.0.0 Version: 0.106.0
Release: 0 Release: 0
Summary: Build tooling for Deno (do not install or use!) Summary: Build tooling for Deno (do not install or use!)
License: MIT License: MIT
Group: Productivity/Other Group: Productivity/Other
URL: https://github.com/denoland/rusty_v8 URL: https://github.com/denoland/rusty_v8
Source0: %{name}-%{version}.tar.xz Source0: %{name}-%{version}.tar.zst
Source1: vendor.tar.xz Source1: vendor.tar.zst
Source2: cargo_config
Patch0: deno-v8-arm.patch Patch0: deno-v8-arm.patch
Patch1: https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/raw/main/compiler-rt-adjust-paths.patch # Based on https://gitlab.archlinux.org/archlinux/packaging/packages/chromium/-/raw/main/compiler-rt-adjust-paths.patch
#Patch2: fix-prefix.patch Patch1: compiler-rt-adjust-paths.patch
BuildRequires: cargo-packaging BuildRequires: cargo-packaging
BuildRequires: cargo
BuildRequires: sccache
BuildRequires: clang BuildRequires: clang
BuildRequires: lld
BuildRequires: zstd
BuildRequires: gn BuildRequires: gn
#BuildRequires: lld
BuildRequires: llvm BuildRequires: llvm
BuildRequires: fdupes
BuildRequires: ninja BuildRequires: ninja
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: python3-base BuildRequires: python3-base
@ -41,10 +45,15 @@ BuildRequires: pkgconfig(glib-2.0)
BuildRequires: pkgconfig(gmodule-2.0) BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gobject-2.0) BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gthread-2.0) BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(icu-i18n)
# Rusty V8 does not guarantee builds for 32 bit and ppc
ExclusiveArch: %{rust_tier1_arches}
%ifarch ppc64 # wants g++ for some reason %ifarch ppc64 # wants g++ for some reason
BuildRequires: gcc-c++ BuildRequires: gcc-c++
%endif %endif
%description %description
V8 build tooling for Deno. This represents all of the common V8 build tooling for Deno. This represents all of the common
cruft that is dragged along into the deno build from V8, cruft that is dragged along into the deno build from V8,
@ -52,30 +61,57 @@ Chromium, etc.
%prep %prep
%autosetup -a1 -p1 %autosetup -a1 -p1
mkdir -p .cargo # Keeping this ifarch in case someone tries to build 32 bit
cp %{SOURCE2} .cargo/config # which is not our problem
rm Cargo.lock %ifarch x86_64 || x86_64_v3 || aarch64
# lib to lib64
sed -i 's|lib/clang|lib64/clang|g' build/config/clang/BUILD.gn
%endif
%build %build
#https://github.com/denoland/rusty_v8/#build-v8-from-source # Ensure that the clang version matches. This command came from Archlinux. Thanks.
export CLANG_VERSION=$(clang --version | grep -m1 version | sed 's/.* \([0-9]\+\).*/\1/')
# See https://github.com/denoland/rusty_v8/#build-v8-from-source
export V8_FROM_SOURCE=1 export V8_FROM_SOURCE=1
export CLANG_BASE_PATH=%{_prefix} export CLANG_BASE_PATH=%{_prefix}
# note: built in debug mode to export GN_ARGS="clang_version=${CLANG_VERSION} use_lld=true"
# emit symbols for linker in deno build export CC=clang
## is_debug=true export CXX=clang++
export GN_ARGS="" export CFLAGS="%{optflags} -Wno-unknown-warning-option"
#export RUST_BACKTRACE=full export CXXFLAGS="%{optflags} -Wno-unknown-warning-option"
%{__cargo} build %{__cargo_common_opts} export RUST_BACKTRACE=full
%{cargo_build}
# -DLLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind;compilER-RT"
%install %install
mkdir -p %{buildroot}%{_libdir} mkdir -p %{buildroot}%{_libdir}/crates/
cp target/debug/*.rlib %{buildroot}%{_libdir} # We are doing this so we can manipulate deno's Cargo.toml file later.
# The previous deno build does not use this and it does not make sense.
# Let's just use this to experiment rusty_v8 builds and patches before
# updating deno ;) it's chonky though
cp -rv $PWD \
%{buildroot}%{_libdir}/crates/rusty_v8
cp target/release/*.rlib %{buildroot}%{_libdir}
# we don't need those
pushd %{buildroot}%{_libdir}/crates/rusty_v8
rm -rf .github
rm -rf vendor
rm -rf target
%fdupes $PWD
popd
%files %files
%license LICENSE %license LICENSE
%doc README.md %doc README.md
%{_libdir}/libv8.rlib %{_libdir}/libv8.rlib
%dir %{_libdir}/crates/
%dir %{_libdir}/crates/rusty_v8
%dir %{_libdir}/crates/rusty_v8/.cargo
%{_libdir}/crates/rusty_v8/*
%{_libdir}/crates/rusty_v8/.cargo/config.toml
%{_libdir}/crates/rusty_v8/.clang-format
%{_libdir}/crates/rusty_v8/.gitmodules
%{_libdir}/crates/rusty_v8/.gn
%changelog %changelog

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:090b865f6f4f136c560e01830a1b8d2277e3426fe0e16a5f5c075117881d60cd
size 19403984

3
vendor.tar.zst Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4ce6859f2455bab01f2863b1c9c15d6356d307815310ff2b2fd75f20e83aebcc
size 22350685