gstreamer: Add support for Meson as alternative/parallel build system

Stefan Sauer ensonic at hora-obscura.de
Sun Aug 21 08:53:30 UTC 2016


On 08/20/2016 11:59 AM, Tim MXXller wrote:
> Module: gstreamer
> Branch: master
> Commit: b2f9808722a0254acba17ef98a612a2792184e12
> URL:    http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=b2f9808722a0254acba17ef98a612a2792184e12
>
> Author: Nirbheek Chauhan <nirbheek at centricular.com>
> Date:   Fri Aug 12 20:43:17 2016 +0530
>
> Add support for Meson as alternative/parallel build system
>
> https://github.com/mesonbuild/meson
>
> With contributions from:
>
> Tim-Philipp Müller <tim at centricular.com>
> Mathieu Duponchelle <mathieu.duponchelle at opencreed.com>
> Jussi Pakkanen <jpakkane at gmail.com> (original port)
>
> Highlights of the features provided are:
> * Faster builds on Linux (~40-50% faster)
FYI: the autotools based build can be made a lot faster by switching to
non recursive make. Especially on the plugin modules the gains are
large. If we could make up our mind on this subject, it would be a
matter for a few devs of dedicating one evening and switching.

Stefan
> * The ability to build with MSVC on Windows
> * Generate Visual Studio project files
> * Generate XCode project files
> * Much faster builds on Windows (on-par with Linux)
> * Seriously fast configure and building on embedded
>
> ... and many more. For more details see:
>
> http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
> http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html
>
> Building with Meson should work on both Linux and Windows, but may
> need a few more tweaks on other operating systems.
>
> ---
>
>  .gitignore                               |   1 +
>  config.h.meson                           | 441 +++++++++++++++++++++++++++++++
>  docs/gst/meson.build                     |  12 +
>  docs/libs/meson.build                    |  12 +
>  docs/meson.build                         |  12 +
>  gst/build_mkenum.py                      |  54 ++++
>  gst/meson.build                          | 252 ++++++++++++++++++
>  gst/parse/gen_grammar.py.in              |  21 ++
>  gst/parse/gen_lex.py.in                  |  27 ++
>  gst/parse/meson.build                    |  61 +++++
>  gst/printf/meson.build                   |  24 ++
>  libs/gst/base/meson.build                |  96 +++++++
>  libs/gst/check/libcheck/meson.build      |  41 +++
>  libs/gst/check/meson.build               |  47 ++++
>  libs/gst/controller/meson.build          |  63 +++++
>  libs/gst/helpers/meson.build             |  12 +
>  libs/gst/meson.build                     |   8 +
>  libs/gst/net/meson.build                 |  65 +++++
>  libs/meson.build                         |   1 +
>  meson.build                              | 277 +++++++++++++++++++
>  meson_options.txt                        |   5 +
>  pkgconfig/meson.build                    |  26 ++
>  plugins/elements/meson.build             |  49 ++++
>  plugins/meson.build                      |   3 +
>  po/meson.build                           |  45 ++++
>  tests/benchmarks/meson.build             |  20 ++
>  tests/check/meson.build                  | 159 +++++++++++
>  tests/examples/adapter/meson.build       |   7 +
>  tests/examples/controller/meson.build    |  23 ++
>  tests/examples/helloworld/meson.build    |   5 +
>  tests/examples/memory/meson.build        |   5 +
>  tests/examples/meson.build               |  10 +
>  tests/examples/netclock/meson.build      |  11 +
>  tests/examples/ptp/meson.build           |   5 +
>  tests/examples/stepping/meson.build      |   5 +
>  tests/examples/streamiddemux/meson.build |   5 +
>  tests/examples/streams/meson.build       |  15 ++
>  tests/meson.build                        |   9 +
>  tests/misc/meson.build                   |   2 +
>  tools/meson.build                        |  23 ++
>  40 files changed, 1959 insertions(+)
>
> Diff:   http://cgit.freedesktop.org/gstreamer/gstreamer/diff/?id=b2f9808722a0254acba17ef98a612a2792184e12
>
>
> _______________________________________________
> gstreamer-commits mailing list
> gstreamer-commits at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-commits


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20160821/bf428bbc/attachment-0001.html>


More information about the gstreamer-devel mailing list