Subject: Re: RCS 5.7 on gnuwin32 b. 18
From: [email-masked] ("Lassi A. Tuura")

15 May 1997 20:25:24 -0700
Sender: [email-masked]
Approved: [email-masked]
Distribution: cygnus
Message-ID: <[email-masked]>
References: <[email-masked]>
X-Mailer: Mozilla 3.01Gold (X11; I; HP-UX B.10.10 9000/777)
MIME-Version: 1.0
Original-To: Vassilii Khachaturov <[email-masked]>
Original-CC: gnu-win32 <[email-masked]>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Original-Sender: [email-masked]

Vassilii Khachaturov wrote:
> Has someone built RCS 5.7 on gnuwin32 b. 18 or another recent build?
> I get the following diagnostics when I run make (after configure succeeds):
[snip]
> ==================================================================
> ./conf.sh: configuring has_map_fd, has_mmap, has_madvise, mmap_signal ...

Applying the following patch will allow the stuff to compile, and I hope
the changes are correct.  I'd appreciate if someone could verify the
correctness.

Cheers,
//lat
-----
% diff -ru /asis/src/GNU.LANG/rcs-5.7 rcs-5.7 
diff -ru /asis/src/GNU.LANG/rcs-5.7/src/conf.sh rcs-5.7/src/conf.sh
--- /asis/src/GNU.LANG/rcs-5.7/src/conf.sh      Fri Jun 16 08:19:24 1995
+++ rcs-5.7/src/conf.sh Wed May 14 10:32:19 1997
@@ -1025,6 +1025,10 @@
        # Early editions of SunOS 5.4 are reported to have problems with mmap
        # that generate NUL bytes in RCS files with a Solaris 2.2 NFS server.
        # This has been reported to be fixed as of patch 101945-10.
+CYGWIN32/NT*)
+       # GNU win32 does not permit mmapped file to be opened (returns with
+       # "not owner").  So which is signal rcs gets is immaterial.
+       has_map_fd=0 has_mmap=1 has_madvise=0 mmap_signal=SIGBUS ;;
 *)
        $PREPARE_CC || exit
        if ($CL -DTRY_MAP_FD=1 a.c $L && $aout <a.c) >&2
diff -ru /asis/src/GNU.LANG/rcs-5.7/src/rcslex.c rcs-5.7/src/rcslex.c
--- /asis/src/GNU.LANG/rcs-5.7/src/rcslex.c     Fri Jun 16 08:19:24 1995
+++ rcs-5.7/src/rcslex.c        Wed May 14 10:39:40 1997
@@ -1113,7 +1113,7 @@
 /* Open NAME for reading, yield its descriptor, and set *STATUS.  */
 {
        int fd = fdSafer(open(name, O_RDONLY
-#              if OPEN_O_BINARY
+#              if ! (large_memory && maps_memory) && OPEN_O_BINARY
                        |  (strchr(type,'b') ? OPEN_O_BINARY : 0)
 #              endif
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".