This module is where the implementation of the probe-related proc macros are. The actual
proc macro is in the tracers-macros crate because proc macro crates can only export proc
macros and nothing else. That’s an inconvenient restriction, especially since there’s quite a
lot of overlap between the macro code and the build-time probe code generation logic. Hence,
this bifurcation.
Called from the build.rs of all crates which have a direct dependency on tracers and
tracers_macros. This determines the compile-time configuration of the tracers crate, and
performs any build-time code generation necessary to support the code generated by the
tracers_macros macros.
This function is the counterpart to build, which is intended to be invoked in the tracersbuild.rs script. It reads the feature flags enabled on tracers, and from those flags and
other information about the target sytem and the local build environment selects an
implementation to use, or panics if no suitable implementation is possible