Hash :
36db8e32
Author :
Date :
2024-07-26T13:04:09
sys_un: Avoid compilation error in C++ <string.h> on glibc systems. * m4/sys_un_h.m4 (gl_SYS_UN_H): Require AC_CANONICAL_HOST. Set GL_GENERATE_SYS_UN_H to true on glibc systems. Invoke gl_CHECK_NEXT_HEADERS. Initialize HAVE_SYS_UN_H. * lib/sys_un.in.h: Use include_next and a split double-inclusion guard. In C++ mode, include <stddef.h> and <string.h> first. * modules/sys_un (Depends-on): Add include_next. (Makefile.am): Substitute INCLUDE_NEXT, PRAGMA_SYSTEM_HEADER, PRAGMA_COLUMNS, NEXT_SYS_UN_H, HAVE_SYS_UN_H. Arrange to remove 'sys' directory at "make mostlyclean".
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
Description:
A POSIX-like <sys/un.h>.
Files:
lib/sys_un.in.h
m4/sys_un_h.m4
Depends-on:
gen-header
include_next
sys_socket
configure.ac:
gl_SYS_UN_H
gl_CONDITIONAL_HEADER([sys/un.h])
AC_PROG_MKDIR_P
Makefile.am:
BUILT_SOURCES += $(SYS_UN_H)
# We need the following in order to create <sys/un.h> when the system
# doesn't have one.
if GL_GENERATE_SYS_UN_H
sys/un.h: sys_un.in.h $(top_builddir)/config.status
@NMD@ $(AM_V_GEN)$(MKDIR_P) '%reldir%'
$(gl_V_at)$(SED_HEADER_STDOUT) \
-e 's|@''GUARD_PREFIX''@|${gl_include_guard_prefix}|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_SYS_UN_H''@|$(NEXT_SYS_UN_H)|g' \
-e 's|@''HAVE_SYS_UN_H''@|$(HAVE_SYS_UN_H)|g' \
-e 's|@''HAVE_WINSOCK2_H''@|$(HAVE_WINSOCK2_H)|g' \
-e 's|@''HAVE_AFUNIX_H''@|$(HAVE_AFUNIX_H)|g' \
$(srcdir)/sys_un.in.h > $@-t
$(AM_V_at)mv $@-t $@
else
sys/un.h: $(top_builddir)/config.status
rm -f $@
endif
MOSTLYCLEANFILES += sys/un.h sys/un.h-t
MOSTLYCLEANDIRS += sys
Include:
<sys/un.h>
License:
LGPLv2+
Maintainer:
all