Can be used to control the exact symbols exported, or not, in
libgstreamer-full.
This is useful when building a tailored libgstreamer-full aimed
to be run with some specific binaries. By using such version script
one can reduce the size of the generated lib by letting the linker
garbage collect all the unused APIs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/195>
That header is not needed any more because gst_init() now calls
gst_init_static_plugins() automatically when available.
This is an API break compared to 1.18, but release notes made it clear
it was an experimental feature.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/191>
The pcfile argument passed to get_target_install_filename() is
guaranteed to be a Path() object so use the .open() method to open the
file instead of the standard open() function.
This makes it possible to run gst-env.py on older systems with pyhton3.5
where the standard open() function cannot handle Path arguments.
The change fixes errors like the following:
-----------------------------------------------------------------------
$ ninja -C build/ devenv
ninja: Entering directory `build/'
[0/1] Running external command devenv
Traceback (most recent call last):
File "/home/ao2/gst-build/gst-env.py", line 493, in <module>
env = get_subprocess_env(options, gst_version)
File "/home/ao2/gst-build/gst-env.py", line 342, in get_subprocess_env
elif is_gio_module(target, filename, options.builddir):
File "/home/ao2/gst-build/gst-env.py", line 121, in is_gio_module
giomoduledir = PurePath(get_pkgconfig_variable(builddir, 'gio-2.0', 'giomoduledir'))
File "/home/ao2/gst-build/gst-env.py", line 110, in get_pkgconfig_variable
return get_pkgconfig_variable_from_pcfile(pcfile, varname)
File "/home/ao2/gst-build/gst-env.py", line 89, in get_pkgconfig_variable_from_pcfile
with open(pcfile, 'r', encoding='utf-8') as f:
TypeError: invalid file: PosixPath('/home/ao2/gst-build/build/meson-private/gio-2.0.pc')
FAILED: meson-devenv
-----------------------------------------------------------------------
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/192>
If a static build is requested and x264 plugin has been enabled
the full link fails with:
/usr/bin/ld: subprojects/x264/libx264.a(cabac-a.o): relocation
R_X86_64_PC32 against symbol `x264_cabac_range_lps' can not be used when
making a shared object; recompile with -fPIC
Fixes#108
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/169>
Python `set`s have a random ordering. To avoid creating a random
environment, create sorted lists before iterating over them.
Our Rust crates instruct cargo to rebuild if `PKG_CONFIG_PATH` changes,
so this has been causing unnecessary rebuilds.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/177>
Latest libnice requires 0.52, so it probably makes sense to
update the meson requirement in gst-build for that, so we
have good out-of-the-box developer experience for people,
with webrtc working out of the box.
Might also make it easier to backport things later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/164>
When we have a manifest, we DEFINITELY want exactly that, please throw
away any local changes, thanks. Fixes CI:
https://gitlab.freedesktop.org/alatiera/gst-ci/-/jobs/3105690
```
Checking out f5b44d3128 in gst-devtools
Could not rebase subprojects\gst-devtools, please fix and try again. Error:
error: Your local changes to the following files would be overwritten by checkout:
docs/plugins/fakesrc.simple.validatetest.yaml
Please commit your changes or stash them before you switch branches.
Aborting
Command '['git', 'checkout', '--detach', 'f5b44d31284cfa1b6d029fdfe69d6cdb9a8aeb36']' returned non-zero exit status 1.
```
This is probably caused by some shared cache shenanigans, but forcing
is also what we want anyway in this case.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/162>
`bdir[1:]` is supposed to convert `/path/to/bdir` to `path/to/bdir`
which is only correct on UNIX. On Windows it will convert
`C:\path\to\bdir` to `:\path\to\bdir` which is totally wrong.
Use pathlib instead, which makes it trivial to do the conversion using
`joinpath(*bdir.parts)`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/160>