updated for version 7.2.371
Problem:    Build problems on Tandem NonStop.
Solution:   A few changes to #ifdefs (Joachim Schmitz)
diff --git a/src/auto/configure b/src/auto/configure
index c2f1d02..0362c5a 100755
--- a/src/auto/configure
+++ b/src/auto/configure
Binary files differ
diff --git a/src/config.h.in b/src/config.h.in
index 2b2730e..8fc8539 100644
--- a/src/config.h.in
+++ b/src/config.h.in
@@ -144,7 +144,6 @@
 #undef HAVE_FCHOWN
 #undef HAVE_FSEEKO
 #undef HAVE_FSYNC
-#undef HAVE_FTELLO
 #undef HAVE_GETCWD
 #undef HAVE_GETPSEUDOTTY
 #undef HAVE_GETPWNAM
diff --git a/src/configure.in b/src/configure.in
index b718799..177fa88 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -2642,14 +2642,16 @@
   AC_DEFINE(BAD_GETCWD)
 fi
 
-dnl Check for functions in one big call, to reduce the size of configure
-AC_CHECK_FUNCS(bcmp fchdir fchown fseeko fsync ftello getcwd getpseudotty \
+dnl Check for functions in one big call, to reduce the size of configure.
+dnl Can only be used for functions that do not require any include.
+AC_CHECK_FUNCS(bcmp fchdir fchown fsync getcwd getpseudotty \
 	getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
 	memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
 	setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
 	sigvec strcasecmp strerror strftime stricmp strncasecmp \
 	strnicmp strpbrk strtol tgetent towlower towupper iswupper \
 	usleep utime utimes)
+AC_FUNC_FSEEKO
 
 dnl fstatfs() can take 2 to 4 arguments, try to use st_blksize if possible
 AC_MSG_CHECKING(for st_blksize)
diff --git a/src/if_cscope.c b/src/if_cscope.c
index b2a4ce1..b8fef28 100644
--- a/src/if_cscope.c
+++ b/src/if_cscope.c
@@ -2278,7 +2278,11 @@
 	/* Use sigaction() to limit the waiting time to two seconds. */
 	sigemptyset(&sa.sa_mask);
 	sa.sa_handler = sig_handler;
+#  ifdef SA_NODEFER
 	sa.sa_flags = SA_NODEFER;
+#  else
+	sa.sa_flags = 0;
+#  endif
 	sigaction(SIGALRM, &sa, &old);
 	alarm(2); /* 2 sec timeout */
 
diff --git a/src/osdef1.h.in b/src/osdef1.h.in
index bdc6247..8190c9b 100644
--- a/src/osdef1.h.in
+++ b/src/osdef1.h.in
@@ -25,7 +25,7 @@
 extern int	fseeko __ARGS((FILE *, off_t, int));
 #endif
 extern long	ftell __ARGS((FILE *));
-#ifdef HAVE_FTELLO
+#ifdef HAVE_FSEEKO
 extern off_t	ftello __ARGS((FILE *));
 #endif
 extern void	rewind __ARGS((FILE *));
diff --git a/src/tag.c b/src/tag.c
index 5dc56d3..ba36de7 100644
--- a/src/tag.c
+++ b/src/tag.c
@@ -90,8 +90,9 @@
 /*
  * We use ftello() here, if available.  It returns off_t instead of long,
  * which helps if long is 32 bit and off_t is 64 bit.
+ * We assume that when fseeko() is available then ftello() is too.
  */
-#ifdef HAVE_FTELLO
+#ifdef HAVE_FSEEKO
 # define ftell ftello
 #endif
 
diff --git a/src/version.c b/src/version.c
index 212e34d..1718aa5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -682,6 +682,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    371,
+/**/
     370,
 /**/
     369,
diff --git a/src/vim.h b/src/vim.h
index 804070e..13f00ce 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -52,7 +52,9 @@
 
 /* user ID of root is usually zero, but not for everybody */
 #ifdef __TANDEM
-# define _TANDEM_SOURCE
+# ifndef _TANDEM_SOURCE
+#  define _TANDEM_SOURCE
+# endif
 # include <floss.h>
 # define ROOT_UID 65535
 #else