summaryrefslogtreecommitdiffstats
path: root/readme.SetConfig_EnvVar
blob: b0e28fe82f798c138535d7d58589f106439d2b61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
//%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.
//
//==============================================================================
/-----------------------------------------------\
|  Set Configurations of Environment variables  |
\-----------------------------------------------/

Author: Konrad Rzeszutek <konradr@us.ibm.com>
Jul 28th 2004


Description:
------------

The SetConfig_EnvVar script is used to solve one of the problems that Pegasus
require of users - to set environment variables for compiling components 
of Pegasus. This script will allow the user to set those options interactivly
or by providing arguments to the script.


Usage:
------

To set the compilation options, run the script file and provide the answers.
You can always re-run the application to set new options, so don't worry if 
you set the wrong option the first time.

If you already know what you want and are not interested in interactivly
answering questions on components, pass in arguments to the script.
For a full list of arguments, run the script with --help parameter, as such:

 $./SetConfig_EnvVar --help


Developer:
----------

If you are Pegasus developer, this section will interest you. The details of 
the working of this script is described in "PEP #182: Configuration script 
enhancement." 

If you are adding a new component to Pegasus and require to set a new
#ifdef statement, you should consider adding it in ./SetConfig_EnvVar.help file.The file lists the options that would be presented to the user. Syntax of this 
file is quite easy:

{<define-component> { [<depends on;depends on; ...>],<define_type>, 
	<--config component>, <short description>, <long description> }

For example the PEGASUS_HAS_SSL is defined as:

PEGASUS_HAS_SSL {
# Depends on other components. This is optional.
	OPENSSL_HOME
# Boolean means you need to define "Yes", "No" (any case).
# Path means that the user has to provide a path.
	Boolean,
# The parameter that can be run with ./ConfigureSetConfig_EnvVar, such as
	--enable-ssl,
# Short description, used for ./ConfigureSetConfig_EnvVar --help to provide a short 
	Build in SSL support,
# Long description, used when querying interactively the user.
	Enabling SSL compile SSL support in Pegasus. If your SSL include 
	files are located in a non-standard location, make sure to define 
	OPENSSL_HOME with the right directory.}


Make sure that "{" is ended with "}"

Good luck!