tree: 253f8191a605dafe12059bb5cb9d85cce33c6488 [path history] [tgz]
  1. templates/
  2. BUILD.gn
  3. legacy_syscall_cdecl.go
  4. README.md
zircon/tools/zither/backends/legacy_syscall_cdecl/README.md

The Zither Legacy Syscall C Declaration Backend

The Zither legacy syscall C declaration backend is responsible for generating several .inc files with macro template APIs used to define the C syscall declarations in the public Zircon headers.

Output layout

  • internal/cdecls.inc: macro-templated enumeration of syscalls meant for the public headers
  • internal/testonly-cdecls.inc: similar to cdecls.inc, but consisting of the test-only syscalls.
  • internal/cdecls-next.inc: similar to cdecls.inc, but consisting of the “next” syscalls.

GN integration

${fidl_target}_zither.legacy_syscall_cdecl generates a C++ library target aggregating the generated sources, and giving the .inc files as public dependencies.

Bindings

Any declaration type not mentioned below is ignored.

Syscalls

Each @next syscall declaration yields an entry in testonly-cdecls.inc; each @testonly one yields an entry in cdecls-next.inc; all remaining ones yield entries in cdecls.inc.