(file) Return to README.TXT CVS log (file) (dir) Up to [Pegasus] / cvstest

  1 karl  1.1 Pegasus - A Manageability Services Broker for the DMTF CIM/WBEM Standards
  2           
  3           
  4           Author: Mike Brasher, Karl Schopmeyer
  5           $Log$
  6           
  7           Tagline: Pegasus is an object manager for DMTF CIM objects written in C++
  8                    and supported but The Open Group
  9           
 10           
 11           Pegasus is an object manager for DMTF CIM objects  It is written in C++ and
 12           includes the Object manager, a set of defined interfaces, and SDKs for both
 13           client, providers, and services extensions.  It is maintained consistent with
 14           the DMTF CIM and WBEM specifications except for any exceptions noted in the
 15           documentation.
 16           
 17           This distribution represents a work in progress towards building a Pegasus
 18           release. Pegasus is open source and is covered under the following licnese.
 19           This version is incomplete and is directed towards evaluators and developers
 20           of the Pegasus Architecture.
 21           
 22 karl  1.1 Pegasus is being developed and maintained under the auspices of The Open
 23           Group. Pegasus is maintained under the license defined in the doc directory
 24           (LICENSE) of this release.  This licensing is intended to support as wide a
 25           distribution as possible with minimal demands on the users.
 26           
 27           This distribution represnts a snapshot of the current work. Currently Pegasus
 28           is in phase 1 of a multiphase development project. This snapshot is primarily
 29           for developers and for evaluation of the project.
 30           
 31           More information and  on this project, access to the CVS, and documentation on
 32           Pegasus is available from the OpenGroup WEB site.
 33           
 34           There are separate files in the release for
 35           
 36           	History of releases - HISTORY
 37           	What's new for this release - WHATSNEW
 38           	What's Broken - BUGS
 39           
 40           In addition, the roadmap for Pegasus and further information on the project is
 41           available on The Opengroup Pegasus WEB Site.
 42           
 43 karl  1.1 http://www.opengroup.org/MSB
 44           
 45           Availability of Pegasus
 46           =======================
 47           
 48           Pegasus is distributed as open source.  Today the distribution is limited
 49           because we want to reach a predefined level of development before making the
 50           project publically available. The move from limited to open distribution will
 51           be a decision of the Pegasus development team and The Open Group and should
 52           occur before March 2001.
 53           
 54           To get on the distribution list for Pegasus today, send an email to
 55           
 56           m.kirk@opengroup.org
 57           or
 58           k.schopmeyer@opengroup.org
 59           
 60           Pegasus Dependencies
 61           ===========
 62           
 63           We have worked to minimize the dependence of Pegasus on other software
 64 karl  1.1 packages and tools. Currently Pegasus has the following dependencies
 65           
 66           1. ACE_Wrappers - The ACE Wrappers package is used for communication and some
 67           low level functions within the MSB, the Pegasus client SDK, and the Pegasus
 68           Provider SDK. ACE is available from the following site.
 69           
 70           
 71           	http://ace.cs.wustl.edu/cvsweb/ace-cvs.cgi/ACE_wrappers/
 72           
 73           Currently we are using version 5.1
 74           
 75               http://www.cs.wustl.edu/~schmidt/ACE_wrappers/ACE-5.1.tar.gz
 76           
 77           
 78           2. To simplify the building of Pegasus across multiple platforms we have
 79           stnadardized on a set of build tools including: GNUMAKE. We are using GNUAKE
 80           4.79.1 successfully both in Windows and Linux environments.
 81           
 82           GNUMAKE is available from
 83           
 84           http://www.gnu.org
 85 karl  1.1 
 86           ATTN: I think we need to make our version available on the TOG site for now.
 87           
 88           
 89           3. MU.EXE - To minimize the difference between Linux and Windows for GUNMAKE,
 90           we have created a utility called MU.exe.  The source for this is available
 91           with the distribution and the binary is distributed in the bin directory of
 92           the the snapshots for now.
 93           
 94           
 95           Installation
 96           ============
 97           
 98           Pegasus currently compiles and runs under both Linux and Windows NT
 99           environments.
