Export of internal Abseil changes.

--
a2adbf75201f6b7feba929f77dfc4f87f9c1110b by Abseil Team <absl-team@google.com>:

This change allows for capturing the address of the mutex from which a call to `Block(...)` could be introducing latency. The attribute is a no-op if the application is not being built with XRay instrumentation.

See http://llvm.org/docs/XRay.html for more information about XRay.

PiperOrigin-RevId: 225752598

--
6bc7f25573ddc6711f484dfacab9459f45e0bf42 by Abseil Team <absl-team@google.com>:

Update absl/utility/CMakeLists.txt to use new functions
i.e. absl_cc_(library|test)

PiperOrigin-RevId: 225651883

--
4acde5e72032f31a26a1ffa53a28f35dbb0bd7d3 by Abseil Team <absl-team@google.com>:

Update absl/types/CMakeLists.txt to use new functions
i.e. absl_cc_(library|test)

PiperOrigin-RevId: 225584788

--
fe2c740d64b17cece25eee4e5d2196a7c059d3e9 by Abseil Team <absl-team@google.com>:

Update auto-generated build options files.

PiperOrigin-RevId: 225557283

--
cd779dddceeee191ee82deb6b9030c4db288e758 by Jon Cohen <cohenjon@google.com>:

Internal change.

PiperOrigin-RevId: 225556657

--
3d56dd132d845930c3fb520a39ee77ecb2430bd2 by Matt Kulukundis <kfm@google.com>:

Internal cleanup

PiperOrigin-RevId: 225488946
GitOrigin-RevId: a2adbf75201f6b7feba929f77dfc4f87f9c1110b
Change-Id: I1b2178e053bdebc8cf3dcb017b0e247619b81a0c
This commit is contained in:
Abseil Team 2018-12-16 15:32:37 -08:00 committed by Mark Barolak
parent 389ec3f906
commit 111ca7060a
13 changed files with 381 additions and 258 deletions

View file

