Commit graph

252 commits

Author SHA1 Message Date
Tim-Philipp Müller
7ea556d034 Configure subprojects in the right order
Use an array instead of a dict to make sure we iterate over
the list of subprojects in the right order, which is first
GStreamer core, then gst-plugins-base, then other things.

Without this subprojects might get configured in random order,
in which case gstreamer or gst-plugins-base libs might get picked
up via pkg-config if they are also available installed, instead of
being picked up from the subproject. This breaks all kinds of
assumptions in gst-build and will likely have strange effects
and/or lead to build failures such as

subprojects/gst-plugins-good/tests/check/meson.build:144:2:
ERROR: 'gstreamer-plugins-base-1.0' is not a pkgconfig dependency
2019-02-18 16:16:02 +00:00
Nirbheek Chauhan
a9bcc8f0ee gst-uninstalled: Fix compatibility with meson 0.50
Starting with Meson 0.50, meson instrospect --targets uses a list
for the filename and install_filenames of each target. Handle both
lists and strings.
2019-02-14 14:01:52 +05:30
Nirbheek Chauhan
6f33955af4 Add subprojects/libsoup/ to .gitignore 2019-02-08 16:25:29 +05:30
Nirbheek Chauhan
f256d118f0 openh264.wrap: Update the upstream commit
Needed for building on Windows with MSVC.
2019-02-06 15:44:11 +05:30
Nirbheek Chauhan
530307ed47 New subproject win-nasm to provide nasm on Windows
This is needed for building openh264 as a subproject. Currently it's
downloaded unconditionally since the download is very small.
2019-02-05 22:43:30 +05:30
Nirbheek Chauhan
62c85c49e6 Add orc to gitignore 2019-02-05 17:58:48 +05:30
Nirbheek Chauhan
124098adc4 scripts: Auto-detect whether we can enable colors
Also do the setup necessary on Windows to enable ANSI colours on the
console (if available). That code is copied from Meson and is Apache2
licensed.
2019-02-05 17:23:49 +05:30
Seungha Yang
50037dd1eb Add an orc wrap file for using orc subproject
Depending on the newly added 'orc' meson option, this make possible
to use orc subproject on gst-build.
2019-01-29 11:50:03 +09:00
Tim-Philipp Müller
987067c39c subprojects: use libffi and gl-headers from gstreamer gitlab repos
https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/28
2019-01-28 23:19:19 +01:00
Tim-Philipp Müller
33a3686995 Configure gst-rtsp-server before gst-devtools
Since gst-devtools checks for gst-rtsp-server and will
happily pick up an external dep which isn't what we want
if we configure it as subproject afterwards.

This assumes meson dicts are always stable, which may
not necessarily be the case, but it seems to work in
practice for now.

See #16
2019-01-24 19:51:17 +00:00
Mathieu Duponchelle
2ffe372bdd windows: unconditionally use flex / bison binaries
This to simplify the checks made when for example a flex binary
is available system wide: the build process was failing when
that system wide binary didn't have the required version. Instead
of adding more checks and making things more complex, let's just
always use our binary subproject.
2019-01-24 17:25:46 +01:00
Xavier Claessens
8c04a523ee Add wrap file for libsoup and libpsl
libpsl is a dependency if libsoup that has an upstream Meson build
system (in master only).

libsoup also needs libxml2 but we already have a wrap file for it.

The only remaining dependency that must come from the system is sqlite3.
2019-01-23 16:06:48 -05:00
Guillaume Desmottes
db09aaf9a3 gst-uninstalled: define GST_OMX_CONFIG_DIR
GST_OMX_CONFIG_DIR is used by gst-omx to load the gstomx.conf associated
with the selected OMX target.
2019-01-04 12:58:37 +01:00
Arun Raghavan
9596096907 gitignore: Add cscope files
Ignores top-level cscope files that might be used for a cross-project
cscope index.
2018-12-29 12:45:16 +05:30
Arun Raghavan
35829b825f gitignore: Add top-level pygobject symlink 2018-12-29 12:44:06 +05:30
Tim-Philipp Müller
bac218756c subprojects: use upstream libnice
Meson port is upstream now.
2018-12-18 23:59:01 +00:00
Tim-Philipp Müller
4d09d9cf9e subprojects: update libxml2 wrap to revision 5
Fixes build with MSVC.
2018-12-14 23:39:01 +00:00
Xavier Claessens
81d8a8c78c Add example cross files
These are example cross files that will be used by the CI. They
could require manual editing to change hardcoded paths to toolchains
when used on different environment.
2018-12-11 15:47:07 +00:00
Thibault Saunier
9689fa0a45 update: Re add support for manifests without a refname 2018-12-06 10:47:12 -03:00
Thibault Saunier
d1425b0307 update: Fetch the refname before checking out the specified sha
Working around freedesktop/freedesktop#95
2018-12-06 07:56:05 -03:00
Xavier Claessens
636abc351b Add 'nls' common option 2018-11-27 09:28:36 -05:00
Thibault Saunier
1c8085d9fb Download libxml from http and not ftp 2018-11-26 15:55:26 -03:00
Thibault Saunier
03214bccc7 Add a libxml2 wrap to be used by GES 2018-11-26 14:48:18 -03:00
Alicia Boya García
0b6c960ca7 gst-uninstalled: Don't change current working directory
Currently gst-uninstalled.py changes the current directory to the root
of the gst-build before executing execute the command passed as
arguments. This is unnecessary, it creates confusion and makes scripting
more cumbersome. This patch fixes that.
2018-11-23 18:22:43 +00:00
Alicia Boya García
96a1384af9 gst-uninstalled: Don't add validate plugins to GST_PLUGIN_PATH
Validate plugins are automatically scanned from GST_VALIDATE_PLUGIN_PATH
instead. Adding them to GST_PLUGIN_PATH causes race conditions as the
plugins may be loaded before validate itself.
2018-11-23 15:42:03 +01:00
Thibault Saunier
b174f7a9a1 update: Take into account the path attribute of projects 2018-11-21 20:41:46 -03:00
Seungha Yang
bc5bc17667 Support *nix like development prompt on Windows
CMD on windows could support customized prompt like $PS1 on bash
2018-11-10 02:07:24 +09:00
Jordan Petridis
ab47fccaec
Add Gitlab CI configuration
This commit adds a .gitlab-ci.yml file, which uses a feature
to fetch the config from a centralized repository. The intent is
to have all the gstreamer modules use the same configuration.

