2009-08-04 12:20:43 +02:00
|
|
|
#
|
2011-01-17 18:54:16 +01:00
|
|
|
# spec file for package gjs
|
2009-08-04 12:20:43 +02:00
|
|
|
#
|
2023-02-21 17:13:01 +01:00
|
|
|
# Copyright (c) 2023 SUSE LLC
|
2009-08-04 12:20:43 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
2018-09-27 09:41:18 +02:00
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
2009-08-04 12:20:43 +02:00
|
|
|
#
|
|
|
|
|
2012-03-11 18:45:16 +01:00
|
|
|
|
2023-09-12 04:33:59 +02:00
|
|
|
%bcond_with profiling
|
|
|
|
|
2009-08-04 12:20:43 +02:00
|
|
|
Name: gjs
|
2023-09-18 08:34:06 +02:00
|
|
|
Version: 1.78.0
|
2011-12-21 06:05:24 +01:00
|
|
|
Release: 0
|
2009-09-03 23:35:28 +02:00
|
|
|
Summary: JavaScript bindings based on gobject-introspection and Mozilla
|
2021-03-24 17:32:10 +01:00
|
|
|
License: LGPL-2.0-or-later AND MIT
|
2009-09-03 23:35:28 +02:00
|
|
|
Group: Development/Libraries/GNOME
|
2018-03-09 11:09:01 +01:00
|
|
|
URL: https://wiki.gnome.org/Projects/Gjs
|
2023-09-18 08:34:06 +02:00
|
|
|
Source0: https://download.gnome.org/sources/gjs/1.78/%{name}-%{version}.tar.xz
|
Accepting request 689942 from GNOME:Next
- Update to version 3.32.0:
+ Stable release version bump.
- Update to version 1.55.92:
+ Possible memory allocation/deallocation bug (possibly in
js_free() in GJS).
+ cairo-context: Special-case 0-sized vector.
+ Add some more eslint rules.
+ NMake/libgjs-private: Export all the public symbols there.
- Update to version 1.55.91:
+ The problem of freezing while running the tests using GCC's
sanitizers was determined to be a bug in GCC, which was fixed
in GCC 9.0.1.
+ Closed bugs and merge requests:
- gnome-sound-recorder crashes deep inside libgjs.
- Various maintenance.
- wrapperutils: Define $gtype property as non-enumerable.
- Update to version 1.55.90:
+ New JS API: It's now possible to call and implement DBus
methods whose parameters or return types include file
descriptor lists (type signature 'h'). This involves passing or
receiving a Gio.UnixFDList instance along with the parameters
or return values.
+ To call a method with a file descriptor list, pass the
Gio.UnixFDList along with the rest of the parameters, in any
order, the same way you would pass a Gio.Cancellable or async
callback.
+ For return values, things are a little more complicated, in
order to avoid breaking existing code. Previously,
synchronously called DBus proxy methods would return an
unpacked GVariant. Now, but only if called with a
Gio.UnixFDList, they will return [unpacked GVariant,
Gio.UnixFDList]. This does not break existing code because it
was not possible to call a method with a Gio.UnixFDList before,
and the return value is unchanged if not calling with a
Gio.UnixFDList. This does mean, unfortunately, that if you have
a method with an 'h' in its return signature but not in its
argument signatures, you will have to call it with an empty
FDList in order to receive an FDList with the return value,
when calling synchronously.
+ On the DBus service side, when receiving a method call, we now
pass the Gio.UnixFDList received from DBus to the called
method. Previously, sync methods were passed the parameters,
and async methods were passed the parameters plus the
Gio.DBusInvocation object. Appending the Gio.UnixFDList to
those parameters also should not break existing code.
+ See the new tests in installed-tests/js/testGDBus.js for
examples of calling methods with FD lists.
+ We have observed on the CI server that GJS 1.55.90 will hang
forever while running the test suite compiled with GCC 9.0.0
and configured with the --enable-asan and --enable-ubsan
arguments. This should be addressed in one of the following
1.55.x releases.
+ Closed bugs and merge requests:
- GDBus proxy overrides should support
Gio.DBusProxy.call_with_unix_fd_list().
- Add regression tests for GObject vfuncs.
- GjsPrivate: Sources should be C files.
- build: Vendor last-good version of AX_CODE_COVERAGE.
- Update to version 1.55.4:
+ Various maintenance.
+ Boxed copy constructor should not be called, split Boxed into
prototype and instance structs.
- Update to version 1.55.3:
+ Manually constructed ByteArray toString segfaults.
+ signals: Add _signalHandlerIsConnected method.
+ Various maintenance.
- Changes from version 1.55.2:
+ Gnome-shell crashes on destroying cached param specs.
+ Various maintenance.
+ Auto pointers builder.
+ configure.ac: Update bug link.
+ SIGSEGV when exiting gnome-shell.
+ Fix build with --enable-dtrace and create CI job to ensure it
doesn't break in the future.
+ Delay JSString-to-UTF8 conversion.
+ Annotate return values.
+ Fix a regression with GError toString().
+ GType memleak fixes.
+ Atoms refactor.
+ Write a "Code Hospitable" README file.
+ object: Method lookup repeatedly traverses introspection.
+ Handler of GtkEditable::insert-text signal is not run.
- Changes from version 1.55.1:
+ object: Implement newEnumerate hook for GObject.
+ Various maintenance.
+ ByteArray.toString should stop at null bytes.
+ Byte arrays that represent encoded strings should be
0-terminated.
+ context: Defer and therefore batch forced GC runs.
+ context: use timeout with seconds to schedule a gc trigger.
+ arg: Add special-case for byte arrays going to C.
OBS-URL: https://build.opensuse.org/request/show/689942
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gjs?expand=0&rev=162
2019-04-06 20:29:57 +02:00
|
|
|
|
2020-04-18 00:43:00 +02:00
|
|
|
BuildRequires: c++_compiler
|
|
|
|
BuildRequires: git
|
2022-09-13 09:32:42 +02:00
|
|
|
BuildRequires: meson >= 0.54.0
|
2017-08-31 09:45:40 +02:00
|
|
|
BuildRequires: pkgconfig
|
2009-08-04 12:20:43 +02:00
|
|
|
BuildRequires: readline-devel
|
2022-09-19 18:15:50 +02:00
|
|
|
%if 0%{?sle_version} && 0%{?sle_version} <= 150500
|
2021-07-28 13:25:36 +02:00
|
|
|
BuildRequires: xorg-x11-Xvfb
|
|
|
|
%else
|
2021-03-24 17:32:10 +01:00
|
|
|
BuildRequires: xorg-x11-server-Xvfb
|
2021-07-28 13:25:36 +02:00
|
|
|
%endif
|
2010-11-05 12:22:58 +01:00
|
|
|
BuildRequires: pkgconfig(cairo)
|
2017-11-02 14:52:33 +01:00
|
|
|
BuildRequires: pkgconfig(cairo-gobject)
|
2014-08-23 13:51:51 +02:00
|
|
|
BuildRequires: pkgconfig(cairo-xlib)
|
2010-11-05 12:22:58 +01:00
|
|
|
BuildRequires: pkgconfig(dbus-glib-1)
|
2019-11-26 10:30:23 +01:00
|
|
|
BuildRequires: pkgconfig(gio-2.0) >= 2.58.0
|
|
|
|
BuildRequires: pkgconfig(glib-2.0) >= 2.58.0
|
|
|
|
BuildRequires: pkgconfig(gobject-2.0) >= 2.58.0
|
2017-11-02 14:52:33 +01:00
|
|
|
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.53.4
|
|
|
|
BuildRequires: pkgconfig(gthread-2.0) >= 2.50.0
|
2017-02-22 21:41:49 +01:00
|
|
|
BuildRequires: pkgconfig(gtk+-3.0) >= 3.20
|
2021-10-06 21:35:32 +02:00
|
|
|
BuildRequires: pkgconfig(gtk4)
|
2012-09-21 21:23:22 +02:00
|
|
|
BuildRequires: pkgconfig(libffi)
|
2023-09-12 04:33:59 +02:00
|
|
|
BuildRequires: pkgconfig(mozjs-115)
|
|
|
|
%if %{with profiling}
|
2020-10-26 09:11:13 +01:00
|
|
|
BuildRequires: pkgconfig(sysprof-capture-4)
|
2023-09-12 04:33:59 +02:00
|
|
|
%endif
|
2010-11-05 12:22:58 +01:00
|
|
|
Requires: libgjs0 = %{version}
|
2018-02-19 15:00:20 +01:00
|
|
|
ExcludeArch: s390
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%description
|
|
|
|
This module contains JavaScript bindings based on gobject-introspection and the
|
|
|
|
Mozilla SpiderMonkey JavaScript engine.
|
|
|
|
|
2010-11-05 12:22:58 +01:00
|
|
|
%package -n libgjs0
|
2009-08-04 12:20:43 +02:00
|
|
|
Summary: JavaScript bindings based on gobject-introspection and Mozilla
|
2018-09-22 01:30:04 +02:00
|
|
|
License: LGPL-2.0-or-later
|
2012-09-08 00:35:08 +02:00
|
|
|
Group: System/Libraries
|
2010-11-05 12:22:58 +01:00
|
|
|
Provides: libgjs-0 = %{version}
|
|
|
|
Obsoletes: libgjs-0 < %{version}
|
2009-08-04 12:20:43 +02:00
|
|
|
|
2010-11-05 12:22:58 +01:00
|
|
|
%description -n libgjs0
|
2009-08-04 12:20:43 +02:00
|
|
|
This module contains JavaScript bindings based on gobject-introspection and the
|
|
|
|
Mozilla SpiderMonkey JavaScript engine.
|
|
|
|
|
2012-09-08 00:35:08 +02:00
|
|
|
%package -n typelib-1_0-GjsPrivate-1_0
|
2017-09-12 08:58:01 +02:00
|
|
|
Summary: Introspection bindings for the GJS library
|
|
|
|
# The tyeplib was renamed in gnome 3.6, to reflect it is a private lib.
|
2021-03-24 17:32:10 +01:00
|
|
|
License: LGPL-2.0-or-later AND MIT
|
2017-02-22 21:41:49 +01:00
|
|
|
Group: System/Libraries
|
2012-10-20 16:17:28 +02:00
|
|
|
Obsoletes: typelib-1_0-GjsDBus-1_0 < %{version}
|
2011-12-24 15:24:50 +01:00
|
|
|
|
2012-09-08 00:35:08 +02:00
|
|
|
%description -n typelib-1_0-GjsPrivate-1_0
|
2011-12-24 15:24:50 +01:00
|
|
|
This module contains JavaScript bindings based on gobject-introspection and the
|
|
|
|
Mozilla SpiderMonkey JavaScript engine.
|
|
|
|
|
2009-08-04 12:20:43 +02:00
|
|
|
%package -n libgjs-devel
|
2017-09-12 08:58:01 +02:00
|
|
|
Summary: Development files for the GJS library
|
2021-03-24 17:32:10 +01:00
|
|
|
License: LGPL-2.0-or-later AND MIT
|
2011-12-24 15:24:50 +01:00
|
|
|
Group: Development/Libraries/GNOME
|
2015-03-19 15:35:05 +01:00
|
|
|
Requires: %{name} = %{version}
|
2010-11-05 12:22:58 +01:00
|
|
|
Requires: libgjs0 = %{version}
|
2012-09-08 00:35:08 +02:00
|
|
|
Requires: typelib-1_0-GjsPrivate-1_0 = %{version}
|
2009-08-04 12:20:43 +02:00
|
|
|
# Just a helper provides
|
2010-11-05 12:22:58 +01:00
|
|
|
Provides: gjs-devel = %{version}
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%description -n libgjs-devel
|
|
|
|
This module contains JavaScript bindings based on gobject-introspection and the
|
|
|
|
Mozilla SpiderMonkey JavaScript engine.
|
|
|
|
|
|
|
|
%prep
|
2018-05-07 13:10:56 +02:00
|
|
|
%autosetup -p1
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%build
|
2020-04-18 00:43:00 +02:00
|
|
|
%meson \
|
2020-04-28 16:44:49 +02:00
|
|
|
-Dinstalled_tests=false \
|
2023-09-12 04:33:59 +02:00
|
|
|
-Dprofiler=%{?with_profiling:enabled}%{!?with_profiling:disabled} \
|
2020-04-18 00:43:00 +02:00
|
|
|
%{nil}
|
|
|
|
%meson_build
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%install
|
2020-04-18 00:43:00 +02:00
|
|
|
%meson_install
|
|
|
|
|
2023-06-13 06:18:13 +02:00
|
|
|
%check
|
|
|
|
export DISPLAY=:98
|
|
|
|
Xvfb :98 >& Xvfb.log & trap "kill $! || true" EXIT
|
|
|
|
sleep 10
|
|
|
|
%meson_test
|
2009-08-04 12:20:43 +02:00
|
|
|
|
2022-09-19 18:15:50 +02:00
|
|
|
%ldconfig_scriptlets -n libgjs0
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%files
|
2018-03-09 11:09:01 +01:00
|
|
|
%license COPYING
|
2020-04-18 00:43:00 +02:00
|
|
|
%doc NEWS README.md
|
2011-07-28 00:07:27 +02:00
|
|
|
%{_bindir}/gjs
|
|
|
|
%{_bindir}/gjs-console
|
2009-08-04 12:20:43 +02:00
|
|
|
|
2010-11-05 12:22:58 +01:00
|
|
|
%files -n libgjs0
|
2021-03-24 17:32:10 +01:00
|
|
|
%license LICENSES/LGPL-2.0-or-later.txt
|
2009-08-04 12:20:43 +02:00
|
|
|
%{_libdir}/*.so.*
|
|
|
|
|
2012-09-08 00:35:08 +02:00
|
|
|
%files -n typelib-1_0-GjsPrivate-1_0
|
|
|
|
%dir %{_libdir}/gjs
|
|
|
|
%dir %{_libdir}/gjs/girepository-1.0/
|
|
|
|
%{_libdir}/gjs/girepository-1.0/GjsPrivate-1.0.typelib
|
2011-12-24 15:24:50 +01:00
|
|
|
|
2009-08-04 12:20:43 +02:00
|
|
|
%files -n libgjs-devel
|
|
|
|
%{_includedir}/*
|
|
|
|
%{_libdir}/*.so
|
|
|
|
%{_libdir}/pkgconfig/*.pc
|
2018-03-09 11:09:01 +01:00
|
|
|
%{_datadir}/%{name}-1.0/
|
2009-08-04 12:20:43 +02:00
|
|
|
|
|
|
|
%changelog
|