diff --git a/include/usdt.h b/include/usdt.h new file mode 100644 index 0000000..2546a5b --- /dev/null +++ b/include/usdt.h @@ -0,0 +1,31 @@ +/* + * Copyright (c) 2020 Andri Yngvason + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE + * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + +#pragma once + +#include "config.h" + +#ifdef HAVE_USDT +#include +#else +#define DTRACE_PROBE(...) +#define DTRACE_PROBE1(...) +#define DTRACE_PROBE2(...) +#define DTRACE_PROBE3(...) +#define DTRACE_PROBE4(...) +#define DTRACE_PROBE5(...) +#define DTRACE_PROBE6(...) +#endif diff --git a/meson.build b/meson.build index 7e32ee3..2df1af3 100644 --- a/meson.build +++ b/meson.build @@ -9,6 +9,7 @@ project( ) buildtype = get_option('buildtype') +host_system = host_machine.system() prefix = get_option('prefix') c_args = [ @@ -88,6 +89,10 @@ config = configuration_data() config.set('PREFIX', '"' + prefix + '"') +if host_system == 'linux' and cc.has_header('sys/sdt.h') + config.set('HAVE_USDT', true) +endif + configure_file( output: 'config.h', configuration: config,