@ -13,216 +13,306 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
list(APPEND TYPES_PUBLIC_HEADERS
"any.h"
"bad_any_cast.h"
"bad_optional_access.h"
"optional.h"
"span.h"
"variant.h"
)
# any library
absl_header_library(
TARGET
absl_any
PUBLIC_LIBRARIES
absl::bad_any_cast
absl::base
absl::meta
absl::utility
PRIVATE_COMPILE_FLAGS
${ABSL_EXCEPTIONS_FLAG}
EXPORT_NAME
absl_cc_library(
NAME
any
)
# span library
absl_header_library(
TARGET
absl_span
PUBLIC_LIBRARIES
HDRS
"any.h"
COPTS
${ABSL_DEFAULT_COPTS}
DEPS
absl::bad_any_cast
absl::config
absl::core_headers
absl::type_traits
absl::utility
EXPORT_NAME
span
PUBLIC
)
# bad_any_cast library
list(APPEND BAD_ANY_CAST_SRC
"bad_any_cast.cc"
${TYPES_PUBLIC_HEADERS}
)
absl_library(
TARGET
absl_bad_any_cast
SOURCES
${BAD_ANY_CAST_SRC}
PUBLIC_LIBRARIES
EXPORT_NAME
absl_cc_library(
NAME
bad_any_cast
HDRS
"bad_any_cast.h"
COPTS
${ABSL_DEFAULT_COPTS}
DEPS
absl::bad_any_cast_impl
absl::config
PUBLIC
)
# optional library
list(APPEND OPTIONAL_SRC
"optional.cc"
)
absl_library(
TARGET
absl_optional
SOURCES
${OPTIONAL_SRC}
PUBLIC_LIBRARIES
absl::bad_optional_access
absl_cc_library(
NAME
bad_any_cast_impl
SRCS
"bad_any_cast.h"
"bad_any_cast.cc"
COPTS
${ABSL_DEFAULT_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::base
absl::memory
absl::meta
absl::utility
EXPORT_NAME
optional
absl::config
)
set(BAD_OPTIONAL_ACCESS_SRC "bad_optional_access.cc")
set(BAD_OPTIONAL_ACCESS_LIBRARIES absl::base)
absl_library(
TARGET
absl_bad_optional_access
SOURCES
${BAD_OPTIONAL_ACCESS_SRC}
PUBLIC_LIBRARIES
${BAD_OPTIONAL_ACCESS_PUBLIC_LIBRARIES}
EXPORT_NAME
bad_optional_access
)
# variant library
absl_library(
TARGET
absl_variant
SOURCES
"bad_variant_access.h" "bad_variant_access.cc" "variant.h" "internal/variant.h"
PUBLIC_LIBRARIES
absl::base absl::meta absl::utility
PRIVATE_COMPILE_FLAGS
${ABSL_EXCEPTIONS_FLAG}
EXPORT_NAME
variant
)
#
## TESTS
#
# test any_test
set(ANY_TEST_SRC "any_test.cc")
set(ANY_TEST_PUBLIC_LIBRARIES absl::base absl_internal_throw_delegate absl::any absl::bad_any_cast absl::test_instance_tracker)
absl_test(
TARGET
absl_cc_test(
NAME
any_test
SOURCES
${ANY_TEST_SRC}
PUBLIC_LIBRARIES
${ANY_TEST_PUBLIC_LIBRARIES}
PRIVATE_COMPILE_FLAGS
SRCS
"any_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::any
absl::base
absl::config
absl::exception_testing
absl::test_instance_tracker
gmock_main
)
# test any_test_noexceptions
absl_test(
TARGET
absl_cc_test(
NAME
any_test_noexceptions
SOURCES
${ANY_TEST_SRC}
PUBLIC_LIBRARIES
${ANY_TEST_PUBLIC_LIBRARIES}
SRCS
"any_test.cc"
COPTS
${ABSL_TEST_COPTS}
DEPS
absl::any
absl::base
absl::config
absl::exception_testing
absl::test_instance_tracker
gmock_main
)
# test any_exception_safety_test
set(ANY_EXCEPTION_SAFETY_TEST_SRC "any_exception_safety_test.cc")
set(ANY_EXCEPTION_SAFETY_TEST_PUBLIC_LIBRARIES
absl::any
absl::base
absl_internal_exception_safety_testing
)
absl_test(
TARGET
absl_cc_test(
NAME
any_exception_safety_test
SOURCES
${ANY_EXCEPTION_SAFETY_TEST_SRC}
PUBLIC_LIBRARIES
${ANY_EXCEPTION_SAFETY_TEST_PUBLIC_LIBRARIES}
PRIVATE_COMPILE_FLAGS
SRCS
"any_exception_safety_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::any
absl::exception_safety_testing
gmock_main
)
absl_cc_library(
NAME
span
HDRS
"span.h"
COPTS
${ABSL_DEFAULT_COPTS}
DEPS
absl::algorithm
absl::core_headers
absl::throw_delegate
absl::type_traits
PUBLIC
)
# test span_test
set(SPAN_TEST_SRC "span_test.cc")
set(SPAN_TEST_PUBLIC_LIBRARIES absl::base absl::strings absl_internal_throw_delegate absl::span absl::test_instance_tracker)
absl_test(
TARGET
absl_cc_test(
NAME
span_test
SOURCES
${SPAN_TEST_SRC}
PUBLIC_LIBRARIES
${SPAN_TEST_PUBLIC_LIBRARIES}
PRIVATE_COMPILE_FLAGS
SRCS
"span_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::span
absl::base
absl::config
absl::core_headers
absl::exception_testing
absl::fixed_array
absl::inlined_vector
absl::hash_testing
absl::strings
gmock_main
)
# test span_test_noexceptions
absl_test(
TARGET
absl_cc_test(
NAME
span_test_noexceptions
SOURCES
${SPAN_TEST_SRC}
PUBLIC_LIBRARIES
${SPAN_TEST_PUBLIC_LIBRARIES}
SRCS
"span_test.cc"
COPTS
${ABSL_TEST_COPTS}
DEPS
absl::span
absl::base
absl::config
absl::core_headers
absl::exception_testing
absl::fixed_array
absl::inlined_vector
absl::hash_testing
absl::strings
gmock_main
)
# test optional_test
set(OPTIONAL_TEST_SRC "optional_test.cc")
set(OPTIONAL_TEST_PUBLIC_LIBRARIES absl::base absl_internal_throw_delegate absl::optional absl_bad_optional_access)
absl_test(
TARGET
optional_test
SOURCES
${OPTIONAL_TEST_SRC}
PUBLIC_LIBRARIES
${OPTIONAL_TEST_PUBLIC_LIBRARIES}
absl_cc_library(
NAME
optional
HDRS
"optional.h"
SRCS
"optional.cc"
COPTS
${ABSL_DEFAULT_COPTS}
DEPS
absl::bad_optional_access
absl::config
absl::core_headers
absl::memory
absl::type_traits
absl::utility
PUBLIC
)
# test optional_exception_safety_test
set(OPTIONAL_EXCEPTION_SAFETY_TEST_SRC "optional_exception_safety_test.cc")
set(OPTIONAL_EXCEPTION_SAFETY_TEST_PUBLIC_LIBRARIES
absl::optional
absl_internal_exception_safety_testing
)
absl_test(
TARGET
optional_exception_safety_test
SOURCES
${OPTIONAL_EXCEPTION_SAFETY_TEST_SRC}
PUBLIC_LIBRARIES
${OPTIONAL_EXCEPTION_SAFETY_TEST_PUBLIC_LIBRARIES}
PRIVATE_COMPILE_FLAGS
absl_cc_library(
NAME
bad_optional_access
HDRS
"bad_optional_access.h"
SRCS
"bad_optional_access.cc"
COPTS
${ABSL_DEFAULT_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::base
absl::config
PUBLIC
)
absl_cc_library(
NAME
bad_variant_access
HDRS
"bad_variant_access.h"
SRCS
"bad_variant_access.cc"
COPTS
${ABSL_DEFAULT_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::base
absl::config
PUBLIC
)
absl_cc_test(
NAME
optional_test
SRCS
"optional_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::optional
absl::base
absl::config
absl::type_traits
absl::strings
gmock_main
)
absl_cc_test(
NAME
optional_exception_safety_test
SRCS
"optional_exception_safety_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::optional
absl::exception_safety_testing
gmock_main
)
absl_cc_library(
NAME
variant
HDRS
"variant.h"
SRCS
"internal/variant.h"
COPTS
${ABSL_DEFAULT_COPTS}
DEPS
absl::bad_variant_access
absl::base_internal
absl::config
absl::core_headers
absl::type_traits
absl::utility
PUBLIC
)
absl_cc_test(
NAME
variant_test
SRCS
"variant_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::variant
absl::config
absl::core_headers
absl::memory
absl::type_traits
absl::strings
gmock_main
)
# TODO(cohenjon,zhangxy) Figure out why this test is failing on gcc 4.8
if(CMAKE_COMPILER_IS_GNUCC AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.9)
absl_cc_test(
NAME
variant_exception_safety_test
SRCS
"variant_exception_safety_test.cc"
COPTS
${ABSL_TEST_COPTS}
${ABSL_EXCEPTIONS_FLAG}
LINKOPTS
${ABSL_EXCEPTIONS_FLAG_LINKOPTS}
DEPS
absl::variant
absl::config
absl::exception_safety_testing
absl::memory
gmock_main
)
endif()