Fix build on Solaris 10 (bug#75451)

* autogen.sh: Avoid bashism.
* configure.ac (AC_PROG_AWK): Use.
* src/Makefile.in (AWK): Set.
(dmpstruct.h): Use "$(AWK)", not "awk".
* src/dired.c (DT_UNKNOWN, DT_DIR, DT_LNK): Define all three constants
or none of them.
This commit is contained in:
Pip Cet 2025-01-17 17:13:29 +00:00
parent 91b2b3654f
commit 2a00bedeae
4 changed files with 16 additions and 3 deletions

View file

@ -115,7 +115,7 @@ do_check=true
do_autoconf=false
do_git=false
for arg; do
for arg in "$@"; do
case $arg in
--help)
exec echo "$0: usage: $0 [--no-check] [target...]

View file

@ -2004,6 +2004,8 @@ ARCH_INDEPENDENT_CONFIG_FILES([src/verbose.mk])
dnl Some other nice autoconf tests.
AC_PROG_INSTALL
dnl use "gawk" where possible
AC_PROG_AWK
dnl These are commented out, since gl_EARLY and/or Autoconf already does them.
dnl AC_PROG_MKDIR_P
dnl if test "x$RANLIB" = x; then

View file

@ -60,6 +60,7 @@ LDFLAGS = @LDFLAGS@
EXEEXT = @EXEEXT@
version = @version@
MKDIR_P = @MKDIR_P@
AWK = @AWK@
# Don't use LIBS. configure puts stuff in it that either shouldn't be
# linked with Emacs or is duplicated by the other stuff below.
# LIBS = @LIBS@
@ -543,7 +544,7 @@ pdumper.o: dmpstruct.h
endif
dmpstruct.h: $(srcdir)/dmpstruct.awk
dmpstruct.h: $(libsrc)/make-fingerprint$(EXEEXT) $(dmpstruct_headers)
$(AM_V_GEN)POSIXLY_CORRECT=1 awk -f $(srcdir)/dmpstruct.awk \
$(AM_V_GEN)POSIXLY_CORRECT=1 $(AWK) -f $(srcdir)/dmpstruct.awk \
$(dmpstruct_headers) > $@
AUTO_DEPEND = @AUTO_DEPEND@

View file

@ -79,7 +79,17 @@ dirent_namelen (struct dirent *dp)
}
#ifndef HAVE_STRUCT_DIRENT_D_TYPE
enum { DT_UNKNOWN, DT_DIR, DT_LNK };
#if !defined (DT_UNKNOWN) && !defined (DT_DIR) && !defined (DT_LNK)
enum {
DT_UNKNOWN,
DT_DIR,
DT_LNK,
};
#elif defined (DT_UNKNOWN) && defined (DT_DIR) && defined (DT_LNK)
/* Nothing to do here, all three are defined as macros. */
#elif defined (DT_UNKNOWN) || defined (DT_DIR) || defined (DT_LNK)
#error "Cannot determine DT_UNKNOWN, DT_DIR, DT_LNK"
#endif
#endif
/* Return the file type of DP. */