1 chkmsg(1l) chkmsg(1l) 2 3 4 5 NAME 6 chkmsg - cross check messages 7 8 SYNOPSIS 9 chkmsg [-64] file source_files... 10 11 AVAILABILITY 12 Internal to the linker group 13 14 DESCRIPTION 15 chkmsg checks the message identifiers defined in the input file and 16 the message identifyer used in the input source_files. The input file 17 is the input file which is used by the sgsmsg command. 18 19 The chkmsg command reads the input file and generates two sets of 20 message identifiers. The first set is the identifiers defined in 21 between the _START_ and _END_ key words. These identifiers are 22 intended to be referenced by MSG_INTL(). This set is named as 23 MSG_INTL_FROM_INPUT. 24 25 The other set is the identifiers defined after the _END_ key words. 26 These identifiers are intended to be referenced by MSG_ORIG(). This 27 set is named as MSG_ORIG_FROM_INPUT. 28 29 The chkmsg command reads the specified input source_files and generates 30 two sets of message identifiers. The first set is the message 31 identifiers referenced by MSG_INTL() macro. This set is named as 32 MSG_INTL_FROM_SRC. 33 34 The other set is the message identifiers referenced by the MSG_ORIG() 35 macro. This set is named as MSG_ORIG_FROM_SRC. 36 37 The chkmsg command compares MSG_INTL_FROM_SRC and MSG_INTL_FROM_INPUT. 38 If these two sets are different, the command gives the warning message 39 and print the identifiers which are different. 40 41 The chkmsg command compares MSG_ORIG_FROM_SRC and MSG_ORIG_FROM_INPUT. 42 If these two sets are different, the command gives the warning message 43 and print the identifiers which are different. 44 45 The identifiers in MSG_INTL_FROM_SRC and MSG_ORIG_FROM_SRC are 46 extracted from the source files only if they are directly passed to 47 MSG_INTL() or MSG_ORIG(). Therefore, for example: 48 char *msg; 49 | 50 msg = MSG_ERROR_01; 51 | 52 printf(MSG_INTL(msg)); 53 | 54 the identifyer MSG_ERROR_01 will not be included in MSG_INTL_FROM_SRC 55 set. 56 57 There are two key words which can be used in the input file to control 58 whether the identifier will be extracted into MSG_{INTL,ORIG}_FROM_ORIG 59 or not. If the identifyer are surrounded by _CHKMSG_SKIP_BEGIN_ 60 {sparc,i386} and _CHKMSG_SKIP_END_ {sparc,i386}, then the identifiers 61 will not be included in the output set. The architecture being checked 62 should be specified after the key works. These key words should be 63 specified in the comment lines. For example, the input file could 64 contain: 65 # _CHKMSG_SKIP_BEGIN_ sparc 66 @ MSG_ERROR_01 "This identifier is not defined." 67 # _CHKMSG_SKIP_END_ sparc 68 69 It is assumed that the message identifier names are composed of only 70 upper letters. 71 72 OPTIONS 73 -64 Use a 64-bit version of the machine type (i.e. sparc => 74 sparcv9). Note that this option must be specified first on 75 the command line. 76 77 SEE ALSO 78 gencat(1), ld(1), msgfmt(1), catgets(3C), gettext(3C). sgsmsg(1ONBLD). 79 80 81 82 April 5, 1997 chkmsg(1l)