PR# 3684 Better command line behaviour from ec and finish_freezing
Problem Report Summary
Submitter:
Category: Compiler
Priority: High
Date: 2004/02/24
Class: Feature Request
Severity: Serious
Number: 3684
Release: 5.1-5.4
Confidential: No
Status: Open
Responsible:
Environment: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax)
Synopsis: Better command line behaviour from ec and finish_freezing
Description
This change request is written from the perspective of incorporating Eiffel compilation in make/build scripts. More specifically I am writing a tool definition for ISE Eiffel for the Scons make-tool (See: http://www.scons.org/). ec return codes and stdout/stderr output ---------------------------------------- 1) ec should always exit with a return code > 0 if the compilation failed. 2) ec should always write all compilation aborted messages to stderr. 3) ec should always write all error messages to stderr. 4) ec should always write all warning messages to stdout. Specifically this means that an eiffel compilation that is successful could exit with a return code of 0 after writing a set of warnings to stdout. finish_freezing return codes and stdout/stderr output ----------------------------------------------------- 1) finish_freezing should always exit with a return code > 0 if the C compilation or linking failed. 2) finish_freezing should always write all compilation/linking aborted messages to stderr. 3) finish_freezing should always write all error messages to stderr. 4) finish_freezing should always write all warning messages to stdout. --silent option for ec and finish_freezing ----------------------------------------- Add a command line option --silent for ec so that compilation progress output is supressed. Add a command line option --silent for finish_freezing so that only errors and warnings from the C compiler and/or linker are output (to stderr). options to ec for listing used files and environment variables -------------------------------------------------------------- Add the following set of options to ec: --eiffel-files List all Eiffel files (.e) needed by the system. Note this is not = classes! All files containing at least one class that is in the universe of the system. File names should be listed using the same environment variables used in the Ace-file. --include-files List all C header files used in external clauses. File names should be listed using the directories and environment variables used in the Ace-file (ie. in the external/include part of the Ace-file). --object-files List all static/dynamic libraries listed in the Ace file. File names should be listed using the directories and environment variables used in the Ace-file (ie. in the external/object part of the Ace-file). --environment-variables List all environment variables used in the Ace-file. This makes it easy for build scripts to check for (and check the value) of needed environment variables before attempting to compile The three --xxx-files options are crucial for: * establishing actual file dependencies. * enabling correct labling of files in VSS/CVS for release builds of a given system.
To Reproduce
Problem Report Interactions