This changes most non-test related rtc_source_set targets to be rtc_static_library instead. Targets without any .cc files are excluded. This should bring back the build behavior we used to have with GYP (i.e. same symbols exported in the libjingle_peerconnection.a file, which are used by some downstream projects). After doing an Android build with these changes: $ nm --defined-only -g -C out/Release/lib.unstripped/libjingle_peerconnection_so.so | grep -i createpeerconnectionf 00077c51 T Java_org_webrtc_PeerConnectionFactory_nativeCreatePeerConnectionFactory $ nm --defined-only -g -C out/Release/obj/webrtc/api/libjingle_peerconnection.a | grep -i createpeerconnectionf 00000001 T webrtc::CreatePeerConnectionFactory(rtc::Thread*, rtc::Thread*, rtc::Thread*, webrtc::AudioDeviceModule*, cricket::WebRtcVideoEncoderFactory*, cricket::WebRtcVideoDecoderFactory*) 00000001 T webrtc::CreatePeerConnectionFactory() See https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/cookbook.md#Note-on-static-libraries for more details on this. NOTICE: This should be further cleaned up in the future, to reduce binary bloat and unnecessary linking time. Right now it's more important to restore the desired build output though. BUG=webrtc:6410, chromium:630755 Review-Url: https://codereview.webrtc.org/2361623004 Cr-Commit-Position: refs/heads/master@{#14364}
52 lines
1.2 KiB
Plaintext
52 lines
1.2 KiB
Plaintext
# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
|
|
#
|
|
# Use of this source code is governed by a BSD-style license
|
|
# that can be found in the LICENSE file in the root of the source
|
|
# tree. An additional intellectual property rights grant can be found
|
|
# in the file PATENTS. All contributing project authors may
|
|
# be found in the AUTHORS file in the root of the source tree.
|
|
|
|
import("../../build/webrtc.gni")
|
|
|
|
group("xmllite") {
|
|
public_deps = [
|
|
":rtc_xmllite",
|
|
]
|
|
}
|
|
|
|
rtc_static_library("rtc_xmllite") {
|
|
sources = [
|
|
"qname.cc",
|
|
"qname.h",
|
|
"xmlbuilder.cc",
|
|
"xmlbuilder.h",
|
|
"xmlconstants.cc",
|
|
"xmlconstants.h",
|
|
"xmlelement.cc",
|
|
"xmlelement.h",
|
|
"xmlnsstack.cc",
|
|
"xmlnsstack.h",
|
|
"xmlparser.cc",
|
|
"xmlparser.h",
|
|
"xmlprinter.cc",
|
|
"xmlprinter.h",
|
|
]
|
|
|
|
deps = [
|
|
"../../base:rtc_base",
|
|
]
|
|
|
|
if (rtc_build_expat) {
|
|
deps += [ "//third_party/expat" ]
|
|
public_deps = [
|
|
"//third_party/expat",
|
|
]
|
|
}
|
|
|
|
if (!build_with_chromium && is_clang) {
|
|
# Suppress warnings from Chrome's Clang plugins.
|
|
# See http://code.google.com/p/webrtc/issues/detail?id=163 for details.
|
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
|
}
|
|
}
|