[Mesa-dev] [PATCH] travis: manually generate sys/syscall.h
Eric Engestrom
eric.engestrom at intel.com
Tue Jul 24 10:29:32 UTC 2018
On Thursday, 2018-07-19 15:33:33 +0300, Andres Gomez wrote:
> Until now, the needed bits were wrongly included in linux/memfd.h
>
> Since Travis' sys/syscall.h doesn't provide the SYS_memfd_create, we
Isn't this a matter of libc version? Isn't the right fix to upgrade the
libc in the container instead of faking its files?
And if the libc required is quite recent, what we need is a fallback in
the code to support older libc (possibly with some features missing),
which this build failure rightly reports.
> generate that header manually, including the needed bits to avoid
> compilation problems, as the ones observed after:
> 3228335b55c ("intel: aubinator: handle GGTT mappings")
>
> Fixes: 7e2af374742 ("travis: split the make target to three separate ones")
>
> Cc: Emil Velikov <emil.velikov at collabora.com>
> Cc: Juan A. Suarez Romero <jasuarez at igalia.com>
> Cc: Dylan Baker <dylan.c.baker at intel.com>
> Cc: Eric Engestrom <eric.engestrom at intel.com>
> Signed-off-by: Andres Gomez <agomez at igalia.com>
> ---
> .travis.yml | 27 ++++++++++++++++++++++++---
> 1 file changed, 24 insertions(+), 3 deletions(-)
>
> diff --git a/.travis.yml b/.travis.yml
> index 012cc9139e0..8b1730bec69 100644
> --- a/.travis.yml
> +++ b/.travis.yml
> @@ -584,13 +584,34 @@ install:
> "#ifndef _LINUX_MEMFD_H" \
> "#define _LINUX_MEMFD_H" \
> "" \
> - "#define __NR_memfd_create 319" \
> - "#define SYS_memfd_create __NR_memfd_create" \
> - "" \
> "#define MFD_CLOEXEC 0x0001U" \
> "#define MFD_ALLOW_SEALING 0x0002U" \
> "" \
> "#endif /* _LINUX_MEMFD_H */" > linux/memfd.h
> +
> + # Generate this header, including the missing SYS_memfd_create
> + # macro, which is not provided by the header in the Travis
> + # instance
> + mkdir -p sys
> + printf "%s\n" \
> + "#ifndef _SYSCALL_H" \
> + "#define _SYSCALL_H 1" \
> + "" \
> + "#include <asm/unistd.h>" \
> + "" \
> + "#ifndef _LIBC" \
> + "# include <bits/syscall.h>" \
> + "#endif" \
> + "" \
> + "#ifndef __NR_memfd_create" \
> + "# define __NR_memfd_create 319 /* Taken from <asm/unistd_64.h> */" \
> + "#endif" \
> + "" \
> + "#ifndef SYS_memfd_create" \
> + "# define SYS_memfd_create __NR_memfd_create" \
> + "#endif" \
> + "" \
> + "#endif" > sys/syscall.h
> fi
>
> script:
> --
> 2.18.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list