| $description = "The following test creates a makefile to test the -C dir \n" | |
| ."option in make. This option tells make to change to \n" | |
| ."directory dir before reading the makefile."; | |
| $details = "This test is similar to the clean test except that this test\n" | |
| ."creates the file to delete in the work directory instead of\n" | |
| ."the current directory. Make is called from another directory\n" | |
| ."using the -C workdir option so that it can both find the \n" | |
| ."makefile and the file to delete in the work directory. "; | |
| $example = $workdir . $pathsep . "EXAMPLE_FILE"; | |
| open(MAKEFILE,"> $makefile"); | |
| # The Contents of the MAKEFILE ... | |
| print MAKEFILE "all: \n"; | |
| print MAKEFILE "\t\@echo This makefile did not clean the dir ... good\n"; | |
| print MAKEFILE "clean: \n"; | |
| print MAKEFILE "\t$delete_command EXAMPLE_FILE\n"; | |
| # END of Contents of MAKEFILE | |
| close(MAKEFILE); | |
| &touch($example); | |
| &run_make_with_options("${testname}.mk", | |
| "-C $workdir clean", | |
| &get_logfile); | |
| chdir $workdir; | |
| $wpath = &get_this_pwd; | |
| chdir $pwd; | |
| # Create the answer to what should be produced by this Makefile | |
| $answer = "$make_name: Entering directory `$wpath'\n" | |
| . "$delete_command EXAMPLE_FILE\n" | |
| . "$make_name: Leaving directory `$wpath'\n"; | |
| &compare_output($answer,&get_logfile(1)); | |
| if (-f $example) | |
| { | |
| $test_passed = 0; | |
| } | |
| 1; |