mirror of
https://git.savannah.gnu.org/git/make.git
synced 2024-12-28 15:57:48 +00:00
57 lines
2 KiB
Text
57 lines
2 KiB
Text
$description = "The following test creates a makefile to test the suffix\n"
|
|
."function. \n";
|
|
|
|
$details = "The suffix function will return the string following the last _._\n"
|
|
."the list provided. It will provide all of the unique suffixes found\n"
|
|
."in the list. The long strings are sorted to remove duplicates.\n";
|
|
|
|
# IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET
|
|
# THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF
|
|
# HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END.
|
|
# EXAMPLE: $makefile2 = &get_tmpfile;
|
|
|
|
|
|
open(MAKEFILE,"> $makefile");
|
|
|
|
# The Contents of the MAKEFILE ...
|
|
|
|
print MAKEFILE "string := word.pl general_test2.pl1 FORCE.pl word.pl3 generic_test.perl /tmp.c/bar foo.baz/bar.c MAKEFILES_variable.c\n"
|
|
."string2 := \$(string) \$(string) \$(string) \$(string) \$(string) \$(string) \$(string)\n"
|
|
."string3 := \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2)\n"
|
|
."string4 := \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3)\n"
|
|
."all: \n"
|
|
."\t\@echo \$(suffix \$(string)) \n"
|
|
."\t\@echo \$(sort \$(suffix \$(string4))) \n"
|
|
."\t\@echo \$(suffix \$(string) a.out) \n"
|
|
."\t\@echo \$(sort \$(suffix \$(string3))) \n";
|
|
|
|
|
|
|
|
# END of Contents of MAKEFILE
|
|
|
|
close(MAKEFILE);
|
|
|
|
&run_make_with_options($makefile,"",&get_logfile,0);
|
|
|
|
# Create the answer to what should be produced by this Makefile
|
|
|
|
# COMPARE RESULTS
|
|
$answer = ".pl .pl1 .pl .pl3 .perl .c .c\n"
|
|
.".c .perl .pl .pl1 .pl3\n"
|
|
.".pl .pl1 .pl .pl3 .perl .c .c .out\n"
|
|
.".c .perl .pl .pl1 .pl3\n";
|
|
|
|
# In this call to compare output, you should use the call &get_logfile(1)
|
|
# to send the name of the last logfile created. You may also use
|
|
# the special call &get_logfile(1) which returns the same as &get_logfile(1).
|
|
|
|
&compare_output($answer,&get_logfile(1));
|
|
|
|
# This tells the test driver that the perl test script executed properly.
|
|
1;
|
|
|
|
|
|
|
|
|
|
|
|
|