diff --git a/api/task_queue/BUILD.gn b/api/task_queue/BUILD.gn index 5c1a1dc26e..7d449778bb 100644 --- a/api/task_queue/BUILD.gn +++ b/api/task_queue/BUILD.gn @@ -22,6 +22,7 @@ rtc_library("task_queue") { deps = [ "../../rtc_base:checks", "../../rtc_base:macromagic", + "../../rtc_base/system:rtc_export", "//third_party/abseil-cpp/absl/base:config", "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/strings", diff --git a/api/task_queue/task_queue_base.h b/api/task_queue/task_queue_base.h index 7e42bbaead..90b1efd31e 100644 --- a/api/task_queue/task_queue_base.h +++ b/api/task_queue/task_queue_base.h @@ -13,6 +13,7 @@ #include #include "api/task_queue/queued_task.h" +#include "rtc_base/system/rtc_export.h" #include "rtc_base/thread_annotations.h" namespace webrtc { @@ -21,7 +22,7 @@ namespace webrtc { // in FIFO order and that tasks never overlap. Tasks may always execute on the // same worker thread and they may not. To DCHECK that tasks are executing on a // known task queue, use IsCurrent(). -class RTC_LOCKABLE TaskQueueBase { +class RTC_LOCKABLE RTC_EXPORT TaskQueueBase { public: // Starts destruction of the task queue. // On return ensures no task are running and no new tasks are able to start diff --git a/api/video/video_frame.h b/api/video/video_frame.h index 284667f991..7c512ca5be 100644 --- a/api/video/video_frame.h +++ b/api/video/video_frame.h @@ -29,7 +29,7 @@ namespace webrtc { class RTC_EXPORT VideoFrame { public: - struct UpdateRect { + struct RTC_EXPORT UpdateRect { int offset_x; int offset_y; int width; diff --git a/modules/audio_processing/include/audio_processing.h b/modules/audio_processing/include/audio_processing.h index 80474f8346..f1242a7636 100644 --- a/modules/audio_processing/include/audio_processing.h +++ b/modules/audio_processing/include/audio_processing.h @@ -246,9 +246,9 @@ class RTC_EXPORT AudioProcessing : public rtc::RefCountInterface { // top-level processing effects. Use during processing may cause undesired // submodule resets, affecting the audio quality. Use the RuntimeSetting // construct for runtime configuration. - struct Config { + struct RTC_EXPORT Config { // Sets the properties of the audio processing pipeline. - struct Pipeline { + struct RTC_EXPORT Pipeline { Pipeline(); // Maximum allowed processing rate used internally. May only be set to diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn index 0115429ae4..d189fb0923 100644 --- a/rtc_base/BUILD.gn +++ b/rtc_base/BUILD.gn @@ -228,6 +228,7 @@ rtc_library("rtc_event") { ] deps = [ ":checks", + "system:rtc_export", # Only Chromium's rtc::Event use RTC_EXPORT. "//base", # Dependency on chromium's waitable_event. ] } else {