APPENDIX A: ACES COMMANDS AND THEIR SYSTEM TRANSLATIONS

The following commands are used in the ACES template files ("*.tpl"). These files are used when Setup is run to create two types of script files. One set of script files is used to perform the Quick_Look or the Pretest process. These are the "step" files with an "stp" notation in each file name. The other ("low level") scripts are used by these step files to invoke system specific commands. Examples of these are the "zc_adano" script file used to compile an Ada file with no optimization and the "zc_cpada" script file used to copy an Ada source code file from the source directory to the current directory.

Each translatable symbol used in the template files has a "Primitive" translation. For example, the Primitive translation of the symbol "compile-optimize" might be "ada/optimize=time/nochecks", and the Primitive translation of "remove" might be "delete".

Some symbols are associated with low-level scripts. For example, "compile-optimize" is associated with the script named "zc_adaop". When a symbol appears in its associated script, it is replaced with its Primitive value. Thus, in the template file "zc_adaop.tpl", the symbol "compile-optimize" might be translated as "ada/optimize=time/nochecks". The symbol "remove" is not associated with a script.

In the step script templates, a symbol associated with a script is replaced with an invocation of that script. Thus, in the template file "zp_stp05.tpl", the symbol "compile-optimize" might be translated as "@zc_adaop.com".

In the step script templates, a symbol that is not associated with a script is replaced with its Primitive translation. Thus, in the template file "zp_stp05.tpl", the symbol "remove" might be translated as "delete".

NOTE: Extensions for the script files are system specific and have been eliminated in the following examples.

~:

Description: Used to indicate that no space will be put between the words that follow and preceed the tilde.

Script file name: N/A

Primitive example: N/A

~ada_suffix:

Description: The text file suffix required by the system and compiler for compiling text files into executable ada code. It is preceded by a "~" (tilde) so that unnecessary intervening spaces are eliminated.

Script file name: N/A

Primitive example: N/A

comment_begin:

Description: Most command processors recognize some word or character as the beginning of a comment, at least when appearing at the beginning of a line.

Script file name: N/A

Primitive(UNIX) example: #

compile_check:

Description: This is the command to compile a file for the target (host/target) with checking enabled and no time stamps.

Script file name: zc_adack

Primitive(VMS/VAX Ada) example:

ada /check/optimize=time/nodebug/warn/nocopy_source

compile_check_timestamp:

Description: This is a script invocation to compile a file for the target (host/target) with checking enabled and time stamps.

Script file name: zc_cmpck

Primitive example: N/A

compile_host:

Description: Takes the first argument that follows this command and compiles it for the host system with default options and no time stamps.

Script file name: zc_adaho

Primitive(DOS/Alsys) example: ada compile

compile_nooptimize:

Description: This is the command to compile a file for the target (host/target) with no optimization and no time stamps.

Script file name: zc_adano

