| $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; |
| |
| |
| |
| |
| |
| |