| # Copyright 2024 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/gclient_args.gni") |
| |
| config("fast_float_config") { |
| include_dirs = [ "src/include" ] |
| } |
| |
| source_set("fast_float") { |
| public = [ "src/include/fast_float/fast_float.h" ] |
| |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| |
| public_configs = [ ":fast_float_config" ] |
| } |
| |
| if (build_with_chromium) { |
| import("//testing/test.gni") |
| |
| test("fast_float_json_fmt_test") { |
| testonly = true |
| sources = [ "src/tests/json_fmt.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| test("fast_float_rcppfastfloat_test") { |
| testonly = true |
| sources = [ "src/tests/rcppfastfloat_test.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| test("fast_float_example_test") { |
| testonly = true |
| sources = [ "src/tests/example_test.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| test("fast_float_example_comma_test") { |
| testonly = true |
| sources = [ "src/tests/example_comma_test.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| # Disabled because it uses exceptions. |
| # test("fast_float_long_test") { |
| # testonly = true |
| # sources = [ "src/tests/long_test.cpp" ] |
| # deps = [ ":fast_float" ] |
| # configs -= [ "//build/config/compiler:chromium_code" ] |
| # configs += [ "//build/config/compiler:no_chromium_code" ] |
| # } |
| |
| if (!is_fuchsia) { |
| # strtod_l et al. are not available on Fuchsia (see crbug.com/389897610). |
| test("fast_float_powersoffive_hardround_test") { |
| testonly = true |
| sources = [ "src/tests/powersoffive_hardround.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| } |
| |
| # Disabled because it uses exceptions. |
| # test("fast_float_string_test") { |
| # testonly = true |
| # sources = [ "src/tests/string_test.cpp" ] |
| # deps = [ ":fast_float" ] |
| # configs -= [ "//build/config/compiler:chromium_code" ] |
| # configs += [ "//build/config/compiler:no_chromium_code" ] |
| # } |
| |
| test("fast_float_fast_int_test") { |
| testonly = true |
| sources = [ "src/tests/fast_int.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| test("fast_float_fortran_test") { |
| testonly = true |
| sources = [ "src/tests/fortran.cpp" ] |
| deps = [ ":fast_float" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| } |
| |
| # Unused for now, befcause it uses a C++23 header. |
| # test("fast_float_fixedwidthtest") { |
| # testonly = true |
| # sources = [ "src/tests/fixedwidthtest.cpp" ] |
| # deps = [ ":fast_float" ] |
| # configs -= [ "//build/config/compiler:chromium_code" ] |
| # configs += [ "//build/config/compiler:no_chromium_code" ] |
| # } |
| } |