Commit graph

70 commits

Author SHA1 Message Date
Thibault Saunier 3d8662ebfe Add support for wine+mingw environments 2019-10-01 09:20:25 -03:00
Thibault Saunier fe39bd3027 Rename 'uninstalled' to development environment
In the case of wine, the env can not be uninstalled, also developers
do not necessiraly care about the fact that it is "uninstalled", the
important thing is that it is a development environment, meaning
that they can work on GStreamer or with GStreamer in the environment.

I still keep the `uninstalled` target to avoid changing people's
habits for now.
2019-09-24 08:23:07 -03:00
Nirbheek Chauhan c6613d8da2 gst-uninstalled: Don't add plugin paths to PATH or LD_LIBRARY_PATH
We don't need to do that, and adding it causes us to exceed the PATH
length limit on Windows, which makes the terminal completely unusable.
2019-09-19 18:14:11 +05:30
Yeongjin Jeong 8568e471fa 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.
2019-07-29 13:57:15 +09:00
Nirbheek Chauhan 5d803bda10 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.
2019-07-19 21:59:03 +05:30
Nicolas Dufresne 9c4cb201d0 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.
2019-06-04 21:09:11 -04:00
Mathieu Duponchelle dc325b42f5 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.
2019-05-29 00:34:50 +02:00
Thibault Saunier 4c6b301fa0 uninstalled: Add libnice plugin to GST_PLUGIN_PATH 2019-05-16 16:51:49 -04:00
Thibault Saunier fda8379411 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.
2019-05-13 11:42:15 -04:00
Thibault Saunier fbb81c6c78 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.
2019-05-13 11:42:15 -04:00
Vivia Nikolaidou dde1b6ef3c gst-uninstalled: Add gst-indent directory to $PATH 2019-05-11 09:54:50 +00:00
Nicolas Dufresne a769bf6c6e 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.
2019-05-06 16:10:59 -04:00
Nirbheek Chauhan d422c2b791 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.
2019-04-15 15:36:08 +05:30
Nirbheek Chauhan c786776f27 gst-uninstalled: De-dedup before prepending to an env var
Helps us avoid breaching the maximum length limit for env var values
on Windows.
2019-04-15 15:32:36 +05:30
Nirbheek Chauhan f46066011f 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`.
2019-04-02 13:16:05 +00:00
Seungha Yang f42544cb6b 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.
2019-04-02 08:35:03 +00:00
Antonio Ospite 8af2376bc0 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.
2019-03-17 21:08:08 +01: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
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
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
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
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
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
Mathieu Duponchelle 72c43ce73f uninstalled: build and set PYTHONPATH 2018-10-27 17:59:29 +02:00
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
Víctor Manuel Jáquez Leal 13131122b7 meson: strip branch name when uninstalled
Remove ending newlines characters on branch's name.

https://bugzilla.gnome.org/show_bug.cgi?id=796989
2018-08-31 13:17:42 +01:00
Philippe Normand c78f0ef222 gst-uninstalled: Display current git branch name in the shell prompt
This is really useful when using multiple git worktrees.

https://bugzilla.gnome.org/show_bug.cgi?id=796989
2018-08-30 17:03:24 +01:00
Nirbheek Chauhan 783e6a226d scripts: Fix fetching of meson command to run
Don't assume that meson is always a python script, on Windows it can
be (and soon will almost always be) an executable.

See: Meson MSI installer and https://github.com/mesonbuild/meson/pull/4004
2018-08-11 02:52:51 +05:30
Thibault Saunier 7ec215b509 uninstalled: Also support GES overrides
Simplifying one step further too
2018-07-24 12:41:50 -04:00
Thibault Saunier 6a0c4b3771 Fix previous commit putting mesonconfig.py in our custom sitecustomize directory 2018-07-24 12:11:52 -04:00
Thibault Saunier 63e743def6 uninstalled: Simplify our python environment setup
Not changing the main usersitepackage env but creating our own,
similarly to what a venv would do.
2018-07-23 13:42:02 -04:00
Thibault Saunier 4ef0584295 uninstalled: Avoid failling while setting up PyGObject env hack files 2018-07-23 11:11:03 -04:00
Thibault Saunier 35079f67ac uninstalled: Set PKG_CONFIG_PATH to point to prefix/lib/pkgconfig 2018-06-06 07:55:20 -04:00
Nirbheek Chauhan a57019296b gst-uninstalled.py: Look for both 'build' and '_build' for builddir 2018-05-05 20:35:12 +05:30
Nirbheek Chauhan d7b86636f9 gst-uninstalled: Use absolute path to custom builddir 2018-05-05 18:38:00 +05:30
Mathieu Duponchelle c938c75916 gst-uninstalled: symlink mesonconfig in site-packages
This is still incredibly ugly, but at least now mesonconfig
gets found, unlike before where the path where it was looked
for was the path of the sitecustomize symlink, not of its target
(https://bugs.python.org/issue6386)
2018-01-19 21:07:08 +01:00
Mathieu Duponchelle a484ed4124 gst-uninstalled: make override hacks work in virtualenv
virtualenv ships its own version of site.py, which does not
expose a getusersitepackages function. An alternative method
is thus used when we detect that we are running in a virtualenv.
2018-01-19 21:04:09 +01:00
Alicia Boya García a5ed8944e3 gst-uninstalled.py: Don't close parent file descriptors
https://bugzilla.gnome.org/show_bug.cgi?id=791616
2018-01-12 16:43:23 -03:00
Mathieu Duponchelle c6c09b7317 Stop using now deprecated mesonintrospect executable 2017-12-18 17:05:47 +01:00
Philippe Normand c79e252c53 uninstalled: Symbolic link support for the script file
This allows the user to invoke the uninstalled shell using a symbolic link to
gst-uninstalled.py.
2017-09-15 14:59:49 +01:00
Thibault Saunier 60585d2812 Handle a prefix in prefix/
This is usefull to use external libs and tool not buildable with meson
inside our environment
2017-09-06 16:10:03 -03:00
Thibault Saunier f7c192a440 Add csharp/gstreamer-sharp support 2017-09-06 13:48:10 -03:00
Thibault Saunier e94d5163ac uninstalled: Do not concider not installed dynamic libs as possible plugins 2017-06-07 17:38:59 -04:00
Scott D Phillips 13db445e11 uninstalled: fixes for windows usage
Fix a couple small breakages with windows usage, (1) Add
sys.executable to a subprocess invocation and (2) escape a path
fragment that gets used in a regex.

https://bugzilla.gnome.org/show_bug.cgi?id=782026
2017-05-05 14:34:58 +05:30
Thibault Saunier 60ff3d539b uninstalled: Make the regex to look for plugin paths more generic
We might end up with spurious paths but it is no big deal.
2017-04-24 16:00:17 -03:00
Nirbheek Chauhan 71cf22cc19 gst-uninstalled: Match plugin path when lib64 is libdir
Fixes setting of GST_PLUGIN_PATH on Fedora 64-bit
2017-04-22 17:58:51 +05:30
Thibault Saunier 43c107d4fe Set GST_PLUGIN_PATH only to plugin paths 2017-04-20 10:12:08 -03:00
Mathieu Duponchelle 12b1289519 uninstalled: use build and source root 2017-04-06 00:25:49 +02:00
Thibault Saunier 4df327a69b uninstalled: Take into account -good pkgconfig uninstalled file 2017-03-28 14:32:36 -03:00