diff --git a/lisp/Config.sun4_solaris_gcc b/lisp/Config.sun4_solaris_gcc
index 9769237bf69cb6197f4f4162906c7c0a5d8f8b61..200d5e8ad48fb6d653f90f7e9a447226f570d1f2 100644
--- a/lisp/Config.sun4_solaris_gcc
+++ b/lisp/Config.sun4_solaris_gcc
@@ -1,4 +1,6 @@
-CPPFLAGS = -I/usr/openwin/include -I/usr/include/X11 -DSOLARIS -DSVR4
+# For Solaris 2.4 or earlier, remove -DSOLARIS25 from CPPFLAGS.
+
+CPPFLAGS = -I/usr/openwin/include -I/usr/include/X11 -DSOLARIS -DSOLARIS25 -DSVR4
 CC = gcc
 CPP = gcc -E
 CFLAGS = -g
@@ -9,6 +11,11 @@ DEPEND_FLAGS = -traditional-cpp
 NM = ./solaris-nm
 ASSEM_SRC = sparc-assem.S
 ARCH_SRC = sparc-arch.c
-OS_SRC = sunos-os.c os-common.c undefineds.c
+
+# For Solaris, you may also use sunos-os.c instead of solaris-os.c.
+# This has been checked out on Solaris 2.7 (aka 7) without problems.
+# The resulting binaries work ok on 2.5.
+
+OS_SRC = solaris-os.c os-common.c undefineds.c
 OS_LINK_FLAGS=
 OS_LIBS= -lsocket -lnsl -ldl
diff --git a/lisp/Config.sun4_solaris_sunc b/lisp/Config.sun4_solaris_sunc
index 5920af2eb6a6fdb16534609432e524cbad08db60..2a391f93096c21536293f3e1f7d41fec745b95eb 100644
--- a/lisp/Config.sun4_solaris_sunc
+++ b/lisp/Config.sun4_solaris_sunc
@@ -1,4 +1,6 @@
-CPPFLAGS = -I/usr/include/X11 -DSOLARIS -DSVR4
+# For Solaris 2.4 or earlier, remove -DSOLARIS25 from CPPFLAGS.
+
+CPPFLAGS = -I/usr/include/X11 -DSOLARIS -DSOLARIS25 -DSVR4
 CC = cc
 CPP = cc -E
 # -xs so we can use gdb
@@ -8,6 +10,11 @@ COMPILE.S = as -P $(CPPFLAGS)
 NM = ./solaris-nm
 ASSEM_SRC = sparc-assem.S
 ARCH_SRC = sparc-arch.c
+
+# For Solaris, you may also use sunos-os.c instead of solaris-os.c.
+# This has been checked out on Solaris 2.7 (aka 7) without problems.
+# The resulting binaries work ok on 2.5.
+
 OS_SRC = sunos-os.c os-common.c undefineds.c
 OS_LINK_FLAGS=
 OS_LIBS= -lsocket -lnsl -ldl