[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: definition of waitpid in sys_wait.in.h for C++ on windows
From: |
Tatsuro MATSUOKA |
Subject: |
Re: definition of waitpid in sys_wait.in.h for C++ on windows |
Date: |
Sat, 2 Oct 2010 15:19:19 +0900 (JST) |
Hello
Sorry for late replying.
I have used new snapshot of the gnulib to complie the octave by MinGW GCC.
The error caused by the waitpid defintion in the gnulib was disappeared!!
Thanks!!
Tatsuro
--- Bruno Haible wrote:
> > ... for C++ it's needed to make 'waitpid' a function instead of a
> macro.
>
> Additionally, it it suboptimal if the 'sys_wait' module implies the
> 'waitpid'
> module:
> 1. since the GNULIB_POSIXCHECK functionality does not work then,
> 2. since people who use the 'stdlib' module then will ask "why does
> stdlib
> depend on waitpid".
>
> This patch completes the separation of the 'sys_wait' and 'waitpid'
> modules.
>
>
> 2010-09-29 Bruno Haible <address@hidden>
>
> Separate the module 'waitpid' from the module 'sys_wait'.
> * lib/sys_wait.in.h (waitpid): Declare only if the 'waitpid' module
> is
> present.
> * m4/sys_wait_h.m4 (gl_SYS_WAIT_MODULE_INDICATOR): Invoke
> gl_MODULE_INDICATOR_FOR_TESTS.
> (gl_SYS_WAIT_H_DEFAULTS): Initialize GNULIB_WAITPID.
> * modules/sys_wait (Depends-on): Remove waitpid.
> (Makefile.am): Substitute GNULIB_WAITPID.
> * modules/waitpid (configure.ac): Invoke
> gl_SYS_WAIT_MODULE_INDICATOR.
> * tests/test-sys_wait-c++.cc (GNULIB_NAMESPACE::waitpid): Check the
> signature only if the 'waitpid' module is present.
> * doc/posix-functions/waitpid.texi: Mention the 'waitpid' module.
> * NEWS: Mention the change.
> * modules/grantpt (Depends-on): Add waitpid.
> * modules/wait-process (Depends-on): Likewise.
>
> --- NEWS.orig Wed Sep 29 16:00:26 2010
> +++ NEWS Wed Sep 29 15:36:35 2010
> @@ -12,6 +12,10 @@
>
> Date Modules Changes
>
> +2010-09-29 sys_wait This module no longer provides the
> waitpid()
> + function. If you need this function, you
> now need
> + to request the 'waitpid' module.
> +
> 2010-09-17 utimens The function gl_futimens is removed, and
> its
> signature has been migrated to
> fdutimens. Callers
> of gl_futimens should change function
> name, and
> --- doc/posix-functions/waitpid.texi.orig Wed Sep 29 16:00:26 2010
> +++ doc/posix-functions/waitpid.texi Wed Sep 29 15:35:15 2010
> @@ -4,15 +4,15 @@
>
> POSIX specification:@*
>
@url{http://www.opengroup.org/onlinepubs/9699919799/functions/waitpid.html}
>
> -Gnulib module: ---
> +Gnulib module: waitpid
>
> Portability problems fixed by Gnulib:
> @itemize
> address@hidden
> +This function is missing on some platforms:
> +mingw.
> @end itemize
>
> Portability problems not fixed by Gnulib:
> @itemize
> address@hidden
> -This function is missing on some platforms:
> -mingw.
> @end itemize
> --- lib/sys_wait.in.h.orig Wed Sep 29 16:00:26 2010
> +++ lib/sys_wait.in.h Wed Sep 29 15:29:19 2010
> @@ -113,7 +113,7 @@
>
> /* Declarations of functions. */
>
> -#if 1 /* @GNULIB_WAITPID@ */
> +#if @GNULIB_WAITPID@
> # if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
> _GL_FUNCDECL_SYS (waitpid, pid_t, (pid_t pid, int *statusp, int
> options));
> # endif
> --- m4/sys_wait_h.m4.orig Wed Sep 29 16:00:26 2010
> +++ m4/sys_wait_h.m4 Wed Sep 29 15:52:23 2010
> @@ -22,9 +22,12 @@
> dnl Use AC_REQUIRE here, so that the default settings are expanded
> once only.
> AC_REQUIRE([gl_SYS_WAIT_H_DEFAULTS])
> gl_MODULE_INDICATOR_SET_VARIABLE([$1])
> + dnl Define it also as a C macro, for the benefit of the unit
> tests.
> + gl_MODULE_INDICATOR_FOR_TESTS([$1])
> ])
>
> AC_DEFUN([gl_SYS_WAIT_H_DEFAULTS],
> [
> + GNULIB_WAITPID=0; AC_SUBST([GNULIB_WAITPID])
> dnl Assume proper GNU behavior unless another module says
> otherwise.
> ])
> --- modules/grantpt.orig Wed Sep 29 16:00:26 2010
> +++ modules/grantpt Wed Sep 29 15:41:06 2010
> @@ -9,6 +9,7 @@
> stdlib
> extensions
> pt_chown
> +waitpid
> configmake
>
> configure.ac:
> --- modules/sys_wait.orig Wed Sep 29 16:00:26 2010
> +++ modules/sys_wait Wed Sep 29 15:32:50 2010
> @@ -9,7 +9,6 @@
> c++defs
> include_next
> warn-on-use
> -waitpid
>
> configure.ac:
> gl_SYS_WAIT_H
> @@ -27,6 +26,7 @@
> sed -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \
> -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \
> -e 's|@''NEXT_SYS_WAIT_H''@|$(NEXT_SYS_WAIT_H)|g' \
> + -e 's|@''GNULIB_WAITPID''@|$(GNULIB_WAITPID)|g' \
> -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \
> -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \
> < $(srcdir)/sys_wait.in.h; \
> --- modules/wait-process.orig Wed Sep 29 16:00:26 2010
> +++ modules/wait-process Wed Sep 29 15:41:06 2010
> @@ -17,6 +17,7 @@
> sys_wait
> unistd
> atexit
> +waitpid
>
> configure.ac:
> gl_WAIT_PROCESS
> --- modules/waitpid.orig Wed Sep 29 16:00:26 2010
> +++ modules/waitpid Wed Sep 29 15:32:00 2010
> @@ -10,6 +10,7 @@
>
> configure.ac:
> gl_FUNC_WAITPID
> +gl_SYS_WAIT_MODULE_INDICATOR([waitpid])
>
> Makefile.am:
>
> --- tests/test-sys_wait-c++.cc.orig Wed Sep 29 16:00:26 2010
> +++ tests/test-sys_wait-c++.cc Wed Sep 29 15:50:07 2010
> @@ -24,7 +24,9 @@
> #include "signature.h"
>
>
> +#if GNULIB_TEST_WAITPID
> SIGNATURE_CHECK (GNULIB_NAMESPACE::waitpid, pid_t, (pid_t, int *,
> int));
> +#endif
>
>
> int
>
>
--------------------------------------
Get the new Internet Explorer 8 optimized for Yahoo! JAPAN
http://pr.mail.yahoo.co.jp/ie8/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: definition of waitpid in sys_wait.in.h for C++ on windows,
Tatsuro MATSUOKA <=