1 a.dunfey 1.39.2.1 #//%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 a.dunfey 1.39.2.1 #// 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 a.dunfey 1.39.2.1 ifndef PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
57 PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=true
58 endif
|
59 konrad.r 1.27
|
60 jim.wunderlich 1.38 #########################################################################
61
|
62 kumpf 1.7 OS = linux
63
64 COMPILER = gnu
65
66 PLATFORM_VERSION_SUPPORTED = yes
67
|
68 konrad.r 1.17 ifndef CXX
|
69 kumpf 1.7 CXX = g++
|
70 konrad.r 1.17 endif
|
71 kumpf 1.7
72 SH = sh
73
|
74 david.dillard 1.30 YACC = bison
|
75 kumpf 1.7
|
76 jim.wunderlich 1.32 RM = rm -f
77
78 DIFF = diff
79
80 SORT = sort
81
|
82 kumpf 1.7 COPY = cp
83
84 MOVE = mv
85
|
86 konrad.r 1.15 MKDIRHIER = mkdir -p
87
|
88 kumpf 1.7 PEGASUS_SUPPORTS_DYNLIB = yes
89
90 MAJOR_VERSION_NUMBER = 1
91
92 LIB_SUFFIX = .so.$(MAJOR_VERSION_NUMBER)
93
|
94 kumpf 1.11 DEFINES += -DPEGASUS_USE_SYSLOGS
95
|
96 kumpf 1.7 DEFINES += -DPEGASUS_HAS_SIGNALS
97
|
98 denise.eckstein 1.23 SYS_LIBS = -ldl -lpthread
|
99 kumpf 1.7
100 # PAM support
101 ifdef PEGASUS_PAM_AUTHENTICATION
102 ifeq ($(HPUX_IA64_VERSION), yes)
103 SYS_LIBS += -L$(PAMLIB_HOME) -lpam
104 else
105 SYS_LIBS += -lpam
106 endif
107
108 ## The following flags need to be set or unset
109 ## to compile-in the code required for PAM authentication
110 ## and compile-out the code that uses the password file.
111
112 DEFINES += -DPEGASUS_PAM_AUTHENTICATION -DPEGASUS_NO_PASSWORDFILE
113
114 endif
115
|
116 a.dunfey 1.39.2.1 FLAGS += -fPIC -W -Wall -Wno-unused -D_GNU_SOURCE -DTHREAD_SAFE -D_REENTRANT
|
117 kumpf 1.7
|
118 aruran.ms 1.36 ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS
|
119 a.dunfey 1.39.2.1 FLAGS += -g
|
120 kumpf 1.7 else
|
121 a.dunfey 1.39.2.1 FLAGS += -s
122 #
123 # The -fno-enforce-eh-specs is not available in 2.9.5 and it probably
124 # appeared in the 3.0 series of compilers.
125 #
126 ifeq ($(shell expr $(GCC_VERSION) '>=' 3.0), 1)
127 EXTRA_CXX_FLAGS += -fno-enforce-eh-specs
128 endif
|
129 karl 1.26 ifdef PEGASUS_OPTIMIZE_FOR_SIZE
130 FLAGS += -Os
131 else
132 FLAGS += -O2
133 endif
|
134 kumpf 1.7 endif
135
|
136 a.dunfey 1.39.2.1 FLAGS += $(CXX_MACHINE_OPTIONS)
137
138 ifdef PEGASUS_ENABLE_GCOV
139 FLAGS += -ftest-coverage -fprofile-arcs
140 SYS_LIBS += -lgcc -lgcov
141 EXTRA_LIBRARIES += -lgcc -lgcov
142 endif
143
|
144 kumpf 1.7 ifndef PEGASUS_USE_MU_DEPEND
145 PEGASUS_HAS_MAKEDEPEND = yes
146 endif
147
148 # l10n
149 ifdef PEGASUS_HAS_MESSAGES
150 DEFINES += -DPEGASUS_HAS_MESSAGES
151 ifdef ICU_ROOT
|
152 h.sterling 1.34 MSG_COMPILE = genrb
153 MSG_FLAGS =
154 MSG_SOURCE_EXT = .txt
155 MSG_COMPILE_EXT = .res
156 CNV_ROOT_CMD = cnv2rootbundle
|
157 kumpf 1.7
158 ##################################
159 ##
160 ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,
|
161 w.white 1.18 ## default is to uppercase the root resource bundle##
|
162 kumpf 1.7 ##################################
163
164 ifdef ICU_NO_UPPERCASE_ROOT
165 CNV_ROOT_FLAGS =
166 else
167 CNV_ROOT_FLAGS = -u
168 endif
169
170 ####################################
171 ##
172 ## ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from
173 ## defaults to _en if not set. if set, for any directory containing resource bundles,
174 ## there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail
175 ##
176 ####################################
177
178 ifdef ICU_ROOT_BUNDLE_LANG
179 MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)
180 else
181 MSG_ROOT_SOURCE = _en
182 endif
183 kumpf 1.7
|
184 ba.patil 1.24 SYS_INCLUDES += -I${ICU_ROOT}/source/common -I${ICU_ROOT}/source/i18n
|
185 kumpf 1.7 DEFINES += -DPEGASUS_HAS_ICU
|
186 h.sterling 1.31 EXTRA_LIBRARIES += -L$(ICU_INSTALL)/lib -licuuc -licui18n -licudata
|
187 kumpf 1.7 endif
188 endif
|
189 konrad.r 1.15
190 ####################################
191 ##
192 ## If PEGASUS_LSB is set, set the rest of the variables.
193 ##
194 ####################################
195
196 ifdef PEGASUS_LSB
|
197 konrad.r 1.17 SYS_INCLUDES += -I/usr/include -I/usr/include/c++ -I/opt/lsbdev-base/include/c++ -I/opt/lsbdev-base/include/
|
198 konrad.r 1.15 FLAGS += -DPEGASUS_OS_LSB
199 endif
200
|