Primitive(UNIX/VADS) example: ada -O0 (that's "oh zero")

compile_nooptimize_timestamp:

Description: This is the script invocation to compile a file for the target (host/target) with no optimization and time stamps.

Script file name: zc_cmpno

Primitive example: N/A

compile_optimize:

Description: Takes the first argument that follows this command and compiles it for the target system with optimization and no time stamps.

Script file name: zc_adaop

Primitive(UNIX/VADS) example: ada -O -S

compile_optimize_timestamp:

Description: This is a script invocation to compile a file for the target (host/target) with optimization and time stamps.

Script file name: zc_cmpop

Primitive example: N/A

compile_space:

Description: This is the command to compile a file for the target (host/target) with optimization for space and no time stamps.

Script file name: zc_adasp

Primitive(VMS/VAX Ada) example: ada/optimize=space

compile_space_timestamp:

Description: This is a script invocation to compile a file for the target (host/target) with optimization for space and time stamps.

Script file name: zc_cmpsp

Primitive example: N/A

copy:

Description: This is the command to copy a file from one directory or file name to another.

Script file name: N/A

Primitive(UNIX) example: cp

copy_ada:

Description: Copy an Ada file from the source directory to the current (assumed to be the working) directory. The suffix in the source directory is ".ada" and in the current directory will be the suffix needed by the system.

Script file name: zc_cpada

Primitive example: N/A

copy_base_check:

Description: This is a script invocation to copy a baseline timing file with full checking.

Script file name: zc_cpyck

Primitive example: N/A

copy_base_nooptimize:

Description: This is a script invocation to copy a baseline timing file with no optimization.

Script file name: zc_cpyno

Primitive example: N/A

copy_base_optimize:

Description: This is a script invocation to copy the baseline timing file with full optimization.

Script file name: zc_cpyop

Primitive example: N/A

copy_base_space:

Description: This is a script invocation to copy the baseline timing file with optimization for space.

Script file name: zc_cpysp

Primitive example: N/A

current_directory:

Description: This is the full drive and path name for the directory from which the user is giving a command. Also assumed to be the working directory.

Script file name: zc_cpysp

Primitive example: N/A

delete:

Description: This is the command used by your operating system to delete files.

Script file name: N/A

Primitive(UNIX) example: rm

delete_body:

Description: This is the command to delete the body only of a library unit.

Script file name: zc_delbo

Primitive(UNIX/VADS) example: a.rm -b

delete_exec:

Description: This is a script invocation to delete the executable filename which follows it from the current subdirectory.

Script file name: zc_dlexc

Primitive example: N/A

delete_host_exec:

Description: This is a script invocation to delete the host executable file.

Script file name: zc_dlhex

Primitive example: N/A

delete_source:

Description: This is a script invocation to delete an Ada source filename which follows it from the current directory.

Script file name: zc_dlada

Primitive example: N/A

delete_spec:

Description: This is the command to delete only the specification of a library unit.

Script file name: zc_delso

Primitive(UNIX/VADS) example: a.rm -s

~delete_suffix:

Description: Some operating systems require a second suffix to delete all versions of a named file. If your system has such a requirement, please enter the suffix (including any punctuation).

Script file name: N/A

Primitive(VMS) example: ;* ( as in "delete foo.bas;*")

delete_unit:

Description: This is the command to delete both the specification and the body of a library unit from an Ada library.

Script file name: zc_delsb

Primitive(UNIX/VADS) example: a.rm -b -s

echo:

Description: This command takes whatever follows it on the line and displays it to the standard output.

Script file name: (none)

Primitive(VMS) example: write sys$output

echo_delimiter:

Description: VMS requires whatever is echoed to be enclosed in double quote marks. DOS requires no quotes.

Script file name: (none)

Primitive(DOS) example: echo This is for DOS Output

Primitive(VMS) example: write sys$output "This is for VMS Output"

~exec_suffix:

Description: File name suffix to be used for executable files for the target (or host/target) system.

Script file name: N/A

Primitive(DOS) example: .exe

first_of_line:

Description: Some command script processors require that each line begin with a special character or string.

Script file name: N/A

Primitive(VMS) example: $

first_parameter_id:

Description: This is the string that is used by your command script processor to identify the first parameter to a command script.

Script file name: N/A

Primitive(UNIX/C-shell) example: $1

first_parameter_in_quotes:

Description: This is the syntax required by your system to output a parameter as a value rather than a literal. Enter the form that your system expects in this context. If your system does not require such special syntax, then enter the usual syntax for the first parameter.

Script file name: N/A

Primitive(VMS) example: ' 'p1'

host_exec_suffix:

Description: Many operating systems expect a default suffix for executable files, so that the names have the form "filename.suffix". Enter the appropriate suffix for your HOST system (including the period). It is recommended that you use a suffix to differentiate executable files from command scripts.

Script file name: N/A

Primitive(VMS) example: .exe

host_link:

Description: This is the command to link on the host compiler with no time stamps.

Script file name: zc_linho

Primitive(DOS) example: ada bind

host_run:

Description: This is the command to execute a program on the host system.

Script file name: zc_horun

Primitive(VMS) example: run

host_set_library:

Description: This command establishes the Ada program library for use in compiles and links.

Script file name: zc_holi

Primitive(VMS/VAX Ada) example: acs set lib [ACES.HOST_LIB]

if_ada_95_then:

Description: This is used to differentiate between the Ada 83 and Ada 95 compiler versions when determining which of several actions to perform. Different sets of questions are asked and different sets of scripts are run for Ada 83 than for Ada 95 compilers. It is set when the user answers the question in setup "is this an Ada 95 compiler". In template files, all lines between this coammand and the corresponding ENDIF are to be included only if the compiler is Ada 95 compatible.

Script file name: N/A

Primitive example: N/A

if_cross_then:

Description: If the compilation and the execution are taking place on different systems, (This includes the case of a simulator running on the same host.) the answer to this question YES. This symbol is used when determining which of several actions to perform. Different sets of questions are asked during Setup and different sets of scripts are run for cross compilers than for self hosted systems. In template files, all lines between this command and the corresponding ENDIF should be included only if the tested implementation is a cross-compilation system.

Script file name: N/A

Primitive(UNIX/VADS) example: N/A

if_elapsed_compile_time_then:

Description: This symbol indicates the time measurement methods to be used in assessing compile time. These are Elapsed Time (i.e., wall clock) and CPU Time (i.e., user supplied CPU clock). The variable (EL or CP) is used to create a suffix to select the correct version of timing files. In template files, all lines between this command and the corresponding ENDIF should be included only if elapsed time is being used to measure compilation speed.

Script file name: N/A

Primitive(UNIX/VADS) example: N/A

include:

Description: This command invokes the "Include" preprocessor to include timing loop code into the first file, producing the second file.

Script file name: zg_incld

Primitive example: N/A

invoke:

Description: Some systems require a special command word or symbol to execute a command script.

Script file name: N/A

Primitive(VMS) example: @ (as in "@filename.com")

Primitive(DOS) example: call (as in: "call filename.bat")

link:

Description: This is the command to link an executable for the target (host/target) system. The parameter (argument) symbol should be included.

Script file name: zc_lnk

Primitive(UNIX/VADS) example: a.ld -o $1 $1

link_timestamp:

Description: This is a script invocation to link a file on the target with time stamps.

Script file name: zc_link

Primitive example: N/A

log_suffix:

Description: For some systems (notably DOS), capturing the output in a log file requires that the output of the "echo" command or the "run" command be redirected to a specific file.

Script file name: N/A

Primitive(DOS) example: ">> PRETEST.LOG" (or whatever file name you select)

path_separator:

Description: This is the special symbol that each system has which is inserted between directories when building a path.

Script file name: N/A

Primitive(DOS) example: \ (as in: "C:\USERS\ACES")

path_terminator:

Description: This is the special symbol that some systems require at the end of a path.

Script file name: N/A

Primitive(VMS) example: ] (as in: "$DISK1:[user1.aces]")

