X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fsys_ioctl.in.h;h=8b0e2361a955ee17abc83e773c04070fd9995883;hb=14b6d70139486b63e66257aad1abe2a9615f4d96;hp=7a87eea7cec80f3afc2d23e7262a7b3ea2f3d115;hpb=b2e2010c7c902235b5efb5bd3c6529f61b093aa4;p=gnulib.git diff --git a/lib/sys_ioctl.in.h b/lib/sys_ioctl.in.h index 7a87eea7c..8b0e2361a 100644 --- a/lib/sys_ioctl.in.h +++ b/lib/sys_ioctl.in.h @@ -36,36 +36,41 @@ # include #endif -/* The definition of GL_LINK_WARNING is copied here. */ +/* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ +/* The definition of _GL_WARN_ON_USE is copied here. */ -/* Declare overridden functions. */ - -#ifdef __cplusplus -extern "C" { -#endif +/* Declare overridden functions. */ #if @GNULIB_IOCTL@ -# if @SYS_IOCTL_H_HAVE_WINSOCK2_H@ -# undef ioctl -# define ioctl rpl_ioctl -extern int ioctl (int fd, int request, ... /* {void *,char *} arg */); +# if @REPLACE_IOCTL@ +# if !(defined __cplusplus && defined GNULIB_NAMESPACE) +# undef ioctl +# define ioctl rpl_ioctl +# endif +_GL_FUNCDECL_RPL (ioctl, int, + (int fd, int request, ... /* {void *,char *} arg */)); +_GL_CXXALIAS_RPL (ioctl, int, + (int fd, int request, ... /* {void *,char *} arg */)); +# else +# if @SYS_IOCTL_H_HAVE_WINSOCK2_H@ || 1 +_GL_FUNCDECL_SYS (ioctl, int, + (int fd, int request, ... /* {void *,char *} arg */)); +# endif +_GL_CXXALIAS_SYS (ioctl, int, + (int fd, int request, ... /* {void *,char *} arg */)); # endif +_GL_CXXALIASWARN (ioctl); #elif @SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS@ # undef ioctl # define ioctl ioctl_used_without_requesting_gnulib_module_ioctl #elif defined GNULIB_POSIXCHECK # undef ioctl -# define ioctl \ - (GL_LINK_WARNING ("ioctl does not portably work on sockets - " \ - "use gnulib module ioctl for portability"), \ - ioctl) -#endif - - -#ifdef __cplusplus -} +# if HAVE_RAW_DECL_IOCTL +_GL_WARN_ON_USE (ioctl, "ioctl does not portably work on sockets - " + "use gnulib module ioctl for portability"); +# endif #endif