diff --git a/configure.ac b/configure.ac index 913d289c7..587917ba4 100644 --- a/configure.ac +++ b/configure.ac @@ -2757,6 +2757,8 @@ fi #---------------------------------------------------------------------------- if test "$VGCONF_OS" = "solaris" ; then +AC_CHECK_HEADERS([sys/lgrp_user_impl.h]) + # Solaris-specific check determining if the Sun Studio Assembler is used to # build Valgrind. The test checks if the x86/amd64 assembler understands the # cmovl.l instruction, if yes then it's Sun Assembler. diff --git a/include/vki/vki-solaris.h b/include/vki/vki-solaris.h index f464ef211..15f71cde1 100644 --- a/include/vki/vki-solaris.h +++ b/include/vki/vki-solaris.h @@ -605,10 +605,10 @@ typedef struct vki_kcf_door_arg_s { #include -#define vki_lgrp_view_t lgrp_view_t - - +#if defined(HAVE_SYS_LGRP_USER_IMPL_H) +/* Include implementation specific header file on newer Solaris. */ #include +#endif /* HAVE_SYS_LGRP_USER_IMPL_H */ #define VKI_LGRP_SYS_MEMINFO LGRP_SYS_MEMINFO #define VKI_LGRP_SYS_GENERATION LGRP_SYS_GENERATION #define VKI_LGRP_SYS_VERSION LGRP_SYS_VERSION @@ -621,6 +621,7 @@ typedef struct vki_kcf_door_arg_s { #define VKI_LGRP_SYS_AFF_INHERIT_SET LGRP_SYS_AFF_INHERIT_SET #define VKI_LGRP_SYS_DEVICE_LGRPS LGRP_SYS_DEVICE_LGRPS #define VKI_LGRP_SYS_MAXSOCKETS_GET LGRP_SYS_MAXSOCKETS_GET +#define vki_lgrp_view_t lgrp_view_t #include diff --git a/memcheck/tests/solaris/scalar.c b/memcheck/tests/solaris/scalar.c index 606bc51b3..fef2d6994 100644 --- a/memcheck/tests/solaris/scalar.c +++ b/memcheck/tests/solaris/scalar.c @@ -1,6 +1,7 @@ /* Basic syscall test, see memcheck/tests/x86-linux/scalar.c for more info. */ #include "scalar.h" +#include "config.h" #include #include @@ -9,7 +10,10 @@ #include #include #include +#include +#if defined(HAVE_SYS_LGRP_USER_IMPL_H) #include +#endif /* HAVE_SYS_LGRP_USER_IMPL_H */ #include #include #include