![]() ![]() |
![]() |
File: [Pegasus] / pegasus / src / Pegasus / Compiler / mofCompilerOptions.h
(download)
Revision: 1.22, Wed Feb 16 00:10:08 2005 UTC (19 years, 4 months ago) by jim.wunderlich Branch: MAIN CVS Tags: STABLE, RELEASE_2_5_0-RC1, RELEASE_2_5_0, PEP244_ServerProfile-root, PEP244_ServerProfile-branch, PEP233_EmbeddedInstSupport-root, PEP214ROOT, PEP214BRANCH, PEP214-root, PEP214-branch, PEP-214B-root, PEGASUS_2_5_0_PerformanceDev-string-end, PEGASUS_2_5_0_PerformanceDev-rootlt, PEGASUS_2_5_0_PerformanceDev-root, PEGASUS_2_5_0_PerformanceDev-r2, PEGASUS_2_5_0_PerformanceDev-r1, PEGASUS_2_5_0_PerformanceDev-lit-end, PEGASUS_2_5_0_PerformanceDev-buffer-end, PEGASUS_2_5_0_PerformanceDev-branch, PEGASUS_2_5_0_PerformanceDev-AtomicInt-branch, PEG25_IBM_5_16_05, NPEGASUS_2_5_0_PerformanceDev-String-root, NNPEGASUS_2_5_0_PerformanceDev-String-branch, BUG_4225_PERFORMANCE_VERSION_1_DONE Branch point for: PEP233_EmbeddedInstSupport-branch Changes since 1.21: +12 -2 lines BUG#: 2493 TITLE: Pegasus repository issues DESCRIPTION: BUG 2493 binary repository issues: Added compare xml to binary repository to unit tests - test is enabled on Windows and X86 Linux platforms only. - test should be enabled on other platforms by developers/testers working on the those platforms by editing the CompareRepositories Makefile. - Instructions are are in the Makefile documenting how to enable it for a specific plaform. Added Files: src/Pegasus/Repository/tests/CompareRepositories/Makefile src/Pegasus/Repository/tests/CompareRepositories/CompareRepositories.cpp Modified Files: Makefile Schemas/Pegasus/InterOp/Makefile Schemas/Pegasus/Internal/Makefile Schemas/Pegasus/ManagedSystem/Makefile mak/config.mak src/Pegasus/Compiler/cimmofParser.cpp src/Pegasus/Compiler/cimmofRepository.cpp src/Pegasus/Compiler/cimmofRepository.h src/Pegasus/Compiler/cimmofRepositoryInterface.cpp src/Pegasus/Compiler/cimmofRepositoryInterface.h src/Pegasus/Compiler/mofCompilerOptions.h src/Pegasus/Compiler/cmdline/cimmof/cmdline.cpp src/Pegasus/Compiler/cmdline/cimmof/cmdline.h src/Pegasus/Repository/CIMRepository.cpp src/Pegasus/Repository/CIMRepository.h src/Pegasus/Repository/tests/Makefile src/Pegasus/Server/CIMServer.cpp |
//%2005//////////////////////////////////////////////////////////////////////// // // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.; // IBM Corp.; EMC Corporation, The Open Group. // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; // EMC Corporation; VERITAS Software Corporation; The Open Group. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to // deal in the Software without restriction, including without limitation the // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or // sell copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // //============================================================================== // // Author: Bob Blair (bblair@bmc.com) // // Modified By: Gerarda Marquez (gmarquez@us.ibm.com) // -- PEP 43 changes // //%///////////////////////////////////////////////////////////////////////////// // // Header for a class to hold options available to users of the // cimmof embeddable compiler. // // // // Defines the mofCompilerOptions class, which contains all you // want to know about the command line that invoked the compiler, // including // The include (-I) paths // The repository to talk to (-R) // Other compiler options // syntax check only (-E) // suppress warnings (-w) // The files to be compiled. // // ATTN: BB P3 Mar 2001 This needs to be reworked so that the same options // offered by the Microsoft compiler are supported. They allow modes for // -- Marking as an error an attempt to create an existing object // -- Marking as an error an attempt to create an existing object // with different elements (i.e. overwriting) #ifndef _MOFCOMPILEROPTIONS_H_ #define _MOFCOMPILEROPTIONS_H_ #include <Pegasus/Common/String.h> #include <Pegasus/Common/ArrayInternal.h> #include <Pegasus/Compiler/compilerCommonDefs.h> #include <Pegasus/Compiler/Linkage.h> #include <iostream> PEGASUS_USING_STD; PEGASUS_USING_PEGASUS; class PEGASUS_COMPILER_LINKAGE mofCompilerOptions { private: Array<String> _include_paths; Array<String> _filespecs; String _repository; String _repository_name; String _repository_mode; String _namespacePath; Boolean _syntax_only; Boolean _is_local; Boolean _suppress_warnings; Boolean _suppress_all_messages; Boolean _emit_xml; compilerCommonDefs::operationType _ot; Boolean _trace; Boolean _update_class; Boolean _allow_experimental; Boolean _allow_version; #ifdef PEGASUS_OS_OS400 Boolean _quiet; #endif PEGASUS_STD(ostream) *_traceos; PEGASUS_STD(ostream) *_erroros; PEGASUS_STD(ostream) *_warningos; public: mofCompilerOptions() : _repository(String::EMPTY), _repository_name(String::EMPTY), _repository_mode(String::EMPTY), _namespacePath(""), _syntax_only(false), _is_local(false), _suppress_warnings(false), _suppress_all_messages(false), _emit_xml(false), _ot(compilerCommonDefs::USE_REPOSITORY), _trace(false), _traceos(0), _erroros(0), _warningos(0) {;} ~mofCompilerOptions() {;} void add_include_path(const String& path) { _include_paths.append(path); } const Array<String> &get_include_paths() const { return _include_paths; } void add_filespecs(const String &spec) { _filespecs.append(spec); } const Array<String>& get_include_path_list() const {return _include_paths; } const Array<String>& get_filespec_list() const { return _filespecs; } void set_repository(const String &repository) { \ _repository = repository; } const String &get_repository() const { return _repository; } void set_repository_name(const String &repository_name) { \ _repository_name = repository_name; } const String &get_repository_name() const { return _repository_name; } void set_repository_mode(const String &repository_mode) { \ _repository_mode = repository_mode; } const String &get_repository_mode() const { return _repository_mode; } void set_syntax_only() { _syntax_only = true; } void reset_syntax_only() { _syntax_only = false; } Boolean syntax_only() const { return _syntax_only; } void set_is_local() { _is_local = true; } void reset_is_local() { _is_local = false; } Boolean is_local() const { return _is_local; } void set_suppress_warnings() { _suppress_warnings = true; } void reset_suppress_warnings() { _suppress_warnings = false; } Boolean suppress_warnings() const { return _suppress_warnings; } void set_suppress_all_messages() { _suppress_all_messages = true; } void reset_suppress_all_messages() { _suppress_all_messages = false; } Boolean suppress_all_messages() const { return _suppress_all_messages; } void set_trace() { _trace = true; } void reset_trace() { _trace = false; } Boolean trace() const { return _trace; } void set_update_class() { _update_class = true; } void reset_update_class() { _update_class = false; } Boolean update_class() const { return _update_class; } void set_allow_experimental() { _allow_experimental = true; } void reset_allow_experimental() { _allow_experimental = false; } Boolean allow_experimental() const { return _allow_experimental; } void set_allow_version() { _allow_version = true; } void reset_allow_version() { _allow_version = false; } Boolean allow_version() const { return _allow_version; } #ifdef PEGASUS_OS_OS400 void set_quiet() { _quiet = true; } void reset_quiet() { _quiet = false; } Boolean quiet() const { return _quiet; } #endif void set_operationType(compilerCommonDefs::operationType ot) { _ot = ot; } void reset_operationType() { _ot = compilerCommonDefs::USE_REPOSITORY; } compilerCommonDefs::operationType operationType() const { return _ot; } void set_xmloutput() { _emit_xml = true; } void reset_xmloutput() { _emit_xml = false; } Boolean xml_output() const { return _emit_xml; } void set_traceos(PEGASUS_STD(ostream) &os) { _traceos = &os; } void reset_traceos() { _traceos = 0; } ostream &traceos() const { return _traceos ? (ostream&)*_traceos : (ostream&)cout; } void set_erroros(ostream &os) { _erroros = &os; } void reset_erroros() { _erroros = 0; } ostream &erroros() const { return _erroros ? (ostream&)*_erroros : (ostream&)cerr; } void set_warningos(ostream &os) { _warningos = &os; } void reset_warningos() { _warningos = 0; } ostream &warningos() const {return _warningos ? (ostream&)*_warningos : (ostream&)cerr;} void set_namespacePath(const String &path) { _namespacePath = path; } const String &get_namespacePath() const { return _namespacePath; } }; #endif
No CVS admin address has been configured |
Powered by ViewCVS 0.9.2 |