1 mike 1.1.2.1 #//%2006////////////////////////////////////////////////////////////////////////
2 #//
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 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12 #// EMC Corporation; Symantec Corporation; The Open Group.
13 #//
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 mike 1.1.2.1 #// 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 include $(ROOT)/mak/config-unix.mak
32
33 OS = solaris
34
35 ARCHITECTURE = ix86
36
37 COMPILER = CC
38
39 CC = cc
40
41 #
42 # This is a hack because the Pegasus build system doesn't have a way to specify
43 mike 1.1.2.1 # flags just for the C compiler or just for the C++ compiler.
44 #
45 CXX = $(PEGASUS_CCACHE) CC
46
47 SH = sh
48
49 YACC = yacc
50
51 RM = rm -f
52
53 DIFF = diff
54
55 SORT = sort
56
57 COPY = cp
58
59 MOVE = mv
60
61 LIB_SUFFIX = .so
62
63 PEGASUS_SUPPORTS_DYNLIB = yes
64 mike 1.1.2.1
65 SYS_INCLUDES =
66
67 DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM) -D_POSIX_PTHREAD_SEMANTICS
68
69 DEFINES += -DPEGASUS_OS_SOLARIS
70
71 # PEGASUS_SNIA_INTEROP_TEST is currently (1/27/06) tested and set in these
72 # platform files:
73 #
74 # platform_SOLARIS_SPARC_CC.mak
75 # platform_WIN32_IX86_MSVC.mak
76 #
77 ifdef PEGASUS_SNIA_INTEROP_TEST
78 DEFINES += -DPEGASUS_SNIA_INTEROP_TEST
79 endif
80
81 #
82 # This is needed for SPARC. It shouldn't be needed for x86
83 # or x86-64 if a port is ever done for Solaris on those
84 # platforms.
85 mike 1.1.2.1 #
86 DEFINES += -DTYPE_CONV
87
88 # "READBUG" forces fstream.read to read 1 char at a time to
89 # overcome a bug in Wshop 6.2
90 # There are patches for this now.
91 #
92 # DEFINES += -DPEGASUS_OS_SOLARIS_READBUG
93
94 SUNOS_VERSION = $(shell uname -r)
95
96
97 # Pegasus requires the kernel LWP thread model.
98 # It doesn't exist on SunOS 5.6 or 5.7 so thery are no longer supported.
99 #
100 ifeq ($(SUNOS_VERSION), 5.6)
101 DEFINES += -DSUNOS_5_6
102 $(error SunOS version 5.6 is not supportted)
103 endif
104
105 # Pegasus requires the kernel LWP thread model.
106 mike 1.1.2.1 # It doesn't exist on SunOS 5.6 or 5.7 so thery are no longer supported.
107 #
108 ifeq ($(SUNOS_VERSION), 5.7)
109 DEFINES += -DSUNOS_5_7
110 $(error SunOS version 5.7 is not supportted)
111 endif
112
113 ifeq ($(SUNOS_VERSION), 5.8)
114 DEFINES += -DSUNOS_5_8
115 endif
116
117 ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS
118 FLAGS = -pto -g -KPIC -mt -xs -xildoff
119 else
120 FLAGS = -pto -O4 -KPIC -mt -xildoff -s -xipo=1
121 endif
122
123 # Need warnings:
124 FLAGS += +w
125
126 ##==============================================================================
127 mike 1.1.2.1 ##
128 ## COMMON_SYS_LIBS
129 ##
130 ## Build the common list of libraries used in linking both libraries and
131 ## programs.
132 ##
133 ##==============================================================================
134
135 COMMON_SYS_LIBS = -lpthread -ldl -lsocket -lnsl -lxnet -lCstd
136
137 ifeq ($(SUNOS_VERSION), 5.6)
138 COMMON_SYS_LIBS += -lposix4
139 else
140 COMMON_SYS_LIBS += -lrt
141 endif
142
143 # on SunOS 5.8 use the alternate (kernel LWP) thread model that is standard on
144 # SunOS 5.9 and 5.10
145 #
146 ifeq ($(SUNOS_VERSION), 5.8)
147 COMMON_SYS_LIBS += -R /usr/lib/lwp
148 mike 1.1.2.1 endif
149
150 ##==============================================================================
151 ##
152 ## SYS_LIBS (system libraries needed to build programs)
153 ##
154 ##==============================================================================
155 SYS_LIBS = $(COMMON_SYS_LIBS) $(EXTRA_LIBRARIES)
156
157 ##==============================================================================
158 ##
159 ## LIBRARY_SYS_LIBS (system libraries needed to build other libraries)
160 ##
161 ##==============================================================================
162 LIBRARY_SYS_LIBS = $(COMMON_SYS_LIBS)
163
|