Stéphane Cerveau
52e7b2a8e0
gst-full: fix static build on Windows host
...
Static build needs a version script which is
not available on Windows.
Need to implement use of def file.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/226 >
2020-11-23 17:32:08 +01:00
Tim-Philipp Müller
000b01c6f1
Add opus wrap
...
Now that Meson build system support has been merged upstream.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/225 >
2020-11-16 19:23:20 +00:00
Nirbheek Chauhan
9898650a31
meson: Update expat.wrap for MSVC fix
...
This broke during the update in !206 , and we didn't notice because the
CI doesn't update --reset the wraps, which will be fixed by
https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/375
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/224 >
2020-11-05 13:09:46 +05:30
Nirbheek Chauhan
e3d694195f
gitignore: Add new subprojects to ignore list
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 >
2020-11-04 18:56:38 +05:30
Nirbheek Chauhan
81c3c9175b
meson: Do not add MSVC warnings flags globally
...
These get added to *all* subprojects, including ones we do not
maintain such as ffmpeg which then emits thousands of warnings that
completely overwhelm the compile output.
We will add these in each gstreamer subproject separately.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 >
2020-11-04 18:41:36 +05:30
Guillaume Desmottes
eba05e57a6
subprojects: add webrtc-audio-processing.wrap
...
Will be useful to build the iSAC plugin:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1124
Depends on https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/11
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/219 >
2020-10-28 16:14:41 +01:00
Stéphane Cerveau
94260955ba
gst-full: add warning for gst_init_static_plugins
...
As some compiler might not supported -Wl,--undefined
add a warning to the meson configure stage.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/211 >
2020-10-28 14:15:52 +00:00
Stéphane Cerveau
89176610d2
Revert "subprojects: orc: pin to 0.4.29 release"
...
This reverts commit 8a2ac5c668
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/215 >
2020-10-27 14:33:59 +01:00
Tim-Philipp Müller
2faa29909f
libpsl.wrap: pin to 0.21.1 tag
...
So build failures on master don't break our build and CI.
https://github.com/rockdaboot/libpsl/pull/164
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/213 >
2020-10-26 12:13:12 +00:00
Xavier Claessens
8046eda879
Meson: Use generated -uninstalled.pc files
2020-10-23 10:55:20 -04:00
Stéphane Cerveau
a4f711e9e5
gst-full: add linker flag to keep gst_init_static_plugins
...
In a fully static link where an app link with gstreamer-full
the gst_init_static_plugins can be discarded because
no one references it.
Indeed the symbol is looked up by gst_init to call if it exists
and so it is not clearly referenced.
In order to avoid this issue, we use the linker flag
--undefined=gst_init_static_plugins to keep
the symbol.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/207 >
2020-10-21 15:44:59 +02:00
Stéphane Cerveau
f82527519c
gst-full: use '-Wl,-Bsymbolic-functions' to reduce footprint
...
As most of the gst/glib modules, use this linker flag
to reduce footprint.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/204 >
2020-10-14 16:05:13 +02:00
Stéphane Cerveau
139fbac92e
gstreamer-full: add assert for global symbols
...
Add _gst_caps_features_any not null assert
Add _gst_caps_features_memory_system_memory as well
A bug has been detected when using -Bsymbolic in the link
of libgstreamer-full.so
This flag has been introduced to fix this issue:
https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/108
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/204 >
2020-10-14 16:05:13 +02:00
Stéphane Cerveau
751aacd8fc
Revert "gstreamer-full: Fix link with x264"
...
This reverts commit e236d4f71a
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/204 >
2020-10-14 16:05:13 +02:00
Stéphane Cerveau
d5dcbdb51b
gst-full: use a default version script
...
Use a default version script instead of
Bsymbolic to get rid of x264 and ffmpeg
symbol relocation issue.
https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/108
Export only glib and gstreamer symbols.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/204 >
2020-10-14 16:05:13 +02:00
Xavier Claessens
71616b9317
meson: Update expat.wrap with latest version
...
It fixes missing exported symbols:
2602bd52eb
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/206 >
2020-10-13 17:08:53 +00:00
Philippe Normand
05f7066179
subprojects: Update libwpe and wpebackend-fdo for fallback support
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/205 >
2020-10-12 12:29:01 +00:00
Stéphane Cerveau
bda7145460
gstreamer-full: add unit test
...
This test allows to test gstreamer-full behaviour
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/203 >
2020-10-12 10:27:55 +02:00
Xavier Claessens
b25e471eaf
gstfull: Also include 'sources' from dependencies
...
It contains generated headers like mkenums.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/203 >
2020-10-12 10:27:55 +02:00
Xavier Claessens
8a9d21ce18
gst-full: Add missing include directories to use it in subprojects
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/203 >
2020-10-12 10:27:55 +02:00
Stéphane Cerveau
b4256c219d
gst-full: declare dependency
...
Declare the gstreamer-full dependency which can be used
later by 3rd party applications.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/203 >
2020-10-12 10:27:55 +02:00
Stéphane Cerveau
30ea94f40c
meson: move custom_subproject definition for gst-full
...
In order to let any subproject to use gstreamer-full
declare the subprojects after gstreamer-full definition.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/203 >
2020-10-12 10:27:55 +02:00
Philippe Normand
e7b9f6b04a
wpebackend-fdo: Update to 1.9
...
This commit will be useful for the wpesrc audio support, and for CI/SHM purposes
in general.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/202 >
2020-10-09 18:17:57 +00:00
Philippe Normand
852f8f7a53
Add libwpe subproject
...
This is a dependency of wpebackend-fdo.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/202 >
2020-10-09 18:17:57 +00:00
Guillaume Desmottes
4a2e037fd6
gst-worktree: add support for wrap file without 'directory' field
...
The script is currently not usable because of pango.wrap not having the
'directory' field and relying on the default from the file name.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/201 >
2020-10-07 15:02:23 +02:00
Stéphane Cerveau
9c90e6a1c3
libopenjp2: update wrap
...
Fix lcms2 and wxWidgets system dependencies.
https://github.com/mesonbuild/libopenjp2/pull/2
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/200 >
2020-10-06 13:15:57 +00:00
Guillaume Desmottes
89faf739c9
meson: add gst-full-version-script option
...
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 >
2020-10-06 12:54:19 +00:00
Xavier Claessens
a9731bdcb7
Add pango.wrap file and its dependencies
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/196 >
2020-10-06 12:35:14 +00:00
Stéphane Cerveau
c96dcd2698
meson: make good and base optional
...
Be able to disable the base/good build on demand
By default its always enabled.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/178 >
2020-10-06 09:48:20 +02:00
Xavier Claessens
89913b2f83
gst-full: Prevent multiple calls to gst_init_static_plugins()
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/191 >
2020-10-05 17:17:46 -04:00
Xavier Claessens
d4f95054e1
README: Document gstreamer-full-1.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/191 >
2020-10-05 17:17:46 -04:00
Xavier Claessens
4dc93ef130
gst-full: Remove gstinitstaticplugins.h
...
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 >
2020-10-05 17:17:46 -04:00
Nirbheek Chauhan
debe544d3f
windows: Detect Strawberry Perl and error out early
...
This is going to fail during the compile phase because Strawberry Perl
ships with its own pkg-config and pkgconfig files for zlib/libffi with
unusable values.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/41
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/197 >
2020-10-01 23:11:24 +05:30
Antonio Ospite
fa9627eb75
gst-env: use Path.open() in get_pkgconfig_variable_from_pcfile()
...
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 >
2020-09-24 13:50:09 +02:00
Nicolas Dufresne
9e8ce49ac4
meson: Add qt5 feature
...
This allow disabling qt5 across GStreamer with a single configuration.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/190 >
2020-09-19 00:25:18 +00:00
Jordan Petridis
5758e5461f
{pygobject,pycairo}.wrap: point to stable refs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/189 >
2020-09-15 15:51:42 +03:00
Tim-Philipp Müller
be984e88db
Back to development
2020-09-08 16:59:25 +01:00
Tim-Philipp Müller
32d3a2544d
Release 1.18.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/186 >
2020-09-08 09:59:40 +01:00
Guillaume Desmottes
789b048b7c
cross-files: update README
...
- fix cross file path in example;
- make_standalone_toolchain.py has been deprecated, it's now recommended
to use prebuilt toolchains.
2020-08-27 16:45:09 +02:00
Tim-Philipp Müller
dd2bf7996c
Release 1.17.90
2020-08-20 16:17:01 +01:00
Nirbheek Chauhan
2a4d7f2264
gst-env: Load gio modules in the devenv
...
By setting GIO_EXTRA_MODULES we can ensure that any gio modules we
built are loaded by the devenv.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/180 >
2020-08-03 18:52:20 +00:00
Nirbheek Chauhan
ef4059d4ad
gst-env: Factor out some common code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/180 >
2020-08-03 18:52:20 +00:00
Nirbheek Chauhan
beeec59a01
gst-env: Prematurely skip all targets that aren't installed
...
Simplifies the code a bit.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/180 >
2020-08-03 18:52:20 +00:00
Nirbheek Chauhan
84bd496035
Update .gitignore with subprojects and gdbinit
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/180 >
2020-08-03 18:52:20 +00:00
Nirbheek Chauhan
237f5cc4ee
Add glib-networking as a subproject when glib is a subproject
...
We need gio modules for tls when building gstwebrtcbin, gstsoup, etc.
Control it via a new 'tls' option, since it requires either gnutls or
openssl.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/180 >
2020-08-03 18:52:20 +00:00
Tim-Philipp Müller
e9261b7f50
x264: update to latest stable 160.3011
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/183 >
2020-07-30 15:52:38 +01:00
Tim-Philipp Müller
df52da961d
FFmpeg: update to 4.3.1
...
Fixes #54
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/182 >
2020-07-25 13:44:26 +01:00
Stéphane Cerveau
e236d4f71a
gstreamer-full: Fix link with x264
...
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 >
2020-07-22 12:40:00 +02:00
Jan Alexander Steffens (heftig)
9fa22f5873
gst-env.py: Sort path sets before using prepend_env_var
...
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 >
2020-07-21 21:13:56 +02:00
Seungha Yang
64029b1461
README: Document ARM64 native build on Windows
...
Add some guide for native ARM64 build on Windows
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/175 >
2020-07-15 22:12:28 +09:00