1 karl 1.42 #//%2006////////////////////////////////////////////////////////////////////////
|
2 martin 1.35 #//
3 #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
4 #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
5 #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
6 #// IBM Corp.; EMC Corporation, The Open Group.
7 #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
8 #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
9 #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10 #// EMC Corporation; VERITAS Software Corporation; The Open Group.
|
11 karl 1.42 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 #// EMC Corporation; Symantec Corporation; The Open Group.
|
13 martin 1.35 #//
14 #// Permission is hereby granted, free of charge, to any person obtaining a copy
15 #// of this software and associated documentation files (the "Software"), to
16 #// deal in the Software without restriction, including without limitation the
17 #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18 #// sell copies of the Software, and to permit persons to whom the Software is
19 #// furnished to do so, subject to the following conditions:
20 #//
21 #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22 #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23 #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24 #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25 #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26 #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27 #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 #//
30 #//==============================================================================
|
31 kumpf 1.7 # Configuration options for Pegasus on all architectures running Linux
32
33 include $(ROOT)/mak/config-unix.mak
34
35 PEGASUS_PLATFORM_LINUX_GENERIC_GNU = 1
36 DEFINES += -DPEGASUS_PLATFORM_LINUX_GENERIC_GNU
37 DEFINES += -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM)
38
|
39 jim.wunderlich 1.38 #########################################################################
40 ##
41 ## Platform specific compile options controlled by environment variables
42 ## are set here.
43 ##
44 #########################################################################
45
46
47 # Enable OOP by default if preference not already set in the environment
48 #
|
49 jim.wunderlich 1.39 ifndef PEGASUS_DEFAULT_ENABLE_OOP
50 PEGASUS_DEFAULT_ENABLE_OOP = true
|
51 jim.wunderlich 1.38 endif
52
53
|
54 konrad.r 1.27 # Enable CMPI by default.
55 #
56 PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=yes
57
|
58 jim.wunderlich 1.38 #########################################################################
59
|
60 kumpf 1.7 OS = linux
61
62 COMPILER = gnu
63
64 PLATFORM_VERSION_SUPPORTED = yes
65
|
66 konrad.r 1.17 ifndef CXX
|
67 kumpf 1.7 CXX = g++
|
68 konrad.r 1.17 endif
|
69 kumpf 1.7
70 SH = sh
71
|
72 david.dillard 1.30 YACC = bison
|
73 kumpf 1.7
|
74 jim.wunderlich 1.32 RM = rm -f
75
76 DIFF = diff
77
78 SORT = sort
79
|
80 kumpf 1.7 COPY = cp
81
82 MOVE = mv
83
|
84 konrad.r 1.15 MKDIRHIER = mkdir -p
85
|
86 kumpf 1.7 PEGASUS_SUPPORTS_DYNLIB = yes
87
88 MAJOR_VERSION_NUMBER = 1
89
90 LIB_SUFFIX = .so.$(MAJOR_VERSION_NUMBER)
91
|
92 kumpf 1.11 DEFINES += -DPEGASUS_USE_SYSLOGS
93
|
94 kumpf 1.7 DEFINES += -DPEGASUS_HAS_SIGNALS
95
|
96 denise.eckstein 1.23 SYS_LIBS = -ldl -lpthread
|
97 kumpf 1.7
98 # PAM support
99 ifdef PEGASUS_PAM_AUTHENTICATION
100 ifeq ($(HPUX_IA64_VERSION), yes)
101 SYS_LIBS += -L$(PAMLIB_HOME) -lpam
102 else
103 SYS_LIBS += -lpam
104 endif
105
106 ## The following flags need to be set or unset
107 ## to compile-in the code required for PAM authentication
108 ## and compile-out the code that uses the password file.
109
110 DEFINES += -DPEGASUS_PAM_AUTHENTICATION -DPEGASUS_NO_PASSWORDFILE
111
112 endif
113
|
114 mike 1.43 FLAGS += -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT
|
115 kumpf 1.7
|
116 aruran.ms 1.36 ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS
|
117 mike 1.43 FLAGS += -g
|
118 kumpf 1.7 else
|
119 mike 1.43 FLAGS += -s
120 #
121 # The -fno-enforce-eh-specs is not available in 2.9.5 and it probably
122 # appeared in the 3.0 series of compilers.
123 #
124 ifeq ($(shell expr $(GCC_VERSION) '>=' 3.0), 1)
125 EXTRA_CXX_FLAGS += -fno-enforce-eh-specs
126 endif
|
127 karl 1.26 ifdef PEGASUS_OPTIMIZE_FOR_SIZE
128 FLAGS += -Os
129 else
130 FLAGS += -O2
131 endif
|
132 kumpf 1.7 endif
133
|
134 w.otsuka 1.41 FLAGS += $(CXX_MACHINE_OPTIONS)
135
|
136 dave.sudlik 1.44 ifdef PEGASUS_ENABLE_GCOV
137 FLAGS += -ftest-coverage -fprofile-arcs
138 SYS_LIBS += -lgcc -lgcov
139 EXTRA_LIBRARIES += -lgcc -lgcov
140 endif
141
|
142 kumpf 1.7 ifndef PEGASUS_USE_MU_DEPEND
143 PEGASUS_HAS_MAKEDEPEND = yes
144 endif
145
146 # l10n
147 ifdef PEGASUS_HAS_MESSAGES
148 DEFINES += -DPEGASUS_HAS_MESSAGES
149 ifdef ICU_ROOT
|
150 h.sterling 1.34 MSG_COMPILE = genrb
151 MSG_FLAGS =
152 MSG_SOURCE_EXT = .txt
153 MSG_COMPILE_EXT = .res
154 CNV_ROOT_CMD = cnv2rootbundle
|
155 kumpf 1.7
156 ##################################
157 ##
158 ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,
|
159 w.white 1.18 ## default is to uppercase the root resource bundle##
|
160 kumpf 1.7 ##################################
161
162 ifdef ICU_NO_UPPERCASE_ROOT
163 CNV_ROOT_FLAGS =
164 else
165 CNV_ROOT_FLAGS = -u
166 endif
167
168 ####################################
169 ##
170 ## ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from
171 ## defaults to _en if not set. if set, for any directory containing resource bundles,
172 ## there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail
173 ##
174 ####################################
175
176 ifdef ICU_ROOT_BUNDLE_LANG
177 MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)
178 else
179 MSG_ROOT_SOURCE = _en
180 endif
181 kumpf 1.7
|
182 ba.patil 1.24 SYS_INCLUDES += -I${ICU_ROOT}/source/common -I${ICU_ROOT}/source/i18n
|
183 kumpf 1.7 DEFINES += -DPEGASUS_HAS_ICU
|
184 h.sterling 1.31 EXTRA_LIBRARIES += -L$(ICU_INSTALL)/lib -licuuc -licui18n -licudata
|
185 kumpf 1.7 endif
186 endif
|
187 konrad.r 1.15
188 ####################################
189 ##
190 ## If PEGASUS_LSB is set, set the rest of the variables.
191 ##
192 ####################################
193
194 ifdef PEGASUS_LSB
|
195 konrad.r 1.17 SYS_INCLUDES += -I/usr/include -I/usr/include/c++ -I/opt/lsbdev-base/include/c++ -I/opt/lsbdev-base/include/
|
196 konrad.r 1.15 FLAGS += -DPEGASUS_OS_LSB
197 endif
198
|