patch 9.1.0842: not checking for the sync() systemcall

Problem:  not checking for the sync() systemcall
Solution: check for sync in configure script, fix related #ifdefs
          (Jonas Termansen)

It's better to check for features directly rather than maintaining a
denylist of operating systems without them.

closes: #15985

Signed-off-by: Jonas 'Sortie' Termansen <sortie@maxsi.org>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/memfile.c b/src/memfile.c
index abb7c3f..4707969 100644
--- a/src/memfile.c
+++ b/src/memfile.c
@@ -594,13 +594,10 @@
 	}
 	else
 # endif
-	    // OpenNT is strictly POSIX (Benzinger)
-	    // Tandem/Himalaya NSK-OSS doesn't have sync()
-	    // No sync() on Stratus VOS
-# if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__)
-	    fflush(NULL);
-# else
+# ifdef HAVE_SYNC
 	    sync();
+# else
+	    fflush(NULL);
 # endif
 #endif
 #ifdef VMS