LINUX-5.16: Use linux/stdarg.h if available

Global use of the compiler option '-isystem' was removed from the top
level Makefile with Linux commit ('isystem: delete global -isystem
compile option' 04e85bbf7). This results with an error due to not
finding "stdarg.h" when building the openafs kernel module.

 .../src/rx/rx_kcommon.h:143:12: fatal error: stdarg.h: No such file or
                                 directory
   143 | #  include "stdarg.h"
       |            ^~~~~~~~~~

Linux-5.15, introduced a copy of stdarg.h as 'linux/stdarg.h' in commit
('isystem: ship and use stdarg.h' c0891ac15)

Add a test for the linux/stdarg.h include file and if available, use
"linux/stdarg.h" instead of "stdarg.h" within the Linux kernel module.

Change-Id: I5215182c8240034bd739688a88a9410b74f93c8f
Reviewed-on: https://gerrit.openafs.org/14844
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
This commit is contained in:
Cheyenne Wills 2021-11-16 10:55:30 -07:00 committed by Benjamin Kaduk
parent 03e208df27
commit 3daa6e9733
2 changed files with 6 additions and 1 deletions

View File

@ -9,4 +9,5 @@ AC_CHECK_LINUX_HEADER([semaphore.h])
AC_CHECK_LINUX_HEADER([seq_file.h])
AC_CHECK_LINUX_HEADER([sched/signal.h])
AC_CHECK_LINUX_HEADER([uaccess.h])
AC_CHECK_LINUX_HEADER([stdarg.h])
])

View File

@ -140,7 +140,11 @@ struct coda_inode_info {
# if defined(AFS_FBSD_ENV)
# include "machine/stdarg.h"
# else
# include "stdarg.h"
# if defined(HAVE_LINUX_STDARG_H)
# include "linux/stdarg.h"
# else
# include "stdarg.h"
# endif
# endif
#endif
#ifdef KERNEL