package(default_visibility = ["//visibility:public"]) | |
# TODO: No support for building the parser. | |
cc_library( | |
name = "pioasm_core", | |
srcs = [ | |
"gen/lexer.cpp", | |
"gen/location.h", | |
"gen/parser.cpp", | |
"gen/parser.hpp", | |
"go_output.cpp", | |
"json_output.cpp", | |
"main.cpp", | |
"output_format.h", | |
"pio_assembler.cpp", | |
"pio_assembler.h", | |
"pio_disassembler.cpp", | |
"pio_disassembler.h", | |
"pio_types.h", | |
], | |
includes = [ | |
".", | |
"gen", | |
], | |
target_compatible_with = ["//bazel/constraint:host"], | |
) | |
cc_library( | |
name = "c_sdk_output", | |
srcs = ["c_sdk_output.cpp"], | |
deps = [":pioasm_core"], | |
alwayslink = True, | |
) | |
cc_library( | |
name = "python_output", | |
srcs = ["python_output.cpp"], | |
deps = [":pioasm_core"], | |
alwayslink = True, | |
) | |
cc_library( | |
name = "hex_output", | |
srcs = ["hex_output.cpp"], | |
deps = [":pioasm_core"], | |
alwayslink = True, | |
) | |
cc_library( | |
name = "ada_output", | |
srcs = ["ada_output.cpp"], | |
deps = [":pioasm_core"], | |
alwayslink = True, | |
) | |
cc_binary( | |
name = "pioasm", | |
deps = [ | |
":ada_output", | |
":c_sdk_output", | |
":hex_output", | |
":pioasm_core", | |
":python_output", | |
], | |
) |