bp2build: codegen singleton lists on one line.
This CL refactors the bp2build code generator to pretty print lists with
a single element on one line, instead of taking up three lines, which
can make BUILD files unnecessarily long. A single line singleton list is
also more commonly used in BUILD files.
Test: TH
Change-Id: Ic9e44741bbb070c8f45925466b9ccdd0608498b2
diff --git a/bp2build/cc_library_conversion_test.go b/bp2build/cc_library_conversion_test.go
index 6a148a8..783af2e 100644
--- a/bp2build/cc_library_conversion_test.go
+++ b/bp2build/cc_library_conversion_test.go
@@ -109,12 +109,8 @@
`,
expectedBazelTargets: []string{`cc_library(
name = "foo-lib",
- copts = [
- "-Wall",
- ],
- deps = [
- ":some-headers",
- ],
+ copts = ["-Wall"],
+ deps = [":some-headers"],
hdrs = [
"header.h",
"header.hh",
@@ -127,40 +123,20 @@
"header.h.generic",
"foo-dir/a.h",
],
- includes = [
- "foo-dir",
- ],
- linkopts = [
- "-Wl,--exclude-libs=bar.a",
- ] + select({
- "//build/bazel/platforms/arch:x86": [
- "-Wl,--exclude-libs=baz.a",
- ],
- "//build/bazel/platforms/arch:x86_64": [
- "-Wl,--exclude-libs=qux.a",
- ],
+ includes = ["foo-dir"],
+ linkopts = ["-Wl,--exclude-libs=bar.a"] + select({
+ "//build/bazel/platforms/arch:x86": ["-Wl,--exclude-libs=baz.a"],
+ "//build/bazel/platforms/arch:x86_64": ["-Wl,--exclude-libs=qux.a"],
"//conditions:default": [],
}),
- srcs = [
- "impl.cpp",
- ] + select({
- "//build/bazel/platforms/arch:x86": [
- "x86.cpp",
- ],
- "//build/bazel/platforms/arch:x86_64": [
- "x86_64.cpp",
- ],
+ srcs = ["impl.cpp"] + select({
+ "//build/bazel/platforms/arch:x86": ["x86.cpp"],
+ "//build/bazel/platforms/arch:x86_64": ["x86_64.cpp"],
"//conditions:default": [],
}) + select({
- "//build/bazel/platforms/os:android": [
- "android.cpp",
- ],
- "//build/bazel/platforms/os:darwin": [
- "darwin.cpp",
- ],
- "//build/bazel/platforms/os:linux": [
- "linux.cpp",
- ],
+ "//build/bazel/platforms/os:android": ["android.cpp"],
+ "//build/bazel/platforms/os:darwin": ["darwin.cpp"],
+ "//build/bazel/platforms/os:linux": ["linux.cpp"],
"//conditions:default": [],
}),
)`},
@@ -215,9 +191,7 @@
"-Wunused",
"-Werror",
],
- deps = [
- ":libc_headers",
- ],
+ deps = [":libc_headers"],
hdrs = [
"linked_list.h",
"linker.h",
@@ -232,17 +206,11 @@
"-Wl,--exclude-libs=libclang_rt.builtins-i686-android.a",
"-Wl,--exclude-libs=libclang_rt.builtins-x86_64-android.a",
] + select({
- "//build/bazel/platforms/arch:x86": [
- "-Wl,--exclude-libs=libgcc_eh.a",
- ],
- "//build/bazel/platforms/arch:x86_64": [
- "-Wl,--exclude-libs=libgcc_eh.a",
- ],
+ "//build/bazel/platforms/arch:x86": ["-Wl,--exclude-libs=libgcc_eh.a"],
+ "//build/bazel/platforms/arch:x86_64": ["-Wl,--exclude-libs=libgcc_eh.a"],
"//conditions:default": [],
}),
- srcs = [
- "ld_android.cpp",
- ],
+ srcs = ["ld_android.cpp"],
)`},
},
}