$description = "The following tests the use of a PHONY target.  It makes\n"
              ."sure that the rules under a target get executed even if\n"
              ."a filename of the same name of the target exists in the\n"
              ."directory.\n";

$details = "This makefile in this test declares the target clean to be a \n"
          ."PHONY target.  We then create a file named \"clean\" in the \n"
          ."directory.  Although this file exists, the rule under the target\n"
          ."clean should still execute because of it's phony status.";

if ($vos)
{
   $delete_command = "delete_file";
}
else
{
   $delete_command = "rm";
}

$example = "EXAMPLE_FILE";

open(MAKEFILE,"> $makefile");

# The Contents of the MAKEFILE ...

print MAKEFILE ".PHONY : clean \n";
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 clean\n"; 

# END of Contents of MAKEFILE

close(MAKEFILE);

&touch($example);

# Create a file named "clean".  This is the same name as the target clean
# and tricks the target into thinking that it is up to date.  (Unless you 
# use the .PHONY target.
&touch("clean");

$answer = "$delete_command $example clean\n";
&run_make_with_options($makefile,"clean",&get_logfile);

&compare_output($answer,&get_logfile(1)); 

if (-f $example)
{
   $test_passed = 0;
}
 
1;









