mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-18 07:47:17 +00:00
Remove the uninstalled term
Remove the symbolic link `gst-uninstalled` which points to `gst-env`. The `uninstalled` is the old name and the project should stick to a single name for the procedure. Remove the term from all the files, exceptions are variables from dependencies like `uninstalled_variables` from pkgconfig and `meson-uninstalled`. Adjust mentions of the script in the documentation and README. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1743>
This commit is contained in:
parent
57158f4194
commit
0b6bbce012
17 changed files with 38 additions and 40 deletions
|
@ -423,13 +423,13 @@ git clone https://github.com/mesonbuild/meson.git
|
||||||
```
|
```
|
||||||
BUILDDIR=$PWD/winebuild/
|
BUILDDIR=$PWD/winebuild/
|
||||||
export WINEPREFIX=$BUILDDIR/wine-prefix/ && mkdir -p $WINEPREFIX
|
export WINEPREFIX=$BUILDDIR/wine-prefix/ && mkdir -p $WINEPREFIX
|
||||||
# Setting the prefix is mandatory as it is used to setup symlinks during uninstalled development
|
# Setting the prefix is mandatory as it is used to setup symlinks within the development environment
|
||||||
meson/meson.py $BUILDDIR --cross-file meson/cross/linux-mingw-w64-64bit.txt -Dgst-plugins-bad:vulkan=disabled -Dorc:gtk_doc=disabled --prefix=$BUILDDIR/wininstall/ -Djson-glib:gtk_doc=disabled
|
meson/meson.py $BUILDDIR --cross-file meson/cross/linux-mingw-w64-64bit.txt -Dgst-plugins-bad:vulkan=disabled -Dorc:gtk_doc=disabled --prefix=$BUILDDIR/wininstall/ -Djson-glib:gtk_doc=disabled
|
||||||
meson/meson.py install -C $BUILDDIR/
|
meson/meson.py install -C $BUILDDIR/
|
||||||
```
|
```
|
||||||
|
|
||||||
> __NOTE__: You should use `meson install -C $BUILDDIR` each time you make a change
|
> __NOTE__: You should use `meson install -C $BUILDDIR` each time you make a change
|
||||||
> instead of the usual `ninja -C build` as the environment is not uninstalled.
|
> instead of the usual `ninja -C build` as this is not in the development environment.
|
||||||
|
|
||||||
#### The development environment
|
#### The development environment
|
||||||
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
gst-env.py
|
|
|
@ -16,17 +16,17 @@ fs = import('fs')
|
||||||
gnome = import('gnome')
|
gnome = import('gnome')
|
||||||
pkgconfig = import('pkgconfig')
|
pkgconfig = import('pkgconfig')
|
||||||
python3 = import('python').find_installation()
|
python3 = import('python').find_installation()
|
||||||
# Ensure that we're not being run from inside the gst-uninstalled env
|
# Ensure that we're not being run from inside the development environment
|
||||||
# because that will confuse meson, and it might find the already-built
|
# because that will confuse meson, and it might find the already-built
|
||||||
# gstreamer. It's fine if people run `ninja` as long as it doesn't run
|
# gstreamer. It's fine if people run `ninja` as long as it doesn't run
|
||||||
# reconfigure because ninja doesn't care about the env.
|
# reconfigure because ninja doesn't care about the env.
|
||||||
ensure_not_uninstalled = '''
|
ensure_not_devenv = '''
|
||||||
import os
|
import os
|
||||||
assert('GST_ENV' not in os.environ)
|
assert('GST_ENV' not in os.environ)
|
||||||
'''
|
'''
|
||||||
cmdres = run_command(python3, '-c', ensure_not_uninstalled, check: false)
|
cmdres = run_command(python3, '-c', ensure_not_devenv, check: false)
|
||||||
if cmdres.returncode() != 0
|
if cmdres.returncode() != 0
|
||||||
error('Do not run `ninja` or `meson` for gst-build inside the uninstalled environment, you will run into problems')
|
error('Do not run `ninja` or `meson` for gst-build inside the development environment, you will run into problems')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Install gst-indent pre-commit hook
|
# Install gst-indent pre-commit hook
|
||||||
|
@ -395,7 +395,6 @@ if meson.can_run_host_binaries() and build_machine.system() == 'linux' and host_
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
run_target('uninstalled', command : devenv_cmd)
|
|
||||||
run_target('devenv', command : devenv_cmd)
|
run_target('devenv', command : devenv_cmd)
|
||||||
|
|
||||||
if orc_subproject.found() and orc_update_targets.length() > 0
|
if orc_subproject.found() and orc_update_targets.length() > 0
|
||||||
|
|
|
@ -238,9 +238,9 @@ class PathsBase (object):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_uninstalled(cls, source_dir):
|
def setup_devenv(cls, source_dir):
|
||||||
"""Set up paths for running 'uninstalled' (i.e. directly from the
|
"""Set up paths for running the development environment
|
||||||
source dist)."""
|
(i.e. directly from the source dist)."""
|
||||||
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -251,7 +251,7 @@ class PathsBase (object):
|
||||||
if cls.data_dir is None:
|
if cls.data_dir is None:
|
||||||
source_dir = os.path.dirname(
|
source_dir = os.path.dirname(
|
||||||
os.path.dirname(os.path.abspath(__file__)))
|
os.path.dirname(os.path.abspath(__file__)))
|
||||||
cls.setup_uninstalled(source_dir)
|
cls.setup_devenv(source_dir)
|
||||||
|
|
||||||
def __new__(cls):
|
def __new__(cls):
|
||||||
|
|
||||||
|
@ -275,9 +275,9 @@ class PathsProgramBase (PathsBase):
|
||||||
cls.locale_dir = os.path.join(data_prefix, "locale")
|
cls.locale_dir = os.path.join(data_prefix, "locale")
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def setup_uninstalled(cls, source_dir):
|
def setup_devenv(cls, source_dir):
|
||||||
"""Set up paths for running 'uninstalled' (i.e. directly from the
|
"""Set up paths for running the development environment
|
||||||
source dist)."""
|
(i.e. directly from the source dist)."""
|
||||||
|
|
||||||
# This is essential: The GUI module needs to find the .glade file.
|
# This is essential: The GUI module needs to find the .glade file.
|
||||||
cls.data_dir = os.path.join(source_dir, "data")
|
cls.data_dir = os.path.join(source_dir, "data")
|
||||||
|
|
|
@ -41,7 +41,8 @@ def main():
|
||||||
if data_dir:
|
if data_dir:
|
||||||
installed = True
|
installed = True
|
||||||
else:
|
else:
|
||||||
# Substitution has not been run, we are running uninstalled:
|
# Substitution has not been run, we are running within a development
|
||||||
|
# environment:
|
||||||
lib_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
|
lib_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
|
||||||
installed = False
|
installed = False
|
||||||
|
|
||||||
|
@ -61,7 +62,7 @@ def main():
|
||||||
else:
|
else:
|
||||||
# Assume that we reside inside the source dist.
|
# Assume that we reside inside the source dist.
|
||||||
source_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
|
source_dir = os.path.dirname(os.path.realpath(sys.argv[0]))
|
||||||
GstDebugViewer.Paths.setup_uninstalled(source_dir)
|
GstDebugViewer.Paths.setup_devenv(source_dir)
|
||||||
|
|
||||||
GstDebugViewer.run()
|
GstDebugViewer.run()
|
||||||
|
|
||||||
|
|
|
@ -5305,7 +5305,7 @@ gst_validate_list_scenarios (gchar ** scenarios, gint num_scenarios,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Hack to make it work uninstalled */
|
/* Hack to make it work within the development environment */
|
||||||
dir = g_file_new_for_path ("data/scenarios");
|
dir = g_file_new_for_path ("data/scenarios");
|
||||||
_list_scenarios_in_dir (dir, kf);
|
_list_scenarios_in_dir (dir, kf);
|
||||||
g_object_unref (dir);
|
g_object_unref (dir);
|
||||||
|
|
|
@ -225,8 +225,8 @@ GStreamer from source yourself instead of using pre-built packages),
|
||||||
make sure the `PKG_CONFIG_PATH` environment variable is set to the
|
make sure the `PKG_CONFIG_PATH` environment variable is set to the
|
||||||
correct location (`$libdir/pkgconfig`).
|
correct location (`$libdir/pkgconfig`).
|
||||||
|
|
||||||
In the unlikely case that you are using an uninstalled GStreamer setup
|
In the unlikely case that you are using the GStreamer development environment
|
||||||
(ie. gst-uninstalled), you will need to use libtool to build the hello
|
(ie. gst-env), you will need to use libtool to build the hello
|
||||||
world program, like this:
|
world program, like this:
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
|
@ -33,12 +33,12 @@ For bigger projects, you should integrate `pkg-config` use in your
|
||||||
Makefile, or with autoconf using the pkg.m4 macro (providing
|
Makefile, or with autoconf using the pkg.m4 macro (providing
|
||||||
`PKG_CONFIG_CHECK`).
|
`PKG_CONFIG_CHECK`).
|
||||||
|
|
||||||
## How do I develop against an uninstalled GStreamer copy?
|
## How do I develop against a GStreamer copy within a development environment?
|
||||||
|
|
||||||
It is possible to develop and compile against an uninstalled copy of GStreamer
|
It is possible to develop and compile against a copy of GStreamer and its
|
||||||
and its plugins, for example, against git checkouts. This enables you to test
|
plugins within a development environment, for example, against git checkouts.
|
||||||
the latest version of GStreamer without interfering with your system-wide
|
This enables you to test the latest version of GStreamer without interfering
|
||||||
installation. See the [Building from source using
|
with your system-wide installation. See the [Building from source using
|
||||||
meson](installing/building-from-source-using-meson.md) documentation.
|
meson](installing/building-from-source-using-meson.md) documentation.
|
||||||
|
|
||||||
|
|
||||||
|
@ -54,10 +54,9 @@ If what you want is automatic audio/video sinks, consider using the
|
||||||
|
|
||||||
## How do I debug these funny shell scripts that libtool makes?
|
## How do I debug these funny shell scripts that libtool makes?
|
||||||
|
|
||||||
When you link a program against uninstalled GStreamer using
|
When you link a program against a GStreamer within a development environment
|
||||||
libtool, funny shell scripts are made to modify your shared object
|
using libtool, funny shell scripts are made to modify your shared object search
|
||||||
search path and then run your program. For instance, to debug
|
path and then run your program. For instance, to debug `gst-launch`, try:
|
||||||
`gst-launch`, try:
|
|
||||||
|
|
||||||
```
|
```
|
||||||
libtool --mode=execute gdb /path/to/gst-launch
|
libtool --mode=execute gdb /path/to/gst-launch
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
|
|
||||||
The GStreamer multimedia framework is a set of libraries and plugins split into a number of distinct modules which are released independently and which have so far been developed in separate git repositories in [freedesktop.org GitLab](https://gitlab.freedesktop.org/gstreamer/).
|
The GStreamer multimedia framework is a set of libraries and plugins split into a number of distinct modules which are released independently and which have so far been developed in separate git repositories in [freedesktop.org GitLab](https://gitlab.freedesktop.org/gstreamer/).
|
||||||
|
|
||||||
In addition to these separate git repositories there was a `gst-build` meta-repository that would use the Meson build systems's subproject feature to download each individual module and then build everything in one go. It would also provide an uninstalled development environment that made it easy to work on GStreamer and use or test versions other than the system-installed GStreamer version.
|
In addition to these separate git repositories there was a `gst-build` meta-repository that would use the Meson build systems's subproject feature to download each individual module and then build everything in one go. It would also provide a development environment that made it easy to work on GStreamer and use or test versions other than the system-installed GStreamer version.
|
||||||
|
|
||||||
All of these modules have now (as of 28 September 2021) been merged into a single git repository ("Mono repository" or "monorepo") which should simplify development workflows and continuous integration, especially where changes need to be made to multiple modules at once.
|
All of these modules have now (as of 28 September 2021) been merged into a single git repository ("Mono repository" or "monorepo") which should simplify development workflows and continuous integration, especially where changes need to be made to multiple modules at once.
|
||||||
|
|
||||||
|
|
|
@ -132,7 +132,7 @@ figure out on its own that `meson` needs to be re-run and will do that
|
||||||
automatically.
|
automatically.
|
||||||
|
|
||||||
|
|
||||||
## Entering the "uninstalled" environment
|
## Entering the development environment
|
||||||
|
|
||||||
GStreamer is made of several tools, plugins and components. In order to make it
|
GStreamer is made of several tools, plugins and components. In order to make it
|
||||||
easier for development and testing, there is a target (provided by `gst-build`
|
easier for development and testing, there is a target (provided by `gst-build`
|
||||||
|
|
|
@ -183,7 +183,7 @@ gpointer WPEContextThread::s_viewThread(gpointer data)
|
||||||
static void
|
static void
|
||||||
initialize_web_extensions (WebKitWebContext *context)
|
initialize_web_extensions (WebKitWebContext *context)
|
||||||
{
|
{
|
||||||
const gchar *local_path = gst_wpe_get_uninstalled_extension_path ();
|
const gchar *local_path = gst_wpe_get_devenv_extension_path ();
|
||||||
const gchar *path = g_file_test (local_path, G_FILE_TEST_IS_DIR) ? local_path : G_STRINGIFY (WPE_EXTENSION_INSTALL_DIR);
|
const gchar *path = g_file_test (local_path, G_FILE_TEST_IS_DIR) ? local_path : G_STRINGIFY (WPE_EXTENSION_INSTALL_DIR);
|
||||||
GST_INFO ("Loading WebExtension from %s", path);
|
GST_INFO ("Loading WebExtension from %s", path);
|
||||||
webkit_web_context_set_web_extensions_directory (context, path);
|
webkit_web_context_set_web_extensions_directory (context, path);
|
||||||
|
|
|
@ -33,7 +33,7 @@ GST_DEBUG_CATEGORY (wpe_video_src_debug);
|
||||||
GST_DEBUG_CATEGORY (wpe_view_debug);
|
GST_DEBUG_CATEGORY (wpe_view_debug);
|
||||||
GST_DEBUG_CATEGORY (wpe_src_debug);
|
GST_DEBUG_CATEGORY (wpe_src_debug);
|
||||||
|
|
||||||
const gchar *gst_wpe_get_uninstalled_extension_path (void)
|
const gchar *gst_wpe_get_devenv_extension_path (void)
|
||||||
{
|
{
|
||||||
return extension_path;
|
return extension_path;
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,4 +21,4 @@
|
||||||
|
|
||||||
#include <gst/gst.h>
|
#include <gst/gst.h>
|
||||||
|
|
||||||
const gchar *gst_wpe_get_uninstalled_extension_path (void);
|
const gchar *gst_wpe_get_devenv_extension_path (void);
|
||||||
|
|
|
@ -87,7 +87,7 @@ gst_tag_get_license_translations_dictionary (void)
|
||||||
gchar *data;
|
gchar *data;
|
||||||
gsize len;
|
gsize len;
|
||||||
|
|
||||||
/* for gst-uninstalled */
|
/* for gst-env */
|
||||||
dict_path = g_getenv ("GST_TAG_LICENSE_TRANSLATIONS_DICT");
|
dict_path = g_getenv ("GST_TAG_LICENSE_TRANSLATIONS_DICT");
|
||||||
|
|
||||||
if (dict_path == NULL)
|
if (dict_path == NULL)
|
||||||
|
|
|
@ -38,8 +38,8 @@ the non-versioned one if it is set.
|
||||||
|
|
||||||
Setting this variable to an empty string will cause GStreamer not to
|
Setting this variable to an empty string will cause GStreamer not to
|
||||||
scan any system paths at all for plug-ins. This can be useful if you're
|
scan any system paths at all for plug-ins. This can be useful if you're
|
||||||
running uninstalled (for development purposes) or while running
|
running a development environment (for development purposes) or while
|
||||||
testsuites.
|
running testsuites.
|
||||||
|
|
||||||
**`GST_PLUGIN_PATH`, `GST_PLUGIN_PATH_1_0`.**
|
**`GST_PLUGIN_PATH`, `GST_PLUGIN_PATH_1_0`.**
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ the non-versioned one if it is set.
|
||||||
|
|
||||||
Setting this variable to an empty string will cause GStreamer not to
|
Setting this variable to an empty string will cause GStreamer not to
|
||||||
scan any system paths at all for plug-ins. This can be useful if you're
|
scan any system paths at all for plug-ins. This can be useful if you're
|
||||||
running uninstalled (for development purposes) or while running
|
running a development environment (for development purposes) or while running
|
||||||
testsuites.
|
testsuites.
|
||||||
|
|
||||||
**GST_PLUGIN_PATH, GST_PLUGIN_PATH_1_0.**
|
**GST_PLUGIN_PATH, GST_PLUGIN_PATH_1_0.**
|
||||||
|
|
|
@ -1189,7 +1189,7 @@ gst_registry_scan_plugin_file (GstRegistryScanContext * context,
|
||||||
/* Load plugin the old fashioned way... */
|
/* Load plugin the old fashioned way... */
|
||||||
|
|
||||||
/* We don't use a GError here because a failure to load some shared
|
/* We don't use a GError here because a failure to load some shared
|
||||||
* objects as plugins is normal (particularly in the uninstalled case)
|
* objects as plugins is normal (particularly in the development environment case)
|
||||||
*/
|
*/
|
||||||
newplugin = _priv_gst_plugin_load_file_for_registry (filename,
|
newplugin = _priv_gst_plugin_load_file_for_registry (filename,
|
||||||
context->registry, NULL);
|
context->registry, NULL);
|
||||||
|
@ -1229,7 +1229,7 @@ is_blacklisted_directory (const gchar * dirent)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
/* can also skip .git and .deps dirs, those won't contain useful files.
|
/* can also skip .git and .deps dirs, those won't contain useful files.
|
||||||
* This speeds up scanning a bit in uninstalled setups. */
|
* This speeds up scanning a bit in development environment setups. */
|
||||||
if (strcmp (dirent, ".git") == 0 || strcmp (dirent, ".deps") == 0)
|
if (strcmp (dirent, ".git") == 0 || strcmp (dirent, ".deps") == 0)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue