summaryrefslogtreecommitdiff
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
* meson: Enable some MSVC warnings for parity with GCC/ClangNirbheek Chauhan2020-11-051-6/+10
| | | | | | | | | This makes it easier to do development with MSVC by making it warn on common issues that GCC/Clang error out for in our CI configuration. Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1760>
* Meson: Use pkg-config generatorXavier Claessens2020-10-231-1/+18
|
* meson: update glib minimum version to 2.56Stéphane Cerveau2020-10-161-1/+1
| | | | | | | | | | | | | In order to support the symbol g_enum_to_string in various project using GStreamer ( gst-validate etc.), the glib minimum version should be 2.56.0. Remove compat code as glib requirement is now > 2.56 Version used by Ubuntu 18.04 LTS Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1695>
* waylandsink: Use memfd_create() when availableEmmanuel Gil Peyrot2020-09-151-0/+1
| | | | | | | | | | | | | | | | | | This (so-far) Linux- and FreeBSD-only API lets users create file descriptors purely in memory, without any backing file on the filesystem and the race condition which could ensue when unlink()ing it. It also allows seals to be placed on the file, ensuring to every other process that we won’t be allowed to shrink the contents, potentially causing a SIGBUS when they try reading it. This patch is best viewed with the -w option of git log -p. It is an almost exact copy of Wayland commit 6908c8c85a2e33e5654f64a55cd4f847bf385cae, see https://gitlab.freedesktop.org/wayland/wayland/merge_requests/4 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1577>
* Back to developmentTim-Philipp Müller2020-09-081-2/+2
|
* Release 1.18.01.18.0Tim-Philipp Müller2020-09-081-1/+1
|
* meson: dist pot file in tarballTim-Philipp Müller2020-09-071-0/+2
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1558>
* Release 1.17.901.17.90Tim-Philipp Müller2020-08-201-1/+1
|
* build: update for gl pkg-config file splitMatthew Waters2020-08-071-4/+22
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1462>
* meson: Only look for Obj-C/C++ compilers on macOS/iOSNirbheek Chauhan2020-08-041-3/+8
| | | | | | | | | | | | On Windows, MinGW-GCC Objective-C/C++ compilers can be in PATH and mess up the build since they may not match the CPU family of the C/C++ compilers we are using. Also require them on macOS/iOS, because they should always be present. Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/88 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1488>
* meson: add a plugin summaryStéphane Cerveau2020-07-231-0/+15
| | | | | | | This summary displays a list of plugins which have been enabled. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1460>
* meson: set release date from .doap file for releasesTim-Philipp Müller2020-07-081-0/+14
| | | | Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1420>
* meson: Fix up update-orc-dist target for the case where there are no orc targetsTim-Philipp Müller2020-07-081-1/+1
| | | | | | | All those plugins might have been disabled, in which case meson would complain about alias_target() needing at least two arguments. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1418>
* meson: add update-orc-dist targetTim-Philipp Müller2020-07-041-0/+24
| | | | | | Add target to update backup orc -dist.[ch] files. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1408>
* Back to developmentTim-Philipp Müller2020-07-031-1/+1
|
* Release 1.17.21.17.2Tim-Philipp Müller2020-07-031-1/+1
|
* Back to developmentTim-Philipp Müller2020-06-201-1/+1
|
* Release 1.17.11.17.1Tim-Philipp Müller2020-06-191-2/+2
|
* meson: Pass native: false to add_languages()Nirbheek Chauhan2020-05-131-2/+2
| | | | | | | | | This is needed for cross-compiling without a build machine compiler available. The option was added in 0.54, but we only need this in Cerbero and it doesn't affect older versions so it should be ok. Will only cause a spurious warning. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1266>
* Meson: Change extra-checks to feature option and make it yieldingXavier Claessens2020-04-081-1/+1
|
* meson: Don't use get_option('buildtype')Nirbheek Chauhan2020-04-031-1/+1
| | | | | | | | | | | | | | We should directly check the values of the `debug` and `optimization` options instead. `get_option('buildtype')` will return `'custom'` for most combinations of `-Doptimization` and `-Ddebug`, but those two will always be set correctly if only `-Dbuildtype` is set. So we should look at those options directly. For the two-way mapping between `buildtype` and `optimization` + `debug`, see this table: https://mesonbuild.com/Builtin-options.html#build-type-options
* vtdec: add support for outputing vulkan imagesMatthew Waters2019-12-091-0/+1
|
* build: use -fvisibility=hidden for objc codeMatthew Waters2019-12-031-1/+8
|
* vulkan: implement caching and reuse of a couple of vulkan resourcesMatthew Waters2019-11-281-0/+1
| | | | | | | | | | | | Includes a new GstVulkanHandlePool base class for pooling different resources togther. The descriptor cache object is ported to GstVulkanHandlePool with the exact same functionality. A new GstVulkanFenceCache is also implemented for caching fences which is used internally by GstVulkanDevice for creating or reusing fences. The existing GstVulkanTrashFenceList object now caches trash objects.
* meson: Fix plugin symbol export for C++ sources/pluginsJan Schmidt2019-11-121-0/+1
| | | | | | | | | | The symbol visibility=hidden flag was only being applied to C compilation, so plugins implemented in C++ would leak extra symbols than the 2 _get_desc() and _register(). That also showed that the gst-libs opencv C++ lib was not marking symbols for export correctly because the BUILDING_GST_OPENCV define wasn't in the C++ args, so fix that too.
* meson: build gir even when cross-compiling if introspection was enabled ↵Tim-Philipp Müller2019-10-181-1/+1
| | | | | | | | | | | explicitly This can be made to work in certain circumstances when cross-compiling, so default to not building g-i stuff when cross-compiling, but allow it if introspection was enabled explicitly via -Dintrospection=enabled. See gstreamer/gstreamer#454 and gstreamer/gstreamer#381.
* Import GstTranscoderSaunier Thibault2019-08-281-1/+8
|
* meson: Bump minimal GLib version to 2.44Niels De Graef2019-06-021-1/+1
| | | | | | | This means we can use some newer features and get rid of some boilerplate code using the G_DECLARE_* macros. As discussed on IRC, 2.44 is old enough by now to start depending on it.
* docs: Build documentation with hotdocThibault Saunier2019-05-131-1/+4
|
* Back to developmentTim-Philipp Müller2019-04-191-1/+1
|
* Release 1.16.01.16.0Tim-Philipp Müller2019-04-191-1/+1
|
* Release 1.15.901.15.90Tim-Philipp Müller2019-04-111-1/+1
|
* g-i: pass --quiet to g-ir-scannerTim-Philipp Müller2019-03-231-1/+1
| | | | | | | | This suppresses the annoying 'g-ir-scanner: link: cc ..' output that we get even if everything works just fine. We still get g-ir-scanner warnings and compiler warnings if we pass this option.
* g-i: silence 'nested extern' compiler warnings when building scanner binaryTim-Philipp Müller2019-03-231-1/+0
| | | | | | | | We need a nested extern in our init section for the scanner binary so we can call gst_init to make sure GStreamer types are initialised (they are not all lazy init via get_type functions, but some are in exported variables). There doesn't seem to be any other mechanism to achieve this, so just remove that warning, it's not important at all.
* meson: add -Wno-unused also to C++ args when gst debug system is disabledTim-Philipp Müller2019-03-211-2/+11
|
* Back to developmentTim-Philipp Müller2019-03-041-1/+1
|
* Release 1.15.21.15.2Tim-Philipp Müller2019-02-261-1/+1
|
* meson: Add support orc fallbackSeungha Yang2019-01-301-1/+3
| | | | | | Allow fallback to orc subproject if any, and add missing orc version check. Additionally 'dependencies' keyword is removed from find_library, because it's invalid keyword for find_library.
* meson: detect opengl api from -base .pc files correctlyTim-Philipp Müller2019-01-221-1/+5
| | | | | | | | | | There was a mismatch between the .pc files generated by autotools and by meson that would lead to meson not detecting that opengl api is available even though it is. This could lead to build failures when building -bad with meson against a -base that was built with autotools. The mismatch has now been rectified but we will still check the old one for backwards compatibility.
* meson: remove some cruftTim-Philipp Müller2019-01-221-130/+0
|
* Release 1.15.11.15.1Tim-Philipp Müller2019-01-171-1/+1
|
* meson: Prefer to use join_paths() over '/'Seungha Yang2018-12-181-1/+1
| | | | ... to avoid mixing '/' and '\' in a path string on Windows.
* tests: Enable unit test on WindowsSeungha Yang2018-12-181-3/+1
| | | | | | | Allow run some unit tests on Windows. * Add dependency explicitly for some test cases, otherwise plugins couldn't be loaded on uninstalled environment of Windows. * Add missing GST_PLUGIN_LOADING_WHITELIST on meson build.
* Remove acmmp3dec and acmenc pluginsTim-Philipp Müller2018-12-181-2/+0
| | | | | | | | | | | | | ACM is an ancient legacy API, and there's no point in keeping it around for a licensed mp3 decoder now that mp3 patents have expired and we have a decoder in -good. We didn't ship this in cerbero anyway. If there's a good case for the AAC encoder (which is LC only anyway) someone should write a new plugin based on current APIs, that can actually be built out of the box. Fixes #850
* meson: build voamrwbenc pluginTim-Philipp Müller2018-12-171-0/+2
|
* meson: Specify encoding to UTF-8 when building with MSVCSeungha Yang2018-11-241-0/+1
| | | | | Use build arguments consistent with core and -base. This can also remove noisy "C4819" warning of non-us locale MSVC.
* build: link against the gnustl dependency on android for c++ pluginsMatthew Waters2018-11-121-0/+5
|
* meson: use new 'python' module instead of deprecated 'python3' oneTim-Philipp Müller2018-10-081-1/+1
| | | | https://github.com/mesonbuild/meson/pull/4169
* libs: fix API export/import and 'inconsistent linkage' on MSVCTim-Philipp Müller2018-09-241-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For each lib we build export its own API in headers when we're building it, otherwise import the API from the headers. This fixes linker warnings on Windows when building with MSVC. The problem was that we had defined all GST_*_API decorators unconditionally to GST_EXPORT. This was intentional and only supposed to be temporary, but caused linker warnings because we tell the linker that we want to export all symbols even those from externall DLLs, and when the linker notices that they were in external DLLS and not present locally it warns. What we need to do when building each library is: export the library's own symbols and import all other symbols. To this end we define e.g. BUILDING_GST_FOO and then we define the GST_FOO_API decorator either to export or to import symbols depending on whether BUILDING_GST_FOO is set or not. That way external users of each library API automatically get the import. While we're at it, add new GST_API_EXPORT in config.h and use that for GST_*_API decorators instead of GST_EXPORT. The right export define depends on the toolchain and whether we're using -fvisibility=hidden or not, so it's better to set it to the right thing directly than hard-coding a compiler whitelist in the public header. We put the export define into config.h instead of passing it via the command line to the compiler because it might contain spaces and brackets and in the autotools scenario we'd have to pass that through multiple layers of plumbing and Makefile/shell escaping and we're just not going to be *that* lucky. The export define is only used if we're compiling our lib, not by external users of the lib headers, so it's not a problem to put it into config.h Also, this means all .c files of libs need to include config.h to get the export marker defined, so fix up a few that didn't include config.h. This commit depends on a common submodule commit that makes gst-glib-gen.mak add an #include "config.h" to generated enum/marshal .c files for the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=797185
* meson: add glib-checks option to disable API guards and suchTim-Philipp Müller2018-09-191-0/+6
| | | | | | We want this enabled by default, also in releases, but people may want to disable this for performance-critical workloads or on embedded devices.