Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!mit-eddie!nathan From: nathan@eddie.MIT.EDU (Nathan Glasser) Newsgroups: comp.sys.ibm.pc Subject: Re: NDMAKE 4.3 Bug? Message-ID: <7218@eddie.MIT.EDU> Date: Tue, 20-Oct-87 17:17:25 EDT Article-I.D.: eddie.7218 Posted: Tue Oct 20 17:17:25 1987 Date-Received: Thu, 22-Oct-87 00:05:37 EDT References: <41.2179A191@circle.UUCP> Reply-To: nathan@eddie.MIT.EDU (Nathan Glasser) Organization: MIT, EE/CS Computer Facilities, Cambridge, MA Lines: 48 In previous articles creps@silver.uucp writes: >... >command shell to execute the cd command, the environment in that new shell >is not returned when it's completed executing. That is why the current >directory appears not to have changed when the cd is done. It actually was >changed, but in the new shell, and was not returned to the old shell. I > (cd smodel ; cd ; ...) >rather than: > cd smodel galvin@circle.uucp writes: >In the Unix Programmer's Manual (yes, it's RTFM time again, DK is too good >of a programmer to mess this one up) it notes under Make(1): > "Commands that are directly executed by the shell, notably *cd(1)*, > are ineffectual across newlines in *make*." >In other words, try this on the "cd smodel" line in your makefile: > cd smodel; cd >you should get "c:\tmp\smodel" back. If this were Unix, and we were using Unix make, what was stated above would be (almost) correct. In our case, things are different. In Dos, there is only one "current directory". Because of this "feature", the original makefile code should have worked using the standard ms-dos shell "command.com". From a comment creps@silver made above and others I didn't include, it seems that he does not use the standard command.com. The one he does use apparently remembers the current directory when it starts, and changes back to this directory at the termination. His solution also does not apply to standard command.com. Semicolons do not serve to separate commands on a single command line, nor is there any other way to do this. The comment about the environment is completely irrelevant, for both Dos and Unix. In short, normal users of Dos, command.com, and ndmake should ignore this whole discussion. It does not apply to them, and contains technical inaccuracies as well. -- Nathan Glasser fnord nathan@{mit-eddie.uucp, xx.lcs.mit.edu} "A tribble is the only love that money can buy." Presently there is insufficient evidence to conclude that tribbles spread AIDS.