path_to_distribution:

Description: When the ACES files are downloaded and uncompressed into your configuration management area, a directory structure is created starting with an "aces" directory. Provide the path to (and including) this "aces" directory to facilitate the automatic copying of files. Remember to include leading and trailing markers. See the Primer, Section 2.2 for details.

Script file name: N/A

Primitive(UNIX/VADS) example: /fs01/user/aces/

rename:

Description: This is the command each operating system has to rename files.

Script file name: N/A

Primitive(UNIX) example: mv

run:

Description: Command to execute a linked program on the target (hsot/target) system.

Script file name: zc_run

Primitive(VMS) example: run

script_suffix:

Description: Command script file names have the form "filename.suffix". This can be either required or optional for a specific operating system, however, the use of a suffix is recommended to avoid conflict with executables. Use the suffix (including the period, if required) that you want to use for automatically generated command scripts.

Script file name: N/A

Primitive(DOS) example: .bat

second_parameter_id:

Description: This is the string that is used by your command script processor to identify the second parameter to a command script.

Script file name: N/A

Primitive(UNIX) example: $2

set_library:

Description: This command is used to identify the Ada program library for use on the target system in compiles and links.

Script file name: zc_setli

Primitive(VMS/VAX Ada) example: acs set lib [ACES.TARGET_LIB]

~size_measurement_type:

Description: The code size measurement method to be used in this assessment is indicated by one of the following identifiers:

L Label'Address method

G Get Address method (i.e., user supplied address reading tool)

Script file name: N/A

Primitive(UNIX/VADS) example: N/A

source:

Description: This is the full drive and path name for the directory from which the Ada files are to be copied. It is recommended that this be separate from both your working directory and the distribution directory. You should have both read and write privileges for this directory.

Script file name: N/A

Primitive(DOS) example: C:\USERS\TESTING\SOURCE\

special_first_line:

Description: You may wish to begin each generated command script with a special first line, or your host operating system may require a special string as the first line.

Script file name: N/A

Primitive(UNIX/C-shell) example: #!/bin/csh

~time_measurement_type:

Description: The time measurement method to be used in assessing execution time is indicated by one of the following identifiers:

EL Elapsed Time (i.e., wall clock)

CP CPU Time (i.e., user supplied CPU clock)

Script file name: N/A

Primitive example: N/A