The configuration is currently hosted at the gst-ci repository
under the gitlab/ci_template.yml path.
2018-11-09 18:54:03 +02:00
Thibault Saunier
df235d4f6c uninstalled: Make sure that the new gdb python macros are usable
directly from the uninstalled env
2018-11-08 11:52:03 -03:00
Thibault Saunier
0b36fc55c7 update: Make sure to detach branch when checking out a specific revision
Avoiding to get spammed about the fact that the branch is detached
2018-11-08 11:51:27 -03:00
Nicolas Dufresne
6bb5408f1b Revert "Updated after gst-libav got moved to gst-ffmpeg"
This reverts commit d027bf7401.
2018-11-06 06:02:34 -05:00
Nicolas Dufresne
d027bf7401 Updated after gst-libav got moved to gst-ffmpeg 2018-11-06 05:34:52 -05:00
Thibault Saunier
acb77ccb0a update: Enhance logging about what kind of update is happening 2018-11-05 09:52:41 -03:00
Thibault Saunier
57f8844958 update: Ensure that a revision is used when updating a detached repo
For the  case it was not guaranteed
2018-11-05 09:43:50 -03:00
Thibault Saunier
52c0086c5a update: Fix the manifest commit dictionnary format
The structure was changed in last commit but a code path was not properly updated
2018-11-05 09:42:29 -03:00
Xavier Claessens
859e613edb Change wrap URLs to gitlab 2018-11-04 11:27:11 +00:00
Thibault Saunier
7db3c6b0ce gst-update: Handle specified remotes in manifest 2018-11-03 10:32:01 -03:00
Mathieu Duponchelle
2758a63714 pygobject: add as a subproject when python is enabled
This should make our awkward interactions with a system-wide install
of pygobject in our uninstalled setup go away.
2018-10-31 00:46:31 +01:00
Nirbheek Chauhan
0c4456fb13 README: Warn about not using the Meson MSI 2018-10-28 16:05:49 +00:00
Mathieu Duponchelle
5feafc66ce uninstalled: remove setup_python_env
We now use a different approach to setting up our
uninstalled python environment:

We add the gst-python folder to PYTHONPATH, and it no
longer contains __init__.py files. This means that
import gi.overrides correctly loads pygobject's __init__
module, but import gi.overrides.Gst also works, as __init__
files are no longer required by python.
2018-10-28 14:18:08 +01:00
Thibault Saunier
8eaf74d816 Use subproject 'required' argument
Making the whole logic much simpler, and end result more accurate
2018-10-27 17:20:33 +01:00
Mathieu Duponchelle
72c43ce73f uninstalled: build and set PYTHONPATH 2018-10-27 17:59:29 +02:00
Mathieu Duponchelle
c42ec82de6 Add pygobject and pycairo as subprojects 2018-10-27 17:58:44 +02:00
Thibault Saunier
81b7a024c4 Add wrap file for json-glib 2018-10-23 14:17:06 +02:00
Nirbheek Chauhan
1a75371b8b git-update: Get the revision of the right repository
Typo, should fix the gst-build CI failures.
2018-10-02 13:39:49 +05:30
Nirbheek Chauhan
839acd5bd6 gitignore: Ignore the subprojects openh264 git repo 2018-10-02 09:53:09 +05:30
Nirbheek Chauhan
0f21cf4740 git-update: Don't try to pull --rebase repos that are not on master
This fixes updating of repos that are at a specific commit and
a detached HEAD, such as openh264.
2018-10-02 09:51:11 +05:30
Martin Kelly
4525078098 uninstalled: use usercustomize, not sitecustomize
Currently, gst-uninstalled is using sitecustomize.py for adding gi
override tweaks. However, if the standard Python libraries come before
this file in sys.path, then sitecustomize.py will never be run because
the "import sitecustomize" done in site.py will use the standard Python
libraries instead. This can be seen by running "import sitecustomize;
print(sitecustomize.__file__)" inside the uninstalled environment, as
well as by checking gi.override.__path__ and seeing that the tweaks are
missing (and the overrides are misbehaving).

Switch to using usercustomize.py, which has no match in the standard
libraries and thus will be correctly imported.

https://bugzilla.gnome.org/show_bug.cgi?id=797011
2018-09-13 07:05:33 -03:00
Nirbheek Chauhan
56130b0edd Rename --no-error to --werror and flip default
We should not default to -Werror because that's not what we default to
anywhere in gstreamer, and it's bad for releases anyway. The CI will
be fixed to pass --werror manually.
2018-09-05 17:34:11 +05:30
Nirbheek Chauhan
3e714d0bae meson: Fix libav checks to use feature options correctly 2018-09-03 21:22:25 +05:30