3 martin 1.3 // Licensed to The Open Group (TOG) under one or more contributor license
4 // agreements. Refer to the OpenPegasusNOTICE.txt file distributed with
5 // this work for additional information regarding copyright ownership.
6 // Each contributor licenses this file to you under the OpenPegasus Open
7 // Source License; you may not use this file except in compliance with the
8 // License.
9 //
10 // Permission is hereby granted, free of charge, to any person obtaining a
11 // copy of this software and associated documentation files (the "Software"),
12 // to deal in the Software without restriction, including without limitation
13 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 // and/or sell copies of the Software, and to permit persons to whom the
15 // Software is furnished to do so, subject to the following conditions:
16 //
17 // The above copyright notice and this permission notice shall be included
18 // in all copies or substantial portions of the Software.
19 //
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 martin 1.3 // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26 // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 //
28 //////////////////////////////////////////////////////////////////////////
|
29 jim.wunderlich 1.1 Compressed Repository readme
30 ============================
31
32 Filename: readme.compressed_repository
33 Authors: Karl Schopmeyer, Jim Wunderlich,
34 Date: 28 Feb. 2005
35
36 PEP 214 added the capability added the capability to utilize
37 compression algorithms on the repository. The compressed repository
38 is approximately 70% smaller than a regular xml text based repository.
39 This allows significant disk space savings a also results in shorter
40 file load times.
41
42 The compression logic is installed as a conditionally compiled option.
43 To enable the compressed repository functionality:
44 1. Install zlib
45 2. define PEGASUS_ENABLE_COMPRESSED_REPOSITORY=true in the environment
46 3. build Pegasus.
47
48 LIBZ INSTALLATION:
49 ------------------
50 jim.wunderlich 1.1
51 libz is used in the compression logic so it must be installed in
52 a standard location prior to enabling the compressed repository
53 functionality.
54
55 LIBZ web pages are:
56
57 http://www.sourceforge.net
58 http://gnuwin32.sourceforge.net/packages/zlib.htm
59 http://www.winimage.com/zLibDll/
60 http://www.gzip.org/zlib/
61
62 LIBZ INSTALLATION ON WINDOWS PLATFORMS:
63 --------------------------------------
64 The standard libz install is:
65 "Program Files"\GnuWin32\include
66 zlib.h and zconf.h
67 "Program Files"\GnuWin32\lib
68 libz.a
69 "Program Files"\GnuWin32\bin
70 zlib1.dll
71 jim.wunderlich 1.1
72 These are the locations used by the windows libz package
73 available on www.sourceforge.net specifically at
74 http://gnuwin32.sourceforge.net/packages/zlib.htm.
75
76 The make file specifies these GnuWin32 directories (include and lib)
77 for the compilation of the CIMRepository. The CIMserver.exe will use
78 the zlib1.dll and expects to find it in one of the search path directories.
79
80 The directory containing the zlib1.dll library must be in the search path.
81 You may include the Gnuwin/bin directory in your search path or
82 alternatively you may move zlib1.dll to another directory that is already
83 in your search path.
84
85
86 LIBZ INSTALLATION ON UNIX PLATFORMS:
87 ------------------------------------
88 Install zlib.h & zconf.h in the standard system includes directory.
89 Install libz.a in the standard systems library directory.
90 Install zlib1.dll in the standard executables directory
91
92 jim.wunderlich 1.1
93 COMPILATION:
94 ------------
95
96 To enable the compressed repository functionality
97 define PEGASUS_ENABLE_COMPRESSED_REPOSITORY in the environment,
98 prior to building the tree. Then build the whole source tree.
99
100 set PEGASUS_ENABLE_COMPRESSED_REPOSITORY=on
101 export PEGASUS_ENABLE_COMPRESSED_REPOSITORY=on
102 etc.
103
104 USAGE:
105 -----
106
107 With the compression code enabled and compiled:
108 - All repositories built will be in the compressed format by default.
109 - all repository formats can be read.
110 - all repository formats can be written.
111 To build a non compressed repository with compression enabled:
112 set PEGASUS_COMPRESS_REPSOITORY to "build_non_compresed".
113 jim.wunderlich 1.1 This is used by the CompareXmlCompressed repository test.
114
115 export PEGASUS_ENABLE_COMPRESSED_REPOSITORY=on
116 export PEGASUS_ENABLE_COMPRESSED_REPOSITORY=build_non_compressed
117 set PEGASUS_ENABLE_COMPRESSED_REPOSITORY=on
118 set PEGASUS_ENABLE_COMPRESSED_REPOSITORY=build_non_compressed
119
120 TESTERS NOTE:
121 ------------
122
123 If PEGASUS_ENABLE_COMPRESSED_REPOSITORY is defined then the CompareXmlCompressed
124 test is run. If it is not defined then the CompareXmlCompressed is not run.
125
126 However if you have the zlibs installed and want to normally test
127 everything with a regular repository but want to run the
128 CompareXmlCompressed test then define PEGASUS_ENABLE_COMPRESSED_REPOSITORY_TEST.
129 This will cause the test to run, it will recompile the CIMRepository for
130 compression, run the test and then recompile CIMRepository for
131 non-compression.
132
|