After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 594206 - Add support for GObject-Introspection and provide GIR file with introspection data
Add support for GObject-Introspection and provide GIR file with introspection...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal enhancement
: 0.10.30
Assigned To: Sebastian Dröge (slomo)
GStreamer Maintainers
Depends on: 594209
Blocks: 585444 594351 594352
 
 
Reported: 2009-09-05 08:31 UTC by Sebastian Dröge (slomo)
Modified: 2010-08-14 13:11 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastian Dröge (slomo) 2009-09-05 08:31:43 UTC
+++ This bug was initially created as a clone of Bug #550616 +++

Hi,
we should support GObject-Introspection (
http://live.gnome.org/GObjectIntrospection ) at some point to allow easier and
standardized automatic generation of language bindings, etc.

This would also mean maintaining the API information inside GStreamer and
providing a GIR file with this information.
Comment 1 Sebastian Dröge (slomo) 2009-09-05 09:53:54 UTC
Now only bug #594209 needs to be fixed to enable the audio introspection build.


commit 7794caf9f8378618a7c5f4f73222c63849b37729
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:49:41 2009 +0200

    introspection: Fix build if gir-repository is not installed

commit 740bcd947956ba70a99da467bcb7b383def20092
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:37:14 2009 +0200

    video: Add gobject-introspection support

commit 0c0ba9768911f28179ae0df62df6a875d94d3e2e
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:35:34 2009 +0200

    tag: Add gobject-introspection support

commit 31b8e7fcee8e8b62ff9774483b2286800af4877d
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:34:11 2009 +0200

    sdp: Add gobject-introspection support

commit d91f5000e11632f484475cbe878ca6558ab2976d
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:31:48 2009 +0200

    libs: Add nodist headers and sources to the introspection files

commit e13a186b561527d07b78225a82ec7a6eebeb2b1c
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:28:59 2009 +0200

    rtsp: Add gobject-introspection support

commit 8001b380b1d0a0337c3fd291aa87843eb70b91d4
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:25:42 2009 +0200

    rtp: Add gobject-introspection support

commit 6ebc9414b69428382c591a666146885d35bb4a67
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:23:13 2009 +0200

    riff: Add gobject-introspection support

commit 9942cd57ef7c13a3f708292d4c1fdcefe30b81de
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:20:51 2009 +0200

    pbutils: Add gobject-introspection support

commit 666bdf9dad9f6d3b20f39ea4266f3de95e94ee71
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:17:07 2009 +0200

    netbuffer: Add gobject-introspection support

commit df2235beb53a55ff4220db07ed6f49e97a0799a4
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:15:05 2009 +0200

    interfaces: Add gobject-introspection support

commit b357cb9d2a92731690c0d679c906e7e02f1507ac
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:04:19 2009 +0200

    fft: Add gobject-introspection support

Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 11:01:44 2009 +0200

    cdda: Add gobject-introspection support
    
    This is disabled for now until gobject-introspection is fixed

commit 403f353bba65f0a9bb1b25fa7aa779fbd759486d
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 10:50:48 2009 +0200

    audio: Add gobject-introspection support

commit 61ae0059a49e599cc81657137cc1a8487e383a7c
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Sat Sep 5 10:40:21 2009 +0200

    app: Add gobject-introspection support
Comment 2 Philippe Normand 2009-09-06 10:33:04 UTC
When I build gir-repository master I get this:

make[2]: Entering directory `/home/phil/gst/jhbuild/build/gir-repository/gir'
/home/phil/gst/jhbuild/install/bin/g-ir-scanner -v --namespace GstVideo --nsversion=0.10 \
	    --add-include-path=. --add-include-path=. \
             --include=Gst-0.10 \
             --include=GstBase-0.10 \
	     --library=gstvideo-0.10 \
	     --libtool="/bin/bash ../libtool" \
             --pkg gobject-2.0 \
             --pkg gstreamer-0.10 \
             --pkg gstreamer-video-0.10 \
             --output GstVideo-0.10.gir \
	     `pkg-config --variable=includedir gstreamer-video-0.10`/gst/video/*h
In file included from <stdin>:4:
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideocodec.h:24:2: warning: #warning "GstBaseVideoCodec is unstable API and may change in future."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideocodec.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
In file included from /home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideocodec.h:29,
                 from <stdin>:4:
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoutils.h:24:2: warning: #warning "The base video utils API is unstable and may change in future."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoutils.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
In file included from <stdin>:5:
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideodecoder.h:24:2: warning: #warning "GstBaseVideoDecoder is unstable API and may change in future."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideodecoder.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
In file included from <stdin>:6:
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoencoder.h:24:2: warning: #warning "GstBaseVideoEncoder is unstable API and may change in future."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoencoder.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
In file included from <stdin>:7:
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoparse.h:24:2: warning: #warning "GstBaseVideoParse is unstable API and may change in future."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/video/gstbasevideoparse.h:25:2: warning: #warning "You can define GST_USE_UNSTABLE_API to avoid this warning."
/home/phil/gst/jhbuild/install/include/gstreamer-0.10/gst/gstutils.h:503: syntax error, unexpected INTEGER
/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10.o:(.data+0x4): undefined reference to `gst_base_video_codec_get_type'
/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10.o:(.data+0x8): undefined reference to `gst_base_video_decoder_get_type'
/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10.o:(.data+0xc): undefined reference to `gst_base_video_encoder_get_type'
/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10.o:(.data+0x10): undefined reference to `gst_base_video_parse_get_type'
collect2: ld returned 1 exit status
Traceback (most recent call last):
  • File "/home/phil/gst/jhbuild/install/bin/g-ir-scanner", line 38 in <module>
    sys.exit(scanner_main(sys.argv))
  • File "/home/phil/gst/jhbuild/install/lib/gobject-introspection/giscanner/scannermain.py", line 310 in scanner_main
    glibtransformer.get_get_type_functions())
  • File "/home/phil/gst/jhbuild/install/lib/gobject-introspection/giscanner/dumper.py", line 217 in compile_introspection_binary
    return dc.run()
  • File "/home/phil/gst/jhbuild/install/lib/gobject-introspection/giscanner/dumper.py", line 127 in run
    self._link(bin_path, o_path)
  • File "/home/phil/gst/jhbuild/install/lib/gobject-introspection/giscanner/dumper.py", line 212 in _link
    subprocess.check_call(args)
  • File "/usr/lib/python2.6/subprocess.py", line 462 in check_call
    raise CalledProcessError(retcode, cmd)
ubprocess.CalledProcessError: Command '['/bin/bash', '../libtool', '--mode=link', '--tag=CC', '--silent', 'gcc', '-o', '/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10', '-L.', '-lgstvideo-0.10', '-pthread', '-Wl,--export-dynamic', '-L/home/phil/gst/jhbuild/install/lib', '-lgio-2.0', '-lgirepository-1.0', '-lgobject-2.0', '-lgmodule-2.0', '-lgthread-2.0', '-lrt', '-lglib-2.0', '/home/phil/gst/jhbuild/build/gir-repository/gir/tmp-introspectshFIUl/GstVideo-0.10.o']' returned non-zero exit status 1
make[2]: *** [GstVideo-0.10.gir] Error 1

Would this be a bug in gir-repository or in gst? -base master is installed fine.
Comment 3 Sebastian Dröge (slomo) 2009-09-06 12:16:33 UTC
Your -base is too old, basevideoparse and friends have moved to gst-plugins-bad some weeks ago ;)

Apart from that you shouldn't use gir-repository for the GStreamer GIR stuff, it's in gst-plugins-base GIT now and it works (at least it should)
Comment 4 Philippe Normand 2009-09-06 12:26:41 UTC
Well I still need gir-repository for Gtk typelib and others ;) So I guess the gst stuff should now be removed from gir-repository.
Comment 5 Sebastian Dröge (slomo) 2009-09-06 16:48:18 UTC
(In reply to comment #4)
> Well I still need gir-repository for Gtk typelib and others ;) So I guess the
> gst stuff should now be removed from gir-repository.

Yes, but not now I'd say... there will be another gir-repository release probably before the next core/base releases. But before the next core/base releases it should be removed from gir-repository, right...
Comment 6 Tim-Philipp Müller 2010-08-04 12:29:06 UTC
What's up with this? Can it be closed?
Comment 7 Sebastian Dröge (slomo) 2010-08-04 12:48:45 UTC
Yes, can probably be closed. We have support for it now but it's not optimal or complete yet ;)