Mercurial > gnulib
annotate modules/stdlib @ 16067:c4b6df81c7b3
ptsname_r: new module
For now, this replacement focuses solely on compilation
compatibility, and assumes that isatty() and ttyname_r() work
on a master side pty; if this assumption fails, or if
thread-safety is also required, then a later patch can follow
the lead of strerror_r.c in wrapping the system ptsname()
with a lock.
* modules/ptsname_r: New module.
* m4/ptsname_r.m4 (gl_FUNC_PTSNAME_R): New file.
* lib/ptsname.c (__ptsname_r): Split...
* lib/ptsname_r.c: ...into new file.
* m4/stdlib_h.m4 (gl_STDLIB_H): Check for decl.
(gl_STDLIB_H_DEFAULTS): Set witness defaults.
* modules/stdlib (Makefile.am): Substitute witnesses.
* lib/stdlib.in.h (ptsname_r): Declare it.
* doc/glibc-functions/ptsname_r.texi (ptsname_r): Document it.
* MODULES.html.sh (Misc): Likewise.
* modules/ptsname (Depends-on): Alter dependency.
* doc/posix-functions/ptsname.texi (ptsname): Mention new module.
Signed-off-by: Eric Blake <eblake@redhat.com>
author | Eric Blake <eblake@redhat.com> |
---|---|
date | Mon, 07 Nov 2011 15:26:08 -0700 |
parents | 27cc5b08d442 |
children | cd0ee16f47e9 |
rev | line source |
---|---|
8190 | 1 Description: |
2 A GNU-like <stdlib.h>. | |
3 | |
4 Files: | |
9263
bb62a6456893
Rename stdlib_.h to stdlib.in.h.
Bruno Haible <bruno@clisp.org>
parents:
9192
diff
changeset
|
5 lib/stdlib.in.h |
8190 | 6 m4/stdlib_h.m4 |
7 | |
8 Depends-on: | |
9781
118f0bb3f732
Fix commit from 2007-06-20.
Bruno Haible <bruno@clisp.org>
parents:
9545
diff
changeset
|
9 include_next |
15415
768296dab89a
Rename module 'arg-nonnull' to 'snippet/arg-nonnull'.
Bruno Haible <bruno@clisp.org>
parents:
15396
diff
changeset
|
10 snippet/arg-nonnull |
15416
10b35faca629
Rename module 'c++defs' to 'snippet/c++defs'.
Bruno Haible <bruno@clisp.org>
parents:
15415
diff
changeset
|
11 snippet/c++defs |
15419
d2437ed29d20
Rename module 'warn-on-use' to 'snippet/warn-on-use'.
Bruno Haible <bruno@clisp.org>
parents:
15416
diff
changeset
|
12 snippet/warn-on-use |
15421
b6461672c583
Rename module '_Noreturn' to 'snippet/_Noreturn'.
Bruno Haible <bruno@clisp.org>
parents:
15419
diff
changeset
|
13 snippet/_Noreturn |
11832
ff3dd373542b
stddef: fix NetBSD 5.0 NULL bug, rather than working around it
Eric Blake <ebb9@byu.net>
parents:
11428
diff
changeset
|
14 stddef |
12766
2c14f1e449e5
warn-on-use: use instead of link-warning
Eric Blake <ebb9@byu.net>
parents:
12422
diff
changeset
|
15 unistd |
8190 | 16 |
17 configure.ac: | |
18 gl_STDLIB_H | |
19 | |
20 Makefile.am: | |
21 BUILT_SOURCES += stdlib.h | |
22 | |
23 # We need the following in order to create <stdlib.h> when the system | |
24 # doesn't have one that works with the given compiler. | |
15396 | 25 stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ |
26 $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) | |
11868
67c2b22aff08
annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
Jim Meyering <meyering@redhat.com>
parents:
11832
diff
changeset
|
27 $(AM_V_GEN)rm -f $@-t $@ && \ |
8190 | 28 { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */' && \ |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14527
diff
changeset
|
29 sed -e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \ |
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14527
diff
changeset
|
30 -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ |
10375
f96e845fc36d
Avoid some "gcc -pedantic" warnings.
Bruno Haible <bruno@clisp.org>
parents:
10001
diff
changeset
|
31 -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ |
13761
a19ace3ba849
Avoid line length limitation from HP NonStop system header files.
Bruno Haible <bruno@clisp.org>
parents:
13751
diff
changeset
|
32 -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ |
8995
1025663f7658
* m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
Paul Eggert <eggert@cs.ucla.edu>
parents:
8819
diff
changeset
|
33 -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ |
14894
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
34 -e 's/@''GNULIB__EXIT''@/$(GNULIB__EXIT)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
35 -e 's/@''GNULIB_ATOLL''@/$(GNULIB_ATOLL)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
36 -e 's/@''GNULIB_CALLOC_POSIX''@/$(GNULIB_CALLOC_POSIX)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
37 -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GNULIB_CANONICALIZE_FILE_NAME)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
38 -e 's/@''GNULIB_GETLOADAVG''@/$(GNULIB_GETLOADAVG)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
39 -e 's/@''GNULIB_GETSUBOPT''@/$(GNULIB_GETSUBOPT)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
40 -e 's/@''GNULIB_GRANTPT''@/$(GNULIB_GRANTPT)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
41 -e 's/@''GNULIB_MALLOC_POSIX''@/$(GNULIB_MALLOC_POSIX)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
42 -e 's/@''GNULIB_MBTOWC''@/$(GNULIB_MBTOWC)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
43 -e 's/@''GNULIB_MKDTEMP''@/$(GNULIB_MKDTEMP)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
44 -e 's/@''GNULIB_MKOSTEMP''@/$(GNULIB_MKOSTEMP)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
45 -e 's/@''GNULIB_MKOSTEMPS''@/$(GNULIB_MKOSTEMPS)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
46 -e 's/@''GNULIB_MKSTEMP''@/$(GNULIB_MKSTEMP)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
47 -e 's/@''GNULIB_MKSTEMPS''@/$(GNULIB_MKSTEMPS)/g' \ |
15961 | 48 -e 's/@''GNULIB_POSIX_OPENPT''@/$(GNULIB_POSIX_OPENPT)/g' \ |
14894
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
49 -e 's/@''GNULIB_PTSNAME''@/$(GNULIB_PTSNAME)/g' \ |
16067 | 50 -e 's/@''GNULIB_PTSNAME_R''@/$(GNULIB_PTSNAME_R)/g' \ |
14894
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
51 -e 's/@''GNULIB_PUTENV''@/$(GNULIB_PUTENV)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
52 -e 's/@''GNULIB_RANDOM_R''@/$(GNULIB_RANDOM_R)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
53 -e 's/@''GNULIB_REALLOC_POSIX''@/$(GNULIB_REALLOC_POSIX)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
54 -e 's/@''GNULIB_REALPATH''@/$(GNULIB_REALPATH)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
55 -e 's/@''GNULIB_RPMATCH''@/$(GNULIB_RPMATCH)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
56 -e 's/@''GNULIB_SETENV''@/$(GNULIB_SETENV)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
57 -e 's/@''GNULIB_STRTOD''@/$(GNULIB_STRTOD)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
58 -e 's/@''GNULIB_STRTOLL''@/$(GNULIB_STRTOLL)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
59 -e 's/@''GNULIB_STRTOULL''@/$(GNULIB_STRTOULL)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
60 -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GNULIB_SYSTEM_POSIX)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
61 -e 's/@''GNULIB_UNLOCKPT''@/$(GNULIB_UNLOCKPT)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
62 -e 's/@''GNULIB_UNSETENV''@/$(GNULIB_UNSETENV)/g' \ |
b22360ddefc4
gnulib-tool: Better isolation between different gnulib-tool invocations.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
63 -e 's/@''GNULIB_WCTOMB''@/$(GNULIB_WCTOMB)/g' \ |
14316
6f2788453d27
Split large sed scripts, for HP-UX sed.
Bruno Haible <bruno@clisp.org>
parents:
14314
diff
changeset
|
64 < $(srcdir)/stdlib.in.h | \ |
6f2788453d27
Split large sed scripts, for HP-UX sed.
Bruno Haible <bruno@clisp.org>
parents:
14314
diff
changeset
|
65 sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ |
10673 | 66 -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ |
12015
9317d4a9ac96
canonicalize, canonicalize-lgpl: use <stdlib.h>
Eric Blake <ebb9@byu.net>
parents:
12008
diff
changeset
|
67 -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ |
11997 | 68 -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ |
8198
d84ab7c183f4
getsubopt.h is replaced with <stdlib.h>.
Bruno Haible <bruno@clisp.org>
parents:
8190
diff
changeset
|
69 -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ |
13028 | 70 -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ |
8190 | 71 -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ |
11882 | 72 -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ |
12234
b45701f2ff71
mkstemps, mkostemps: new modules
Eric Blake <ebb9@byu.net>
parents:
12018
diff
changeset
|
73 -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ |
13120
0f4b3b66e73c
mkstemp: Fix C++ test error on mingw.
Bruno Haible <bruno@clisp.org>
parents:
13030
diff
changeset
|
74 -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ |
12234
b45701f2ff71
mkstemps, mkostemps: new modules
Eric Blake <ebb9@byu.net>
parents:
12018
diff
changeset
|
75 -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ |
15961 | 76 -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \ |
13025 | 77 -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ |
16067 | 78 -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \ |
11997 | 79 -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ |
80 -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ | |
12016
4fac822214af
canonicalize-lgpl: use native realpath if it works
Eric Blake <ebb9@byu.net>
parents:
12015
diff
changeset
|
81 -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ |
10001 | 82 -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ |
13947
4ca29955b657
setenv: Add missing declaration on OSF/1 5.1.
Bruno Haible <bruno@clisp.org>
parents:
13761
diff
changeset
|
83 -e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \ |
9821
18bab9955c43
Document various strtod bugs, with some fixes.
Eric Blake <ebb9@byu.net>
parents:
9781
diff
changeset
|
84 -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \ |
10671
459974cd8b12
Add strtoll() declaration to <stdlib.h>.
Bruno Haible <bruno@clisp.org>
parents:
10665
diff
changeset
|
85 -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \ |
10672
66414a3e577c
Add strtoull() declaration to <stdlib.h>.
Bruno Haible <bruno@clisp.org>
parents:
10671
diff
changeset
|
86 -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ |
10719
620520e8b04c
stdlib: Provide struct random_data.
Simon Josefsson <simon@josefsson.org>
parents:
10704
diff
changeset
|
87 -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ |
10665
5394a3a10398
Add a getloadavg() declaration to <stdlib.h>.
Bruno Haible <bruno@clisp.org>
parents:
10375
diff
changeset
|
88 -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ |
13030 | 89 -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ |
13948
4d99f06b61cd
unsetenv: Add missing declaration on OSF/1 5.1.
Bruno Haible <bruno@clisp.org>
parents:
13947
diff
changeset
|
90 -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ |
13438
425a8899539e
Fix HAVE_CALLOC_POSIX misnomer.
Bruno Haible <bruno@clisp.org>
parents:
13436
diff
changeset
|
91 -e 's|@''REPLACE_CALLOC''@|$(REPLACE_CALLOC)|g' \ |
12018
586fda772b8f
canonicalize-lgpl: fix glibc bug with trailing slash
Eric Blake <ebb9@byu.net>
parents:
12016
diff
changeset
|
92 -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ |
13434
3075f4843802
Fix HAVE_MALLOC_POSIX misnomer.
Bruno Haible <bruno@clisp.org>
parents:
13120
diff
changeset
|
93 -e 's|@''REPLACE_MALLOC''@|$(REPLACE_MALLOC)|g' \ |
14377 | 94 -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ |
8190 | 95 -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ |
9434
b839560eec9f
Define the putenv substitute in <stdlib.h> rather than in <config.h>.
Bruno Haible <bruno@clisp.org>
parents:
9315
diff
changeset
|
96 -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ |
13436
cb3c3063dacf
Fix HAVE_REALLOC_POSIX misnomer.
Bruno Haible <bruno@clisp.org>
parents:
13434
diff
changeset
|
97 -e 's|@''REPLACE_REALLOC''@|$(REPLACE_REALLOC)|g' \ |
12015
9317d4a9ac96
canonicalize, canonicalize-lgpl: use <stdlib.h>
Eric Blake <ebb9@byu.net>
parents:
12008
diff
changeset
|
98 -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ |
12300
c8288fd3f281
setenv, unsetenv: work around various bugs
Eric Blake <ebb9@byu.net>
parents:
12234
diff
changeset
|
99 -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ |
9821
18bab9955c43
Document various strtod bugs, with some fixes.
Eric Blake <ebb9@byu.net>
parents:
9781
diff
changeset
|
100 -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \ |
12300
c8288fd3f281
setenv, unsetenv: work around various bugs
Eric Blake <ebb9@byu.net>
parents:
12234
diff
changeset
|
101 -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \ |
14378 | 102 -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \ |
12941
0c9896a5a035
stdlib: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12766
diff
changeset
|
103 -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ |
15396 | 104 -e '/definition of _Noreturn/r $(_NORETURN_H)' \ |
12422
f7842310a565
New module 'arg-nonnull'. Declare which arguments expect non-NULL values.
Bruno Haible <bruno@clisp.org>
parents:
12410
diff
changeset
|
105 -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ |
14316
6f2788453d27
Split large sed scripts, for HP-UX sed.
Bruno Haible <bruno@clisp.org>
parents:
14314
diff
changeset
|
106 -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \ |
11868
67c2b22aff08
annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
Jim Meyering <meyering@redhat.com>
parents:
11832
diff
changeset
|
107 } > $@-t && \ |
8190 | 108 mv $@-t $@ |
109 MOSTLYCLEANFILES += stdlib.h stdlib.h-t | |
110 | |
111 Include: | |
12008
18ea6ab4e81d
maint: make Include sections of modules consistent
Eric Blake <ebb9@byu.net>
parents:
11997
diff
changeset
|
112 <stdlib.h> |
8190 | 113 |
114 License: | |
9315
be88e4511678
Change license to LGPLv2+ on dummy, float, realloc, stdlib.
Simon Josefsson <simon@josefsson.org>
parents:
9263
diff
changeset
|
115 LGPLv2+ |
8190 | 116 |
117 Maintainer: | |
118 all |