External (operating system) commands may make a menufile incompatible between different systems. Enabling the built-in menu commands may eliminate many of these problems. This is especially true when porting a menufile from a UNIX system to an MSDOS system, and vice versa.
The MS-DOS version of menu(C-1), by default, enables built-in menu commands. A menufile can explicitly set whether built-in menu commands are to be enabled, disabled or determined by the flags used when menu is invoked. Built-in menu commands implement many of the programming constructs that are available using the UNIX shell. However, the syntax of some built-in commands differs from that used by the UNIX shell.
Built-in menu commands are available for both UNIX and MS-DOS menus. Using built-in menu commands for both UNIX and MS-DOS menufiles makes the menufile more portable and compatible with each other. When porting a menufile from UNIX to MS-DOS, or MS-DOS to UNIX, only menu commands that contain operating system commands must be changed to run on the new operating system. See C/Base Reference Manual Chapter 8, Creating Menus, for more information on built-in menu commands in menufiles.