-/* If __thread is available */
-#cmakedefine HAVE_THREAD_LOCAL_STORAGE @HAVE_THREAD_LOCAL_STORAGE@
-
-#ifndef __STRICT_ANSI__
- #cmakedefine __STRICT_ANSI__ @__STRICT_ANSI__@
-#endif
-#ifndef _MSC_VER
- #cmakedefine _MSC_VER @_MSC_VER@
-#endif
-#ifndef _M_IX86
- #cmakedefine _M_IX86 @_M_IX86@
-#endif
-#cmakedefine _XBT_WIN32 @_XBT_WIN32@ // this variable is set if it is a windows platform
-#cmakedefine _WIN32 @_WIN32@ // this variable is set if it is a 32 bits windows platform
-#cmakedefine _WIN64 @_WIN64@ // this variable is set if it is a 64 bits windows platform
-#cmakedefine APPLE @APPLE@
-/* Set to true if enable_model-checking is true */
-#cmakedefine MMALLOC_WANT_OVERRIDE_LEGACY @MMALLOC_WANT_OVERRIDE_LEGACY@
-#cmakedefine HAVE_MC @HAVE_MC@
-
-/* If have linux_futex.h */
-#cmakedefine HAVE_FUTEX_H @HAVE_FUTEX_H@
-
-/* Some variable for graphviz */
-#cmakedefine HAVE_GRAPHVIZ @HAVE_GRAPHVIZ@
-#cmakedefine HAVE_GRAPH_H @GRAPH_H@
-#cmakedefine HAVE_CGRAPH_H @CGRAPH_H@
-#cmakedefine HAVE_AGRAPH_H @AGRAPH_H@
-
-/* Path to the addr2line tool */
-#cmakedefine ADDR2LINE "@ADDR2LINE@"
-
-/* Define if xbt contexts are based on our threads implementation or not */
-#cmakedefine HAVE_THREAD_CONTEXTS @HAVE_THREAD_CONTEXTS@
-
-/* Define to 1 if you have the <ucontext.h> header file. */
-#cmakedefine HAVE_UCONTEXT_H @HAVE_UCONTEXT_H@
-
-/* Define if xbt contexts are based on ucontext or not */
-#cmakedefine HAVE_UCONTEXT_CONTEXTS @HAVE_UCONTEXT_CONTEXTS@
-
-/* Used to select the flavor of assembly that we need today */
-#cmakedefine PROCESSOR_i686 @PROCESSOR_i686@
-#cmakedefine PROCESSOR_x86_64 @PROCESSOR_x86_64@
-#cmakedefine CMAKE_SYSTEM_PROCESSOR @CMAKE_SYSTEM_PROCESSOR@
-#cmakedefine HAVE_RAW_CONTEXTS @HAVE_RAW_CONTEXTS@
-#cmakedefine HAVE_BOOST_CONTEXTS @HAVE_BOOST_CONTEXTS@
-
-/* Define to 1 if you have the <execinfo.h> header file. */
-#cmakedefine HAVE_EXECINFO_H @HAVE_EXECINFO_H@
-
-/* Define to 1 if mmalloc is compiled in. */
-#cmakedefine HAVE_MMALLOC @HAVE_MMALLOC@
-
-/* Define to 1 if mmap is available */
-#cmakedefine HAVE_MMAP @HAVE_MMAP@
-
-/* Define to 1 if process_vm_readv is available */
-#cmakedefine HAVE_PROCESS_VM_READV @HAVE_PROCESS_VM_READV@
-
-/* Define to 1 if you have the `getdtablesize' function. */
-#cmakedefine HAVE_GETDTABLESIZE @HAVE_GETDTABLESIZE@
-
-/* Define to 1 if you have the `gettimeofday' function. */
-#cmakedefine HAVE_GETTIMEOFDAY @HAVE_GETTIMEOFDAY@
-
-/* Define to 1 if you have the `clock_gettime' function. */
-#cmakedefine HAVE_POSIX_GETTIME @HAVE_POSIX_GETTIME@
-
-/* Indicates that we have SMPI support */
-#cmakedefine HAVE_SMPI @HAVE_SMPI@
-
-/* Indicates that we have SMPI FORTRAN support */
-#cmakedefine SMPI_FORTRAN @SMPI_FORTRAN@
-
+#include "simgrid/config.h" /* what was compiled in? */
+
+/* Non-standard header files */
+/* <linux/futex.h> */
+#cmakedefine01 HAVE_FUTEX_H
+/* <signal.h> */
+#cmakedefine01 HAVE_SIGNAL_H
+/* <unistd.h> */
+#cmakedefine01 HAVE_UNISTD_H
+/* <ucontext.h> */
+#cmakedefine01 HAVE_UCONTEXT_H
+/* <valgrind/valgrind.h> */
+#cmakedefine01 HAVE_VALGRIND_H
+
+/* Address Sanitizer */
+#cmakedefine01 HAVE_SANITIZER_THREAD
+#cmakedefine01 HAVE_SANITIZER_ADDRESS
+#cmakedefine01 HAVE_SANITIZER_ADDRESS_FIBER_SUPPORT
+
+/* Time portability */
+/* Function gettimeofday */
+#cmakedefine01 HAVE_GETTIMEOFDAY
+/* Function clock_gettime */
+#cmakedefine01 HAVE_POSIX_GETTIME
+/* Function nanosleep */
+#cmakedefine01 HAVE_NANOSLEEP
+
+/* The usable context factories */
+#cmakedefine01 HAVE_BOOST_CONTEXTS
+#cmakedefine01 HAVE_RAW_CONTEXTS
+#cmakedefine01 HAVE_UCONTEXT_CONTEXTS
+
+/* Variables for the thread contexts (and parallel mode of raw contexts) */
+/* Does not seems defined on Mac nor Windows */
+#cmakedefine01 HAVE_PTHREAD_SETAFFINITY
+
+/* Variables for the raw contexts (to select the right assembly code) */
+#cmakedefine01 SIMGRID_PROCESSOR_i686
+#cmakedefine01 SIMGRID_PROCESSOR_x86_64
+
+/* Variables for the SysV contexts */
+@sg_makecontext_stack_addr@
+@sg_makecontext_stack_size@
+
+/* Variable for SysV, raw and Boost contexts */
+/* Does the stack growth upward, or downward? */
+#define PTH_STACKGROWTH @PTH_STACKGROWTH@
+
+/* MC variables */
+/* getdtablesize: get descriptor table size */
+#cmakedefine01 HAVE_GETDTABLESIZE
+/* Did we compile mmalloc in? */
+#cmakedefine01 HAVE_MMALLOC
+/* process_vm_readv: transfer data between process address spaces */
+#cmakedefine01 HAVE_PROCESS_VM_READV
+
+/* SMPI variables */
+/* SMPI enabled */
+#cmakedefine01 HAVE_SMPI
+/* Fortran language is available for SMPI, and which one */
+#cmakedefine01 SMPI_FORTRAN
+#cmakedefine01 SMPI_GFORTRAN
+#cmakedefine01 SMPI_FLANG
+#cmakedefine01 SMPI_IFORT