//%2006//////////////////////////////////////////////////////////////////////// // // 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. // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.; // EMC Corporation; Symantec 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. // //============================================================================== 03/05/2001 The mof compiler is a long ways from done, but it does build and populate a repository. Build instructions cd Pegasus/getoopt make cd ../Common make cd ../Repository make cd ../Compiler make cd cmdline make It will be integrated in Mike's make system shortly. It should build on NT with MSVC++ version 6 (I haven't tried version 5) and on Linux with gcc 2.95. On my machines, it successfully compiles CIM_Schema25.mof in about 50 seconds on NT and about 15 on Linux. Partial list of to-do's: - Add command line arguments to control over-laying of existing objects, stopping the addition of new base classes and several other things. - Make the command line driver turn off logging in the embeddable compiler code. Right now, errors print out twice. - Handle a few errors that are ignored now. - bunch of other cleanup Here are two gotcha's in trying to get things running: 1. Make sure you set the PEGASUS_HOME command line variable. The repository gets written to $PEGASUS_HOME/repository. You can override this with the -R flag on the command line. 2. If your mof file has include pragmas and the included files do not reside in the current directory, you must provide a path to them on the compiler command line. You do this with the -I flag. Example: cimmof -I~/testfiles ~/testfiles/main.mof The compiler does not handle missing include files very sanely right now. It just skips them.