Skip to content

Commit

Permalink
Link fewer X11-related libraries
Browse files Browse the repository at this point in the history
Use an explicit list and don't add X11 dependency to rtc_base.

Allow skipping code that depends on rarer extensions such as Xdamage, Xfixes.

Bug: None
Change-Id: Icb8d20a267358f5cd3f1ff2af31a669e0670d2f6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140865
Reviewed-by: Mirko Bonadei <[email protected]>
Reviewed-by: Guido Urdaneta <[email protected]>
Reviewed-by: Henrik Andreassson <[email protected]>
Commit-Queue: Oleh Prypin <[email protected]>
Cr-Commit-Position: refs/heads/master@{#28204}
  • Loading branch information
oprypin authored and Commit Bot committed Jun 10, 2019
1 parent e323359 commit 829a5dc
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 17 deletions.
15 changes: 11 additions & 4 deletions modules/desktop_capture/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@ rtc_static_library("desktop_capture_generic") {
]
}

if (rtc_use_x11 || rtc_use_pipewire) {
if (rtc_use_x11_extensions || rtc_use_pipewire) {
sources += [
"mouse_cursor_monitor_linux.cc",
"screen_capturer_linux.cc",
Expand All @@ -378,7 +378,7 @@ rtc_static_library("desktop_capture_generic") {
}
}

if (rtc_use_x11) {
if (rtc_use_x11_extensions) {
sources += [
"linux/mouse_cursor_monitor_x11.cc",
"linux/mouse_cursor_monitor_x11.h",
Expand All @@ -401,7 +401,14 @@ rtc_static_library("desktop_capture_generic") {
"linux/x_window_property.cc",
"linux/x_window_property.h",
]
configs += [ "//build/config/linux:x11" ]
libs = [
"X11",
"Xcomposite",
"Xdamage",
"Xext",
"Xfixes",
"Xrender",
]

if (build_with_mozilla) {
sources += [
Expand All @@ -414,7 +421,7 @@ rtc_static_library("desktop_capture_generic") {
}
}

if (!is_win && !is_mac && !rtc_use_x11 && !rtc_use_pipewire) {
if (!is_win && !is_mac && !rtc_use_x11_extensions && !rtc_use_pipewire) {
sources += [
"mouse_cursor_monitor_null.cc",
"screen_capturer_null.cc",
Expand Down
11 changes: 0 additions & 11 deletions rtc_base/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -950,17 +950,6 @@ rtc_static_library("rtc_base") {
deps += [ "system:cocoa_threading" ]
}

if (rtc_use_x11) {
libs += [
"dl",
"rt",
"Xext",
"X11",
"Xcomposite",
"Xrender",
]
}

if (is_linux) {
libs += [
"dl",
Expand Down
9 changes: 7 additions & 2 deletions webrtc.gni
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,10 @@ declare_args() {

# Include tests in standalone checkout.
rtc_include_tests = !build_with_chromium && !build_with_mozilla

# Set this to false to skip building code that also requires X11 extensions
# such as Xdamage, Xfixes.
rtc_use_x11_extensions = rtc_use_x11
}

# Make it possible to provide custom locations for some libraries (move these
Expand All @@ -250,8 +254,9 @@ rtc_libvpx_dir = "//third_party/libvpx"
rtc_opus_dir = "//third_party/opus"

# Desktop capturer is supported only on Windows, OSX and Linux.
rtc_desktop_capture_supported = (is_win && current_os != "winuwp") || is_mac ||
(is_linux && (rtc_use_x11 || rtc_use_pipewire))
rtc_desktop_capture_supported =
(is_win && current_os != "winuwp") || is_mac ||
(is_linux && (rtc_use_x11_extensions || rtc_use_pipewire))

###############################################################################
# Templates
Expand Down

0 comments on commit 829a5dc

Please sign in to comment.