diff options
author | Bruno Haible <bruno@clisp.org> | 2023-01-21 21:13:20 +0100 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2023-01-21 21:13:20 +0100 |
commit | 9041103ed4a5bd4406d05cf12e46330b3dabb33c (patch) | |
tree | 262250837ca28be59f8f7893867997c4f105fe6b /modules | |
parent | 6470d1e832f629e9366a168382be66328968a706 (diff) | |
download | gnulib-9041103ed4a5bd4406d05cf12e46330b3dabb33c.tar.gz |
login_tty: Ensure declaration in <utmp.h>.
* tests/test-utmp-c++.cc: New file.
* modules/utmp-c++-tests: New file.
* tests/test-utmp.c: New file.
* modules/utmp-tests: New file.
* lib/login_tty.c: Include <utmp.h>.
* m4/login_tty.m4: New file.
(gl_FUNC_LOGIN_TTY): Moved here from m4/pty.m4. Set HAVE_LOGIN_TTY.
* m4/pty.m4 (gl_FUNC_LOGIN_TTY): Moved to m4/login_tty.m4.
* modules/login_tty (Files): Add m4/login_tty.m4.
(Depends-on): Add utmp. Remove pty. Update condition.
(configure.ac): Update condition. Invoke gl_UTMP_MODULE_INDICATOR
instead of gl_PTY_MODULE_INDICATOR.
(Include): List <utmp.h>.
* doc/glibc-functions/login_tty.texi: Mark the include file diversity as
fixed.
* tests/test-login_tty.c: Include <utmp.h>. Don't declare login_tty
here.
* lib/utmp.in.h: New file.
* m4/utmp_h.m4: New file.
* modules/utmp: New file.
* doc/glibc-headers/utmp.texi: New file.
* doc/gnulib.texi (Glibc Header File Substitutes): Include it.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/login_tty | 11 | ||||
-rw-r--r-- | modules/utmp | 49 | ||||
-rw-r--r-- | modules/utmp-c++-tests | 19 | ||||
-rw-r--r-- | modules/utmp-tests | 11 |
4 files changed, 85 insertions, 5 deletions
diff --git a/modules/login_tty b/modules/login_tty index aa46b7f8b0..7b09ec1bd2 100644 --- a/modules/login_tty +++ b/modules/login_tty @@ -4,17 +4,18 @@ standard input, standard output, standard error of the current process. Files: lib/login_tty.c +m4/login_tty.m4 m4/pty.m4 Depends-on: -pty +utmp sys_ioctl -open [test $ac_cv_func_login_tty = no] +open [test $HAVE_LOGIN_TTY = 0] configure.ac: gl_FUNC_LOGIN_TTY -gl_CONDITIONAL([GL_COND_OBJ_LOGIN_TTY], [test $ac_cv_func_login_tty = no]) -gl_PTY_MODULE_INDICATOR([login_tty]) +gl_CONDITIONAL([GL_COND_OBJ_LOGIN_TTY], [test $HAVE_LOGIN_TTY = 0]) +gl_UTMP_MODULE_INDICATOR([login_tty]) Makefile.am: if GL_COND_OBJ_LOGIN_TTY @@ -22,7 +23,7 @@ lib_SOURCES += login_tty.c endif Include: -extern int login_tty (int); +<utmp.h> Link: $(PTY_LIB) diff --git a/modules/utmp b/modules/utmp new file mode 100644 index 0000000000..3a02f01364 --- /dev/null +++ b/modules/utmp @@ -0,0 +1,49 @@ +Description: +A GNU-like <utmp.h>. + +Files: +lib/utmp.in.h +m4/utmp_h.m4 + +Depends-on: +gen-header +include_next +snippet/c++defs +snippet/warn-on-use + +configure.ac: +gl_UTMP_H +gl_UTMP_H_REQUIRE_DEFAULTS +AC_PROG_MKDIR_P + +Makefile.am: +BUILT_SOURCES += utmp.h + +# We need the following in order to create <utmp.h> when the system +# doesn't have one that works with the given compiler. +utmp.h: utmp.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) +@NMD@ $(AM_V_GEN)$(MKDIR_P) '%reldir%' + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|g' \ + -e 's/@''HAVE_UTMP_H''@/$(HAVE_UTMP_H)/g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|@PRAGMA_SYSTEM_HEADER@|g' \ + -e 's|@''PRAGMA_COLUMNS''@|@PRAGMA_COLUMNS@|g' \ + -e 's|@''NEXT_UTMP_H''@|$(NEXT_UTMP_H)|g' \ + -e 's/@''GNULIB_LOGIN_TTY''@/$(GNULIB_LOGIN_TTY)/g' \ + -e 's|@''HAVE_LOGIN_TTY''@|$(HAVE_LOGIN_TTY)|g' \ + -e 's|@''REPLACE_LOGIN_TTY''@|$(REPLACE_LOGIN_TTY)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/utmp.in.h > $@-t + $(AM_V_at)mv $@-t $@ +MOSTLYCLEANFILES += utmp.h utmp.h-t + +Include: +<utmp.h> + +License: +LGPLv2+ + +Maintainer: +all diff --git a/modules/utmp-c++-tests b/modules/utmp-c++-tests new file mode 100644 index 0000000000..814dfc36db --- /dev/null +++ b/modules/utmp-c++-tests @@ -0,0 +1,19 @@ +Files: +tests/test-utmp-c++.cc +tests/signature.h + +Status: +c++-test + +Depends-on: +ansi-c++-opt + +configure.ac: + +Makefile.am: +if ANSICXX +TESTS += test-utmp-c++ +check_PROGRAMS += test-utmp-c++ +test_utmp_c___SOURCES = test-utmp-c++.cc +test_utmp_c___LDADD = $(LDADD) $(PTY_LIB) +endif diff --git a/modules/utmp-tests b/modules/utmp-tests new file mode 100644 index 0000000000..4fa3d62aa8 --- /dev/null +++ b/modules/utmp-tests @@ -0,0 +1,11 @@ +Files: +tests/test-utmp.c + +Depends-on: +utmp-c++-tests + +configure.ac: + +Makefile.am: +TESTS += test-utmp +check_PROGRAMS += test-utmp |