Restore "cmake: remove device_extern.h logic"
This reverts commit87c6789355, restoring commit3b341085a2. Restore the original change now that the underlying issue has been fixed in6cfb18686e. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit is contained in:
parent
87e148e0aa
commit
0226e53e23
@ -214,7 +214,6 @@ if(SUPPORTS_DTS)
|
||||
--dtc-flags '${EXTRA_DTC_FLAGS_RAW}'
|
||||
--bindings-dirs ${DTS_ROOT_BINDINGS}
|
||||
--header-out ${DEVICETREE_GENERATED_H}.new
|
||||
--device-header-out ${DEVICE_EXTERN_H}.new
|
||||
--dts-out ${ZEPHYR_DTS}.new # for debugging and dtc
|
||||
--edt-pickle-out ${EDT_PICKLE}
|
||||
${EXTRA_GEN_DEFINES_ARGS}
|
||||
@ -231,11 +230,11 @@ if(SUPPORTS_DTS)
|
||||
else()
|
||||
zephyr_file_copy(${ZEPHYR_DTS}.new ${ZEPHYR_DTS} ONLY_IF_DIFFERENT)
|
||||
zephyr_file_copy(${DEVICETREE_GENERATED_H}.new ${DEVICETREE_GENERATED_H} ONLY_IF_DIFFERENT)
|
||||
zephyr_file_copy(${DEVICE_EXTERN_H}.new ${DEVICE_EXTERN_H})
|
||||
file(REMOVE ${ZEPHYR_DTS}.new ${DEVICETREE_GENERATED_H}.new ${DEVICE_EXTERN_H}.new)
|
||||
file(WRITE ${DEVICE_EXTERN_H}
|
||||
"#error The contents of this file are now implemented directly in zephyr/device.h.")
|
||||
file(REMOVE ${ZEPHYR_DTS}.new ${DEVICETREE_GENERATED_H}.new)
|
||||
message(STATUS "Generated zephyr.dts: ${ZEPHYR_DTS}")
|
||||
message(STATUS "Generated devicetree_generated.h: ${DEVICETREE_GENERATED_H}")
|
||||
message(STATUS "Generated device_extern.h: ${DEVICE_EXTERN_H}")
|
||||
endif()
|
||||
|
||||
|
||||
@ -310,5 +309,4 @@ if(SUPPORTS_DTS)
|
||||
else()
|
||||
set(header_template ${ZEPHYR_BASE}/misc/generated/generated_header.template)
|
||||
zephyr_file_copy(${header_template} ${DEVICETREE_GENERATED_H} ONLY_IF_DIFFERENT)
|
||||
zephyr_file_copy(${header_template} ${DEVICE_EXTERN_H} ONLY_IF_DIFFERENT)
|
||||
endif(SUPPORTS_DTS)
|
||||
|
||||
@ -146,36 +146,10 @@ def main():
|
||||
write_chosen(edt)
|
||||
write_global_macros(edt)
|
||||
|
||||
write_device_extern_header(args.device_header_out, edt)
|
||||
|
||||
if args.edt_pickle_out:
|
||||
write_pickled_edt(edt, args.edt_pickle_out)
|
||||
|
||||
|
||||
def write_device_extern_header(device_header_out, edt):
|
||||
# Generate header that will extern devicetree struct device's
|
||||
|
||||
with open(device_header_out, "w", encoding="utf-8") as dev_header_file:
|
||||
print("#ifndef DEVICE_EXTERN_GEN_H", file=dev_header_file)
|
||||
print("#define DEVICE_EXTERN_GEN_H", file=dev_header_file)
|
||||
print("", file=dev_header_file)
|
||||
print("#ifdef __cplusplus", file=dev_header_file)
|
||||
print('extern "C" {', file=dev_header_file)
|
||||
print("#endif", file=dev_header_file)
|
||||
print("", file=dev_header_file)
|
||||
|
||||
for node in sorted(edt.nodes, key=lambda node: node.dep_ordinal):
|
||||
print(f"extern const struct device DEVICE_DT_NAME_GET(DT_{node.z_path_id}); /* dts_ord_{node.dep_ordinal} */",
|
||||
file=dev_header_file)
|
||||
|
||||
print("", file=dev_header_file)
|
||||
print("#ifdef __cplusplus", file=dev_header_file)
|
||||
print("}", file=dev_header_file)
|
||||
print("#endif", file=dev_header_file)
|
||||
print("", file=dev_header_file)
|
||||
print("#endif /* DEVICE_EXTERN_GEN_H */", file=dev_header_file)
|
||||
|
||||
|
||||
def setup_edtlib_logging():
|
||||
# The edtlib module emits logs using the standard 'logging' module.
|
||||
# Configure it so that warnings and above are printed to stderr,
|
||||
@ -222,8 +196,6 @@ def parse_args():
|
||||
parser.add_argument("--dts-out", required=True,
|
||||
help="path to write merged DTS source code to (e.g. "
|
||||
"as a debugging aid)")
|
||||
parser.add_argument("--device-header-out", required=True,
|
||||
help="path to write device struct extern header to")
|
||||
parser.add_argument("--edt-pickle-out",
|
||||
help="path to write pickled edtlib.EDT object to")
|
||||
parser.add_argument("--vendor-prefixes", action='append', default=[],
|
||||
|
||||
Loading…
Reference in New Issue
Block a user