100           
101           The installation of Pegasus involves expanding the snapshot distribution files
102           and building the runtime, the test files and test clients, and building the repository.
103           
104           NOTE: Since the compiler integration is not complete today, the class repository is populated
105           from the XML defintions for the complete CIM schema.  This process is included in the build
106 karl  1.1 process so that at the end of a complete build, the class repository is completely populated
107           from the CIM 2.4 release schema.
108           
109           Building from a Distribution --- General
110           ========================================
111           
112           
113           Pegasus is buildable and runnable on either Linux or WIndows Platforms today.
114           It uses a common build system for the two platforms based on build files and
115           GUNMAKE.
116           
117           Generally we support four targets in our make system:
118           
119           
120                       C:\> make clean
121                       C:\> make depend
122                       C:\> make
123                       C:\> make tests
124           
125           
126           For information on particular installation characteristics, tools, etc. for each platform see
127 karl  1.1 the appropriate sections below:
128           
129           Generally the build commands are as follows:
130           
131           	1. There is a Makefile in the Pegasus root.   Simply executing make in the Pegasus
132           	root directory will make everything.
133           
134           	2. In order to provide a working class repository for Pegasus until the MOF compiler
135           	is integrated, There is a utility to load the CIM Schema from XML into the repository.
136           	This executes the LoadRepository executable which is defined in
137           
138           		pegasus/src/Pegasus/Repository/tests/LoadRepository
139           
140           	with the binary in pegasus/bin. This program will load the CIM XML repository
141           	definitions into the class repository.
142           
143           	3. To test a fresh release, go to the pegasus root and type
144           
145           		"make world".
146           
147           
148 karl  1.1 	This will clean, build dependencies, build binaries, and then run all
149           	tests except the Client/Server tests.
150           
151           	4. To execute the basic test suite that is shipped with pegasus type
152           
153           	   "make tests"
154           
155           	5. To run the Client/Server tests provided, simply type
156           
157           	   "make tests"
158           
159           	Running "make -s tests" suppresses extraneous output such as the
160           	enter/leave directory messages.
161           
162           	6. "Make Clean" removes all object and library files from the
163           	structure.
164           
165           The MU Utility
166           ==============
167           
168           In order to provide a consistent build structure across multiple platforms, we developed a
169 karl  1.1 small utility to provide a consistent set of small utilities across these platforms. The MU
170           utilityis a simple utility that contains many commands. For example:
171           
172           
173               C:\> mu rm myfile.cpp yourfile.cpp
174           
175           
176           You may type "mu" to get a list of valid commands. Here are some
177           of them:
178           
179           
180               echo, rm, rmdirhier, mkdirhier, copy, pwd, depend
181           
182           
183           The MU utility supports globing (expansion of wildcards) so
184           you can do things like this:
185           
186           
187               C:\> mu rm *.obj *.exe
188           
189           MU is required to build under the Windows environment.MU is available as part of the
190 karl  1.1 distribution of Pegasus.
191           
192           Building Pegausu on Linux
193           =========================
194           
195           1. Obtain, unpack and build the ACE_Wrappers package for Linux.
196           
197           2. Define an environment variable called ACE_ROOT  that points to the root of the ACE_WRAPPERS
198           distribution. For example
199           
200           IMPORT ACE_ROOT=\local\ACE_Wrappers
201           
202           ATTN: Mike.  what is a viable directory for Linux (what do you use)
203           
204           3. Define an environment variable PEGASUS_ROOT that points to the
205           root of the Pegasus Distribution
206           
207           4. Append %PEGASUS_ROOT%/bin to your path
208           
209           5. Unpack the ace distribution.
210           
211 karl  1.1 ATTN: Unpack with what since ZIP.
212           
213           5. Build using the make commands defined in the section on General Build.
214           
215           	make world
216           	make tests
217           
218           Building Pegasus on NT or Windows 2000 With Visual C++
219           =======================================================
220           
221           Today we build Pegasus on Windows NT using a set of make files contained
222           in the source distribution, the Microsoft compilers (tested so far with
223           versions 5 and 6) and the GNUMAKE make utility. The following is the basic
224           set up steps for the
225           
226           
227           1.	Setup the environment variables and path for the Micrososft Visual C compiler.
228           Typically this can be done by running the VCVARS32.BAT file supplied with Microsoft Visual
229           C++. (contained in the same directory as cl.exe).
230           
231           2.	Define an environment variable called ACE_ROOT that points to the
232 karl  1.1 root of the ACE_Wrappers distribution. For example:
233           
234               C:\> set ACE_ROOT=c:/ACE_wrappers
235           
236           Now append %ACE_ROOT%/bin to the path like this:
237           
238               C:\> set path=%path%;%ACE_ROOT%/bin
239           
240           3.	Define an environment variable called PEGASUS_ROOT that points to
241           the root of the Pegasus distribution. For example:
242           
243               C:\> set PEGASUS_ROOT=c:/pegasus
244           
245           Now append %PEGASUS_ROOT%/bin to your path like this:
246           
247               set path=%path%;%PEGASUS_ROOT%/bin
248           
249           4.  Unpack and build the ACE_Wrappers distribution for windows.
250           
251           As an example, we created a file called %ACE_ROOT%/ace/config.h
252           containing the following:
253 karl  1.1 
254               #include "ace/config-win32.h"
255           
256           and then opened this DSW file in MSVC++ IDE:
257           
258               %ACE_ROOT%/ace/ace.dsw
259           
260           From the build menu we picked "aced.dll". For me it built without complaint.
261           
262           BUG: there is still one open problem that has not been resolved.  With
263           the Visucal C++ version 6 compiler, the ace libraries default to
264           
265           	acemfc.dll
266           
267           With the version 5 visual C, apparently they default to the names
268           
269           	ace.dll
270           	or
271           	aced.dll (debug verions
272           
273           We will correct this in a future snapshot.
274 karl  1.1 
275           
276           5. Unpack the Pegasus distribution.  On Windows systems, PKzip25 or WINZIP can be used.
277           Be certain to use the option that expands the directory tree of the files.  This expansionwill
278           create a directory called ./pegasus
279           
280           If you are using pkzip25.exe do this:
281               C:\> pkzip25 -extract -recurse -directories pegasus.zip
282           
283           This will create a directory tree called ./pegasus under the
284           current directory.
285           
286           ATTN: Define for Linux also
287           
288           6.  Change directory  to %PEGASUS_ROOT% and type "make world". See the general build section
289           for the full set of make commands.
290           
291           This builds Pegasus and all of its examples.
292           
293           7.  To verify that it built okay, run the tests
294           
295 karl  1.1 	make tests
296           
297           
298           Development with Pegasus and Pegasus Tools
299           ==========================================
300           
301           ATTN: This section needs to be completed.  It should reference the more
302           complete documentation
303           
304           ===================
305           Documentation
306           
307           The documentation is currently in preperation. The preliminary documentation is not provided
308           with this snapshot but is avialable from the OpenGroup Pegasus WEB pages.
309           
310           Participate!
311           ============
312           We are looking for people who want to join the effort of getting this
313           next release off the ground.  Please send me email for details.
314           
315           
316 karl  1.1 
317           
318           
319           
320           
321           
322           

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2