blob: f5b1e040fba9a0d62c8fea4b11295130ac10026d [file] [log] [blame]
# Copyright 2016 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
defines_list = [
[
"Tdata1",
"WITH_PTHREAD",
],
[
"Tdata2",
"MORE_TDATA",
"WITH_PTHREAD",
],
[
"Tbss1",
"WITH_TBSS",
"WITH_PTHREAD",
],
[
"Tbss2",
"WITH_TBSS",
"MORE_TBSS",
"WITH_PTHREAD",
],
[
"Tbss3",
"WITH_TBSS",
"MORE_TDATA",
"WITH_PTHREAD",
],
[
"LargeAlign",
"TDATA_LARGE_ALIGN",
"TBSS_LARGE_ALIGN",
"WITH_PTHREAD",
],
[
"NoPthread",
"WITH_TBSS",
"TDATA_LARGE_ALIGN",
"TBSS_LARGE_ALIGN",
],
# TODO(fxbug.dev/42117379): Enable this when runtests runs packages correctly.
# [
# "ExternLargeAlign",
# "EXTERN_LARGE_ALIGN"
# ]
]
source_set("small_tests") {
testonly = true
deps = []
foreach(casename_defines, defines_list) {
case_name = casename_defines[0]
deps += [ ":test_" + case_name ]
}
}
shared_library("page_align_tls_dso") {
sources = [ "dso.cc" ]
# TODO(fxb/58162): delete the below and fix compiler warnings
configs += [ "//build/config:Wno-conversion" ]
}
foreach(casename_defines, defines_list) {
case_name = casename_defines[0]
casename_defines -= [ case_name ]
source_set("test_" + case_name) {
testonly = true
cflags_cc = [
"-DTEST_NAME=Tls" + case_name + "Tests",
"-DTESTCASE_NAME=TestTls" + case_name,
]
sources = [ "tls.cc" ]
deps = [ "//third_party/googletest:gtest" ]
if (case_name == "ExternLargeAlign") {
deps += [ ":page_align_tls_dso" ]
}
foreach(defines, casename_defines) {
cflags_cc += [ "-D" + defines ]
}
}
}