diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index 15729b8f..6f2191f3 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -19,6 +19,36 @@ check_include_file( linux/inotify.h HAVE_INOTIFY ) check_function_exists( statvfs HAVE_STATVFS ) +# sched_setaffinity buggy glibc check +check_c_source_compiles(" + #define _GNU_SOURCE + #include + int main() { + cpu_set_t mask; + CPU_ZERO(&mask); + CPU_SET(0, &mask); + sched_setaffinity(0, sizeof(mask), &mask); + return 0; + } " + SCHEDAFFINITY_3PARAMS ) + +if( SCHEDAFFINITY_3PARAMS ) + set( SCHEDAFFINITY_SUPPORT 1 ) +else( ) + check_c_source_compiles(" + #define _GNU_SOURCE + #include + int main() { + cpu_set_t mask; + CPU_ZERO(&mask); + CPU_SET(0, &mask); + sched_setaffinity(0, &mask); + return 0; + } " + SCHEDAFFINITY_SUPPORT ) +endif( ) + + # fabsf tde_save( CMAKE_REQUIRED_LIBRARIES ) set( CMAKE_REQUIRED_LIBRARIES m ) diff --git a/config.h.cmake b/config.h.cmake index 2ad6e580..101a7d43 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -2,6 +2,8 @@ #cmakedefine SIZEOF_LONG @SIZEOF_LONG@ #cmakedefine HAVE_STDINT_H 1 #cmakedefine HAVE_SYSTEMS_H 1 +#cmakedefine SCHEDAFFINITY_SUPPORT 1 +#cmakedefine SCHEDAFFINITY_3PARAMS 1 #cmakedefine HAVE_FABSF 1 #cmakedefine HAVE_LIBVISUAL 1 #cmakedefine HAVE_INOTIFY 1