Nirbheek Chauhan
0691ae20d8
meson: Fix generation of pkgconfig files
...
Too much information was specified manually. All this is deduced
automatically if you specify the library as the first positional
argument.
Only absl_base needs to be in Requires: because absl_optional's header
file is needed at build time.
Also add a check in the CI for the pc files being usable.
2023-09-05 01:50:51 +05:30
Arun Raghavan
c9b0a675e4
build: Bump version to 1.2
2023-09-01 11:05:31 -04:00
Arun Raghavan
315b2222a8
meson: Update minimum version based on what abseil wrap needs
2023-08-13 17:42:29 -04:00
Arun Raghavan
bc401b3cbf
build: Expose absl as a dependency of webrtc-audio-processing
...
This is needed because the audio processing header references
abseil's optional.h. Clean up the declared dependencies while we're at
it.
Fixes: https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/34
2023-08-13 17:42:29 -04:00
Nirbheek Chauhan
92a4765a7e
meson: Update to latest wrap, install required absl headers
2023-06-01 17:46:28 +05:30
Nirbheek Chauhan
096b0eaed2
meson: Fixes for MSVC build
...
winsock2.h must be included before windows.h or alternative
definitions of `struct sockaddr` are defined.
```
FAILED: webrtc/rtc_base/liblibbase.a.p/logging.cc.obj
"cl" "-Iwebrtc\rtc_base\liblibbase.a.p" "-Iwebrtc\rtc_base" "-I..\webrtc\rtc_base" "-Iwebrtc" "-I..\webrtc" "-Isubprojects\abseil-cpp-20230125.1" "-I..\subprojects\abseil-cpp-20230125.1" "/MD" "/nologo" "/showIncludes" "/utf-8" "/Zc:__cplusplus" "/W2" "/EHsc" "/std:c++17" "/permissive-" "/O2" "/Zi" "-DWEBRTC_LIBRARY_
IMPL" "-DWEBRTC_ENABLE_SYMBOL_EXPORT" "-DNDEBUG" "-DWEBRTC_WIN" "-D_WIN32" "-U__STRICT_ANSI__" "-D__STDC_FORMAT_MACROS=1" "-DNOMINMAX" "-DWEBRTC_ENABLE_AVX2" "/Fdwebrtc\rtc_base\liblibbase.a.p\logging.cc.pdb" /Fowebrtc/rtc_base/liblibbase.a.p/logging.cc.obj "/c" ../webrtc/rtc_base/logging.cc
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(103): warning C4005: 'AF_IPX': macro redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\winsock.h(457): note: see previous definition of 'AF_IPX'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(147): warning C4005: 'AF_MAX': macro redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\winsock.h(476): note: see previous definition of 'AF_MAX'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(187): warning C4005: 'SO_DONTLINGER': macro redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\winsock.h(399): note: see previous definition of 'SO_DONTLINGER'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(240): error C2011: 'sockaddr': 'struct' type redefinition
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um\winsock.h(482): note: see declaration of 'sockaddr'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(442): error C2143: syntax error: missing '}' before 'constant'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(442): error C2059: syntax error: 'constant'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(496): error C2143: syntax error: missing ';' before '}'
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(496): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared\ws2def.h(496): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
...
```
2023-05-26 03:17:31 +05:30
Nirbheek Chauhan
b24229cbbc
meson: Ensure that abseil is built with c++17 too
...
subprojects do not inherit $lang_std default values from the project.
2023-05-26 03:17:31 +05:30
Nirbheek Chauhan
4125ace620
meson: Fix compatibility with Fedora's abseil-cpp package
...
1. Fedora abseil-cpp package is built with C++17:
https://src.fedoraproject.org/rpms/abseil-cpp/blob/rawhide/f/abseil-cpp.spec
2. There is no `absl_types` pkgconfig file, and it's only needed on iOS
2023-05-26 03:16:38 +05:30
Nirbheek Chauhan
9a362bd149
meson: Don't require cross files to set host_system = ios
...
It's not specified as a host_system by meson, so people will often not
set it.
2023-05-26 00:45:29 +05:30
Nirbheek Chauhan
8366ff0ce0
meson: Get rid of cmake and manual library searching
...
Simplify fallback, and prefer it. `[provide]` section requires meson
0.55, so require that.
pkg-config lookup is only provided for distros, since they dislike
static linking / vendoring.
2023-05-26 00:45:00 +05:30
Jan Palus
ca1186946d
build: don't detect neon again when building on aarch64
...
it will try to add -mfpu=neon to cflags not available on aarch64 since
neon is mandatory there
2022-05-21 14:10:48 +02:00
Jan Palus
26f4493405
build: fix -Dneon=runtime
2022-05-21 14:08:15 +02:00
Arun Raghavan
5a5aa66ada
Add an abseil subproject and correctly specify fallback deps
2021-10-20 11:16:18 -04:00
Arun Raghavan
0cc2ebeda2
Add missing absl library for bad_optional_access
2021-10-20 11:15:57 -04:00
Arun Raghavan
8bf9efad15
Use pkg-config for abseil-cpp detection if available
...
This should make things a bit easier.
2021-10-19 18:06:37 -04:00
Arun Raghavan
ff85c98683
Some fixes for MinGW
...
* Rename Windows.h uses to windows.h
* Comment out structured exception handling usage
Makes MinGW happier. Mostly the same as previous work by
Nicolas Dufresne <nicolas.dufresne@collabora.com>, with the exception
that we now don't try to invoke RaiseException which would fail in MinGW
as it raises a Windows structured exception.
2021-10-19 16:09:07 -04:00
Arun Raghavan
e74894baeb
build: Add library-based absl detection as a fallback
...
This should help for cases where users can make abseil-cpp available but
wiring up the CMake-build isn't that easy (for example, while
cross-compiling).
2021-06-05 18:37:23 -04:00
Arun Raghavan
b34c1d5746
build: Fix ARM ISA detection
...
armv7 isn't a real cpu_family in meson, so drop that. The detection for
__ARM_ARCH_ISA_ARM was also inverted.
Fixes: https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/6
2020-12-11 08:16:04 -05:00
Arun Raghavan
3f9907f93d
build: Use cmake to look up abseil dependency
...
This should be much more robust than looking up the library directly.
Fixes: https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/4
2020-12-10 19:20:09 -05:00
Arun Raghavan
ce1a78887a
build: Revert top-level project name to not have a prefix
...
Should make meson dist easier to work with.
2020-12-10 18:24:05 -05:00
Arun Raghavan
8ce8bebb7d
build: Bump project version to 1.1
2020-12-10 18:24:05 -05:00
Guillaume Desmottes
d938d2cf52
meson: override dependency
...
Will allow us to build the libs as part of gst-build as subprojects.
2020-10-28 16:03:08 +01:00
Arun Raghavan
21d78a4267
build: Make packages versioned
...
Since we cannot rely on the API to be stable upstream, let's start
making the pkg-config, library, and include dir have a version suffix.
This will allow different downstream projects depending on us to
independently switch versions without packagers having to jump through
hoops.
2020-10-23 13:30:23 -04:00
Arun Raghavan
bcec8b0b21
Update to current webrtc library
...
This is from the upstream library commit id
3326535126e435f1ba647885ce43a8f0f3d317eb, corresponding to Chromium
88.0.4290.1.
2020-10-23 13:30:23 -04:00
Guillaume Desmottes
34efc689c2
add webrtc-audio-coding public library
...
This new lib contains the bare minimum to implement an iSAC encoder and
decoder.
The webrtc files have been copied from the revision as the existing
imported files (c8b569e0a7ad0b369e15f0197b3a558699ec8efa).
2020-03-27 14:52:22 +01:00
Guillaume Desmottes
f2003f80d1
meson: fix pkgconfig generation
...
The bug preventing us to pass the library object to
pkgconfig.generate() has been fixed in meson 0.52.
By doing so the generated pc file has the right -L linker flag, making
it easier to test the lib from non standard location.
We also no longer have to pass libraries_private, it will handle it
automatically.
2020-03-24 15:00:53 +01:00
Matthew Waters
27e93ee86b
build/meson: fix compilation on arm64
...
The assembly files used don't use the right comments for arm64
2018-11-08 20:56:52 +11:00
Arun Raghavan
682857751b
build: Factor out common POSIX flag setting in meson build
2018-10-28 14:57:00 +00:00
Arun Raghavan
b47c302cef
build: Fix project() invocation in meson build
2018-10-28 14:56:54 +00:00
Matthew Waters
eb398328ab
Initial meson build files
2018-10-28 23:25:18 +11:00