$description = "\
The following test creates a makefile to test the error function.";

$details = "";

open(MAKEFILE,"> $makefile");

print MAKEFILE <<'EOF';
ifdef ERROR1
$(error error is $(ERROR1))
endif

ifdef ERROR2
$(error error is $(ERROR2))
endif

ifdef ERROR3
all: some; @echo $(error error is $(ERROR3))
endif

ifdef ERROR4
all: some; @echo error is $(ERROR4)
	@echo $(error error is $(ERROR4))
endif

some: ; @echo Some stuff

EOF

close(MAKEFILE);

# Test #1

&run_make_with_options($makefile, "ERROR1=yes", &get_logfile, 512);
$answer = "$makefile:2: *** error is yes.  Stop.\n";
&compare_output($answer,&get_logfile(1));

# Test #2

&run_make_with_options($makefile, "ERROR2=no", &get_logfile, 512);
$answer = "$makefile:6: *** error is no.  Stop.\n";
&compare_output($answer,&get_logfile(1));

# Test #3

&run_make_with_options($makefile, "ERROR3=maybe", &get_logfile, 512);
$answer = "Some stuff\n$makefile:10: *** error is maybe.  Stop.\n";
&compare_output($answer,&get_logfile(1));

# Test #4

&run_make_with_options($makefile, "ERROR4=definitely", &get_logfile, 512);
$answer = "Some stuff\n$makefile:14: *** error is definitely.  Stop.\n";
&compare_output($answer,&get_logfile(1));

# This tells the test driver that the perl test script executed properly.
1;