From: VGris AT aironet DOT com ("Griswold, Victor") Subject: Cygnus Win32 B17.1: Port of GNU/Purdue RCS 5.7 25 Feb 1997 14:31:16 -0800 Approved: cygnus DOT gnu-win32 AT cygnus DOT com Distribution: cygnus Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Original-To: "'Cygnus:GNU-WIN32'" , "'rcs-bugs AT cs DOT purdue DOT edu'" X-Mailer: Microsoft Exchange Server Internet Mail Connector Version 4.0.994.63 Original-Sender: owner-gnu-win32 AT cygnus DOT com Gentlemen: The following are diffs against the GNU RCS 5.7 distribution for building RCS 5.7 under Cygnus GNU-Win32. This build of RCS has been checked against both 'rcstest' and, indirectly, though 'CVS sanity'. Both text and binary files work correctly (though there is no warranty, of course ;-) ). Many useful suggestions came from examining the Purdue University port of RCS 5.7 to Windows NT, though some binary file-handling bugs in that port were corrected (see 'conf.h' diffs below). The extended 'rlog' below, for instance, comes from the Purdue source. Pardons for posting the diffs here; I have no anonymous FTP site available. Before running 'configure', make sure to do a global search-and-replace of '/dev/null' with 'NUL'. Similarly with 'rcstest'. Proper operation of this port with binary files depends on rebuilding the 'diff' utility from the Cygnus GNU-Win32 distribution with '#define HAVE_SETMODE 1' in 'config.h' in order to enable the '--binary' option. I would strongly recommend that Cygnus make this the standard configuration for GNU-Win32; it harms nothing and adds a useful capability. The Purdue distribution of 'diff', for instance, has it enabled. The generated 'conf.h' file should be modified in accordance with the diffs below, as well. I have not had the opportunity to properly modify the auto-generation script. The 'blat' command-line utility, version 1.5i, was used for SMTP mail notifications. The environment variable 'TZ' must be set for proper timestamp operation. For instance, 'set TZ=EST5' for Eastern Standard Time. I hate to even reference the "text vs. binary file" issue, but some points of view had to drive the this port. Some of our _requirements_ were: -- Both Unix, Windows NT, and Windows 95 users had to be able to access the same repositories. -- No developers wanted to manually translate LF <-> CRLF. -- Some Windows developers used tools which DID care about CRLF. (You would be surprised how many BRIEF users are still out there, especially for a quick edit from a command shell). -- Binary files had to be supported (Word documents, etc.). In general, the system, to be accepted instead of PVCS, had to work with as few surprises as did PVCS. Anything less would be considered a bug, and rollout of the tool would probably fail due to some people either circumventing use of the tool, remaining with PVCS, or just perceived loss of functionality. In-house religious wars were not to be tolerated: the tool must be generally accepted as superior. Towards these ends: -- The RCS repository is maintained in "Unix normal" format: just LF. -- Non-explicitly-binary files are read into RCS in Text Mode and written out in Text Mode. '-kb' files are read/written in Binary Mode. -- Just in case some "uninformed user" (i.e. f**l) in Windows-land performs a direct edit of a repository in an editor which really likes CRLF, the RCS repository scan routines have been made more robust in case they encounter a rogue '\r'. This also helps if some poor soul accidentally modifies a repository with some other Windows port of RCS, which does not maintain the repository in Unix-normal format. Bottom line: everybody is happy. RCS works on both platforms, people work productively, and the time I spent modifying the RCS source pales in comparison to the time I would have spent supporting new users of the tools. This might be considered a lesson in productive use of time for those who would like to flame about an issue more than resolve it. Diffs of CVS 1.9 which passes 'sanity.sh' on Windows NT are coming as soon as I can extract and package them. Victor J. Griswold, D.Sc. Aironet Wireless Communications, Inc. voice: 330-664-7987 fax: 330-664-7301 email: (MS-Mail) vgris AT aironet DOT com (MIME) Victor DOT Griswold AT pobox DOT com Index: RCS_src/src/ci.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/ci.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 ci.c *** ci.c 1997/01/16 18:35:01 1.1.1.1 --- ci.c 1997/02/25 19:05:05 *************** *** 711,717 **** *++diffp = DIFF; *++diffp = DIFFFLAGS; # if OPEN_O_BINARY ! if (Expand == BINARY_EXPAND) *++diffp = "--binary"; # endif *++diffp = newhead ? "-" : expname; --- 711,723 ---- *++diffp = DIFF; *++diffp = DIFFFLAGS; # if OPEN_O_BINARY ! if ( ! #if !defined(_WIN32) ! Expand == BINARY_EXPAND ! #else /* !defined(_WIN32) */ ! 1 ! #endif /* !defined(_WIN32) */ ! ) *++diffp = "--binary"; # endif *++diffp = newhead ? "-" : expname; Index: RCS_src/src/rcs.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcs.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcs.c *** rcs.c 1997/01/16 18:35:02 1.1.1.1 --- rcs.c 1997/02/25 19:05:07 *************** *** 1518,1524 **** scanlogtext(deltas->first, false); if ( cuthead ) { cutname = maketemp(3); ! if (!(fcut = fopenSafer(cutname, FOPEN_WPLUS_WORK))) { efaterror(cutname); } --- 1518,1524 ---- scanlogtext(deltas->first, false); if ( cuthead ) { cutname = maketemp(3); ! if (!(fcut = fopenSafer(cutname, FOPEN_WPLUS))) { efaterror(cutname); } *************** *** 1544,1550 **** *++diffp = DIFF; *++diffp = DIFFFLAGS; # if OPEN_O_BINARY ! if (Expand == BINARY_EXPAND) *++diffp == "--binary"; # endif *++diffp = "-"; --- 1544,1556 ---- *++diffp = DIFF; *++diffp = DIFFFLAGS; # if OPEN_O_BINARY ! if ( ! #if !defined(_WIN32) ! Expand == BINARY_EXPAND ! #else /* !defined(_WIN32) */ ! 1 ! #endif /* !defined(_WIN32) */ ! ) *++diffp == "--binary"; # endif *++diffp = "-"; Index: RCS_src/src/rcsclean.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsclean.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsclean.c *** rcsclean.c 1997/01/16 18:35:02 1.1.1.1 --- rcsclean.c 1997/02/25 19:05:07 *************** *** 300,305 **** --- 300,307 ---- while ((errno = 0, e = readdir(d))) { char const *en = e->d_name; size_t s = strlen(en) + 1; + if (s == 1) /* bypass cygwin.dll rel. b17.1 bug */ + continue; if (en[0]=='.' && (!en[1] || (en[1]=='.' && !en[2]))) continue; if (rcssuffix(en)) Index: RCS_src/src/rcsdiff.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsdiff.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsdiff.c Index: RCS_src/src/rcsedit.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsedit.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsedit.c *** rcsedit.c 1997/01/16 18:35:02 1.1.1.1 --- rcsedit.c 1997/02/25 19:05:07 *************** *** 997,1002 **** --- 997,1003 ---- switch ((c = *s++)) { case 0: return; case '\t': aputs("\\t", out); break; + case '\r': aputs("\\r", out); break; case '\n': aputs("\\n", out); break; case ' ': aputs("\\040", out); break; case KDELIM: aputs("\\044", out); break; Index: RCS_src/src/rcsfnms.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsfnms.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsfnms.c *** rcsfnms.c 1997/01/16 18:35:02 1.1.1.1 --- rcsfnms.c 1997/02/25 19:05:07 *************** *** 600,606 **** --- 600,610 ---- preferold = RCSbuf.string[0] && (mustread||0<=fdlock); finptr = (*rcsopen)(&RCSb, &RCSstat, mustread); + #if !defined(_WIN32) interesting = finptr || errno!=ENOENT; + #else /* !defined(_WIN32) */ + interesting = finptr || (errno!=ENOENT && errno!=ENOTDIR); + #endif /* !defined(_WIN32) */ if (interesting || !preferold) { /* Use the new name. */ RCSerrno = errno; Index: RCS_src/src/rcsgen.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsgen.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsgen.c *** rcsgen.c 1997/01/16 18:35:02 1.1.1.1 --- rcsgen.c 1997/02/25 19:05:09 *************** *** 589,595 **** */ { RILE *fin; ! if (!(fin = Iopen(srcname, "r", (struct stat*)0))) { eerror(srcname); return false; } --- 589,595 ---- */ { RILE *fin; ! if (!(fin = Iopen(srcname, FOPEN_R_WORK, (struct stat*)0))) { eerror(srcname); return false; } Index: RCS_src/src/rcsrev.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsrev.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsrev.c *** rcsrev.c 1997/01/16 18:35:03 1.1.1.1 --- rcsrev.c 1997/02/25 19:05:09 *************** *** 869,875 **** aputs("No input file\n",stderr); exitmain(EXIT_FAILURE); } ! if (!(finptr=Iopen(argv[1], FOPEN_R, (struct stat*)0))) { faterror("can't open input file %s", argv[1]); } Lexinit(); --- 869,875 ---- aputs("No input file\n",stderr); exitmain(EXIT_FAILURE); } ! if (!(finptr=Iopen(argv[1], FOPEN_RB, (struct stat*)0))) { faterror("can't open input file %s", argv[1]); } Lexinit(); Index: RCS_src/src/rcssyn.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcssyn.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcssyn.c *** rcssyn.c 1997/01/16 18:35:03 1.1.1.1 --- rcssyn.c 1997/02/25 19:05:09 *************** *** 657,663 **** aputs("No input file\n",stderr); exitmain(EXIT_FAILURE); } ! if (!(finptr = Iopen(argv[1], FOPEN_R, (struct stat*)0))) { faterror("can't open input file %s", argv[1]); } Lexinit(); --- 657,663 ---- aputs("No input file\n",stderr); exitmain(EXIT_FAILURE); } ! if (!(finptr = Iopen(argv[1], FOPEN_RB, (struct stat*)0))) { faterror("can't open input file %s", argv[1]); } Lexinit(); Index: RCS_src/src/rcsutil.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rcsutil.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rcsutil.c *** rcsutil.c 1997/01/16 18:35:03 1.1.1.1 --- rcsutil.c 1997/02/25 19:05:09 *************** *** 352,365 **** || ( !(name = cgetenv("LOGNAME")) && !(name = cgetenv("USER")) )) && !(name = getlogin()) # else suspicious || ( ! !(name = cgetenv("LOGNAME")) && !(name = cgetenv("USER")) ! && !(name = getlogin()) ) # endif ) { --- 352,367 ---- || ( !(name = cgetenv("LOGNAME")) && !(name = cgetenv("USER")) + && !(name = cgetenv("USERNAME")) )) && !(name = getlogin()) # else suspicious || ( ! !(name = getlogin()) ! && !(name = cgetenv("LOGNAME")) && !(name = cgetenv("USER")) ! && !(name = cgetenv("USERNAME")) ) # endif ) { Index: RCS_src/src/rlog.c =================================================================== RCS file: s:/Software/AWC_Tools/CVSROOT/RCS_src/src/rlog.c,v retrieving revision 1.1.1.1 diff -c -w -r1.1.1.1 rlog.c *** rlog.c 1997/01/16 18:35:03 1.1.1.1 --- rlog.c 1997/02/25 19:05:09 *************** *** 218,228 **** static struct rcslockers *lockerlist; static struct stateattri *statelist; mainProg(rlogId, "rlog", "$Id: rlog.c,v 5.18 1995/06/16 06:19:24 eggert Exp $") { static char const cmdusage[] = ! "\nrlog usage: rlog -{bhLNRt} -ddates -l[lockers] -r[revs] -sstates -Vn -w[logins] -xsuff -zzone file ..."; register FILE *out; char *a, **newargv; --- 218,231 ---- static struct rcslockers *lockerlist; static struct stateattri *statelist; + static int onlyid; + static char const *numrev2symbrev P((char const *numrev)); + mainProg(rlogId, "rlog", "$Id: rlog.c,v 5.18 1995/06/16 06:19:24 eggert Exp $") { static char const cmdusage[] = ! "\nrlog usage: rlog -{bhLNRtIZ} -ddates -l[lockers] -r[revs] -sstates -Vn -w[logins] -xsuff -zzone file ..."; register FILE *out; char *a, **newargv; *************** *** 236,241 **** --- 239,245 ---- int descflag, selectflag; int onlylockflag; /* print only files with locks */ int onlyRCSflag; /* print only RCS pathname */ + int onlylockers = 0; int pre5; int shownames; int revno; *************** *** 262,267 **** --- 266,279 ---- onlyRCSflag =true; break; + case 'I': + onlyid = (*a == 'I') ? 2 : 1; + break; + + case 'Z': + onlylockers = (*a == 'Z') ? 2 : 1; + break; + case 'l': lockflag = true; getlocker(a); *************** *** 363,368 **** --- 375,442 ---- * workname contains the name of the working file. */ + /* Options 'Z' and 'ZZ' added to quickly get the relevant Data + * for locked File(s)/Revisions. + * Options 'I' and 'II' added to easily get Information about + * unlocked File(s) of the specified Revision(s). These Records + * could be used as an Entry of an Revision-List. + * The single-option Version prints Basenames, the double-option + * Version prints Filenames with the full path. + */ + if (onlyid) { + if (Locks) { /* Issue Warnings for locked Versions */ + currlock = Locks; + aprintf (stderr, "Warning: there are Locks for File %s:\n", + onlyid == 1 ? RCSname : getfullRCSname()); + while (currlock) { + aprintf (stderr, + "\tFile: %s Revision: %s [%s] locked by: %s\n", + onlyid == 1 ? RCSname : getfullRCSname(), + currlock->delta->num, + numrev2symbrev (currlock->delta->num), + currlock->login); + currlock = currlock->nextlock; + } + } + + if (! Head) continue; + gettree (); + revno = 0; + getnumericrev (); + exttree (Head); + currdate = duelst; + while (currdate) { + /* VOID sprintf (currdate->strtdate,dateform,0,0,0,0,0,0); */ + time2date(0,currdate->strtdate); + recentdate (Head, currdate); + currdate = currdate->dnext; + } + revno = extdate (Head); + getdesc (false); + if (revno) { + while (! (delta = readdeltalog())->selector || --revno) ; + if (delta->next && countnumflds(delta->num)==2) { + while (readdeltalog() != delta->next) ; + } + putrunk (); + putree (Head); + } + continue; + } + + if (onlylockers) { + currlock = Locks; + while (currlock) { + aprintf (out, "File: %s Revision: %s [%s] locked by: %s\n", + onlylockers == 1 ? RCSname : getfullRCSname(), + currlock->delta->num, + numrev2symbrev (currlock->delta->num), + currlock->login); + currlock = currlock->nextlock; + } + continue; + } + /* Keep only those locks given by -l. */ if (lockflag) trunclocks(); *************** *** 571,576 **** --- 645,660 ---- return; out = stdout; + + if (onlyid) { + aprintf (out, + "File: %s Revision: %s [%s] Date: %s Author: %s State: %s\n", + onlyid == 1 ? workname : getfullRCSname(), + node->num, numrev2symbrev (node->num), + date2str (node->date, datebuf), node->author, node->state); + return; + } + aprintf(out, "----------------------------\nrevision %s%s", node->num, pre5 ? " " : "" *************** *** 1273,1276 **** --- 1357,1372 ---- else error("missing `,' near `%c%s'", c, argv+1); } + } + + static char const *numrev2symbrev (numrev) + char const *numrev; + { + struct assoc const *p; + + for (p = Symbols; p; p = p->nextassoc) { + if (! strcmp (numrev, p->num)) return (p->symbol); + } + + return (""); } *** RCS_src\configure Tue Feb 25 14:05:03 1997 --- RCS_src\configure.AironetNT Tue Feb 25 14:05:03 1997 *************** *** 292,298 **** # 6 checking for... messages and results # 5 compiler messages saved in config.log if test "$silent" = yes; then ! exec 6>/dev/null else exec 6>&1 fi --- 292,298 ---- # 6 checking for... messages and results # 5 compiler messages saved in config.log if test "$silent" = yes; then ! exec 6>NUL else exec 6>&1 fi *************** *** 387,395 **** ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5 2>&5' ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5 2>&5' ! if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then # Stardent Vistra SVR4 grep lacks -e, says ghazi AT caip DOT rutgers DOT edu. ! if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then ac_n= ac_c=' ' ac_t=' ' else --- 387,395 ---- ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5 2>&5' ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5 2>&5' ! if (echo "testing\c"; echo 1,2,3) | grep c >NUL; then # Stardent Vistra SVR4 grep lacks -e, says ghazi AT caip DOT rutgers DOT edu. ! if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >NUL; then ac_n= ac_c=' ' ac_t=' ' else *************** *** 447,453 **** '') for i in diff /usr/lib/rdiff rdiff do ! sh -c "exec $i -n conftest0 conftest1" >conftestout 2>/dev/null case $? in 1) if cmp -s conftestok conftestout --- 447,453 ---- '') for i in diff /usr/lib/rdiff rdiff do ! sh -c "exec $i -n conftest0 conftest1" >conftestout 2>NUL case $? in 1) if cmp -s conftestok conftestout *************** *** 511,517 **** '') # We can't use `$DIFF conftest0 conftest0', # since buggy NEXTSTEP 3.0 diff silently yields exit status 2 for this. ! $DIFF conftest0 conftest0c >/dev/null 2>&1 rcs_cv_status_diff_success=$? ;; esac --- 511,517 ---- '') # We can't use `$DIFF conftest0 conftest0', # since buggy NEXTSTEP 3.0 diff silently yields exit status 2 for this. ! $DIFF conftest0 conftest0c >NUL 2>&1 rcs_cv_status_diff_success=$? ;; esac *************** *** 530,536 **** rcs_cv_status_diff_failure=$DIFF_FAILURE case $rcs_cv_status_diff_failure in '') ! $DIFF conftest0 conftest1 >/dev/null 2>&1 rcs_cv_status_diff_failure=$? ;; esac --- 530,536 ---- rcs_cv_status_diff_failure=$DIFF_FAILURE case $rcs_cv_status_diff_failure in '') ! $DIFF conftest0 conftest1 >NUL 2>&1 rcs_cv_status_diff_failure=$? ;; esac *************** *** 549,555 **** rcs_cv_status_diff_trouble=$DIFF_TROUBLE case $rcs_cv_status_diff_trouble in '') ! $DIFF conftest0 no/such/file >/dev/null 2>&1 rcs_cv_status_diff_trouble=$? ;; esac --- 549,555 ---- rcs_cv_status_diff_trouble=$DIFF_TROUBLE case $rcs_cv_status_diff_trouble in '') ! $DIFF conftest0 no/such/file >NUL 2>&1 rcs_cv_status_diff_trouble=$? ;; esac *************** *** 598,604 **** case $rcs_cv_options_diff_l in '') rcs_cv_options_diff_l=0 ! $DIFF -c -L 0 -L 1 conftest0 conftest1 >conftestout 2>/dev/null case $? in 1) if cmp -s - conftestout <<'EOF' --- 598,604 ---- case $rcs_cv_options_diff_l in '') rcs_cv_options_diff_l=0 ! $DIFF -c -L 0 -L 1 conftest0 conftest1 >conftestout 2>NUL case $? in 1) if cmp -s - conftestout <<'EOF' *************** *** 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' --- 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 NUL" >conftestout 2>NUL case $? in 1) if cmp -s - conftestout <<'EOF' *************** *** 701,714 **** else $DIFF conftest0 conftest1 >conftest01 ! $DIFF /dev/null conftest1 >conftestn1 for i in /usr/*lib*/*diff3*; do ! sh -c "exec $i -E conftest01 conftestn1 conftest0 /dev/null conftest1" >conftestout 2>/dev/null # The exit status is arbitrary! Test the output a bit. if ! grep '^<<* *conftest0$' conftestout >/dev/null 2>&1 && ! grep '^>>* *conftest1$' conftestout >/dev/null 2>&1 && ! grep '^0a$' conftestout >/dev/null 2>&1 then rcs_cv_path_diff3_lib=$i break --- 701,714 ---- else $DIFF conftest0 conftest1 >conftest01 ! $DIFF NUL conftest1 >conftestn1 for i in /usr/*lib*/*diff3*; do ! sh -c "exec $i -E conftest01 conftestn1 conftest0 NUL conftest1" >conftestout 2>NUL # The exit status is arbitrary! Test the output a bit. if ! grep '^<<* *conftest0$' conftestout >NUL 2>&1 && ! grep '^>>* *conftest1$' conftestout >NUL 2>&1 && ! grep '^0a$' conftestout >NUL 2>&1 then rcs_cv_path_diff3_lib=$i break *************** *** 887,893 **** yes; #endif EOF ! if ${CC-cc} -E conftest.c 2>&5 | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no --- 887,893 ---- yes; #endif EOF ! if ${CC-cc} -E conftest.c 2>&5 | egrep yes >NUL 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no *************** *** 966,972 **** for ac_prog in ginstall installbsd scoinst install; do if test -f $ac_dir/$ac_prog; then if test $ac_prog = install && ! grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. # OSF/1 installbsd also uses dspmsg, but is usable. : --- 966,972 ---- for ac_prog in ginstall installbsd scoinst install; do if test -f $ac_dir/$ac_prog; then if test $ac_prog = install && ! grep dspmsg $ac_dir/$ac_prog >NUL 2>&1; then # AIX install. It has an incompatible calling convention. # OSF/1 installbsd also uses dspmsg, but is usable. : *************** *** 1003,1009 **** @echo 'ac_maketemp="${MAKE}"' EOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. ! eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` if test -n "$ac_maketemp"; then eval ac_cv_prog_make_${ac_make}_set=yes else --- 1003,1009 ---- @echo 'ac_maketemp="${MAKE}"' EOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. ! eval `${MAKE-make} -f conftestmake 2>NUL | grep temp=` if test -n "$ac_maketemp"; then eval ac_cv_prog_make_${ac_make}_set=yes else *************** *** 1032,1038 **** # the --cache-file=FILE option to use a different cache file; that is # what configure does when it calls configure scripts in # subdirectories, so they share the cache. ! # Giving --cache-file=/dev/null disables caching, for debugging configure. # config.status only pays attention to the cache file if you give it the # --recheck option to rerun configure. # --- 1032,1038 ---- # the --cache-file=FILE option to use a different cache file; that is # what configure does when it calls configure scripts in # subdirectories, so they share the cache. ! # Giving --cache-file=NUL disables caching, for debugging configure. # config.status only pays attention to the cache file if you give it the # --recheck option to rerun configure. # *************** *** 1093,1099 **** # Generated automatically by configure. # Run this file to recreate the current configuration. # This directory was configured as follows, ! # on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # # $0 $ac_configure_args # --- 1093,1099 ---- # Generated automatically by configure. # Run this file to recreate the current configuration. # This directory was configured as follows, ! # on host `(hostname || uname -n) 2>NUL | sed 1q`: # # $0 $ac_configure_args # *** RCS_src\src\conf.h Tue Feb 25 14:31:35 1997 --- RCS_src\src\conf.h.AironetNT Tue Feb 25 14:05:05 1997 *************** *** 77,86 **** /* Text and binary i/o behave differently. */ /* This is incompatible with Posix and Unix. */ # define FOPEN_RB "rb" ! # define FOPEN_R_WORK (Expand==BINARY_EXPAND ? "r" : "rb") # define FOPEN_WB "wb" ! # define FOPEN_W_WORK (Expand==BINARY_EXPAND ? "w" : "wb") ! # define FOPEN_WPLUS_WORK (Expand==BINARY_EXPAND ? "w+" : "w+b") # define OPEN_O_BINARY O_BINARY #else /* --- 77,87 ---- /* Text and binary i/o behave differently. */ /* This is incompatible with Posix and Unix. */ # define FOPEN_RB "rb" ! # define FOPEN_R_WORK (Expand==BINARY_EXPAND ? "rb" : "r") # define FOPEN_WB "wb" ! # define FOPEN_W_WORK (Expand==BINARY_EXPAND ? "wb" : "w") ! # define FOPEN_WPLUS "w+b" ! # define FOPEN_WPLUS_WORK (Expand==BINARY_EXPAND ? "w+b" : "w+") # define OPEN_O_BINARY O_BINARY #else /* *************** *** 91,96 **** --- 92,98 ---- # define FOPEN_R_WORK "r" # define FOPEN_WB "w" # define FOPEN_W_WORK "w" + # define FOPEN_WPLUS "w+" # define FOPEN_WPLUS_WORK "w+" # define OPEN_O_BINARY 0 #endif *************** *** 141,147 **** #define has_fputs 1 /* Does fputs() work? */ #define has_ftruncate 1 /* Does ftruncate() work? */ #define has_getuid 1 /* Does getuid() work? */ ! #define has_getpwuid 1 /* Does getpwuid() work? */ #define has_memcmp 1 /* Does memcmp() work? */ #define has_memcpy 1 /* Does memcpy() work? */ #define has_memmove 1 /* Does memmove() work? */ --- 143,149 ---- #define has_fputs 1 /* Does fputs() work? */ #define has_ftruncate 1 /* Does ftruncate() work? */ #define has_getuid 1 /* Does getuid() work? */ ! #define has_getpwuid 0 /* Does getpwuid() work? */ #define has_memcmp 1 /* Does memcmp() work? */ #define has_memcpy 1 /* Does memcpy() work? */ #define has_memmove 1 /* Does memmove() work? */ *************** *** 225,238 **** #define MERGE "/usr/local/bin/merge" /* name of 'merge' program */ #define TMPDIR "/tmp" /* default directory for temporary files */ #define SLASH '/' /* principal filename separator */ ! #define SLASHes '/' /* `case SLASHes:' labels all filename separators */ ! #define isSLASH(c) ((c) == SLASH) /* Is arg a filename separator? */ ! #define ROOTPATH(p) isSLASH((p)[0]) /* Is p an absolute pathname? */ #define X_DEFAULT ",v/" /* default value for -x option */ #define SLASHSLASH_is_SLASH 1 /* Are // and / the same directory? */ ! #define ALL_ABSOLUTE 1 /* Do all subprograms satisfy ROOTPATH? */ ! #define DIFF_ABSOLUTE 1 /* Is ROOTPATH(DIFF) true? */ ! /* #define SENDMAIL */ /* how to send mail */ ! #define TZ_must_be_set 0 /* Must TZ be set for gmtime() to work? */ --- 227,240 ---- #define MERGE "/usr/local/bin/merge" /* name of 'merge' program */ #define TMPDIR "/tmp" /* default directory for temporary files */ #define SLASH '/' /* principal filename separator */ ! #define SLASHes '/': case '\\' /* `case SLASHes:' labels all filename separators */ ! #define isSLASH(c) ((c) == SLASH || (c) == '\\') /* Is arg a filename separator? */ ! #define ROOTPATH(p) (isSLASH((p)[0]) || (isalpha((p)[0]) && (p)[1] && (p)[1] == ':' && (p)[2] && isSLASH((p)[2]) )) /* Is p an absolute pathname? */ #define X_DEFAULT ",v/" /* default value for -x option */ #define SLASHSLASH_is_SLASH 1 /* Are // and / the same directory? */ ! #define ALL_ABSOLUTE 0 /* Do all subprograms satisfy ROOTPATH? */ ! #define DIFF_ABSOLUTE 0 /* Is ROOTPATH(DIFF) true? */ ! #define SENDMAIL "blat - -t " /* how to send mail */ ! #define TZ_must_be_set 1 /* Must TZ be set for gmtime() to work? */ - For help on using this list, send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".