Jordan Petridis [Mon, 29 Jul 2019 15:55:51 +0000 (18:55 +0300)]
Update the flexmeson windows binary version
The old binary/url is no longer available, and the layout of the
sourceforge archvie seems to have changed to include a new
old_versions/ directory where the previous binary is
relocated.
https://sourceforge.net/projects/winflexbison/files/old_versions/
While we could use that, it seem better to invest the effort to
adapt the scipt afterwards to use the github archives instead
https://github.com/lexxmark/winflexbison/releases
So for now bump the version to get the subproject building
till we switch to github releases.
Yeongjin Jeong [Mon, 29 Jul 2019 03:22:55 +0000 (12:22 +0900)]
uninstalled: Ensure bash prompt override even if bash script file does not exist
If automatic bash prompt override is enabled via the 'GST_BUILD_DISABLE_PS1_OVERRIDE',
We should set the bash prompt to have a visual indicator of the "gst-uninstalled" environment
even if bash script file does not exist.
Matthew Waters [Tue, 11 Jun 2019 04:45:04 +0000 (14:45 +1000)]
add gst-examples repository to subproject list
Nirbheek Chauhan [Fri, 19 Jul 2019 16:00:54 +0000 (21:30 +0530)]
gst-uninstalled: Fix loading of prefix libraries on Fedora 30
On Fedora 64-bit, libdir is 'lib64'. Just add it unconditionally
everywhere because we have no reliable way of detecting which distros
or OSes will use that.
Nirbheek Chauhan [Tue, 25 Jun 2019 15:25:36 +0000 (20:55 +0530)]
Don't allow people to run meson inside the uninstalled env
People should not run `meson` on gst-build inside the uninstalled env.
It will cause problems because meson will detect the already-built
libraries and pkg-config files.
This is not obvious to people, and they often make this mistake.
Nicolas Dufresne [Wed, 5 Jun 2019 01:04:45 +0000 (21:04 -0400)]
uninstalled: Fix --sysroot implementation
This option was added so we could remove the sysroot path from the env
when cross-build is used over NFS. Though, the implementation wasn't complete
and went unnoticed.
This moves the sysroot path removal into the helper that prepends env so
that no more env get forgotten. This notably fixes the PATH environment.
Nicolas Dufresne [Tue, 4 Jun 2019 19:30:43 +0000 (15:30 -0400)]
cross: Fix cross compilation meson error
The doc is not currently built in cross-compilation, but we still had
some meson code that eneded up being called and failed.
Niels De Graef [Fri, 31 May 2019 21:43:46 +0000 (23:43 +0200)]
meson: Bump minimal GLib version to 2.44
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.
Mathieu Duponchelle [Sat, 25 May 2019 10:02:37 +0000 (12:02 +0200)]
uninstalled: update XDG_DATA_DIRS to point to our devhelp index
When using hotdoc, one can build the documentation for a single
subproject (eg. the GL plugins). In that case, hotdoc will look
up links in devhelp indexes available in standard locations.
To make sure this case works, we thus need to add the path to
our devhelp index to XDG_DATA_DIRS. This also means when running
devhelp from inside the environment, the devhelp books produced
by hotdoc will now show up.
Mathieu Duponchelle [Sun, 26 May 2019 13:49:21 +0000 (15:49 +0200)]
meson: fix GstPluginsPath.json generation
The refactored code was only adding paths to plugins in projects
that build hotdoc, which is not the case of gst-python for example
Thibault Saunier [Thu, 16 May 2019 20:12:05 +0000 (16:12 -0400)]
uninstalled: Add libnice plugin to GST_PLUGIN_PATH
Thibault Saunier [Thu, 16 May 2019 13:26:47 +0000 (09:26 -0400)]
meson: Add a target to regenerate doc caches for all subprojects
Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36
Thibault Saunier [Thu, 16 May 2019 01:14:16 +0000 (21:14 -0400)]
Avoid making a dependency between plugins and the build.ninja file
Basically meson detects that we pass file paths to run_command to regenerate the build.ninja file when those change
Tim-Philipp Müller [Tue, 14 May 2019 22:21:54 +0000 (23:21 +0100)]
meson.build: Fix typo in log message
Thibault Saunier [Tue, 14 May 2019 21:51:38 +0000 (17:51 -0400)]
meson: Remove spurious subdir_done
Thibault Saunier [Fri, 19 Apr 2019 20:38:24 +0000 (16:38 -0400)]
git-update: Make sure to download all subproject before applying manifest
Otherwise we might be missing some subprojects update
Thibault Saunier [Mon, 12 Nov 2018 23:23:14 +0000 (20:23 -0300)]
scripts: Add a script to check that all repos are clean
This is useful to check that a build didn't result in changes in the
code/generated files
This will be used to check that the plugins documentation cache file is
properly commited, and that necessary workaround for particular case
are adopted.
Thibault Saunier [Sun, 11 Nov 2018 23:06:04 +0000 (20:06 -0300)]
Generate the GST_PLUGIN_PATH using the `plugins` variable in subprojects
To build the documentation, we are maintaining a 'standardise' `plugins`
variable accross all modules to list all plugins and generate
documentation for them.
This is also used to get the right plugin path when inspecting plugins
for the documentation.
Thibault Saunier [Sun, 28 Oct 2018 14:06:35 +0000 (14:06 +0000)]
Build documentation with hotdoc
Vivia Nikolaidou [Sat, 11 May 2019 09:03:18 +0000 (12:03 +0300)]
gst-uninstalled: Add gst-indent directory to $PATH
Nicolas Dufresne [Mon, 6 May 2019 20:07:28 +0000 (16:07 -0400)]
uninstalled: Add an option to strip off the sysroot path
As the data from meson is no longer relative path, it is not longer
possible to move gst-build around and run gst-uninstalled.py. This broke
cross-compilation usage, where you build on a host and run over NFS on
target. This adds an option to tell the script to strip off the host path
to the sysroot.
Thibault Saunier [Thu, 25 Apr 2019 17:29:19 +0000 (17:29 +0000)]
Fix link to meson "subprojects" documentation
Tim-Philipp Müller [Thu, 25 Apr 2019 16:21:02 +0000 (17:21 +0100)]
README: minor clarification
Fixes #30.
Thibault Saunier [Fri, 19 Apr 2019 20:33:54 +0000 (16:33 -0400)]
subprojects: Add a wrap for gst-docs
Preparing for building API documentation with hotdoc
Tim-Philipp Müller [Fri, 19 Apr 2019 01:34:33 +0000 (02:34 +0100)]
Build master again
Tim-Philipp Müller [Fri, 19 Apr 2019 01:23:51 +0000 (02:23 +0100)]
Build 1.16.0 release
Nirbheek Chauhan [Wed, 17 Apr 2019 11:58:43 +0000 (17:28 +0530)]
README: Add instructions for Windows with screenshots
Also add a note about installation
Nirbheek Chauhan [Wed, 17 Apr 2019 11:38:39 +0000 (17:08 +0530)]
Move cross-files to the data subdirectory
We will add more data soon.
Nirbheek Chauhan [Wed, 17 Apr 2019 11:14:28 +0000 (16:44 +0530)]
gitignore: Also ignore subproject symlinks
These subproject dirs are only ignored if they are directories if you
use a trailing slash.
Tim-Philipp Müller [Tue, 16 Apr 2019 15:48:58 +0000 (16:48 +0100)]
Build master again
Tim-Philipp Müller [Sun, 3 Mar 2019 20:58:38 +0000 (20:58 +0000)]
Build 1.15.90 release
Tim-Philipp Müller [Mon, 15 Apr 2019 08:49:34 +0000 (09:49 +0100)]
subprojects: libsoup: pin to latest release
Tim-Philipp Müller [Mon, 15 Apr 2019 08:49:10 +0000 (09:49 +0100)]
subprojects: orc: pin to 0.4.29 release
Mart Raudsepp [Tue, 16 Apr 2019 13:00:45 +0000 (16:00 +0300)]
gitignore: Add top-level libnice symlink
Missed adjustment from commit
d3029ec0d606016.
Nirbheek Chauhan [Mon, 15 Apr 2019 10:16:27 +0000 (15:46 +0530)]
ffmpeg.wrap: Bump to 4.1.3
Tested on Windows.
Nirbheek Chauhan [Mon, 15 Apr 2019 10:04:44 +0000 (15:34 +0530)]
gst-uninstalled: Try to use short names for env vars on Windows
Try even harder to not hit the maximum length limit for env var values
on Windows. Reduces the size by ~1000 characters on my machine.
Nirbheek Chauhan [Mon, 15 Apr 2019 10:02:36 +0000 (15:32 +0530)]
gst-uninstalled: De-dedup before prepending to an env var
Helps us avoid breaching the maximum length limit for env var values
on Windows.
Nirbheek Chauhan [Fri, 12 Apr 2019 05:22:37 +0000 (10:52 +0530)]
glib.wrap: Use the glib-2-60 stable branch instead of master
This fixes https://gitlab.freedesktop.org/gstreamer/gst-build/issues/21
Mathieu Duponchelle [Fri, 5 Apr 2019 13:27:37 +0000 (15:27 +0200)]
add libnice as a top-level subproject.
When relying on a system-wide libnice, we end up not building
the nice elements, which means we can't use them, and by extension
webrtcbin, in the uninstalled environment.
This also introduces a way to avoid checking the version of
a given subproject, and makes use of it for libnice and pygobject,
which only passed the version check by chance, as its current
major version is 3.
Nirbheek Chauhan [Mon, 1 Apr 2019 18:30:10 +0000 (00:00 +0530)]
README.md: Document how to build the qt5 plugin
Nirbheek Chauhan [Mon, 1 Apr 2019 18:25:14 +0000 (23:55 +0530)]
gst-uninstalled: Add qt5 DLLs to PATH on Windows
This is needed for using the qmlgl out of the box inside
gst-uninstalled. Of course this won't work if the user is using
a native file to specify the path to `qmake`.
Nirbheek Chauhan [Mon, 1 Apr 2019 18:06:33 +0000 (23:36 +0530)]
meson: Add a subproject wrap file for x264
This allows building x264enc from -ugly on all platforms.
Seungha Yang [Thu, 24 Jan 2019 17:13:08 +0000 (02:13 +0900)]
uninstalled: Add support PowerShell on Windows
... depending on detected shell program. For instance,
if the nearest ancestor process is PowerShell, run uninstalled
environment via PowerShell. Otherwise, $COMSPEC (most likely cmd.exe)
will be used.
Tim-Philipp Müller [Fri, 29 Mar 2019 13:23:51 +0000 (13:23 +0000)]
README: small updates
Nirbheek Chauhan [Fri, 22 Mar 2019 19:10:43 +0000 (00:40 +0530)]
Add FFmpeg.wrap and update .gitignore
Tested on Linux and Windows (MSVC)
Antonio Ospite [Fri, 8 Mar 2019 16:38:43 +0000 (17:38 +0100)]
gst-uninstalled: make the bash prompt override optional
When using a custom prompt the automatic override may not look good, so
provide a mechanism to disable it.
Document that the user will have to use GST_ENV manually when setting
the prompt to have a visual indicator of the gst-uninstalled
environment.
Thibault Saunier [Wed, 13 Mar 2019 22:08:59 +0000 (19:08 -0300)]
Add gst-integration-testsuites as a subproject
Tim-Philipp Müller [Sun, 3 Mar 2019 21:00:32 +0000 (21:00 +0000)]
Back to development
Tim-Philipp Müller [Sun, 3 Mar 2019 20:58:38 +0000 (20:58 +0000)]
Build 1.15.2 release
Tim-Philipp Müller [Mon, 18 Feb 2019 16:53:07 +0000 (16:53 +0000)]
meson: use new 'python' module instead of deprecated 'python3' one
https://github.com/mesonbuild/meson/pull/4169
Tim-Philipp Müller [Mon, 18 Feb 2019 16:13:07 +0000 (16:13 +0000)]
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
Nirbheek Chauhan [Thu, 14 Feb 2019 08:31:52 +0000 (14:01 +0530)]
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.
Nirbheek Chauhan [Fri, 8 Feb 2019 10:55:29 +0000 (16:25 +0530)]
Add subprojects/libsoup/ to .gitignore
Nirbheek Chauhan [Wed, 6 Feb 2019 10:14:11 +0000 (15:44 +0530)]
openh264.wrap: Update the upstream commit
Needed for building on Windows with MSVC.
Nirbheek Chauhan [Tue, 5 Feb 2019 17:13:30 +0000 (22:43 +0530)]
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.
Nirbheek Chauhan [Tue, 5 Feb 2019 12:23:10 +0000 (17:53 +0530)]
Add orc to gitignore
Nirbheek Chauhan [Tue, 5 Feb 2019 11:53:49 +0000 (17:23 +0530)]
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.
Seungha Yang [Tue, 29 Jan 2019 01:58:21 +0000 (10:58 +0900)]
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.
Tim-Philipp Müller [Mon, 28 Jan 2019 22:19:19 +0000 (23:19 +0100)]
subprojects: use libffi and gl-headers from gstreamer gitlab repos
https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/28
Tim-Philipp Müller [Mon, 21 Jan 2019 17:38:07 +0000 (17:38 +0000)]
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
Mathieu Duponchelle [Thu, 24 Jan 2019 16:11:59 +0000 (17:11 +0100)]
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.
Xavier Claessens [Wed, 23 Jan 2019 21:06:02 +0000 (16:06 -0500)]
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.
Guillaume Desmottes [Fri, 4 Jan 2019 11:58:37 +0000 (12:58 +0100)]
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.
Arun Raghavan [Sat, 29 Dec 2018 07:14:20 +0000 (12:44 +0530)]
gitignore: Add cscope files
Ignores top-level cscope files that might be used for a cross-project
cscope index.
Arun Raghavan [Sat, 29 Dec 2018 07:13:30 +0000 (12:43 +0530)]
gitignore: Add top-level pygobject symlink
Tim-Philipp Müller [Sat, 15 Dec 2018 15:39:03 +0000 (15:39 +0000)]
subprojects: use upstream libnice
Meson port is upstream now.
Tim-Philipp Müller [Fri, 14 Dec 2018 21:35:17 +0000 (21:35 +0000)]
subprojects: update libxml2 wrap to revision 5
Fixes build with MSVC.
Xavier Claessens [Mon, 3 Dec 2018 14:16:14 +0000 (09:16 -0500)]
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.
Thibault Saunier [Thu, 6 Dec 2018 13:47:04 +0000 (10:47 -0300)]
update: Re add support for manifests without a refname
Thibault Saunier [Thu, 6 Dec 2018 10:48:23 +0000 (07:48 -0300)]
update: Fetch the refname before checking out the specified sha
Working around freedesktop/freedesktop#95
Xavier Claessens [Thu, 22 Nov 2018 15:16:48 +0000 (10:16 -0500)]
Add 'nls' common option
Thibault Saunier [Mon, 26 Nov 2018 18:55:26 +0000 (15:55 -0300)]
Download libxml from http and not ftp
Thibault Saunier [Mon, 26 Nov 2018 17:48:18 +0000 (14:48 -0300)]
Add a libxml2 wrap to be used by GES
Alicia Boya García [Fri, 23 Nov 2018 18:13:49 +0000 (19:13 +0100)]
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.
Alicia Boya García [Fri, 23 Nov 2018 14:42:03 +0000 (15:42 +0100)]
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.
Thibault Saunier [Wed, 21 Nov 2018 23:29:28 +0000 (20:29 -0300)]
update: Take into account the path attribute of projects
Seungha Yang [Sat, 3 Nov 2018 16:50:30 +0000 (01:50 +0900)]
Support *nix like development prompt on Windows
CMD on windows could support customized prompt like $PS1 on bash
Jordan Petridis [Fri, 9 Nov 2018 16:54:03 +0000 (18:54 +0200)]
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.
Thibault Saunier [Thu, 8 Nov 2018 14:52:03 +0000 (11:52 -0300)]
uninstalled: Make sure that the new gdb python macros are usable
directly from the uninstalled env
Thibault Saunier [Thu, 8 Nov 2018 14:51:27 +0000 (11:51 -0300)]
update: Make sure to detach branch when checking out a specific revision
Avoiding to get spammed about the fact that the branch is detached
Nicolas Dufresne [Tue, 6 Nov 2018 11:02:34 +0000 (06:02 -0500)]
Revert "Updated after gst-libav got moved to gst-ffmpeg"
This reverts commit
d027bf74011381a699ae59e3e95df3630cc73cfb.
Nicolas Dufresne [Tue, 6 Nov 2018 10:34:52 +0000 (05:34 -0500)]
Updated after gst-libav got moved to gst-ffmpeg
Thibault Saunier [Mon, 5 Nov 2018 12:52:41 +0000 (09:52 -0300)]
update: Enhance logging about what kind of update is happening
Thibault Saunier [Mon, 5 Nov 2018 12:43:50 +0000 (09:43 -0300)]
update: Ensure that a revision is used when updating a detached repo
For the case it was not guaranteed
Thibault Saunier [Mon, 5 Nov 2018 12:42:29 +0000 (09:42 -0300)]
update: Fix the manifest commit dictionnary format
The structure was changed in last commit but a code path was not properly updated
Xavier Claessens [Sun, 4 Nov 2018 01:38:33 +0000 (21:38 -0400)]
Change wrap URLs to gitlab
Thibault Saunier [Mon, 6 Aug 2018 04:33:08 +0000 (00:33 -0400)]
gst-update: Handle specified remotes in manifest
Mathieu Duponchelle [Tue, 30 Oct 2018 23:46:31 +0000 (00:46 +0100)]
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.
Nirbheek Chauhan [Sun, 28 Oct 2018 16:05:23 +0000 (16:05 +0000)]
README: Warn about not using the Meson MSI
Mathieu Duponchelle [Sun, 28 Oct 2018 13:15:31 +0000 (14:15 +0100)]
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.
Thibault Saunier [Sat, 20 Oct 2018 22:04:25 +0000 (19:04 -0300)]
Use subproject 'required' argument
Making the whole logic much simpler, and end result more accurate
Mathieu Duponchelle [Sat, 27 Oct 2018 15:59:29 +0000 (17:59 +0200)]
uninstalled: build and set PYTHONPATH
Mathieu Duponchelle [Sat, 27 Oct 2018 15:58:44 +0000 (17:58 +0200)]
Add pygobject and pycairo as subprojects
Thibault Saunier [Tue, 23 Oct 2018 12:08:34 +0000 (14:08 +0200)]
Add wrap file for json-glib
Nirbheek Chauhan [Tue, 2 Oct 2018 08:09:49 +0000 (13:39 +0530)]
git-update: Get the revision of the right repository
Typo, should fix the gst-build CI failures.
Nirbheek Chauhan [Tue, 2 Oct 2018 04:23:09 +0000 (09:53 +0530)]
gitignore: Ignore the subprojects openh264 git repo
Nirbheek Chauhan [Tue, 2 Oct 2018 04:21:11 +0000 (09:51 +0530)]
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.
Martin Kelly [Wed, 22 Aug 2018 16:11:47 +0000 (09:11 -0700)]
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
Nirbheek Chauhan [Wed, 5 Sep 2018 12:00:27 +0000 (17:30 +0530)]
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.
Nirbheek Chauhan [Mon, 3 Sep 2018 15:52:25 +0000 (21:22 +0530)]
meson: Fix libav checks to use feature options correctly