X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fstdlib_.h;h=a48f94cdf20f98495277bb8b6682f6b69f878018;hb=2354d5ead305b61c925e53bcfb73d47de7c53162;hp=5a23da1e8347406ab66868e0d2966715f8f4db72;hpb=3a9097ff8ab278180c9321fd29b8f1569bc9f111;p=gnulib.git diff --git a/lib/stdlib_.h b/lib/stdlib_.h index 5a23da1e8..a48f94cdf 100644 --- a/lib/stdlib_.h +++ b/lib/stdlib_.h @@ -44,6 +44,30 @@ extern "C" { #endif +#if @GNULIB_GETSUBOPT@ +/* Assuming *OPTIONP is a comma separated list of elements of the form + "token" or "token=value", getsubopt parses the first of these elements. + If the first element refers to a "token" that is member of the given + NULL-terminated array of tokens: + - It replaces the comma with a NUL byte, updates *OPTIONP to point past + the first option and the comma, sets *VALUEP to the value of the + element (or NULL if it doesn't contain an "=" sign), + - It returns the index of the "token" in the given array of tokens. + Otherwise it returns -1, and *OPTIONP and *VALUEP are undefined. + For more details see the POSIX:2001 specification. + http://www.opengroup.org/susv3xsh/getsubopt.html */ +# if !@HAVE_GETSUBOPT@ +extern int getsubopt (char **optionp, char *const *tokens, char **valuep); +# endif +#elif defined GNULIB_POSIXCHECK +# undef getsubopt +# define getsubopt(o,t,v) \ + (GL_LINK_WARNING ("getsubopt is unportable - "\ + "use gnulib module getsubopt for portability"), \ + getsubopt (o, t, v)) +#endif + + #if @GNULIB_MKDTEMP@ # if !@HAVE_MKDTEMP@ /* Create a unique temporary directory from TEMPLATE. @@ -61,6 +85,7 @@ extern char * mkdtemp (char *template); mkdtemp (t)) #endif + #if @GNULIB_MKSTEMP@ # if @REPLACE_MKSTEMP@ /* Create a unique temporary file from TEMPLATE.