From: tholo Date: Sat, 29 Mar 1997 04:37:20 +0000 (+0000) Subject: Latest release from Cyclic Software X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=b78423f6a904446e6e732c5ba09cd238b8b6fff5;p=openbsd Latest release from Cyclic Software --- diff --git a/gnu/usr.bin/cvs/ChangeLog b/gnu/usr.bin/cvs/ChangeLog index 3c4bfc72579..263d0782b82 100644 --- a/gnu/usr.bin/cvs/ChangeLog +++ b/gnu/usr.bin/cvs/ChangeLog @@ -1,3 +1,15 @@ +Wed Mar 19 14:06:40 1997 Jim Meyering + + * configure.in (test for shadow passwords): Use AC_MSG_RESULT + rather than echo, so configure obeys --quiet. + Use yes and no in message rather than yup and nope. + +19 Mar 1997 Jim Kingdon + + * cvsnt.mak: Now Visual C++ wants to add a bunch of dependencies + for the Release configuration as well as the Debug one. Why it + didn't do this before, I have no idea. + 13 Mar 1997 Jim Kingdon * cvsnt.mak: Recent changes have added a number of getline.h diff --git a/gnu/usr.bin/cvs/cvsnt.mak b/gnu/usr.bin/cvs/cvsnt.mak index cfa7575b401..c3de608ee1c 100644 --- a/gnu/usr.bin/cvs/cvsnt.mak +++ b/gnu/usr.bin/cvs/cvsnt.mak @@ -534,6 +534,21 @@ LINK32_OBJS= \ # Begin Source File SOURCE=.\src\mkmodules.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_MKMOD=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\mkmodules.obj" : $(SOURCE) $(DEP_CPP_MKMOD) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_MKMOD=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -567,11 +582,27 @@ NODEP_CPP_MKMOD=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\subr.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_SUBR_=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\subr.obj" : $(SOURCE) $(DEP_CPP_SUBR_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_SUBR_=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -604,11 +635,26 @@ NODEP_CPP_SUBR_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\admin.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ADMIN=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\admin.obj" : $(SOURCE) $(DEP_CPP_ADMIN) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ADMIN=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -640,11 +686,32 @@ NODEP_CPP_ADMIN=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\server.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_SERVE=\ + ".\src\cvs.h"\ + ".\src\watch.h"\ + ".\src\edit.h"\ + ".\src\fileattr.h"\ + ".\lib\getline.h"\ + ".\src\buffer.h"\ + {$(INCLUDE)}"\sys\Types.h"\ + + +"$(INTDIR)\server.obj" : $(SOURCE) $(DEP_CPP_SERVE) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_SERVE=\ ".\src\cvs.h"\ ".\src\watch.h"\ @@ -681,11 +748,26 @@ NODEP_CPP_SERVE=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\diff.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_DIFF_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\diff.obj" : $(SOURCE) $(DEP_CPP_DIFF_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_DIFF_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -717,11 +799,31 @@ NODEP_CPP_DIFF_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\client.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CLIEN=\ + ".\windows-NT\config.h"\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + ".\src\edit.h"\ + ".\src\buffer.h"\ + ".\lib\md5.h"\ + + +"$(INTDIR)\client.obj" : $(SOURCE) $(DEP_CPP_CLIEN) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CLIEN=\ ".\windows-NT\config.h"\ ".\src\cvs.h"\ @@ -757,11 +859,26 @@ NODEP_CPP_CLIEN=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\checkout.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CHECK=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\checkout.obj" : $(SOURCE) $(DEP_CPP_CHECK) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CHECK=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -793,11 +910,26 @@ NODEP_CPP_CHECK=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\no_diff.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_NO_DI=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\no_diff.obj" : $(SOURCE) $(DEP_CPP_NO_DI) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_NO_DI=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -829,11 +961,27 @@ NODEP_CPP_NO_DI=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\entries.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ENTRI=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\entries.obj" : $(SOURCE) $(DEP_CPP_ENTRI) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ENTRI=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -866,11 +1014,27 @@ NODEP_CPP_ENTRI=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\tag.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_TAG_C=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + + +"$(INTDIR)\tag.obj" : $(SOURCE) $(DEP_CPP_TAG_C) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_TAG_C=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -903,11 +1067,26 @@ NODEP_CPP_TAG_C=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\rtag.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RTAG_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\rtag.obj" : $(SOURCE) $(DEP_CPP_RTAG_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RTAG_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -939,11 +1118,26 @@ NODEP_CPP_RTAG_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\status.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_STATU=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\status.obj" : $(SOURCE) $(DEP_CPP_STATU) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_STATU=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -975,11 +1169,27 @@ NODEP_CPP_STATU=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\root.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ROOT_=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\root.obj" : $(SOURCE) $(DEP_CPP_ROOT_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ROOT_=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1012,11 +1222,27 @@ NODEP_CPP_ROOT_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\myndbm.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_MYNDB=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\myndbm.obj" : $(SOURCE) $(DEP_CPP_MYNDB) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_MYNDB=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1049,11 +1275,26 @@ NODEP_CPP_MYNDB=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\hash.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_HASH_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\hash.obj" : $(SOURCE) $(DEP_CPP_HASH_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_HASH_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1085,11 +1326,27 @@ NODEP_CPP_HASH_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\repos.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_REPOS=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\repos.obj" : $(SOURCE) $(DEP_CPP_REPOS) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_REPOS=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1122,11 +1379,27 @@ NODEP_CPP_REPOS=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\parseinfo.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_PARSE=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\parseinfo.obj" : $(SOURCE) $(DEP_CPP_PARSE) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_PARSE=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1159,11 +1432,26 @@ NODEP_CPP_PARSE=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\vers_ts.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_VERS_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\vers_ts.obj" : $(SOURCE) $(DEP_CPP_VERS_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_VERS_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1195,11 +1483,28 @@ NODEP_CPP_VERS_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\checkin.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CHECKI=\ + ".\src\cvs.h"\ + ".\src\fileattr.h"\ + ".\src\edit.h"\ + + +"$(INTDIR)\checkin.obj" : $(SOURCE) $(DEP_CPP_CHECKI) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CHECKI=\ ".\src\cvs.h"\ ".\src\fileattr.h"\ @@ -1233,11 +1538,29 @@ NODEP_CPP_CHECKI=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\commit.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_COMMI=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + ".\src\edit.h"\ + ".\src\fileattr.h"\ + + +"$(INTDIR)\commit.obj" : $(SOURCE) $(DEP_CPP_COMMI) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_COMMI=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1272,11 +1595,26 @@ NODEP_CPP_COMMI=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\version.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_VERSI=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\version.obj" : $(SOURCE) $(DEP_CPP_VERSI) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_VERSI=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1308,11 +1646,27 @@ NODEP_CPP_VERSI=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\cvsrc.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CVSRC=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\cvsrc.obj" : $(SOURCE) $(DEP_CPP_CVSRC) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CVSRC=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1345,11 +1699,26 @@ NODEP_CPP_CVSRC=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\remove.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_REMOV=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\remove.obj" : $(SOURCE) $(DEP_CPP_REMOV) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_REMOV=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1381,11 +1750,32 @@ NODEP_CPP_REMOV=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\update.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_UPDAT=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + ".\lib\md5.h"\ + ".\src\watch.h"\ + ".\src\fileattr.h"\ + ".\src\edit.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\update.obj" : $(SOURCE) $(DEP_CPP_UPDAT) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_UPDAT=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1419,15 +1809,31 @@ NODEP_CPP_UPDAT=\ ".\lib\tcpip.h"\ -"$(INTDIR)\update.obj" : $(SOURCE) $(DEP_CPP_UPDAT) "$(INTDIR)" +"$(INTDIR)\update.obj" : $(SOURCE) $(DEP_CPP_UPDAT) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ENDIF + +# End Source File +################################################################################ +# Begin Source File + +SOURCE=.\src\logmsg.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_LOGMS=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\logmsg.obj" : $(SOURCE) $(DEP_CPP_LOGMS) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) -# End Source File -################################################################################ -# Begin Source File +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" -SOURCE=.\src\logmsg.c DEP_CPP_LOGMS=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1460,11 +1866,26 @@ NODEP_CPP_LOGMS=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\classify.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CLASS=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\classify.obj" : $(SOURCE) $(DEP_CPP_CLASS) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CLASS=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1496,11 +1917,27 @@ NODEP_CPP_CLASS=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\history.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_HISTO=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + + +"$(INTDIR)\history.obj" : $(SOURCE) $(DEP_CPP_HISTO) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_HISTO=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1533,11 +1970,27 @@ NODEP_CPP_HISTO=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\add.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ADD_C=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + + +"$(INTDIR)\add.obj" : $(SOURCE) $(DEP_CPP_ADD_C) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ADD_C=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1570,11 +2023,26 @@ NODEP_CPP_ADD_C=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\lock.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_LOCK_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\lock.obj" : $(SOURCE) $(DEP_CPP_LOCK_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_LOCK_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1606,11 +2074,29 @@ NODEP_CPP_LOCK_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\recurse.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RECUR=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + ".\src\fileattr.h"\ + ".\src\edit.h"\ + + +"$(INTDIR)\recurse.obj" : $(SOURCE) $(DEP_CPP_RECUR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RECUR=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1645,11 +2131,27 @@ NODEP_CPP_RECUR=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\modules.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_MODUL=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + + +"$(INTDIR)\modules.obj" : $(SOURCE) $(DEP_CPP_MODUL) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_MODUL=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1682,11 +2184,26 @@ NODEP_CPP_MODUL=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\find_names.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_FIND_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\find_names.obj" : $(SOURCE) $(DEP_CPP_FIND_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_FIND_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1718,11 +2235,26 @@ NODEP_CPP_FIND_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\rcs.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RCS_C=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\rcs.obj" : $(SOURCE) $(DEP_CPP_RCS_C) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RCS_C=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1754,11 +2286,26 @@ NODEP_CPP_RCS_C=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\create_adm.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_CREAT=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\create_adm.obj" : $(SOURCE) $(DEP_CPP_CREAT) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_CREAT=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1790,11 +2337,26 @@ NODEP_CPP_CREAT=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\main.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_MAIN_=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\main.obj" : $(SOURCE) $(DEP_CPP_MAIN_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_MAIN_=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1826,11 +2388,27 @@ NODEP_CPP_MAIN_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\patch.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_PATCH=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\patch.obj" : $(SOURCE) $(DEP_CPP_PATCH) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_PATCH=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1863,11 +2441,27 @@ NODEP_CPP_PATCH=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\release.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RELEA=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\release.obj" : $(SOURCE) $(DEP_CPP_RELEA) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RELEA=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -1900,11 +2494,26 @@ NODEP_CPP_RELEA=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\rcscmds.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RCSCM=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\rcscmds.obj" : $(SOURCE) $(DEP_CPP_RCSCM) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RCSCM=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -1936,11 +2545,27 @@ NODEP_CPP_RCSCM=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\import.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_IMPOR=\ + ".\src\cvs.h"\ + ".\lib\savecwd.h"\ + + +"$(INTDIR)\import.obj" : $(SOURCE) $(DEP_CPP_IMPOR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_IMPOR=\ ".\src\cvs.h"\ ".\lib\savecwd.h"\ @@ -1973,11 +2598,27 @@ NODEP_CPP_IMPOR=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\ignore.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_IGNOR=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\ignore.obj" : $(SOURCE) $(DEP_CPP_IGNOR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_IGNOR=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -2006,15 +2647,30 @@ NODEP_CPP_IGNOR=\ ".\lib\tcpip.h"\ -"$(INTDIR)\ignore.obj" : $(SOURCE) $(DEP_CPP_IGNOR) "$(INTDIR)" +"$(INTDIR)\ignore.obj" : $(SOURCE) $(DEP_CPP_IGNOR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ENDIF + +# End Source File +################################################################################ +# Begin Source File + +SOURCE=.\src\log.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_LOG_C=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\log.obj" : $(SOURCE) $(DEP_CPP_LOG_C) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) -# End Source File -################################################################################ -# Begin Source File +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" -SOURCE=.\src\log.c DEP_CPP_LOG_C=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2046,11 +2702,27 @@ NODEP_CPP_LOG_C=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\wrapper.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_WRAPP=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\wrapper.obj" : $(SOURCE) $(DEP_CPP_WRAPP) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_WRAPP=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -2083,11 +2755,26 @@ NODEP_CPP_WRAPP=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\error.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ERROR=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\error.obj" : $(SOURCE) $(DEP_CPP_ERROR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ERROR=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2119,11 +2806,27 @@ NODEP_CPP_ERROR=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\expand_path.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_EXPAN=\ + ".\src\cvs.h"\ + {$(INCLUDE)}"\sys\Types.h"\ + + +"$(INTDIR)\expand_path.obj" : $(SOURCE) $(DEP_CPP_EXPAN) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_EXPAN=\ ".\src\cvs.h"\ {$(INCLUDE)}"\sys\Types.h"\ @@ -2155,11 +2858,30 @@ NODEP_CPP_EXPAN=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\edit.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_EDIT_=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + ".\src\watch.h"\ + ".\src\edit.h"\ + ".\src\fileattr.h"\ + + +"$(INTDIR)\edit.obj" : $(SOURCE) $(DEP_CPP_EDIT_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_EDIT_=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -2195,11 +2917,28 @@ NODEP_CPP_EDIT_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\fileattr.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_FILEA=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + ".\src\fileattr.h"\ + + +"$(INTDIR)\fileattr.obj" : $(SOURCE) $(DEP_CPP_FILEA) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_FILEA=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -2233,11 +2972,29 @@ NODEP_CPP_FILEA=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\watch.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_WATCH=\ + ".\src\cvs.h"\ + ".\src\edit.h"\ + ".\src\fileattr.h"\ + ".\src\watch.h"\ + + +"$(INTDIR)\watch.obj" : $(SOURCE) $(DEP_CPP_WATCH) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_WATCH=\ ".\src\cvs.h"\ ".\src\edit.h"\ @@ -2272,11 +3029,27 @@ NODEP_CPP_WATCH=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\login.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_LOGIN=\ + ".\src\cvs.h"\ + ".\lib\getline.h"\ + + +"$(INTDIR)\login.obj" : $(SOURCE) $(DEP_CPP_LOGIN) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_LOGIN=\ ".\src\cvs.h"\ ".\lib\getline.h"\ @@ -2309,11 +3082,26 @@ NODEP_CPP_LOGIN=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\scramble.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_SCRAM=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\scramble.obj" : $(SOURCE) $(DEP_CPP_SCRAM) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_SCRAM=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2345,11 +3133,27 @@ NODEP_CPP_SCRAM=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\buffer.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_BUFFE=\ + ".\src\cvs.h"\ + ".\src\buffer.h"\ + + +"$(INTDIR)\buffer.obj" : $(SOURCE) $(DEP_CPP_BUFFE) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_BUFFE=\ ".\src\cvs.h"\ ".\src\buffer.h"\ @@ -2382,11 +3186,29 @@ NODEP_CPP_BUFFE=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=.\src\zlib.c + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_ZLIB_=\ + ".\src\cvs.h"\ + ".\src\buffer.h"\ + ".\zlib\zlib.h"\ + ".\zlib\zconf.h"\ + + +"$(INTDIR)\zlib.obj" : $(SOURCE) $(DEP_CPP_ZLIB_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_ZLIB_=\ ".\src\cvs.h"\ ".\src\buffer.h"\ @@ -2421,6 +3243,8 @@ NODEP_CPP_ZLIB_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File @@ -2685,6 +3509,19 @@ DEP_CPP_VASPR=\ # Begin Source File SOURCE=".\windows-NT\mkdir.c" + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_MKDIR=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\mkdir.obj" : $(SOURCE) $(DEP_CPP_MKDIR) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_MKDIR=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2716,11 +3553,26 @@ NODEP_CPP_MKDIR=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=".\windows-NT\run.c" + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RUN_C=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\run.obj" : $(SOURCE) $(DEP_CPP_RUN_C) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RUN_C=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2752,6 +3604,8 @@ NODEP_CPP_RUN_C=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File @@ -2770,6 +3624,19 @@ DEP_CPP_PWD_C=\ # Begin Source File SOURCE=".\windows-NT\filesubr.c" + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_FILES=\ + ".\src\cvs.h"\ + + +"$(INTDIR)\filesubr.obj" : $(SOURCE) $(DEP_CPP_FILES) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_FILES=\ ".\src\cvs.h"\ ".\windows-NT\config.h"\ @@ -2801,6 +3668,8 @@ NODEP_CPP_FILES=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File @@ -2857,6 +3726,20 @@ SOURCE=".\windows-NT\stripslash.c" # Begin Source File SOURCE=".\windows-NT\rcmd.c" + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_RCMD_=\ + ".\src\cvs.h"\ + ".\windows-NT\rcmd.h"\ + + +"$(INTDIR)\rcmd.obj" : $(SOURCE) $(DEP_CPP_RCMD_) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_RCMD_=\ ".\src\cvs.h"\ ".\windows-NT\rcmd.h"\ @@ -2889,11 +3772,27 @@ NODEP_CPP_RCMD_=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File SOURCE=".\windows-NT\startserver.c" + +!IF "$(CFG)" == "cvsnt - Win32 Release" + +DEP_CPP_START=\ + ".\src\cvs.h"\ + ".\windows-NT\rcmd.h"\ + + +"$(INTDIR)\startserver.obj" : $(SOURCE) $(DEP_CPP_START) "$(INTDIR)" + $(CPP) $(CPP_PROJ) $(SOURCE) + + +!ELSEIF "$(CFG)" == "cvsnt - Win32 Debug" + DEP_CPP_START=\ ".\src\cvs.h"\ ".\windows-NT\rcmd.h"\ @@ -2926,6 +3825,8 @@ NODEP_CPP_START=\ $(CPP) $(CPP_PROJ) $(SOURCE) +!ENDIF + # End Source File ################################################################################ # Begin Source File diff --git a/gnu/usr.bin/cvs/doc/ChangeLog b/gnu/usr.bin/cvs/doc/ChangeLog index e956d4f791d..27314bed625 100644 --- a/gnu/usr.bin/cvs/doc/ChangeLog +++ b/gnu/usr.bin/cvs/doc/ChangeLog @@ -1,3 +1,45 @@ +Mon Mar 24 13:50:24 1997 Jim Kingdon + + * cvs.texinfo (Creating a branch): Add comment about -r in branch + example. + + * cvsclient.texi (Responses): Discuss meaning of tagspec and + future expansion in Set-sticky. The behavior described is the one + which CVS has always implemented. + +Fri Mar 21 14:19:05 1997 Jim Kingdon + + * cvsclient.texi (Requests): Revise meaning of "Case" per change + to CVS. + +Tue Mar 18 15:50:47 1997 Jim Kingdon + + The following reorganization hopefully presents numeric revisions + in a slightly more coherent fashion. The only new material is the + paragraph about assigning revisions for added files. + * cvs.texinfo (A sample session): Bring in a sentence from Basic + concepts node, defining a repository. + (Revisions and branches): Renamed from Branches (it has always + covered non-branch tags too). Bring in nodes "Revision numbers" and + "Versions revisions releases" from Basic concepts, the former in + particular was way too detailed for an intro section. + (A sample session): Add comment about how we need an introduction + and what might go into one. Also bring in the paragraph from + Basic concepts introducing modules, but comment it out. + (Viewing differences): Add comment about + (Basic concepts): Removed; its content has been farmed out as + described above, and as the comment said, it was fundamentally + flawed. + (Assigning revisions): New node. Incorporates the "New major + release number" subsubsec which was in "commit examples". Add + paragraph concerning how CVS assigns revisions on added files. + (commit options): Refer to that node under -r. + (Invoking CVS): Add comment about text for -r. + +Tue Mar 18 13:04:30 1997 Jim Meyering + + * Makefile.in: (install-info): Depend on installdirs. + Sun Mar 16 12:37:12 1997 Jim Kingdon * cvs.texinfo (File permissions): CVSUMASK now works for RCS diff --git a/gnu/usr.bin/cvs/doc/Makefile.in b/gnu/usr.bin/cvs/doc/Makefile.in index b281fe69e11..b071b9304de 100644 --- a/gnu/usr.bin/cvs/doc/Makefile.in +++ b/gnu/usr.bin/cvs/doc/Makefile.in @@ -96,7 +96,7 @@ cvsclient.txt: cvsclient.texi CVSvn.texi # in the build dir. # (Note: don't solve this problem with "cd"; INSTALL_DATA might be a # relative path to install-sh). -install-info: info +install-info: info installdirs if test -f cvs.info ; then docdir=.; else docdir=$(srcdir);fi; \ for i in $$docdir/*.info* ; do \ $(INSTALL_DATA) $$i $(infodir)/`basename $$i` ; \ diff --git a/gnu/usr.bin/cvs/doc/cvs.texinfo b/gnu/usr.bin/cvs/doc/cvs.texinfo index a047b8b3f3c..5e8e26be611 100644 --- a/gnu/usr.bin/cvs/doc/cvs.texinfo +++ b/gnu/usr.bin/cvs/doc/cvs.texinfo @@ -139,12 +139,11 @@ This info manual describes how to use and administer @menu * Preface:: About this manual * What is CVS?:: What is CVS? -* Basic concepts:: Basic concepts of revision management * A sample session:: A tour of basic CVS usage * Repository:: Where all your sources are stored * Starting a new project:: Starting a project with CVS * Multiple developers:: How CVS helps a group of developers -* Branches:: Parallel development explained +* Revisions and branches:: Numeric, symbolic, and branch revisions * Merging:: How to move changes between branches * Recursive behavior:: CVS descends directories * Adding files:: Adding files @@ -621,142 +620,6 @@ and then merging certain changes over to a stable tree only once they have been proven. @end table -@c --------------------------------------------------------------------- -@node Basic concepts -@chapter Basic concepts -@cindex Modules (intro) - -@c This node doesn't know what it wants. We don't talk -@c about *all* the concepts of CVS, just a few random ones -@c which don't make any sense in isolation. Nor do we -@c start with what a beginner most needs to know. We also -@c jump into branches, which are a very advanced topic for -@c this stage in the manual. I'd just nuke the node if -@c I could figure out where this stuff should go instead. -@c The real intro to the repository is in Repository -@sc{cvs} stores all files in a centralized -@dfn{repository} (@pxref{Repository}). - -The repository contains directories and files, in an -arbitrary tree. The @dfn{modules} feature can be used -to group together a set of directories or files into a -single entity (@pxref{modules}). A typical usage is to -define one module per project. - -@menu -* Revision numbers:: The meaning of a revision number -* Versions revisions releases:: Terminology used in this manual -@end menu - -@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@node Revision numbers -@section Revision numbers -@cindex Revision numbers -@cindex Revision tree -@cindex Linear development -@cindex Number, revision- -@cindex Decimal revision number -@cindex Main trunk (intro) -@cindex Branch number -@cindex Number, branch - -Each version of a file has a unique @dfn{revision -number}. Revision numbers look like @samp{1.1}, -@samp{1.2}, @samp{1.3.2.2} or even @samp{1.3.2.2.4.5}. -A revision number always has an even number of -period-separated decimal integers. By default revision -1.1 is the first revision of a file. Each successive -revision is given a new number by increasing the -rightmost number by one. The following figure displays -a few revisions, with newer revisions to the right. - -@example - +-----+ +-----+ +-----+ +-----+ +-----+ - ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! - +-----+ +-----+ +-----+ +-----+ +-----+ -@end example - -@sc{cvs} is not limited to linear development. The -@dfn{revision tree} can be split into @dfn{branches}, -where each branch is a self-maintained line of -development. Changes made on one branch can easily be -moved back to the main trunk. - -Each branch has a @dfn{branch number}, consisting of an -odd number of period-separated decimal integers. The -branch number is created by appending an integer to the -revision number where the corresponding branch forked -off. Having branch numbers allows more than one branch -to be forked off from a certain revision. - -@need 3500 -All revisions on a branch have revision numbers formed -by appending an ordinal number to the branch number. -The following figure illustrates branching with an -example. - -@example -@group - +-------------+ - Branch 1.2.2.3.2 -> ! 1.2.2.3.2.1 ! - / +-------------+ - / - / - +---------+ +---------+ +---------+ +---------+ -Branch 1.2.2 -> _! 1.2.2.1 !----! 1.2.2.2 !----! 1.2.2.3 !----! 1.2.2.4 ! - / +---------+ +---------+ +---------+ +---------+ - / - / -+-----+ +-----+ +-----+ +-----+ +-----+ -! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! <- The main trunk -+-----+ +-----+ +-----+ +-----+ +-----+ - ! - ! - ! +---------+ +---------+ +---------+ -Branch 1.2.4 -> +---! 1.2.4.1 !----! 1.2.4.2 !----! 1.2.4.3 ! - +---------+ +---------+ +---------+ - -@end group -@end example - -@c -- However, at least for me the figure is not enough. I suggest more -@c -- text to accompany it. "A picture is worth a thousand words", so you -@c -- have to make sure the reader notices the couple of hundred words -@c -- *you* had in mind more than the others! - -@c -- Why an even number of segments? This section implies that this is -@c -- how the main trunk is distinguished from branch roots, but you never -@c -- explicitly say that this is the purpose of the [by itself rather -@c -- surprising] restriction to an even number of segments. - -The exact details of how the branch number is -constructed is not something you normally need to be -concerned about, but here is how it works: When -@sc{cvs} creates a branch number it picks the first -unused even integer, starting with 2. So when you want -to create a branch from revision 6.4 it will be -numbered 6.4.2. All branch numbers ending in a zero -(such as 6.4.0) are used internally by @sc{cvs} -(@pxref{Magic branch numbers}). The branch 1.1.1 has a -special meaning. @xref{Tracking sources}. - -@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -@node Versions revisions releases -@section Versions, revisions and releases -@cindex Revisions, versions and releases -@cindex Versions, revisions and releases -@cindex Releases, revisions and versions - -A file can have several versions, as described above. -Likewise, a software product can have several versions. -A software product is often given a version number such -as @samp{4.1.1}. - -Versions in the first sense are called @dfn{revisions} -in this document, and versions in the second sense are -called @dfn{releases}. To avoid confusion, the word -@dfn{version} is almost never used in this document. - @c --------------------------------------------------------------------- @node A sample session @chapter A sample session @@ -767,9 +630,39 @@ called @dfn{releases}. To avoid confusion, the word @cindex tc, Trivial Compiler (example) @cindex Trivial Compiler (example) -This section describes a typical work-session using -@sc{cvs}. It assumes that a repository is set up -(@pxref{Repository}). +@c I think an example is a pretty good way to start. But +@c somewhere in here, maybe after the sample session, +@c we need something which is kind of +@c a "roadmap" which is more directed at sketching out +@c the functionality of CVS and pointing people to +@c various other parts of the manual. As it stands now +@c people who read in order get dumped right into all +@c manner of hair regarding remote repositories, +@c creating a repository, etc. +@c +@c The following was in the old Basic concepts node. I don't +@c know how good a job it does at introducing modules, +@c or whether they need to be introduced so soon, but +@c something of this sort might go into some +@c introductory material somewhere. +@ignore +@cindex Modules (intro) +The repository contains directories and files, in an +arbitrary tree. The @dfn{modules} feature can be used +to group together a set of directories or files into a +single entity (@pxref{modules}). A typical usage is to +define one module per project. +@end ignore + +As a way of introducing @sc{cvs}, we'll go through a +typical work-session using @sc{cvs}. The first thing +to understand is that @sc{cvs} stores all files in a +centralized @dfn{repository} (@pxref{Repository}); this +section assumes that a repository is set up. +@c I'm not sure that the sentence concerning the +@c repository quite tells the user what they need to +@c know at this point. Might need to expand on "centralized" +@c slightly (maybe not here, maybe further down in the example?) Suppose you are working on a simple compiler. The source consists of a handful of C files and a @file{Makefile}. @@ -928,6 +821,7 @@ This command runs @code{diff} to compare the version of @file{driver.c} that you checked out with your working copy. When you see the output you remember that you added a command line option that enabled the optimization pass. You check it in, and release the module. +@c FIXME: we haven't yet defined the term "check in". @example $ cvs commit -m "Added an optimization pass" driver.c @@ -3250,29 +3144,202 @@ best of both the reserved checkout and unreserved checkout worlds. @c --------------------------------------------------------------------- -@node Branches -@chapter Branches +@node Revisions and branches +@chapter Revisions and branches @cindex Branches @cindex Main trunk and branches @cindex Revision tree, making branches -So far, all revisions shown in this manual have been on -the @dfn{main trunk} -of the revision tree, i.e., all revision numbers -have been of the form @var{x}.@var{y}. One useful -feature, especially when maintaining several releases -of a software product at once, is the ability to make -branches on the revision tree. @dfn{Tags}, symbolic -names for revisions, will also be -introduced in this chapter. +For many uses of @sc{cvs}, one doesn't need to worry +too much about revision numbers; @sc{cvs} assigns +numbers such as @code{1.1}, @code{1.2}, and so on, and +that is all one needs to know. However, some people +prefer to have more knowledge and control concerning +how @sc{cvs} assigns revision numbers. + +If one wants to keep track of a set of revisions +involving more than one file, such as which revisions +went into a particular release, one uses a @dfn{tag}, +which is a symbolic revision which can be assigned to a +numeric revision in each file. + +Another useful feature, especially when maintaining +several releases of a software product at once, is the +ability to make branches on the revision tree. +@c FIXME: probably want another sentence or two, very +@c briefly motivating branches. @menu +* Revision numbers:: The meaning of a revision number +* Versions revisions releases:: Terminology used in this manual +* Assigning revisions:: Assigning revisions * Tags:: Tags--Symbolic revisions * Branches motivation:: What branches are good for * Creating a branch:: Creating a branch * Sticky tags:: Sticky tags @end menu +@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +@node Revision numbers +@section Revision numbers +@cindex Revision numbers +@cindex Revision tree +@cindex Linear development +@cindex Number, revision- +@cindex Decimal revision number +@cindex Main trunk (intro) +@cindex Branch number +@cindex Number, branch + +Each version of a file has a unique @dfn{revision +number}. Revision numbers look like @samp{1.1}, +@samp{1.2}, @samp{1.3.2.2} or even @samp{1.3.2.2.4.5}. +A revision number always has an even number of +period-separated decimal integers. By default revision +1.1 is the first revision of a file. Each successive +revision is given a new number by increasing the +rightmost number by one. The following figure displays +a few revisions, with newer revisions to the right. + +@example + +-----+ +-----+ +-----+ +-----+ +-----+ + ! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! + +-----+ +-----+ +-----+ +-----+ +-----+ +@end example + +@c Probably should move the following down a few +@c sections, until after "branch motivation". +@sc{cvs} is not limited to linear development. The +@dfn{revision tree} can be split into @dfn{branches}, +where each branch is a self-maintained line of +development. Changes made on one branch can easily be +moved back to the main trunk. + +Each branch has a @dfn{branch number}, consisting of an +odd number of period-separated decimal integers. The +branch number is created by appending an integer to the +revision number where the corresponding branch forked +off. Having branch numbers allows more than one branch +to be forked off from a certain revision. + +@need 3500 +All revisions on a branch have revision numbers formed +by appending an ordinal number to the branch number. +The following figure illustrates branching with an +example. + +@example +@group + +-------------+ + Branch 1.2.2.3.2 -> ! 1.2.2.3.2.1 ! + / +-------------+ + / + / + +---------+ +---------+ +---------+ +---------+ +Branch 1.2.2 -> _! 1.2.2.1 !----! 1.2.2.2 !----! 1.2.2.3 !----! 1.2.2.4 ! + / +---------+ +---------+ +---------+ +---------+ + / + / ++-----+ +-----+ +-----+ +-----+ +-----+ +! 1.1 !----! 1.2 !----! 1.3 !----! 1.4 !----! 1.5 ! <- The main trunk ++-----+ +-----+ +-----+ +-----+ +-----+ + ! + ! + ! +---------+ +---------+ +---------+ +Branch 1.2.4 -> +---! 1.2.4.1 !----! 1.2.4.2 !----! 1.2.4.3 ! + +---------+ +---------+ +---------+ + +@end group +@end example + +@c -- However, at least for me the figure is not enough. I suggest more +@c -- text to accompany it. "A picture is worth a thousand words", so you +@c -- have to make sure the reader notices the couple of hundred words +@c -- *you* had in mind more than the others! + +@c -- Why an even number of segments? This section implies that this is +@c -- how the main trunk is distinguished from branch roots, but you never +@c -- explicitly say that this is the purpose of the [by itself rather +@c -- surprising] restriction to an even number of segments. + +The exact details of how the branch number is +constructed is not something you normally need to be +concerned about, but here is how it works: When +@sc{cvs} creates a branch number it picks the first +unused even integer, starting with 2. So when you want +to create a branch from revision 6.4 it will be +numbered 6.4.2. All branch numbers ending in a zero +(such as 6.4.0) are used internally by @sc{cvs} +(@pxref{Magic branch numbers}). The branch 1.1.1 has a +special meaning. @xref{Tracking sources}. + +@c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +@node Versions revisions releases +@section Versions, revisions and releases +@cindex Revisions, versions and releases +@cindex Versions, revisions and releases +@cindex Releases, revisions and versions + +A file can have several versions, as described above. +Likewise, a software product can have several versions. +A software product is often given a version number such +as @samp{4.1.1}. + +Versions in the first sense are called @dfn{revisions} +in this document, and versions in the second sense are +called @dfn{releases}. To avoid confusion, the word +@dfn{version} is almost never used in this document. + +@node Assigning revisions +@section Assigning revisions + +@c We avoid the "major revision" terminology. It seems +@c like jargon. Hopefully "first number" is clear enough. +By default, @sc{cvs} will assign numeric revisions by +leaving the first number the same and incrementing the +second number. For example, @code{1.1}, @code{1.2}, +@code{1.3}, etc. + +When adding a new file, the second number will always +be one and the first number will equal the highest +first number of any file in that directory. For +example, the current directory contains files whose +highest numbered revisions are @code{1.7}, @code{3.1}, +and @code{4.12}, then an added file will be given the +numeric revision @code{4.1}. + +@c This is sort of redundant with something we said a +@c while ago. Somewhere we need a better way of +@c introducing how the first number can be anything +@c except "1", perhaps. Also I don't think this +@c presentation is clear on why we are discussing releases +@c and first numbers of numeric revisions in the same +@c breath. +Normally there is no reason to care +about the revision numbers---it is easier to treat them +as internal numbers that @sc{cvs} maintains, and tags +provide a better way to distinguish between things like +release 1 versus release 2 of your product +(@pxref{Tags}). However, if you want to set the +numeric revisions, the @samp{-r} option to @code{cvs +commit} can do that. + +For example, to bring all your files up to the @sc{rcs} +revision 3.0 (including those that haven't changed), +you might invoke: + +@c Why does this not require -f to get the "those that +@c haven't changed" part? That isn't clear to me. +@example +$ cvs commit -r 3.0 +@end example + +Note that the number you specify with @samp{-r} must be +larger than any existing revision number. That is, if +revision 3.0 exists, you cannot @samp{cvs commit +-r 1.3}. If you want to maintain several releases in +parallel, you need to use a branch (@pxref{Revisions and branches}). + @c - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @node Tags @section Tags--Symbolic revisions @@ -3494,6 +3561,13 @@ does not require that you have a working copy of the module. @xref{rtag}. (You can also use the @code{tag} command; @pxref{tag}). +@c Why does this example use -r? That seems like a +@c confusing thing to do in an example where we are +@c introducing branches. One user thought it was +@c a mandatory part of creating a branch for example. +@c And we are not sufficiently +@c "step by step" in terms of explaining +@c what argument one should give to -r. @example $ cvs rtag -b -r release-1-0 release-1-0-patches tc @end example @@ -4018,7 +4092,7 @@ $ cvs commit -m "Early version. Not yet compilable." backend.c @end example When you add a file it is added only on the branch -which you are working on (@pxref{Branches}). You can +which you are working on (@pxref{Revisions and branches}). You can later merge the additions to another branch if you want (@pxref{Merging adds and removals}). @c Should we mention that earlier versions of CVS @@ -4134,7 +4208,7 @@ U oj.c @end example When you remove a file it is removed only on the branch -which you are working on (@pxref{Branches}). You can +which you are working on (@pxref{Revisions and branches}). You can later merge the removals to another branch if you want (@pxref{Merging adds and removals}). @@ -6496,8 +6570,10 @@ Commit directories recursively. This is on by default. @item -r @var{revision} Commit to @var{revision}. @var{revision} must be either a branch, or a revision on the main trunk that -is higher than any existing revision number. You +is higher than any existing revision number +(@pxref{Assigning revisions}). You cannot commit to a specific revision on a branch. +@c FIXME: Need xref for branch case. @end table @code{commit} also supports these options: @@ -6538,36 +6614,6 @@ invoking an editor. @node commit examples @appendixsubsec commit examples -@appendixsubsubsec New major release number - -@c "commit examples" seems like a bad place for this. -@c What is the right place? -By default, @sc{cvs} will assign numeric revisions by -leaving the first number the same and incrementing the -second number. For example, @code{1.1}, @code{1.2}, -@code{1.3}, etc. Normally there is no reason to care -about the revision numbers---it is easier to treat them -as internal numbers that @sc{cvs} maintains, and tags -provide a better way to distinguish between things like -release 1 versus release 2 of your product -(@pxref{Tags}). However, if you want to set the -numeric revisions, the @samp{-r} option to @code{cvs -commit} can do that. - -For example, to bring all your files up to the @sc{rcs} -revision 3.0 (including those that haven't changed), -you might invoke: - -@example -$ cvs commit -r 3.0 -@end example - -Note that the number you specify with @samp{-r} must be -larger than any existing revision number. That is, if -revision 3.0 exists, you cannot @samp{cvs commit --r 1.3}. If you want to maintain several releases in -parallel, you need to use a branch (@pxref{Branches}). - @appendixsubsubsec Committing to a branch You can commit to a branch revision (one that has an @@ -7775,7 +7821,7 @@ symbolic tag as development continues (and files get removed from the up-coming distribution). @item -b -Make the tag a branch tag. @xref{Branches}. +Make the tag a branch tag. @xref{Revisions and branches}. @item -d Delete the tag instead of creating it. @@ -7946,7 +7992,7 @@ Two special options are available: @table @code @item -b The -b option makes the tag a branch tag -(@pxref{Branches}), allowing concurrent, isolated +(@pxref{Revisions and branches}), allowing concurrent, isolated development. This is most useful for creating a patch to a previously released software distribution. @@ -8394,6 +8440,9 @@ behavior}. @item -r @var{rev} Commit to @var{rev}. See @ref{commit options}. +@c FIXME: should be dragging over text from +@c commit options, especially if it can be cleaned up +@c and made concise enough. @end table @item diff [@var{options}] [@var{files}@dots{}] diff --git a/gnu/usr.bin/cvs/doc/cvsclient.texi b/gnu/usr.bin/cvs/doc/cvsclient.texi index 6e3fbee9544..7feee6c6a90 100644 --- a/gnu/usr.bin/cvs/doc/cvsclient.texi +++ b/gnu/usr.bin/cvs/doc/cvsclient.texi @@ -432,12 +432,20 @@ recent @code{Directory} request. @c requests, but isn't documented and should be. @item Case \n -Response expected: no. -Tell the server that filenames should be matched against ignore patterns -in a case-insensitive fashion. Note that this does not apply to other -comparisons---for example the filenames given in @code{Entry} and -@code{Modified} requests for the same file must match in case regardless -of whether the @code{Case} request is sent. +Response expected: no. Tell the server that filenames should be matched +in a case-insensitive fashion. Note that this is not the primary +mechanism for achieving case-insensitivity; for the most part the client +keeps track of the case which the server wants to use and takes care to +always use that case regardless of what the user specifies. For example +the filenames given in @code{Entry} and @code{Modified} requests for the +same file must match in case regardless of whether the @code{Case} +request is sent. The latter mechanism is more general (it could also be +used for 8.3 filenames, VMS filenames with more than one @samp{.}, and +any other situation in which there is a predictable mapping between +filenames in the working directory and filenames in the protocol), but +there are some situations it cannot handle (ignore patterns, or +situations where the user specifies a filename and the client does not +know about that file). @item Argument @var{text} \n Response expected: no. @@ -731,8 +739,10 @@ Like @code{Set-static-directory}, but clear, not set, the flag. Additional data: @var{tagspec} \n. Tell the client to set a sticky tag or date, which should be supplied with the @code{Sticky} request for future operations. @var{pathname} ends in a slash; its purpose is to -specify a directory, not a file within a directory. The first character -of @var{tagspec} is @samp{T} for a tag, or @samp{D} for a date. The +specify a directory, not a file within a directory. The client should +store @var{tagspec} and pass it back to the server as-is, to allow for +future expansion. The first character of @var{tagspec} is @samp{T} for +a tag, @samp{D} for a date, or something else for future expansion. The remainder of @var{tagspec} contains the actual tag or date. @item Clear-sticky @var{pathname} \n diff --git a/gnu/usr.bin/cvs/src/ChangeLog b/gnu/usr.bin/cvs/src/ChangeLog index a78216d0505..42a631ef2be 100644 --- a/gnu/usr.bin/cvs/src/ChangeLog +++ b/gnu/usr.bin/cvs/src/ChangeLog @@ -1,5 +1,60 @@ +Tue Mar 25 13:26:52 1997 Jim Kingdon + + * version.c: Version 1.9.6. + +Mon Mar 24 13:02:04 1997 Jim Kingdon + + * entries.c (ParseTag): Add comment about unrecognized characters + in CVS/Tag file. + + * classify.c (Classify_File): Add comment about how specifying a + tag (bogusly?) suppresses certain messages. + +Fri Mar 21 13:37:46 1997 Jim Kingdon + + * rcs.h (struct rcsnode): Add comment about case of PATH. + * rcs.c (RCS_parse): If ign_case, then try opening the file with + fopen_case. + * ignore.c (ign_case): Adjust comment. + * cvs.h, filesubr.c (cvs_casecmp, fopen_case): New functions. + +20 Mar 1997 Jim Kingdon + + * client.c (send_repository): When sending Directory request, + send any ISDIRSEP character as '/'. Fixes + "cvs log foo\bar\baz.c" on NT & friends. + + * client.c (send_file_names): Don't try to read Entries file if + CVSADM directory does not exist. Fixes fairly serious regression + (warning on all fresh checkouts) introduced by 1997-01-08 change. + +Tue Mar 18 13:03:33 1997 Jim Meyering + + * sanity.sh (RCSINIT): Define to be empty and export, to hide any + existing value that might cause spurious failures. + + * Makefile.in: (install): Depend on installdirs. + Remove `CYGNUS LOCAL' comment saying not to. + +Tue Mar 18 09:36:26 1997 Jim Kingdon + + * recurse.c (struct recursion_frame): Reindent. + (do_dir_proc): Print message if we try to recurse into a CVSADM + directory. + * sanity.sh (basicb): New test basicb-4a tests for above fix. + Sun Mar 16 10:18:28 1997 Jim Kingdon + * sanity.sh (death2): Replace regexp matching temporary file name + with new variable ${tempname}. For most of the tests this is a + cosmetic change, but death2-diff-6 had been missing _ which caused + it to fail on Solaris (at least sometimes). + + * sanity.sh (modes): Don't use export -n; it doesn't seem + to be sufficiently portable. + + * version.c: Change version number to 1.9.5. + * version.c: Version 1.9.4. * rcscmds.c (RCS_checkin): Preserve the mode of the rcsfile. diff --git a/gnu/usr.bin/cvs/src/Makefile.in b/gnu/usr.bin/cvs/src/Makefile.in index e2dbe8d8db3..f02edf26101 100644 --- a/gnu/usr.bin/cvs/src/Makefile.in +++ b/gnu/usr.bin/cvs/src/Makefile.in @@ -85,8 +85,7 @@ saber_cvs: lint: @cd ..; $(MAKE) lint SUBDIRS=src -# CYGNUS LOCAL: Do not depend upon installdirs -install: +install: installdirs @for prog in $(PROGS); do \ echo Installing $$prog in $(bindir); \ $(INSTALL) $$prog $(bindir)/$$prog ; \ diff --git a/gnu/usr.bin/cvs/src/classify.c b/gnu/usr.bin/cvs/src/classify.c index 522017a472d..55851f7bb24 100644 --- a/gnu/usr.bin/cvs/src/classify.c +++ b/gnu/usr.bin/cvs/src/classify.c @@ -48,6 +48,11 @@ Classify_File (finfo, tag, date, options, force_tag_match, aflag, versp, if (vers->ts_user == NULL) { /* there is no user file */ + /* FIXME: Why do we skip this message if vers->tag or + vers->date is set? It causes "cvs update -r tag98 foo" + to silently do nothing, which is seriously confusing + behavior. "cvs update foo" gives this message, which + is what I would expect. */ if (!force_tag_match || !(vers->tag || vers->date)) if (!really_quiet) error (0, 0, "nothing known about %s", finfo->fullname); @@ -56,6 +61,11 @@ Classify_File (finfo, tag, date, options, force_tag_match, aflag, versp, else { /* there is a user file */ + /* FIXME: Why do we skip this message if vers->tag or + vers->date is set? It causes "cvs update -r tag98 foo" + to silently do nothing, which is seriously confusing + behavior. "cvs update foo" gives this message, which + is what I would expect. */ if (!force_tag_match || !(vers->tag || vers->date)) if (!really_quiet) error (0, 0, "use `cvs add' to create an entry for %s", diff --git a/gnu/usr.bin/cvs/src/client.c b/gnu/usr.bin/cvs/src/client.c index 61b3d620258..03b0cae7134 100644 --- a/gnu/usr.bin/cvs/src/client.c +++ b/gnu/usr.bin/cvs/src/client.c @@ -2279,7 +2279,28 @@ send_repository (dir, repos, update_dir) adm_name = xmalloc (strlen (dir) + 80); send_to_server ("Directory ", 0); - send_to_server (update_dir, 0); + { + /* Send the directory name. I know that this + sort of duplicates code elsewhere, but each + case seems slightly different... */ + char buf[1]; + char *p = update_dir; + while (*p != '\0') + { + assert (*p != '\012'); + if (ISDIRSEP (*p)) + { + buf[0] = '/'; + send_to_server (buf, 1); + } + else + { + buf[0] = *p; + send_to_server (buf, 1); + } + ++p; + } + } send_to_server ("\012", 1); send_to_server (repos, 0); send_to_server ("\012", 1); @@ -4423,7 +4444,11 @@ send_file_names (argc, argv, flags) /* For now just do this for files in the local directory. Would be nice to handle the non-local case too, though. */ - if (p == last_component (p)) + /* The isdir check could more gracefully be replaced + with a way of having Entries_Open report back the + error to us and letting us ignore existence_error. + Or some such. */ + if (p == last_component (p) && isdir (CVSADM)) { List *entries; Node *node; diff --git a/gnu/usr.bin/cvs/src/entries.c b/gnu/usr.bin/cvs/src/entries.c index d9c4e815ee1..8fb22d0e5c9 100644 --- a/gnu/usr.bin/cvs/src/entries.c +++ b/gnu/usr.bin/cvs/src/entries.c @@ -671,6 +671,9 @@ ParseTag (tagp, datep) *tagp = xstrdup (line + 1); else if (*line == 'D' && datep) *datep = xstrdup (line + 1); + /* if not 'T' or 'D' silently ignore it; it may have been + written by a future version of CVS which extends the + syntax. */ } (void) fclose (fp); free (line); diff --git a/gnu/usr.bin/cvs/src/filesubr.c b/gnu/usr.bin/cvs/src/filesubr.c index b3142545f9b..f105b454950 100644 --- a/gnu/usr.bin/cvs/src/filesubr.c +++ b/gnu/usr.bin/cvs/src/filesubr.c @@ -722,3 +722,116 @@ expand_wild (argc, argv, pargc, pargv) for (i = 0; i < argc; ++i) (*pargv)[i] = xstrdup (argv[i]); } + +#ifdef SERVER_SUPPORT +/* Case-insensitive string compare. I know that some systems + have such a routine, but I'm not sure I see any reasons for + dealing with the hair of figuring out whether they do (I haven't + looked into whether this is a performance bottleneck; I would guess + not). */ +int +cvs_casecmp (str1, str2) + char *str1; + char *str2; +{ + char *p; + char *q; + int pqdiff; + + p = str1; + q = str2; + while ((pqdiff = tolower (*p) - tolower (*q)) == 0) + { + if (*p == '\0') + return 0; + ++p; + ++q; + } + return pqdiff; +} + +/* Case-insensitive file open. As you can see, this is an expensive + call. We don't regard it as our main strategy for dealing with + case-insensitivity. Returns errno code or 0 for success. Puts the + new file in *FP. NAME and MODE are as for fopen. If PATHP is not + NULL, then put a malloc'd string containing the pathname as found + into *PATHP. Note that a malloc'd string is put into *PATHP + even if we return an error. It doesn't mean anything, but it still + must be freed. + + Might be cleaner to separate the file finding (which just gives + *PATHP) from the file opening (which the caller can do). For one + thing, might make it easier to know whether to put NAME or *PATHP + into error messages. */ +int +fopen_case (name, mode, fp, pathp) + char *name; + char *mode; + FILE **fp; + char **pathp; +{ + struct dirent *dp; + DIR *dirp; + char *dir; + char *fname; + char *found_name; + int retval; + + /* Separate NAME into directory DIR and filename within the directory + FNAME. */ + dir = xstrdup (name); + fname = strrchr (dir, '/'); + if (fname == NULL) + error (1, 0, "internal error: relative pathname in fopen_case"); + *fname++ = '\0'; + + found_name = NULL; + dirp = CVS_OPENDIR (dir); + if (dirp == NULL) + error (1, errno, "cannot read directory %s", dir); + errno = 0; + while ((dp = readdir (dirp)) != NULL) + { + if (cvs_casecmp (dp->d_name, fname) == 0) + { + if (found_name != NULL) + error (1, 0, "%s is ambiguous; could mean %s or %s", + fname, dp->d_name, found_name); + found_name = xstrdup (dp->d_name); + } + } + if (errno != 0) + error (1, errno, "cannot read directory %s", dir); + closedir (dirp); + + if (found_name == NULL) + { + *fp = NULL; + retval = ENOENT; + } + else + { + char *p; + + /* Copy the found name back into DIR. We are assuming that + found_name is the same length as fname, which is true as + long as the above code is just ignoring case and not other + aspects of filename syntax. */ + p = dir + strlen (dir); + *p++ = '/'; + strcpy (p, found_name); + *fp = fopen (dir, mode); + if (*fp == NULL) + retval = errno; + else + retval = 0; + } + + if (pathp == NULL) + free (dir); + else + *pathp = dir; + free (found_name); + return retval; +} +#endif /* SERVER_SUPPORT */ diff --git a/gnu/usr.bin/cvs/src/rcs.c b/gnu/usr.bin/cvs/src/rcs.c index 405d375174c..01ac779d0b2 100644 --- a/gnu/usr.bin/cvs/src/rcs.c +++ b/gnu/usr.bin/cvs/src/rcs.c @@ -58,9 +58,11 @@ static const char spacetab[] = { #define whitespace(c) (spacetab[(unsigned char)c] != 0) -/* - * Parse an rcsfile given a user file name and a repository - */ +/* Parse an rcsfile given a user file name and a repository. If there is + an error, we print an error message and return NULL. If the file + does not exist, we return NULL without printing anything (I'm not + sure this allows the caller to do anything reasonable, but it is + the current behavior). */ RCSNode * RCS_parse (file, repos) const char *file; @@ -111,6 +113,67 @@ RCS_parse (file, repos) retval = NULL; goto out; } +#if defined (SERVER_SUPPORT) && !defined (FILENAMES_CASE_INSENSITIVE) + else if (ign_case) + { + int status; + char *found_path; + + /* The client might be asking for a file which we do have + (which the client doesn't know about), but for which the + filename case differs. We only consider this case if the + regular CVS_FOPENs fail, because fopen_case is such an + expensive call. */ + (void) sprintf (rcsfile, "%s/%s%s", repos, file, RCSEXT); + status = fopen_case (rcsfile, "rb", &fp, &found_path); + if (status == 0) + { + rcs = RCS_parsercsfile_i (fp, rcsfile); + if (rcs != NULL) + rcs->flags |= VALID; + + fclose (fp); + free (rcs->path); + rcs->path = found_path; + retval = rcs; + goto out; + } + else if (! existence_error (status)) + { + error (0, status, "cannot open %s", rcsfile); + free (found_path); + retval = NULL; + goto out; + } + free (found_path); + + (void) sprintf (rcsfile, "%s/%s/%s%s", repos, CVSATTIC, file, RCSEXT); + status = fopen_case (rcsfile, "rb", &fp, &found_path); + if (status == 0) + { + rcs = RCS_parsercsfile_i (fp, rcsfile); + if (rcs != NULL) + { + rcs->flags |= INATTIC; + rcs->flags |= VALID; + } + + fclose (fp); + free (rcs->path); + rcs->path = found_path; + retval = rcs; + goto out; + } + else if (! existence_error (status)) + { + error (0, status, "cannot open %s", rcsfile); + free (found_path); + retval = NULL; + goto out; + } + free (found_path); + } +#endif retval = NULL; out: diff --git a/gnu/usr.bin/cvs/src/rcs.h b/gnu/usr.bin/cvs/src/rcs.h index ed6ea37f89f..1305b8c754c 100644 --- a/gnu/usr.bin/cvs/src/rcs.h +++ b/gnu/usr.bin/cvs/src/rcs.h @@ -47,7 +47,13 @@ struct rcsnode { int refcount; int flags; + + /* File name of the RCS file. This is not necessarily the name + as specified by the user, but it is a name which can be passed to + system calls and a name which is OK to print in error messages + (the various names might differ in case). */ char *path; + char *head; char *branch; char *symbols_data; diff --git a/gnu/usr.bin/cvs/src/recurse.c b/gnu/usr.bin/cvs/src/recurse.c index 8a7a290173b..804c3a1be58 100644 --- a/gnu/usr.bin/cvs/src/recurse.c +++ b/gnu/usr.bin/cvs/src/recurse.c @@ -25,16 +25,16 @@ static List *filelist = NULL; /* holds list of files on which to operate */ static List *dirlist = NULL; /* holds list of directories on which to operate */ struct recursion_frame { - FILEPROC fileproc; - FILESDONEPROC filesdoneproc; - DIRENTPROC direntproc; - DIRLEAVEPROC dirleaveproc; - void *callerdat; - Dtype flags; - int which; - int aflag; - int readlock; - int dosrcs; + FILEPROC fileproc; + FILESDONEPROC filesdoneproc; + DIRENTPROC direntproc; + DIRLEAVEPROC dirleaveproc; + void *callerdat; + Dtype flags; + int which; + int aflag; + int readlock; + int dosrcs; }; static int do_recursion PROTO ((struct recursion_frame *frame)); @@ -564,6 +564,39 @@ do_dir_proc (p, closure) struct saved_cwd cwd; char *saved_update_dir; + if (fncmp (dir, CVSADM) == 0) + { + /* This seems to most often happen when users (beginning users, + generally), try "cvs ci *" or something similar. On that + theory, it is possible that we should just silently skip the + CVSADM directories, but on the other hand, using a wildcard + like this isn't necessarily a practice to encourage (it operates + only on files which exist in the working directory, unlike + regular CVS recursion). */ + + /* FIXME-reentrancy: printed_cvs_msg should be in a "command + struct" or some such, so that it gets cleared for each new + command (this is possible using the remote protocol and a + custom-written client). The struct recursion_frame is not + far back enough though, some commands (commit at least) + will call start_recursion several times. An alternate solution + would be to take this whole check and move it to a new function + validate_arguments or some such that all the commands call + and which snips the offending directory from the argc,argv + vector. */ + static int printed_cvs_msg = 0; + if (!printed_cvs_msg) + { + error (0, 0, "warning: directory %s specified in argument", + dir); + error (0, 0, "\ +but CVS uses %s for its own purposes; skipping %s directory", + CVSADM, dir); + printed_cvs_msg = 1; + } + return 0; + } + saved_update_dir = update_dir; update_dir = xmalloc (strlen (saved_update_dir) + strlen (dir) diff --git a/gnu/usr.bin/cvs/src/sanity.sh b/gnu/usr.bin/cvs/src/sanity.sh index 84e678c25bb..7906ec804c4 100644 --- a/gnu/usr.bin/cvs/src/sanity.sh +++ b/gnu/usr.bin/cvs/src/sanity.sh @@ -85,6 +85,10 @@ PROG=`basename ${testcvs}` # not allowed in usernames. Other than that I'm not sure. username="[a-zA-Z0-9][a-zA-Z0-9]*" +# Regexp to match the name of a temporary file (from cvs_temp_name). +# This appears in certain diff output. +tempname="[-a-zA-Z0-9/.%_]*" + # FIXME: try things (what things? checkins?) without -m. # # Some of these tests are written to expect -Q. But testing with @@ -448,6 +452,11 @@ cd ${TESTDIR} mkdir home HOME=${TESTDIR}/home; export HOME +# Make sure this variable is not defined to anything that would +# change the format of rcs dates. Otherwise people using e.g., +# RCSINIT=-zLT get lots of spurious failures. +RCSINIT=; export RCSINIT + # Remaining arguments are the names of tests to run. # # The testsuite is broken up into (hopefully manageably-sized) @@ -730,6 +739,9 @@ File: sfile1 Status: Locally Added dotest basicb-4 "${testcvs} add sfile2" \ "${PROG} [a-z]*: scheduling file .sfile2. for addition ${PROG} [a-z]*: use .cvs commit. to add this file permanently" + dotest basicb-4a "${testcvs} -q ci CVS" \ +"${PROG} [a-z]*: warning: directory CVS specified in argument +${PROG} [a-z]*: but CVS uses CVS for its own purposes; skipping CVS directory" cd .. dotest basicb-5 "${testcvs} -q ci -m add" \ 'RCS file: /tmp/cvs-sanity/cvsroot/first-dir/sdir1/sfile1,v @@ -1947,7 +1959,7 @@ ${PROG} [a-z]*: use .${PROG} commit. to remove this file permanently" =================================================================== RCS file: file1 diff -N file1 -\*\*\* [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +\*\*\* ${tempname}[ ][ ]*[a-zA-Z0-9: ]* --- /dev/null[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 1 \*\*\*\* @@ -1971,7 +1983,7 @@ done' =================================================================== RCS file: file1 diff -N file1 -\*\*\* [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +\*\*\* ${tempname}[ ][ ]*[a-zA-Z0-9: ]* --- /dev/null[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 1 \*\*\*\* @@ -1986,7 +1998,7 @@ diff -N file1 =================================================================== RCS file: file1 diff -N file1 -\*\*\* [-a-zA-Z0-9/.%]*[ ][ ]*[a-zA-Z0-9: ]* +\*\*\* ${tempname}[ ][ ]*[a-zA-Z0-9: ]* --- /dev/null[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 1 \*\*\*\* @@ -2023,7 +2035,7 @@ diff -c first-dir/file1:1\.1 first-dir/file1:removed RCS file: file1 diff -N file1 \*\*\* /dev/null[ ][ ]*[a-zA-Z0-9: ]* ---- [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +--- ${tempname}[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 0 \*\*\*\* --- 1 ---- @@ -2095,7 +2107,7 @@ done' RCS file: file3 diff -N file3 \*\*\* /dev/null[ ][ ]*[a-zA-Z0-9: ]* ---- [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +--- ${tempname}[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 0 \*\*\*\* --- 1 ---- @@ -2137,7 +2149,7 @@ Index: file2 RCS file: file2 diff -N file2 \*\*\* /dev/null[ ][ ]*[a-zA-Z0-9: ]* ---- [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +--- ${tempname}[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 0 \*\*\*\* --- 1 ---- @@ -2147,7 +2159,7 @@ Index: file3 RCS file: file3 diff -N file3 \*\*\* /dev/null[ ][ ]*[a-zA-Z0-9: ]* ---- [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +--- ${tempname}[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 0 \*\*\*\* --- 1 ---- @@ -2180,7 +2192,7 @@ ${PROG} [a-z]*: file3 is no longer in the repository" RCS file: file1 diff -N file1 \*\*\* /dev/null[ ][ ]*[a-zA-Z0-9: ]* ---- [-a-zA-Z0-9/.%_]*[ ][ ]*[a-zA-Z0-9: ]* +--- ${tempname}[ ][ ]*[a-zA-Z0-9: ]* \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* \*\*\* 0 \*\*\*\* --- 1 ---- @@ -5593,7 +5605,11 @@ done' # such as whether a second user can check out the files. But # it would be awkward to test the consequences, so we don't. - export -n CVSUMASK # if unset, defaults to 002 + # Solaris /bin/sh doesn't support export -n. I'm not sure + # what we can do about this, other than hope that whoever + # is running the tests doesn't have CVSUMASK set. + #export -n CVSUMASK # if unset, defaults to 002 + umask 077 mkdir 1; cd 1 dotest modes-1 "${testcvs} -q co -l ." '' diff --git a/gnu/usr.bin/cvs/src/version.c b/gnu/usr.bin/cvs/src/version.c index f09017c3174..8921e787a76 100644 --- a/gnu/usr.bin/cvs/src/version.c +++ b/gnu/usr.bin/cvs/src/version.c @@ -12,7 +12,7 @@ #include "cvs.h" -char *version_string = "\nConcurrent Versions System (CVS) 1.9.4"; +char *version_string = "\nConcurrent Versions System (CVS) 1.9.6"; #ifdef CLIENT_SUPPORT #ifdef SERVER_SUPPORT diff --git a/gnu/usr.bin/cvs/windows-NT/SCC/ChangeLog b/gnu/usr.bin/cvs/windows-NT/SCC/ChangeLog index 5b3ca835f1e..d1f67a76fd1 100644 --- a/gnu/usr.bin/cvs/windows-NT/SCC/ChangeLog +++ b/gnu/usr.bin/cvs/windows-NT/SCC/ChangeLog @@ -1,3 +1,10 @@ +21 Mar 1997 Jim Kingdon + + * scc.c (SccCheckout): Write to debuglog and return + -11 instead of -14. I though maybe that this may be + related to the crashes I've been seeing, but those + crashes persisted when I deinstalled the SCC DLL. + 14 Mar 1997 Jim Kingdon * scc.c: Go back to using debuglog not outproc for diff --git a/gnu/usr.bin/cvs/windows-NT/SCC/scc.c b/gnu/usr.bin/cvs/windows-NT/SCC/scc.c index 6815208f357..c8f10512b3a 100644 --- a/gnu/usr.bin/cvs/windows-NT/SCC/scc.c +++ b/gnu/usr.bin/cvs/windows-NT/SCC/scc.c @@ -14,6 +14,12 @@ typedef long SCC_return; #define SCC_return_success 0 #define SCC_return_unknown_project -2 +/* The file is not under SCC control. */ +#define SCC_return_non_scc_file -11 +/* This operation is not supported. I believe this status can only + be returned from SccGet, SccAdd, SccRemove, SccHistory, or + SccQueryInfo. I'm not really sure what happens if it is returned + from other calls. */ #define SCC_return_not_supported -14 #define SCC_return_non_specific_error -15 enum SCC_command @@ -257,7 +263,16 @@ SccCheckout (void *context_arg, HWND window, LONG num_files, LPSTR *file_names, LPSTR comment, LONG options, void *prov_options) { - return SCC_return_not_supported; + struct context *context = (struct context *)context_arg; + fprintf (context->debuglog, "SccCheckout num_files=%ld\n", num_files); + fflush (context->debuglog); + /* For the moment we say that all files are not ours. I'm not sure + whether this is ever necessary; that is, whether the IDE will call + us except where we have told the IDE that a file is under source + control. */ + /* I'm not sure what we would do if num_files > 1 and we wanted to + return different statuses for different files. */ + return SCC_return_non_scc_file; } /* cvs ci. */ diff --git a/gnu/usr.bin/cvs/zlib/ChangeLog b/gnu/usr.bin/cvs/zlib/ChangeLog index 7ffad45dceb..02f090f5e49 100644 --- a/gnu/usr.bin/cvs/zlib/ChangeLog +++ b/gnu/usr.bin/cvs/zlib/ChangeLog @@ -1,3 +1,8 @@ +Tue Mar 18 13:05:37 1997 Jim Meyering + + * Makefile.in (DISTFILES): Change glob pattern so that it doesn't + match `Makefile'. Add Make_vms.com explicitly. + 1997-01-01 Fred Fish * Makefile.in (CC): Use @CC@ rather than hard coded "cc". diff --git a/gnu/usr.bin/cvs/zlib/Makefile.in b/gnu/usr.bin/cvs/zlib/Makefile.in index 0296a9c4fec..93b60964d7f 100644 --- a/gnu/usr.bin/cvs/zlib/Makefile.in +++ b/gnu/usr.bin/cvs/zlib/Makefile.in @@ -43,8 +43,8 @@ OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ TEST_OBJS = example.o minigzip.o # build_zlib.com added for CVS -DISTFILES = README INDEX ChangeLog configure Make*[a-z0-9] descrip.mms \ - zlib.def zlib.rc algorithm.doc *.[ch] \ +DISTFILES = README INDEX ChangeLog configure Makefile.*[a-z0-9] Make_vms.com \ + descrip.mms zlib.def zlib.rc algorithm.doc *.[ch] \ build_zlib.com # For CVS, just build libz.a