]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix build on Solaris 10 (bug#75451)
authorPip Cet <pipcet@protonmail.com>
Fri, 17 Jan 2025 17:13:29 +0000 (17:13 +0000)
committerEshel Yaron <me@eshelyaron.com>
Sat, 18 Jan 2025 22:00:48 +0000 (23:00 +0100)
* 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.

(cherry picked from commit 2a00bedeaef0a0caf8c810842c524b5c46de06ed)

autogen.sh
configure.ac
src/Makefile.in
src/dired.c

index 00c20c732639a372527c39195c85de826db43503..b46d1e6c90a93516107e24de8c11356e72c63e25 100755 (executable)
@@ -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...]
index ad90a448c35021135ec1747911a07baf8f232f64..995179541cb017daa50a02f21315b26b3fb1a6e2 100644 (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
index 784aadd1689eeefe6291f880718e1d29a12d941b..d987124d29d7cbe25c3218bed52d119ea7d94379 100644 (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@
index 9bfaeb39cde87c8953b0854983f58e14653bf7af..0eebdc620606e89d97537d91b4ccf0372ff8f4fb 100644 (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.  */