2017-09-27 05:37:27 +02:00
|
|
|
#
|
|
|
|
# Copyright 2017 The Abseil Authors.
|
|
|
|
#
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
# you may not use this file except in compliance with the License.
|
|
|
|
# You may obtain a copy of the License at
|
|
|
|
#
|
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
#
|
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
# See the License for the specific language governing permissions and
|
|
|
|
# limitations under the License.
|
|
|
|
#
|
|
|
|
|
2018-08-22 15:14:38 +02:00
|
|
|
|
|
|
|
list(APPEND STRINGS_PUBLIC_HEADERS
|
|
|
|
"ascii.h"
|
|
|
|
"charconv.h"
|
|
|
|
"escaping.h"
|
|
|
|
"match.h"
|
|
|
|
"numbers.h"
|
|
|
|
"str_cat.h"
|
|
|
|
"string_view.h"
|
|
|
|
"strip.h"
|
|
|
|
"str_join.h"
|
|
|
|
"str_replace.h"
|
|
|
|
"str_split.h"
|
|
|
|
"substitute.h"
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
list(APPEND STRINGS_INTERNAL_HEADERS
|
|
|
|
"internal/bits.h"
|
|
|
|
"internal/char_map.h"
|
|
|
|
"internal/charconv_bigint.h"
|
|
|
|
"internal/charconv_parse.h"
|
|
|
|
"internal/memutil.h"
|
|
|
|
"internal/ostringstream.h"
|
|
|
|
"internal/resize_uninitialized.h"
|
|
|
|
"internal/stl_type_traits.h"
|
|
|
|
"internal/str_join_internal.h"
|
|
|
|
"internal/str_split_internal.h"
|
|
|
|
"internal/utf8.h"
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# add string library
|
|
|
|
list(APPEND STRINGS_SRC
|
|
|
|
"ascii.cc"
|
|
|
|
"charconv.cc"
|
|
|
|
"escaping.cc"
|
|
|
|
"internal/charconv_bigint.cc"
|
|
|
|
"internal/charconv_parse.cc"
|
|
|
|
"internal/memutil.cc"
|
|
|
|
"internal/memutil.h"
|
|
|
|
"internal/utf8.cc"
|
|
|
|
"internal/ostringstream.cc"
|
|
|
|
"match.cc"
|
|
|
|
"numbers.cc"
|
|
|
|
"str_cat.cc"
|
|
|
|
"str_replace.cc"
|
|
|
|
"str_split.cc"
|
|
|
|
"string_view.cc"
|
|
|
|
"substitute.cc"
|
|
|
|
${STRINGS_PUBLIC_HEADERS}
|
|
|
|
${STRINGS_INTERNAL_HEADERS}
|
|
|
|
)
|
|
|
|
set(STRINGS_PUBLIC_LIBRARIES absl::base absl_throw_delegate)
|
|
|
|
|
|
|
|
absl_library(
|
|
|
|
TARGET
|
|
|
|
absl_strings
|
|
|
|
SOURCES
|
|
|
|
${STRINGS_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STRINGS_PUBLIC_LIBRARIES}
|
|
|
|
EXPORT_NAME
|
2017-09-27 05:37:27 +02:00
|
|
|
strings
|
|
|
|
)
|
|
|
|
|
2018-06-21 21:55:12 +02:00
|
|
|
# add str_format library
|
2018-08-22 15:14:38 +02:00
|
|
|
absl_header_library(
|
|
|
|
TARGET
|
|
|
|
absl_str_format
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
str_format_internal
|
|
|
|
EXPORT_NAME
|
2018-06-21 21:55:12 +02:00
|
|
|
str_format
|
|
|
|
)
|
|
|
|
|
|
|
|
# str_format_internal
|
2018-08-22 15:14:38 +02:00
|
|
|
absl_library(
|
|
|
|
TARGET
|
2018-06-21 21:55:12 +02:00
|
|
|
str_format_internal
|
2018-08-22 15:14:38 +02:00
|
|
|
SOURCES
|
2018-06-21 21:55:12 +02:00
|
|
|
"internal/str_format/arg.cc"
|
|
|
|
"internal/str_format/bind.cc"
|
|
|
|
"internal/str_format/extension.cc"
|
|
|
|
"internal/str_format/float_conversion.cc"
|
|
|
|
"internal/str_format/output.cc"
|
|
|
|
"internal/str_format/parser.cc"
|
|
|
|
"internal/str_format/arg.h"
|
|
|
|
"internal/str_format/bind.h"
|
|
|
|
"internal/str_format/checker.h"
|
|
|
|
"internal/str_format/extension.h"
|
|
|
|
"internal/str_format/float_conversion.h"
|
|
|
|
"internal/str_format/output.h"
|
|
|
|
"internal/str_format/parser.h"
|
2018-08-22 15:14:38 +02:00
|
|
|
PUBLIC_LIBRARIES
|
2018-06-21 21:55:12 +02:00
|
|
|
str_format_extension_internal
|
|
|
|
absl::strings
|
|
|
|
absl::base
|
|
|
|
absl::numeric
|
|
|
|
absl::container
|
|
|
|
absl::span
|
|
|
|
)
|
|
|
|
|
|
|
|
# str_format_extension_internal
|
|
|
|
absl_library(
|
|
|
|
TARGET
|
2018-06-23 04:16:48 +02:00
|
|
|
str_format_extension_internal
|
2018-06-21 21:55:12 +02:00
|
|
|
SOURCES
|
|
|
|
"internal/str_format/extension.cc"
|
|
|
|
"internal/str_format/extension.h"
|
|
|
|
"internal/str_format/output.cc"
|
|
|
|
"internal/str_format/output.h"
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
absl::base
|
|
|
|
absl::strings
|
|
|
|
)
|
2017-09-27 05:37:27 +02:00
|
|
|
|
|
|
|
#
|
|
|
|
## TESTS
|
|
|
|
#
|
|
|
|
|
|
|
|
# test match_test
|
|
|
|
set(MATCH_TEST_SRC "match_test.cc")
|
|
|
|
set(MATCH_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
match_test
|
|
|
|
SOURCES
|
|
|
|
${MATCH_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${MATCH_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test escaping_test
|
|
|
|
set(ESCAPING_TEST_SRC "escaping_test.cc")
|
|
|
|
set(ESCAPING_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
escaping_test
|
|
|
|
SOURCES
|
|
|
|
${ESCAPING_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${ESCAPING_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test ascii_test
|
|
|
|
set(ASCII_TEST_SRC "ascii_test.cc")
|
|
|
|
set(ASCII_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
ascii_test
|
|
|
|
SOURCES
|
|
|
|
${ASCII_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${ASCII_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test memutil_test
|
|
|
|
set(MEMUTIL_TEST_SRC "internal/memutil_test.cc")
|
|
|
|
set(MEMUTIL_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
memutil_test
|
|
|
|
SOURCES
|
|
|
|
${MEMUTIL_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${MEMUTIL_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test utf8_test
|
|
|
|
set(UTF8_TEST_SRC "internal/utf8_test.cc")
|
|
|
|
set(UTF8_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
utf8_test
|
|
|
|
SOURCES
|
|
|
|
${UTF8_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${UTF8_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test string_view_test
|
|
|
|
set(STRING_VIEW_TEST_SRC "string_view_test.cc")
|
|
|
|
set(STRING_VIEW_TEST_PUBLIC_LIBRARIES absl::strings absl_throw_delegate absl::base)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
string_view_test
|
|
|
|
SOURCES
|
|
|
|
${STRING_VIEW_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STRING_VIEW_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test substitute_test
|
|
|
|
set(SUBSTITUTE_TEST_SRC "substitute_test.cc")
|
|
|
|
set(SUBSTITUTE_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
substitute_test
|
|
|
|
SOURCES
|
|
|
|
${SUBSTITUTE_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${SUBSTITUTE_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test str_replace_test
|
|
|
|
set(STR_REPLACE_TEST_SRC "str_replace_test.cc")
|
|
|
|
set(STR_REPLACE_TEST_PUBLIC_LIBRARIES absl::strings absl::base absl_throw_delegate)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_replace_test
|
|
|
|
SOURCES
|
|
|
|
${STR_REPLACE_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STR_REPLACE_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test str_split_test
|
|
|
|
set(STR_SPLIT_TEST_SRC "str_split_test.cc")
|
|
|
|
set(STR_SPLIT_TEST_PUBLIC_LIBRARIES absl::strings absl::base absl_throw_delegate)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_split_test
|
|
|
|
SOURCES
|
|
|
|
${STR_SPLIT_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STR_SPLIT_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test ostringstream_test
|
|
|
|
set(OSTRINGSTREAM_TEST_SRC "internal/ostringstream_test.cc")
|
2017-11-27 12:05:25 +01:00
|
|
|
set(OSTRINGSTREAM_TEST_PUBLIC_LIBRARIES absl::strings)
|
2017-09-27 05:37:27 +02:00
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
ostringstream_test
|
|
|
|
SOURCES
|
|
|
|
${OSTRINGSTREAM_TEST_SRC}
|
2017-11-27 12:05:25 +01:00
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${OSTRINGSTREAM_TEST_PUBLIC_LIBRARIES}
|
2017-09-27 05:37:27 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test resize_uninitialized_test
|
|
|
|
set(RESIZE_UNINITIALIZED_TEST_SRC "internal/resize_uninitialized_test.cc")
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
resize_uninitialized_test
|
|
|
|
SOURCES
|
|
|
|
${RESIZE_UNINITIALIZED_TEST_SRC}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test str_join_test
|
|
|
|
set(STR_JOIN_TEST_SRC "str_join_test.cc")
|
|
|
|
set(STR_JOIN_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_join_test
|
|
|
|
SOURCES
|
|
|
|
${STR_JOIN_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STR_JOIN_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test str_cat_test
|
|
|
|
set(STR_CAT_TEST_SRC "str_cat_test.cc")
|
|
|
|
set(STR_CAT_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_cat_test
|
|
|
|
SOURCES
|
|
|
|
${STR_CAT_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STR_CAT_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test numbers_test
|
|
|
|
set(NUMBERS_TEST_SRC "numbers_test.cc")
|
|
|
|
set(NUMBERS_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
numbers_test
|
|
|
|
SOURCES
|
|
|
|
${NUMBERS_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${NUMBERS_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test strip_test
|
|
|
|
set(STRIP_TEST_SRC "strip_test.cc")
|
|
|
|
set(STRIP_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
strip_test
|
|
|
|
SOURCES
|
|
|
|
${STRIP_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${STRIP_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test char_map_test
|
|
|
|
set(CHAR_MAP_TEST_SRC "internal/char_map_test.cc")
|
|
|
|
set(CHAR_MAP_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
char_map_test
|
|
|
|
SOURCES
|
|
|
|
${CHAR_MAP_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${CHAR_MAP_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
2018-06-18 22:18:53 +02:00
|
|
|
# test charconv_test
|
|
|
|
set(CHARCONV_TEST_SRC "charconv_test.cc")
|
|
|
|
set(CHARCONV_TEST_PUBLIC_LIBRARIES absl::strings)
|
2017-09-27 05:37:27 +02:00
|
|
|
|
2018-06-18 22:18:53 +02:00
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
charconv_test
|
|
|
|
SOURCES
|
|
|
|
${CHARCONV_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${CHARCONV_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test charconv_parse_test
|
|
|
|
set(CHARCONV_PARSE_TEST_SRC "internal/charconv_parse_test.cc")
|
|
|
|
set(CHARCONV_PARSE_TEST_PUBLIC_LIBRARIES absl::strings)
|
|
|
|
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
charconv_parse_test
|
|
|
|
SOURCES
|
|
|
|
${CHARCONV_PARSE_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${CHARCONV_PARSE_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
# test charconv_bigint_test
|
|
|
|
set(CHARCONV_BIGINT_TEST_SRC "internal/charconv_bigint_test.cc")
|
|
|
|
set(CHARCONV_BIGINT_TEST_PUBLIC_LIBRARIES absl::strings)
|
2017-09-27 05:37:27 +02:00
|
|
|
|
2018-06-18 22:18:53 +02:00
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
charconv_bigint_test
|
|
|
|
SOURCES
|
|
|
|
${CHARCONV_BIGINT_TEST_SRC}
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
${CHARCONV_BIGINT_TEST_PUBLIC_LIBRARIES}
|
|
|
|
)
|
2018-06-21 21:55:12 +02:00
|
|
|
# test str_format_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_test
|
|
|
|
SOURCES
|
|
|
|
"str_format_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
absl::base
|
|
|
|
absl::str_format
|
|
|
|
absl::strings
|
|
|
|
)
|
|
|
|
|
|
|
|
# test str_format_bind_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_bind_test
|
|
|
|
SOURCES
|
|
|
|
"internal/str_format/bind_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
2018-08-22 15:14:38 +02:00
|
|
|
str_format_internal
|
2018-06-21 21:55:12 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
# test str_format_checker_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_checker_test
|
|
|
|
SOURCES
|
|
|
|
"internal/str_format/checker_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
absl::str_format
|
|
|
|
)
|
|
|
|
|
|
|
|
# test str_format_convert_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_convert_test
|
|
|
|
SOURCES
|
|
|
|
"internal/str_format/convert_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
2018-08-22 15:14:38 +02:00
|
|
|
str_format_internal
|
2018-06-21 21:55:12 +02:00
|
|
|
absl::numeric
|
|
|
|
)
|
|
|
|
|
|
|
|
# test str_format_output_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_output_test
|
|
|
|
SOURCES
|
|
|
|
"internal/str_format/output_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
|
|
|
str_format_extension_internal
|
|
|
|
)
|
|
|
|
|
|
|
|
# test str_format_parser_test
|
|
|
|
absl_test(
|
|
|
|
TARGET
|
|
|
|
str_format_parser_test
|
|
|
|
SOURCES
|
|
|
|
"internal/str_format/parser_test.cc"
|
|
|
|
PUBLIC_LIBRARIES
|
2018-08-22 15:14:38 +02:00
|
|
|
str_format_internal
|
2018-06-21 21:55:12 +02:00
|
|
|
absl::base
|
|
|
|
)
|
|
|
|
|
|
|
|
|