mirror of
https://https.git.savannah.gnu.org/git/gnulib.git
synced 2026-09-01 02:34:55 +00:00
libc-config: port to MSVC
Problems reported by Gisle Vanem in: http://lists.gnu.org/archive/html/bug-gnulib/2017-09/msg00016.html * lib/libc-config.h (__inline): Don't define if HAVE___INLINE. (libc_hidden_proto): Stick to Standard C syntax for varargs macro. * m4/__inline.m4: New file. * modules/libc-config (Files): Add it. (Depends-on): Use it.
This commit is contained in:
@@ -1,5 +1,14 @@
|
||||
2017-09-05 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
libc-config: port to MSVC
|
||||
Problems reported by Gisle Vanem in:
|
||||
http://lists.gnu.org/archive/html/bug-gnulib/2017-09/msg00016.html
|
||||
* lib/libc-config.h (__inline): Don't define if HAVE___INLINE.
|
||||
(libc_hidden_proto): Stick to Standard C syntax for varargs macro.
|
||||
* m4/__inline.m4: New file.
|
||||
* modules/libc-config (Files): Add it.
|
||||
(Depends-on): Use it.
|
||||
|
||||
glob: Use enum for __glob_pattern_type result
|
||||
From a patch proposed by Adhemerval Zanella in:
|
||||
https://sourceware.org/ml/libc-alpha/2017-09/msg00212.html
|
||||
|
||||
+3
-3
@@ -150,8 +150,8 @@
|
||||
|
||||
/* <cdefs.h> __inline is too pessimistic for non-GCC. */
|
||||
#undef __inline
|
||||
#ifndef __GNUC__
|
||||
# if 199901 <= __STDC_VERSION__
|
||||
#ifndef HAVE___INLINE
|
||||
# if 199901 <= __STDC_VERSION__ || defined inline
|
||||
# define __inline inline
|
||||
# else
|
||||
# define __inline
|
||||
@@ -172,7 +172,7 @@
|
||||
|
||||
/* A substitute for glibc <libc-symbols.h>, good enough for Gnulib. */
|
||||
#define attribute_hidden
|
||||
#define libc_hidden_proto(name, attrs...)
|
||||
#define libc_hidden_proto(name, ...)
|
||||
#define libc_hidden_def(name)
|
||||
#define libc_hidden_weak(name)
|
||||
#define libc_hidden_ver(local, name)
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
# Test for __inline keyword
|
||||
dnl Copyright 2017 Free Software Foundation, Inc.
|
||||
dnl This file is free software; the Free Software Foundation
|
||||
dnl gives unlimited permission to copy and/or distribute it,
|
||||
dnl with or without modifications, as long as this notice is preserved.
|
||||
|
||||
AC_DEFUN([gl___INLINE],
|
||||
[
|
||||
AC_CACHE_CHECK([whether the compiler supports the __inline keyword],
|
||||
[gl_cv_c___inline],
|
||||
[AC_COMPILE_IFELSE(
|
||||
[AC_LANG_PROGRAM(
|
||||
[[typedef int foo_t;
|
||||
static __inline foo_t foo (void) { return 0; }]],
|
||||
[[return foo ();]])],
|
||||
[gl_cv_c___inline=yes],
|
||||
[gl_cv_c___inline=no])])
|
||||
if test $gl_cv_c___inline = yes; then
|
||||
AC_DEFINE([HAVE___INLINE], [1],
|
||||
[Define to 1 if the compiler supports the keyword '__inline'.])
|
||||
fi
|
||||
])
|
||||
@@ -4,10 +4,12 @@ System definitions for code taken from the GNU C Library
|
||||
Files:
|
||||
lib/cdefs.h
|
||||
lib/libc-config.h
|
||||
m4/__inline.m4
|
||||
|
||||
Depends-on:
|
||||
|
||||
configure.ac:
|
||||
gl___INLINE
|
||||
|
||||
Makefile.am:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user