1$description = "The following test creates a makefile to test the suffix\n" 2 ."function. \n"; 3 4$details = "The suffix function will return the string following the last _._\n" 5 ."the list provided. It will provide all of the unique suffixes found\n" 6 ."in the list. The long strings are sorted to remove duplicates.\n"; 7 8# IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET 9# THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF 10# HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. 11# EXAMPLE: $makefile2 = &get_tmpfile; 12 13 14open(MAKEFILE,"> $makefile"); 15 16# The Contents of the MAKEFILE ... 17 18print 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" 19 ."string2 := \$(string) \$(string) \$(string) \$(string) \$(string) \$(string) \$(string)\n" 20 ."string3 := \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2)\n" 21 ."string4 := \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3)\n" 22 ."all: \n" 23 ."\t\@echo \$(suffix \$(string)) \n" 24 ."\t\@echo \$(sort \$(suffix \$(string4))) \n" 25 ."\t\@echo \$(suffix \$(string) a.out) \n" 26 ."\t\@echo \$(sort \$(suffix \$(string3))) \n"; 27 28 29 30# END of Contents of MAKEFILE 31 32close(MAKEFILE); 33 34&run_make_with_options($makefile,"",&get_logfile,0); 35 36# Create the answer to what should be produced by this Makefile 37 38# COMPARE RESULTS 39$answer = ".pl .pl1 .pl .pl3 .perl .c .c\n" 40 .".c .perl .pl .pl1 .pl3\n" 41 .".pl .pl1 .pl .pl3 .perl .c .c .out\n" 42 .".c .perl .pl .pl1 .pl3\n"; 43 44# In this call to compare output, you should use the call &get_logfile(1) 45# to send the name of the last logfile created. You may also use 46# the special call &get_logfile(1) which returns the same as &get_logfile(1). 47 48&compare_output($answer,&get_logfile(1)); 49 50# This tells the test driver that the perl test script executed properly. 511; 52 53 54 55 56 57 58