(file) Return to readme.EmbeddedSystemBuild CVS log (file) (dir) Up to [Pegasus] / pegasus

 1 karl  1.1.2.1 Title: Building Pegasus for Embedded Systems
 2               Date: 1 November 2007
 3               Status: Draft
 4               
 5               
 6               Separation of the server and client builds
 7               
 8               When building for embedded systems typically the server is built targeted to one
 9               platform and the clients and support tools are build targeted to another (host)
10               platform.  Thus, for example, for VxWorks, the cim server would be targeted to
11               the target VxWorks platform and the remiaining components of Pegasus (clients,
12               compiler, end-end tests) would be targeted towards the development system.
13               
14               Pegasus build environment has been extended to make this possible.  The user may
15               elect to work from either a single source tree or multiple source trees. But
16               in any case, two separate build sequences are required for a complete Pegasus
17               build, the target platform build (cross compile) of the cimserver and server unit tests and the 
18               host build.  The sections below describe these processes.
19               
20               Note that this work has expanded the make structure of pegasus to include a new make configuration
21               file (config.mak) located in the PEGASUS_ROOT directory. If this file exists, the definitions
22 karl  1.1.2.1 included in the file are included in the mak/configure.mak file which means that this file
23               can be used to setup configuration parameters for the make.  The host / target make structure
24               uses this new file.
25               
26               
27               Building the server for the target platform
28               
29               1. Set up a configure.mak in the pegasus source root directory with the specific
30               directives for the target make.  Note that there are several sample configure.mak
31               files defined in the pegasus.vxworks directory.  Since there may be a number of variations
32               of the make structure depending on the test configuraiton, it is logical to set up a
33               configure.mak for each and simply copy or softlink the correct one into the pegasus source root.
34               
35               2. 
36               
37               
38               
39               
40               Building the clients on the host platform
41               
42               The host platform build is the same as as any normal pegasus build.  It is 
43 karl  1.1.2.1 initiated through the top level make file and builds all components of the envrionment
44               for execution on the host system.  Typically this can be executed with the alternatives
45               defined below.
46               
47                   make new world    -- builds everything
48                   make              -- build the source
49                   make repository   -- builds the repository for the host system.
50               
51               There is no specific make today to simply build the non-server components.
52               
53               NOTE: The $PEGASUS_ROOT/configure.mak is normally used to set up the the configuration for
54               the target build.   It need not be used for the host build.  It can be used to generate
55               parameters for this build
56               
57               
58               Special characteristics of the Embedded OpenPegasus Server
59               
60               OpenPegasus implemented several special characteristics to support embedded platforms
61               including:
62               
63               1. Memory-Resident Repository (PEP 305)
64 karl  1.1.2.1 2. Static providers
65               3. Single image build that produces a single output file containing the server,
66                  providers, and the memory-resident class repository.
67               
68               This section provides an overview of how to create a complete embedded server.
69               Note that there is a working example in the directory vxWorks/cimserver of a
70               build with some sample providers and a complete class repository containing 3
71               namespaces.
72               
73               Building the Memory-Resident Repository
74               
75               See the note readme.MemoryResidentRepository file for detailed information on the
76               memory-resident repository
77               
78               Building Providers
79               
80               See the note readme.StaticProviders for detailed information on building static
81               providers for OpenPegasus embedded systems.
82               
83               
84               

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2