+#
+# Conditional build:
+%bcond_without sysprof # sysprof profiling
+%bcond_without systemtap # systemtap/dtrace trace support
+#
Summary: JavaScript bindings for GNOME
-Summary(pl.UTF-8): Wiązania JavaScript dla GNOME
+Summary(pl.UTF-8): Wiązania JavaScriptu dla GNOME
Name: gjs
-Version: 1.32.0
+Version: 1.58.4
Release: 1
-License: MIT and (MPL v1.1 / GPL v2+ / LGPL v2+)
+License: MIT and (MPL v1.1 or GPL v2+ or LGPL v2+)
Group: Libraries
-Source0: http://ftp.gnome.org/pub/GNOME/sources/gjs/1.32/%{name}-%{version}.tar.xz
-# Source0-md5: a77fe0edb6f681434d8360c62e471abf
-URL: http://live.gnome.org/Gjs
-BuildRequires: autoconf >= 2.61
-BuildRequires: automake
+Source0: http://ftp.gnome.org/pub/GNOME/sources/gjs/1.58/%{name}-%{version}.tar.xz
+# Source0-md5: 385f4baa266991a08d3e425bc69ee962
+URL: https://wiki.gnome.org/Projects/Gjs
+BuildRequires: autoconf >= 2.64
+BuildRequires: automake >= 1:1.11.1
BuildRequires: cairo-devel
BuildRequires: cairo-gobject-devel
-BuildRequires: dbus-glib-devel
-BuildRequires: gettext-devel
-BuildRequires: glib2-devel >= 1:2.32.0
-BuildRequires: gobject-introspection-devel >= 1.32.0
-BuildRequires: js185-devel
-BuildRequires: libstdc++-devel
-BuildRequires: libtool
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= 1:2.58.0
+BuildRequires: gobject-introspection-devel >= 1.41.4
+BuildRequires: libffi-devel
+BuildRequires: libstdc++-devel >= 6:5.0
+BuildRequires: libtool >= 2:2.2.0
+BuildRequires: mozjs60-devel >= 60
BuildRequires: pkgconfig
BuildRequires: readline-devel
-Requires: glib2 >= 1:2.32.0
+# pkgconfig(sysprof-capture-3)
+%{?with_sysprof:BuildRequires: sysprof-devel >= 3.34}
+%{?with_systemtap:BuildRequires: systemtap-sdt-devel}
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+Requires: glib2 >= 1:2.58.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
framework.
%description -l pl.UTF-8
-Gjs pozwala używać bibliotek GNOME z JavaScript. Bazuje głównie na
-silniku JavaScript Spidermonkey i systemie GObject introspection.
+Gjs pozwala używać bibliotek GNOME z JavaScriptem. Jest oparty głównie
+na silniku JavaScriptu Spidermonkey i systemie GObject introspection.
%package devel
Summary: Header files for gjs library
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki gjs
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: dbus-devel
-Requires: glib2-devel >= 1:2.32.0
-Requires: gobject-introspection-devel >= 1.32.0
-Requires: js185-devel
+Requires: cairo-devel
+Requires: cairo-gobject-devel
+Requires: glib2-devel >= 1:2.58.0
+Requires: gobject-introspection-devel >= 1.41.4
+Requires: libffi-devel
+Requires: mozjs60-devel >= 60
%description devel
Header files for gjs library.
%description devel -l pl.UTF-8
Pliki nagłówkowe biblioteki gjs.
+%package -n systemtap-gjs
+Summary: systemtap/dtrace probes for gjs
+Summary(pl.UTF-8): Sondy systemtap/dtrace dla gjs
+Group: Development/Tools
+Requires: %{name} = %{version}-%{release}
+Requires: systemtap-client
+
+%description -n systemtap-gjs
+systemtap/dtrace probes for gjs.
+
+%description -n systemtap-gjs -l pl.UTF-8
+Sondy systemtap/dtrace dla gjs.
+
%prep
%setup -q
%{__autoheader}
%{__automake}
%configure \
- --disable-silent-rules
+ --enable-profiler%{!?with_sysprof:=no} \
+ --disable-silent-rules \
+ %{?with_systemtap:--enable-systemtap}
%{__make}
%install
%{__make} -j1 install \
DESTDIR=$RPM_BUILD_ROOT
-cp examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -p examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/gjs-1.0/*.la \
- $RPM_BUILD_ROOT%{_libdir}/*.la
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
+# belongs to installed-tests
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/org.gnome.GjsTest.gschema.xml
%clean
rm -rf $RPM_BUILD_ROOT
%doc COPYING NEWS README
%attr(755,root,root) %{_bindir}/gjs
%attr(755,root,root) %{_bindir}/gjs-console
-%attr(755,root,root) %{_libdir}/libgjs-dbus.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgjs-dbus.so.0
-%attr(755,root,root) %{_libdir}/libgjs-gdbus.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgjs-gdbus.so.0
%attr(755,root,root) %{_libdir}/libgjs.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libgjs.so.0
-%{_libdir}/girepository-1.0/GjsDBus-1.0.typelib
-%dir %{_libdir}/gjs-1.0
-%attr(755,root,root) %{_libdir}/gjs-1.0/cairoNative.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/console.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/dbusNative.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/debugger.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/gettextNative.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/langNative.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/mainloop.so
-%attr(755,root,root) %{_libdir}/gjs-1.0/system.so
+%dir %{_libdir}/gjs
+%dir %{_libdir}/gjs/girepository-1.0
+%{_libdir}/gjs/girepository-1.0/GjsPrivate-1.0.typelib
%{_datadir}/gjs-1.0
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libgjs-dbus.so
-%attr(755,root,root) %{_libdir}/libgjs-gdbus.so
%attr(755,root,root) %{_libdir}/libgjs.so
-%{_datadir}/gir-1.0/GjsDBus-1.0.gir
%{_includedir}/gjs-1.0
%{_pkgconfigdir}/gjs-1.0.pc
-%{_pkgconfigdir}/gjs-dbus-1.0.pc
-%{_pkgconfigdir}/gjs-internals-1.0.pc
%{_examplesdir}/%{name}-%{version}
+
+%files -n systemtap-gjs
+%defattr(644,root,root,755)
+%{_datadir}/systemtap/tapset/gjs.stp