| 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 |  | 
|---|
| 14 | open(MAKEFILE,"> $makefile"); | 
|---|
| 15 |  | 
|---|
| 16 | # The Contents of the MAKEFILE ... | 
|---|
| 17 |  | 
|---|
| 18 | 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" | 
|---|
| 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 |  | 
|---|
| 32 | close(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. | 
|---|
| 51 | 1; | 
|---|
| 52 |  | 
|---|
| 53 |  | 
|---|
| 54 |  | 
|---|
| 55 |  | 
|---|
| 56 |  | 
|---|
| 57 |  | 
|---|