forked from pool/gobject-introspection
Accepting request 639467 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/639467 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gobject-introspection?expand=0&rev=80
This commit is contained in:
commit
aae63ef1c2
@ -9,7 +9,7 @@
|
|||||||
function split_name_version {
|
function split_name_version {
|
||||||
base=$1
|
base=$1
|
||||||
tsymbol=${base%-*}
|
tsymbol=${base%-*}
|
||||||
# Sometimes we get a Requires on Gdk.Settings.foo, bebause you can directly use imports.gi.Gdk.Settings.Foo in Javascript.
|
# Sometimes we get a Requires on Gdk.Settings.foo, because you can directly use imports.gi.Gdk.Settings.Foo in Javascript.
|
||||||
# We know that the symbol in this case is called Gdk, so we cut everything after the . away.
|
# We know that the symbol in this case is called Gdk, so we cut everything after the . away.
|
||||||
symbol=$(echo $tsymbol | awk -F. '{print $1}')
|
symbol=$(echo $tsymbol | awk -F. '{print $1}')
|
||||||
version=${base#*-}
|
version=${base#*-}
|
||||||
@ -46,7 +46,7 @@ done
|
|||||||
|
|
||||||
function gresources_requires {
|
function gresources_requires {
|
||||||
# GNOME is embedding .js files into ELF binaries for faster startup.
|
# GNOME is embedding .js files into ELF binaries for faster startup.
|
||||||
# As a result, we need to extract them and re'run the scanner over the
|
# As a result, we need to extract them and re-run the scanner over the
|
||||||
# embedded files.
|
# embedded files.
|
||||||
# We extract all the gresources embedded in ELF binaries and start
|
# We extract all the gresources embedded in ELF binaries and start
|
||||||
# gi-find-deps.sh recusively over the extracted file list.
|
# gi-find-deps.sh recusively over the extracted file list.
|
||||||
@ -87,6 +87,12 @@ function javascript_requires {
|
|||||||
split_name_version $module
|
split_name_version $module
|
||||||
print_req_prov
|
print_req_prov
|
||||||
done
|
done
|
||||||
|
# This is, at the moment, specifically for Polari where a "const { Foo, Bar } = imports.gi;" is used.
|
||||||
|
for module in $(grep -h -E -o "\{ \w+(: \w+|, \w+)+ \} = imports.gi;" $1 | \
|
||||||
|
sed -r -e '0,/\w+:\s\w+/ s/:\s\w+//g' -e 's: = imports.gi;:: ; s:\{ :: ; s: \}:: ; s/,//g'); do
|
||||||
|
split_name_version $module
|
||||||
|
print_req_prov
|
||||||
|
done
|
||||||
# Remember files which contain a pkg.require() call
|
# Remember files which contain a pkg.require() call
|
||||||
if pcregrep -M "pkg.require\\(([^;])*" $1 > /dev/null; then
|
if pcregrep -M "pkg.require\\(([^;])*" $1 > /dev/null; then
|
||||||
# the file contains a pkg.require(..) list... let's remember th is file for the in-depth scanner
|
# the file contains a pkg.require(..) list... let's remember th is file for the in-depth scanner
|
||||||
@ -173,7 +179,7 @@ function find_requires {
|
|||||||
# from gi.repository import foo, bar
|
# from gi.repository import foo, bar
|
||||||
# - in JS:
|
# - in JS:
|
||||||
# . imports.gi.foo; [unversioned requirement of 'foo']
|
# . imports.gi.foo; [unversioned requirement of 'foo']
|
||||||
# . imports.gi.goo-1.0; [versioned requirement]
|
# . imports.gi.foo-1.0; [versioned requirement of 'foo']
|
||||||
# . imports.gi.versions.Gtk = '3.0';
|
# . imports.gi.versions.Gtk = '3.0';
|
||||||
# . The imports can be listed on one line, and we catch them.
|
# . The imports can be listed on one line, and we catch them.
|
||||||
|
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:5b2875ccff99ff7baab63a34b67f8c920def240e178ff50add809e267d9ea24b
|
|
||||||
size 1397812
|
|
3
gobject-introspection-1.58.0.tar.xz
Normal file
3
gobject-introspection-1.58.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:27c1590a32749de0a5481ce897772547043e94bccba4bc0a7edb3d8513e401ec
|
||||||
|
size 1370824
|
29
gobject-introspection-3.30.0-install-warnlib.patch
Normal file
29
gobject-introspection-3.30.0-install-warnlib.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
From a68cfd769904c621fb2ebc0c4f24f2659fa283de Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jan Tojnar <jtojnar@gmail.com>
|
||||||
|
Date: Fri, 7 Sep 2018 16:12:59 +0200
|
||||||
|
Subject: [PATCH] meson: Install warnlib
|
||||||
|
|
||||||
|
For some reason, meson build system did not install warnlib.
|
||||||
|
Let's do it.
|
||||||
|
|
||||||
|
Patch from Arch Linux
|
||||||
|
---
|
||||||
|
tests/meson.build | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/tests/meson.build b/tests/meson.build
|
||||||
|
index 71cd97fe..18cc0807 100644
|
||||||
|
--- a/tests/meson.build
|
||||||
|
+++ b/tests/meson.build
|
||||||
|
@@ -8,6 +8,8 @@ test_regress_incdirs = include_directories(['.', 'scanner'])
|
||||||
|
installed_sources = [
|
||||||
|
'scanner/regress.c',
|
||||||
|
'scanner/regress.h',
|
||||||
|
+ 'scanner/warnlib.c',
|
||||||
|
+ 'scanner/warnlib.h',
|
||||||
|
'gimarshallingtests.c',
|
||||||
|
'gimarshallingtests.h',
|
||||||
|
'gitestmacros.h',
|
||||||
|
--
|
||||||
|
2.18.0
|
||||||
|
|
@ -1,3 +1,65 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 26 21:54:30 UTC 2018 - luc14n0@linuxmail.org
|
||||||
|
|
||||||
|
- Update gi-find-reqs.sh to support new Polari's imports.gi pattern
|
||||||
|
"const { Foo, Bar } = imports.gi;".
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 19 18:38:47 UTC 2018 - antoine.belvire@opensuse.org
|
||||||
|
|
||||||
|
- Add gobject-introspection-3.30.0-install-warnlib.patch: Install
|
||||||
|
missing files, notably required by gjs (picked from upstream).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Sep 11 03:05:57 UTC 2018 - luc14n0@linuxmail.org
|
||||||
|
|
||||||
|
- Update to version 1.58.0:
|
||||||
|
+ Changes:
|
||||||
|
- Add a --version argument to the Python-based tools
|
||||||
|
- Allow selecting the output format for g-ir-doc-tool
|
||||||
|
- Support all _Float* C types from ISO/IEC TS 18661-3:2015
|
||||||
|
- g-ir-doc-tool: Add DevDocs formatting for GJS
|
||||||
|
(--format=devdocs).
|
||||||
|
+ Issues resolved:
|
||||||
|
- Default element-type not set for GByteArray object properties
|
||||||
|
(glgo#GNOME/gobject-introspection#184).
|
||||||
|
- c:type missing pointer/array information in GIR for C array
|
||||||
|
parameters (glgo#GNOME/gobject-introspection#189).
|
||||||
|
- Allow multiple output formats
|
||||||
|
(glgo#GNOME/gobject-introspection#134).
|
||||||
|
- gtk2 hits unreachable code after enable -Wswitch-default
|
||||||
|
(glgo#GNOME/gobject-introspection#218).
|
||||||
|
- Memory leaks in GI regress and marshalling tests property
|
||||||
|
setter (glgo#GNOME/gobject-introspection#113).
|
||||||
|
- Add python3-Sphinx BuildRequires: New dependency.
|
||||||
|
- Add meson BuildRequires and replace configure/make/make_install
|
||||||
|
with meson/meson_build/meson_install/meson_test macros to reflect
|
||||||
|
upstream's build system port to Meson.
|
||||||
|
- Enable tests run to increase QA of package.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Aug 18 15:27:19 UTC 2018 - bjorn.lie@gmail.com
|
||||||
|
|
||||||
|
- Update to version 1.57.3:
|
||||||
|
+ The autotools build now uses autoconf-archive.
|
||||||
|
+ g-ir-doc-tool: Add DevDocs formatting for GJS
|
||||||
|
(--format=devdocs). This adds a dependency on the Python
|
||||||
|
markdown package.
|
||||||
|
- Add python3-Markdown BuildRequires: New dependency.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Aug 10 04:43:30 UTC 2018 - luc14n0@linuxmail.org
|
||||||
|
|
||||||
|
- Update to version 1.57.2:
|
||||||
|
+ Add a --version argument to the Python-based tools.
|
||||||
|
+ Allow selecting the output format for g-ir-doc-tool.
|
||||||
|
+ Support all _Float* C types from ISO/IEC TS 18661-3:2015.
|
||||||
|
+ Issues resolved: glgo#GNOME/gobject-introspection#184,
|
||||||
|
glgo#GNOME/gobject-introspection#189,
|
||||||
|
glgo#GNOME/gobject-introspection#134,
|
||||||
|
glgo#GNOME/gobject-introspection#218,
|
||||||
|
glgo#GNOME/gobject-introspection#113.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Apr 9 09:50:12 UTC 2018 - bjorn.lie@gmail.com
|
Mon Apr 9 09:50:12 UTC 2018 - bjorn.lie@gmail.com
|
||||||
|
|
||||||
|
@ -12,38 +12,45 @@
|
|||||||
# license that conforms to the Open Source Definition (Version 1.9)
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
# published by the Open Source Initiative.
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
Name: gobject-introspection
|
Name: gobject-introspection
|
||||||
Version: 1.56.1
|
Version: 1.58.0
|
||||||
Release: 0
|
Release: 0
|
||||||
# FIXME: Find a way to identify if we need python3-gobject or python-gobject from gi-find-deps.sh.
|
# FIXME: Find a way to identify if we need python3-gobject or python-gobject from gi-find-deps.sh.
|
||||||
Summary: GObject Introspection Tools
|
Summary: GObject Introspection Tools
|
||||||
License: LGPL-2.1-or-later AND GPL-2.0-or-later
|
License: LGPL-2.1-or-later AND GPL-2.0-or-later
|
||||||
Group: Development/Libraries/GNOME
|
Group: Development/Libraries/GNOME
|
||||||
URL: https://wiki.gnome.org/Projects/GObjectIntrospection
|
URL: https://wiki.gnome.org/Projects/GObjectIntrospection
|
||||||
Source0: http://download.gnome.org/sources/gobject-introspection/1.56/%{name}-%{version}.tar.xz
|
|
||||||
|
Source0: http://download.gnome.org/sources/gobject-introspection/1.58/%{name}-%{version}.tar.xz
|
||||||
# gi-find-deps.sh is a rpm helper for Provides and Requires. Script creates typelib()-style Provides/Requires.
|
# gi-find-deps.sh is a rpm helper for Provides and Requires. Script creates typelib()-style Provides/Requires.
|
||||||
Source1: gi-find-deps.sh
|
Source1: gi-find-deps.sh
|
||||||
Source2: gobjectintrospection.attr
|
Source2: gobjectintrospection.attr
|
||||||
Source3: gobject-introspection-typelib.template
|
Source3: gobject-introspection-typelib.template
|
||||||
Source98: baselibs.conf
|
Source98: baselibs.conf
|
||||||
Source99: %{name}-rpmlintrc
|
Source99: %{name}-rpmlintrc
|
||||||
|
#PATCH-FIX-UPSTREAM gobject-introspection-3.30.0-install-warnlib.patch -- install missing file (picked from upstream)
|
||||||
|
Patch0: gobject-introspection-3.30.0-install-warnlib.patch
|
||||||
|
|
||||||
BuildRequires: bison
|
BuildRequires: bison
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: flex
|
BuildRequires: flex
|
||||||
BuildRequires: gtk-doc
|
BuildRequires: gtk-doc
|
||||||
|
BuildRequires: meson
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
BuildRequires: python3-Mako
|
BuildRequires: python3-Mako
|
||||||
|
BuildRequires: python3-Markdown
|
||||||
|
BuildRequires: python3-Sphinx
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
BuildRequires: python3-xml
|
BuildRequires: python3-xml
|
||||||
BuildRequires: pkgconfig(cairo)
|
BuildRequires: pkgconfig(cairo)
|
||||||
BuildRequires: pkgconfig(cairo-gobject)
|
BuildRequires: pkgconfig(cairo-gobject)
|
||||||
BuildRequires: pkgconfig(gio-2.0)
|
BuildRequires: pkgconfig(gio-2.0)
|
||||||
BuildRequires: pkgconfig(gio-unix-2.0)
|
BuildRequires: pkgconfig(gio-unix-2.0)
|
||||||
BuildRequires: pkgconfig(glib-2.0) >= 2.56.1
|
BuildRequires: pkgconfig(glib-2.0) >= 2.58.0
|
||||||
BuildRequires: pkgconfig(gmodule-2.0)
|
BuildRequires: pkgconfig(gmodule-2.0)
|
||||||
BuildRequires: pkgconfig(gobject-2.0)
|
BuildRequires: pkgconfig(gobject-2.0)
|
||||||
BuildRequires: pkgconfig(libffi) >= 3.0.0
|
BuildRequires: pkgconfig(libffi) >= 3.0.0
|
||||||
@ -95,18 +102,19 @@ a uniform, machine readable format.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export PYTHON="python3"
|
%meson \
|
||||||
%configure \
|
-Dgtk-doc=true \
|
||||||
--enable-gtk-doc \
|
-Dpython='%{_bindir}/python3'
|
||||||
--disable-static \
|
%meson_build
|
||||||
--enable-doctool
|
|
||||||
make %{?_smp_mflags} V=1
|
%check
|
||||||
|
%meson_test
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
%meson_install
|
||||||
find %{buildroot} -type f -name "*.la" -delete -print
|
|
||||||
install -D %{SOURCE1} %{buildroot}%{_rpmconfigdir}/gi-find-deps.sh
|
install -D %{SOURCE1} %{buildroot}%{_rpmconfigdir}/gi-find-deps.sh
|
||||||
install -D %{SOURCE2} -m 0644 %{buildroot}%{_rpmconfigdir}/fileattrs/gobjectintrospection.attr
|
install -D %{SOURCE2} -m 0644 %{buildroot}%{_rpmconfigdir}/fileattrs/gobjectintrospection.attr
|
||||||
# comparing, if we provide all the symbols expected.
|
# comparing, if we provide all the symbols expected.
|
||||||
@ -114,15 +122,12 @@ ls %{buildroot}%{_libdir}/girepository-1.0/*.typelib | sh %{SOURCE1} -P > gobjec
|
|||||||
diff -s %{SOURCE3} gobject-introspection-typelib.installed
|
diff -s %{SOURCE3} gobject-introspection-typelib.installed
|
||||||
%fdupes %{buildroot}
|
%fdupes %{buildroot}
|
||||||
|
|
||||||
%check
|
|
||||||
make %{?_smp_mflags} check
|
|
||||||
|
|
||||||
%post -n libgirepository-1_0-1 -p /sbin/ldconfig
|
%post -n libgirepository-1_0-1 -p /sbin/ldconfig
|
||||||
%postun -n libgirepository-1_0-1 -p /sbin/ldconfig
|
%postun -n libgirepository-1_0-1 -p /sbin/ldconfig
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%license COPYING COPYING.GPL
|
%license COPYING COPYING.GPL
|
||||||
%doc AUTHORS CONTRIBUTORS NEWS README TODO
|
%doc NEWS README.rst TODO
|
||||||
%{_bindir}/g-ir-annotation-tool
|
%{_bindir}/g-ir-annotation-tool
|
||||||
%{_bindir}/g-ir-compiler
|
%{_bindir}/g-ir-compiler
|
||||||
%{_bindir}/g-ir-doc-tool
|
%{_bindir}/g-ir-doc-tool
|
||||||
|
Loading…
x
Reference in New Issue
Block a user