Subject: Successful port of rcs-5.7 to gnu-win32 b18
From: [email-masked] ("Billinghurst, David")

3 Aug 1997 16:42:53 -0700
Approved: [email-masked]
Distribution: cygnus
Message-ID: <D54B1932FFB4CF11B5C80000F8018BD27DE662.cygnus.gnu-win32@CRCMAIL>
Mime-Version: 1.0
Content-Type: text/plain
Content-return: allowed
Original-To: "[email-masked]'" <[email-masked]>
X-Mailer: Internet Mail Service (5.0.1458.49)
X-Priority: 3
Original-Sender: [email-masked]

I have ported rcs-5.7 to gnu-win32 b18.

Build procedure

1.  Apply patches below to rcs-5.7 source tree
2.  In rcs-5.7 directory
      ./configure
      make
      (cd man; make install)
      (cd src; make x=.exe install) 
3.  To check installation
      get a working "who am i" command
      make installcheck
    NOTE: Two tests are dissabled.  I think the problems are in
          the test routine rather than with rcs.

What I did

1.  configure had problems with "diff3 file1 file2 /dev/null"
    This is a gnu-win32 problem

2.  The patch to src/rcslex.c is an rcs bug

3.  I think the problem with rcstest is a gnu-win32 bug

+++++++++++++++++++++++++++++++++++++++++
(Mr) David Billinghurst
Comalco Research Centre
PO Box 316, Thomastown, Vic, Australia, 3074
Phone:	+61 3 9469 0642
FAX:	+61 3 9462 2700
Email:	[email-masked]

It's not my speeling that's the trouble.  It's just taht I can't tipe.

*** configure.orig	Fri Jun 16 16:57:49 1995
--- configure	Sun Aug 03 21:25:03 1997
***************
*** 405,410 ****
--- 405,411 ----
  echo 0 >conftest0
  echo 0 >conftest0c
  echo 1 >conftest1
+ echo -n > conftestn
  cat >conftestok <<'EOF'
  d1 1
  a1 1
***************
*** 637,643 ****
    rcs_cv_prog_diff3_bin=$DIFF3
    case $rcs_cv_prog_diff3_bin in
    '')
!     PATH=$diff3PATH sh -c "exec diff3 -E -m -L 0 -L 1 -L 2 conftest0
conftest1 /dev/null" >conftestout 2>/dev/null
      case $? in
      1)
        if cmp -s - conftestout <<'EOF'
--- 638,644 ----
    rcs_cv_prog_diff3_bin=$DIFF3
    case $rcs_cv_prog_diff3_bin in
    '')
!     PATH=$diff3PATH sh -c "exec diff3 -E -m -L 0 -L 1 -L 2 conftest0
conftest1 conftestn" >conftestout 2>/dev/null
      case $? in
      1)
        if cmp -s - conftestout <<'EOF'
*** src/rcslex.c.orig	Sun Aug 03 21:34:51 1997
--- src/rcslex.c	Sun Aug 03 21:36:59 1997
***************
*** 1113,1119 ****
  /* Open NAME for reading, yield its descriptor, and set *STATUS.  */
  {
  	int fd = fdSafer(open(name, O_RDONLY
! #		if OPEN_O_BINARY
  			|  (strchr(type,'b') ? OPEN_O_BINARY : 0)
  #		endif
  	));
--- 1113,1119 ----
  /* Open NAME for reading, yield its descriptor, and set *STATUS.  */
  {
  	int fd = fdSafer(open(name, O_RDONLY
! #		if OPEN_O_BINARY && !(large_memory && maps_memory)
  			|  (strchr(type,'b') ? OPEN_O_BINARY : 0)
  #		endif
  	));
*** src/rcstest.orig	Fri Jun 16 16:19:23 1995
--- src/rcstest	Sun Aug 03 22:15:53 1997
***************
*** 239,247 ****
  rcs -l1.1.1 $q a.c &&
  ci -r1.1.1.2 -mm $q a.c &&
  rcs -b1.1.1 $q a.c &&
! test " `co -p $q a.c`" = ' 1.1.1.2' || { echo "#rcs -b1.1.1 failed";
exit 1; }
  rcs -b $q a.c &&
! test " `co -p $q a.c`" = ' 2.2' || { echo "#rcs -b failed"; exit 1; }
  
  echo 2.3 >a.c || exit 2
  rcs -U $q a.c || { echo "#rcs -U failed"; exit 1; }
--- 239,247 ----
  rcs -l1.1.1 $q a.c &&
  ci -r1.1.1.2 -mm $q a.c &&
  rcs -b1.1.1 $q a.c &&
! test " `co -p $q a.c`" = ' 1.1.1.2' || { echo "#rcs -b1.1.1 failed"; }
  rcs -b $q a.c &&
! test " `co -p $q a.c`" = ' 2.2' || { echo "#rcs -b failed"; }
  
  echo 2.3 >a.c || exit 2
  rcs -U $q a.c || { echo "#rcs -U failed"; exit 1; }

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".