1 s.kodali 1.1 #//%LICENSE////////////////////////////////////////////////////////////////
2 #//
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 s.kodali 1.1 #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 #// 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
30 ROOT = .
31
32 include $(ROOT)/env_var.status
33
34 export PEGASUS_PLATFORM=$(PEGASUS_PLATFORM_FOR_32BIT_PROVIDER_SUPPORT)
35 export PEGASUS_INTERNAL_ENABLE_32BIT_PROVIDER_SUPPORT=true
36 ifdef PEGASUS_DEST_LIB_DIR
37 export PEGASUS_DEST_LIB_DIR=$(PEGASUS_DEST_LIB_DIR)32
38 else
39 export PEGASUS_DEST_LIB_DIR=lib32
40 endif
41
42 include $(ROOT)/mak/config.mak
43 s.kodali 1.1
44 DIRS = \
45 src/Pegasus/Common \
46 src/Pegasus/General \
47 src/Pegasus/Config \
48 src/Pegasus/Query/QueryCommon \
49 src/Pegasus/Client
50
51 ifeq ($(PEGASUS_ENABLE_CQL),true)
52 DIRS += src/Pegasus/CQL
53 endif
54
55 DIRS += \
56 src/Pegasus/WQL \
57 src/Pegasus/Query/QueryExpression \
58 src/Pegasus/Provider \
59 src/Pegasus/Provider/CMPI \
60 src/Pegasus/ProviderManager2 \
61 src/Pegasus/ProviderManager2/Default \
62 src/Pegasus/ProviderManagerRouter \
63 src/Pegasus/ProviderManagerService/ProviderAgent
64 s.kodali 1.1
65
66 ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
67 DIRS += \
68 src/Pegasus/Provider/CMPI \
69 src/Pegasus/ProviderManager2/CMPI
70 endif
71
72 TEST_DIRS += \
73 src/Providers/TestProviders/MethodTestProvider \
74 src/Providers/TestProviders/InstanceProvider \
75 src/Providers/TestProviders/CMPI \
76 src/Providers/TestProviders/PerformanceTests
77
78 include $(ROOT)/mak/recurse.mak
79
80 ifeq ($(PEGASUS_USE_RELEASE_DIRS), true)
81 PEGASUS_32BIT_LIBRARIES = \
82 libProviderRegistrationProvider \
83 libpegclient \
84 libpeggeneral \
85 s.kodali 1.1 libpegcommon \
86 libpegconfig \
87 libpegpmservice \
88 libpegprm \
89 libpegprovider \
90 libpegprovidermanager \
91 libpegrepository \
92 libpegwql \
93 libDefaultProviderManager \
94 libpegqueryexpression \
95 libpegquerycommon \
96 libpegservice \
97 libpegpmrouter
98
99 ifeq ($(PEGASUS_ENABLE_CQL),true)
100 PEGASUS_32BIT_LIBRARIES += \
101 libpegcql \
102 libCIMQueryCapabilitiesProvider
103 endif
104
105 ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER),true)
106 s.kodali 1.1 PEGASUS_32BIT_LIBRARIES += \
107 libcmpiCppImpl
108 PEGASUS_32BIT_PROVIDER_MANAGERS += \
109 libCMPIProviderManager
110 endif
111
112 PEGASUS_32BIT_LIBRARY_LINKS = \
113 libpegclient \
114 libpegcommon \
115 libpegprovider \
116 libDefaultProviderManager
117
118 PEGASUS_32BIT_ADMIN_CMDS = \
119 cimprovagt32
120
121 ifndef PEGASUS_FLAVOR
122 PEGASUS_FLAVOR = tog
123 endif
124
125 ifeq ($(PEGASUS_FLAVOR), tog)
126 PEGASUS_PROD_DIR = /usr
127 s.kodali 1.1 else
128 PEGASUS_PROD_DIR = /usr/local/$(PEGASUS_FLAVOR)-pegasus
129 endif
130
131 PEGASUS_ARCH_LIB = lib
132 PEGASUS_DEST_LIB_DIR = $(PEGASUS_PROD_DIR)/$(PEGASUS_ARCH_LIB)
133 PEGASUS_SBIN_DIR = $(PEGASUS_PROD_DIR)/sbin
134 PEGASUS_PROVIDER_DIR = $(PEGASUS_PROD_DIR)/$(PEGASUS_ARCH_LIB)/Pegasus
135 PEGASUS_PROVIDER_LIB_DIR = $(PEGASUS_PROVIDER_DIR)/providers
136
137 PEGASUS_SYSTEM_DIRECTORIES = \
138 $(PEGASUS_PROD_DIR) \
139 $(PEGASUS_SBIN_DIR) \
140 $(PEGASUS_DEST_LIB_DIR) \
141 $(PEGASUS_PROVIDER_DIR) \
142 $(PEGASUS_PROVIDER_LIB_DIR) \
143 $(PEGASUS_PROVIDER_MANAGER_LIB_DIR)
144
145 stage: FORCE
146 $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 stage_PegasusDirectories
147 $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 stage_PegasusFiles
148 s.kodali 1.1
149 stage_PegasusDirectories: FORCE
150 $(foreach i, $(PEGASUS_SYSTEM_DIRECTORIES), $(MKDIRHIER) $(PEGASUS_STAGING_DIR)$(i);)
151
152 stage_PegasusFiles: FORCE
153 $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 stage_PegasusLibraryDirectoryFiles
154 $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 stage_PegasusProviderManagerLibraryDirectoryFiles
155 $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 stage_PegasusAdminCmdsDirectoryFiles
156
157 stage_PegasusLibraryDirectoryFiles: FORCE
158 $(foreach i, $(PEGASUS_32BIT_LIBRARIES), $(COPY) $(PEGASUS_HOME)/lib32/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_SUFFIX);)
159 $(foreach i, $(PEGASUS_32BIT_LIBRARY_LINKS), $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 createlink OBJECT=$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_STAGING_DIR)$(PEGASUS_DEST_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX);)
160
161 stage_PegasusProviderLibraryDirectoryFiles: FORCE
162 $(foreach i, $(PEGASUS_PROVIDERS), $(COPY) $(PEGASUS_HOME)/lib32/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_SUFFIX);)
163 $(foreach i, $(PEGASUS_PROVIDERS), $(MAKE) --directory=$(ROOT) -f Makefile.cimprovagt32 createlink OBJECT=$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX);)
164
165 stage_PegasusProviderManagerLibraryDirectoryFiles: FORCE
166 $(foreach i, $(PEGASUS_32BIT_PROVIDER_MANAGERS), $(COPY) $(PEGASUS_HOME)/lib32/$(i)$(LIB_SUFFIX) $(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_MANAGER_LIB_DIR)/$(i)$(LIB_SUFFIX);)
167 $(foreach i, $(PEGASUS_32BIT_PROVIDER_MANAGERS), $(MAKE) --directory=${ROOT} -f Makefile.cimprovagt32 createlink OBJECT=$(i)$(LIB_SUFFIX) LINKNAME=$(PEGASUS_STAGING_DIR)$(PEGASUS_PROVIDER_MANAGER_LIB_DIR)/$(i)$(LIB_LINK_SUFFIX);)
168
169 s.kodali 1.1 stage_PegasusAdminCmdsDirectoryFiles: FORCE
170 $(foreach i, $(PEGASUS_32BIT_ADMIN_CMDS), $(COPY) $(PEGASUS_HOME)/bin/$(i)$(EXE) $(PEGASUS_STAGING_DIR)$(PEGASUS_SBIN_DIR)/$(i)$(EXE);)
171
172 .PHONY: FORCE
173
174 FORCE:
175
176 include $(ROOT)/mak/commands.mak
177
178 endif
|