Messages in this thread | | | Date | Thu, 19 Mar 2015 14:12:05 -0700 | Subject | Re: [PATCH v2] perf tools: Work around lack of sched_getcpu in glibc < 2.6. | From | Vinson Lee <> |
| |
On Thu, Mar 19, 2015 at 6:14 AM, Arnaldo Carvalho de Melo <acme@kernel.org> wrote: > Em Thu, Mar 19, 2015 at 11:13:04AM +0100, Jiri Olsa escreveu: >> On Wed, Mar 18, 2015 at 04:11:52PM -0700, Vinson Lee wrote: >> > This patch fixes this build error with glibc < 2.6. > >> > +#ifdef __GLIBC_PREREQ >> > +#if !__GLIBC_PREREQ(2, 6) >> > +static int sched_getcpu(void) >> > +{ >> > + errno = ENOSYS; >> > + return -1; >> > +} >> > +#endif >> > +#endif > >> you could mark it as __weak and get rid of those ifdef's >> like we do for strlcpy in utilpath.c > > Agreed. > > - Arnaldo
I tried this approach but am having trouble getting a patch to compile with both older glibc and recent glibc.
With older glibc I will get a "no previous prototype" compilation error. I can fix this error by adding a prototype but this results in a "redundant redeclaration" error with newer glibc.
| |