86d053c2db
Use source_sets in component builds and static_library in release builds.
...
Static libraries don't guarantee that an exported symbol gets linked
into a shared library (and in order to support Chromium's component
build mode, WebRTC needs to be linked as a shared library).
Source sets always pass all the object files to the linker.
On the flip side, source_sets link more object files in release builds
and to avoid this, this CL introduces a the GN template "rtc_library" that
expands to static_library during release builds and to source_set during
component builds.
See: https://gn.googlesource.com/gn/+/master/docs/reference.md#func_source_set
Bug: webrtc:9419
Change-Id: I4667e820c2b3fcec417becbd2034acc13e4f04fe
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157168
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org >
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org >
Reviewed-by: Nico Weber <thakis@chromium.org >
Cr-Commit-Position: refs/heads/master@{#29525}
2019-10-17 21:17:18 +00:00
317a1f09ed
Use std::make_unique instead of absl::make_unique.
...
WebRTC is now using C++14 so there is no need to use the Abseil version
of std::make_unique.
This CL has been created with the following steps:
git grep -l absl::make_unique | sort | uniq > /tmp/make_unique.txt
git grep -l absl::WrapUnique | sort | uniq > /tmp/wrap_unique.txt
git grep -l "#include <memory>" | sort | uniq > /tmp/memory.txt
diff --new-line-format="" --unchanged-line-format="" \
/tmp/make_unique.txt /tmp/wrap_unique.txt | sort | \
uniq > /tmp/only_make_unique.txt
diff --new-line-format="" --unchanged-line-format="" \
/tmp/only_make_unique.txt /tmp/memory.txt | \
xargs grep -l "absl/memory" > /tmp/add-memory.txt
git grep -l "\babsl::make_unique\b" | \
xargs sed -i "s/\babsl::make_unique\b/std::make_unique/g"
git checkout PRESUBMIT.py abseil-in-webrtc.md
cat /tmp/add-memory.txt | \
xargs sed -i \
's/#include "absl\/memory\/memory.h"/#include <memory>/g'
git cl format
# Manual fix order of the new inserted #include <memory>
cat /tmp/only_make_unique | xargs grep -l "#include <memory>" | \
xargs sed -i '/#include "absl\/memory\/memory.h"/d'
git ls-files | grep BUILD.gn | \
xargs sed -i '/\/\/third_party\/abseil-cpp\/absl\/memory/d'
python tools_webrtc/gn_check_autofix.py \
-m tryserver.webrtc -b linux_rel
# Repead the gn_check_autofix step for other platforms
git ls-files | grep BUILD.gn | \
xargs sed -i 's/absl\/memory:memory/absl\/memory/g'
git cl format
Bug: webrtc:10945
Change-Id: I3fe28ea80f4dd3ba3cf28effd151d5e1f19aff89
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/153221
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org >
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org >
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#29209}
2019-09-17 15:47:29 +00:00
1ec2a16121
Revert "Replace VideoEncoderFactory::QueryVideoEncoder with VideoEncoder::GetEncoderInfo"
...
This reverts commit cdc5eb0de179dcc866ef770ea303879c64466879.
Reason for revert: Causes wrong CPU adaptation to be used for some HW codecs since GetEncoderInfo() is polled before InitEncode().
Original change's description:
> Replace VideoEncoderFactory::QueryVideoEncoder with VideoEncoder::GetEncoderInfo
>
> Make implementation of VideoEncoderFactory::QueryVideoEncoder optional
> until it is removed downstream and remove all implementations of it.
>
> Bug: webrtc:10065
> Change-Id: Ibb1f9612234e536651ce53f05ee048a5d172a41f
> Reviewed-on: https://webrtc-review.googlesource.com/c/113065
> Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org >
> Reviewed-by: Sebastian Jansson <srte@webrtc.org >
> Reviewed-by: Per Kjellander <perkj@webrtc.org >
> Reviewed-by: Rasmus Brandt <brandtr@webrtc.org >
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org >
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org >
> Reviewed-by: Erik Språng <sprang@webrtc.org >
> Cr-Commit-Position: refs/heads/master@{#25924}
TBR=brandtr@webrtc.org ,sakal@webrtc.org ,kthelgason@webrtc.org ,sprang@webrtc.org ,srte@webrtc.org ,perkj@webrtc.org ,mirtad@webrtc.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: webrtc:10065
Change-Id: Idaa452e1d8c1c58cdb4ec69b88fce9042589cc3c
Reviewed-on: https://webrtc-review.googlesource.com/c/113800
Reviewed-by: Mirta Dvornicic <mirtad@webrtc.org >
Reviewed-by: Per Kjellander <perkj@webrtc.org >
Reviewed-by: Kári Helgason <kthelgason@webrtc.org >
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org >
Reviewed-by: Sebastian Jansson <srte@webrtc.org >
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#25943}
2018-12-10 10:36:00 +00:00
cdc5eb0de1
Replace VideoEncoderFactory::QueryVideoEncoder with VideoEncoder::GetEncoderInfo
...
Make implementation of VideoEncoderFactory::QueryVideoEncoder optional
until it is removed downstream and remove all implementations of it.
Bug: webrtc:10065
Change-Id: Ibb1f9612234e536651ce53f05ee048a5d172a41f
Reviewed-on: https://webrtc-review.googlesource.com/c/113065
Commit-Queue: Mirta Dvornicic <mirtad@webrtc.org >
Reviewed-by: Sebastian Jansson <srte@webrtc.org >
Reviewed-by: Per Kjellander <perkj@webrtc.org >
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org >
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org >
Reviewed-by: Kári Helgason <kthelgason@webrtc.org >
Reviewed-by: Erik Språng <sprang@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#25924}
2018-12-06 15:24:45 +00:00
ddc84e9819
Publish function_video_(en|de)coder_factory into api
...
Bug: None
Change-Id: Ibdae580c085cfc4b063fdc7f1edb8312de438722
Reviewed-on: https://webrtc-review.googlesource.com/c/107705
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org >
Reviewed-by: Niels Moller <nisse@webrtc.org >
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org >
Cr-Commit-Position: refs/heads/master@{#25360}
2018-10-25 12:15:43 +00:00