From: Mathieu Desnoyers Date: Mon, 13 Jun 2011 14:24:46 +0000 (-0400) Subject: Fix compilation with uclibc X-Git-Tag: v1.9.1~345 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=0a2aba1397f90fa65c293ab856d18579ae14b77f;p=lttng-ust.git Fix compilation with uclibc Reported-by: Khem Raj Reported-by: Dexuan Cui Signed-off-by: Mathieu Desnoyers --- diff --git a/include/Makefile.am b/include/Makefile.am index bd649b6b..6b128fad 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -10,6 +10,7 @@ noinst_HEADERS = \ usterr.h \ ust_snprintf.h \ usterr_signal_safe.h \ + ust/compat.h \ ust/config.h \ ust/core.h \ ust/marker-internal.h \ diff --git a/include/ust/compat.h b/include/ust/compat.h new file mode 100644 index 00000000..c896e728 --- /dev/null +++ b/include/ust/compat.h @@ -0,0 +1,35 @@ +#ifndef _UST_COMPAT_H +#define _UST_COMPAT_H + +/* + * Copyright (C) 2011 Mathieu Desnoyers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include + +#ifdef __UCLIBC__ +#define __getcpu(cpu, node, cache) syscall(__NR_getcpu, cpu, node, cache) +static inline +int sched_getcpu(void) +{ + int c, s; + + s = __getcpu(&c, NULL, NULL); + return (s == -1) ? s : c; +} +#endif /* __UCLIBC__ */ +#endif /* _UST_COMPAT_H */ diff --git a/libust/tracer.h b/libust/tracer.h index 03049aa3..4f72d7ad 100644 --- a/libust/tracer.h +++ b/libust/tracer.h @@ -30,6 +30,7 @@ #include #include #include +#include #include "channels.h" #include "tracercore.h" #include "tracerconst.h"