1
###############################################################################
2
# Variable definitions for targets to build
3
###############################################################################
5
##########################################################################
7
# The Contents of this file are made available subject to the terms of
8
# the Sun Industry Standards Source License Version 1.2
10
# Sun Microsystems Inc., March, 2001
13
# Sun Industry Standards Source License Version 1.2
14
# =================================================
15
# The contents of this file are subject to the Sun Industry Standards
16
# Source License Version 1.2 (the "License"); You may not use this file
17
# except in compliance with the License. You may obtain a copy of the
18
# License at http://gridengine.sunsource.net/Gridengine_SISSL_license.html
20
# Software provided under this License is provided on an "AS IS" basis,
21
# WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
22
# WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
23
# MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
24
# See the License for the specific provisions governing your rights and
25
# obligations concerning the Software.
27
# The Initial Developer of the Original Code is: Sun Microsystems, Inc.
29
# Copyright: 2001 by Sun Microsystems, Inc.
31
# All Rights Reserved.
33
##########################################################################
38
SGEOBJLIB_DIR = $(SDIR)/libs/sgeobj
40
SGEOBJLIB = libsgeobj$(LIBEXT)
42
SGEOBJDLIB = libsgeobjd$(LIBEXT)
68
sge_resource_quota.c \
79
sge_qinstance_state.c \
80
sge_qinstance_type.c \
97
sge_eval_expression.c \
98
sge_advance_reservation.c \
101
SGEOBJDLIB_OBJS = $(SGEOBJDLIB_SRC:.c=.o)
103
SGEOBJLIB_OBJS = $(SGEOBJLIB_SRC:.c=.o)
105
SGEOBJLIB_TEST_PROGS = \
108
test_sge_schedd_conf \
110
test_sge_resource_quota \
113
SGEOBJLIB_TEST_PROGS_OBJS = \
116
test_sge_schedd_conf.o \
118
test_sge_resource_quota.o\
119
test_eval_expression.o
121
###############################################################################
122
# global rules: all, clean, depend, messages
123
###############################################################################
124
sgeobjlib: $(SGEOBJLIB) $(SGEOBJDLIB) $(SGEOBJLIB_TEST_PROGS)
127
$(RM) $(SGEOBJLIB_OBJS) $(SGEOBJDLIB_OBJS) libsgeobj.a libsgeobj$(SHAREDEXT) \
128
libsgeobjd.a libsgeobjd$(SHAREDEXT) sge_sub_object.o sge_sub_object_cpp.o \
129
sge_sub_object.c $(SGEOBJLIB_TEST_PROGS) $(SGEOBJLIB_TEST_PROGS_OBJS)
132
$(DEPEND) -f$(SGEOBJLIB_DIR)/sgeobj_dependencies $(SGEOBJLIB_DIR)/*.c
136
@for i in `ls $(SGEOBJLIB_DIR)/*.c`; do \
137
$(CC) $(CFLAGS) -DEXTRACT_MESSAGES -E $$i | $(XGETTEXT) - ;\
140
###############################################################################
141
# rules to build library
142
###############################################################################
143
libsgeobj.a: $(SGEOBJLIB_OBJS) version.o
144
$(AR) $(ARFLAGS) libsgeobj.a $(SGEOBJLIB_OBJS) version.o
145
$(RANLIB) libsgeobj.a
147
libsgeobj$(SHAREDEXT): $(SGEOBJLIB_OBJS) $(SGEOBJDLIB) $(COMMLIB) $(CULLLIB) $(UTILIB) $(RMONLIB) $(LCKLIB)
148
$(SHAREDLD) $(SHARED_LFLAGS) -o libsgeobj$(SHAREDEXT) $(SGEOBJLIB_OBJS) -lsgeobjd -lcomm -lcommlists -lcull -luti -lrmon $(LCKLIB) $(LIBS) -lc
150
libsgeobjd.a: $(SGEOBJDLIB_OBJS) version.o
151
$(AR) $(ARFLAGS) libsgeobjd.a $(SGEOBJDLIB_OBJS) version.o
152
$(RANLIB) libsgeobjd.a
154
libsgeobjd$(SHAREDEXT): $(SGEOBJDLIB_OBJS) $(CULLLIB) $(UTILIB) $(RMONLIB) $(LCKLIB)
155
$(SHAREDLD) $(SHARED_LFLAGS) -o libsgeobjd$(SHAREDEXT) $(SGEOBJDLIB_OBJS) -lcull -luti -lrmon $(LCKLIB) $(LIBS) -lc
157
###############################################################################
158
# include dependencies for object files generated by sge_depend
159
###############################################################################
160
include $(SGEOBJLIB_DIR)/sgeobj_dependencies
162
###############################################################################
163
# rules to build object codes
164
###############################################################################
165
config.o: $(SGEOBJLIB_DIR)/config.c
166
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/config.c
168
cull_parse_util.o: $(SGEOBJLIB_DIR)/cull_parse_util.c
169
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/cull_parse_util.c
171
parse.o: $(SGEOBJLIB_DIR)/parse.c
172
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/parse.c
174
sge_attr.o: $(SGEOBJLIB_DIR)/sge_attr.c
175
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_attr.c
177
sge_calendar.o: $(SGEOBJLIB_DIR)/sge_calendar.c
178
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_calendar.c
180
sge_centry.o: $(SGEOBJLIB_DIR)/sge_centry.c
181
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_centry.c
183
sge_conf.o: $(SGEOBJLIB_DIR)/sge_conf.c
184
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_conf.c
186
sge_cqueue.o: $(SGEOBJLIB_DIR)/sge_cqueue.c
187
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_cqueue.c
189
sge_cqueue_verify.o: $(SGEOBJLIB_DIR)/sge_cqueue_verify.c
190
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_cqueue_verify.c
192
sge_cuser.o: $(SGEOBJLIB_DIR)/sge_cuser.c
193
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_cuser.c
195
sge_ckpt.o: $(SGEOBJLIB_DIR)/sge_ckpt.c
196
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_ckpt.c
198
sge_event.o: $(SGEOBJLIB_DIR)/sge_event.c
199
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_event.c
201
sge_host.o: $(SGEOBJLIB_DIR)/sge_host.c
202
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_host.c
204
sge_hgroup.o: $(SGEOBJLIB_DIR)/sge_hgroup.c
205
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_hgroup.c
207
sge_href.o: $(SGEOBJLIB_DIR)/sge_href.c
208
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_href.c
210
sge_id.o: $(SGEOBJLIB_DIR)/sge_id.c
211
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_id.c
213
sge_ja_task.o: $(SGEOBJLIB_DIR)/sge_ja_task.c
214
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_ja_task.c
216
sge_job.o: $(SGEOBJLIB_DIR)/sge_job.c
217
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_job.c
219
sge_load.o: $(SGEOBJLIB_DIR)/sge_load.c
220
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_load.c
222
sge_resource_quota.o: $(SGEOBJLIB_DIR)/sge_resource_quota.c
223
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_resource_quota.c
225
sge_mailrec.o: $(SGEOBJLIB_DIR)/sge_mailrec.c
226
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_mailrec.c
228
sge_manop.o: $(SGEOBJLIB_DIR)/sge_manop.c
229
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_manop.c
231
sge_mesobj.o: $(SGEOBJLIB_DIR)/sge_mesobj.c
232
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_mesobj.c
234
sge_object.o: $(SGEOBJLIB_DIR)/sge_object.c
235
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_object.c
237
sge_path_alias.o: $(SGEOBJLIB_DIR)/sge_path_alias.c
238
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_path_alias.c
240
sge_pe.o: $(SGEOBJLIB_DIR)/sge_pe.c
241
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_pe.c
243
sge_pe_task.o: $(SGEOBJLIB_DIR)/sge_pe_task.c
244
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_pe_task.c
246
sge_qinstance.o: $(SGEOBJLIB_DIR)/sge_qinstance.c
247
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_qinstance.c
249
sge_qinstance_state.o: $(SGEOBJLIB_DIR)/sge_qinstance_state.c
250
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_qinstance_state.c
252
sge_qinstance_type.o: $(SGEOBJLIB_DIR)/sge_qinstance_type.c
253
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_qinstance_type.c
255
sge_order.o: $(SGEOBJLIB_DIR)/sge_order.c
256
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_order.c
258
sge_qref.o: $(SGEOBJLIB_DIR)/sge_qref.c
259
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_qref.c
261
sge_range.o: $(SGEOBJLIB_DIR)/sge_range.c
262
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_range.c
264
sge_report.o: $(SGEOBJLIB_DIR)/sge_report.c
265
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_report.c
267
sge_schedd_conf.o: $(SGEOBJLIB_DIR)/sge_schedd_conf.c
268
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_schedd_conf.c
270
sge_sharetree.o: $(SGEOBJLIB_DIR)/sge_sharetree.c
271
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_sharetree.c
273
sge_str.o: $(SGEOBJLIB_DIR)/sge_str.c
274
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_str.c
276
sge_subordinate.o: $(SGEOBJLIB_DIR)/sge_subordinate.c
277
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_subordinate.c
279
# dummy rule to propagate dependencies for sge_sub_object.c
280
sge_sub_object_cpp.o: $(SGEOBJLIB_DIR)/sge_sub_object_cpp.c
281
touch sge_sub_object_cpp.o
283
sge_sub_object.c: sge_sub_object_cpp.o $(SGEOBJLIB_DIR)/sge_sub_object_cpp.c ../scripts/gen_subtype_info.sh
284
$(CC) $(CFLAGS) -E -c $(SGEOBJLIB_DIR)/sge_sub_object_cpp.c | grep __SUBTYPE_MAPPING__ | ../scripts/gen_subtype_info.sh sge_sub_object.c
286
sge_sub_object.o: sge_sub_object.c
287
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c sge_sub_object.c
289
sge_suser.o: $(SGEOBJLIB_DIR)/sge_suser.c
290
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_suser.c
292
sge_ulong.o: $(SGEOBJLIB_DIR)/sge_ulong.c
293
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_ulong.c
295
sge_userprj.o: $(SGEOBJLIB_DIR)/sge_userprj.c
296
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_userprj.c
298
sge_userset.o: $(SGEOBJLIB_DIR)/sge_userset.c
299
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_userset.c
301
sge_usage.o: $(SGEOBJLIB_DIR)/sge_usage.c
302
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_usage.c
304
sge_utility.o: $(SGEOBJLIB_DIR)/sge_utility.c
305
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_utility.c
307
sge_var.o: $(SGEOBJLIB_DIR)/sge_var.c
308
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_var.c
310
str2nm_converter.o: $(SGEOBJLIB_DIR)/str2nm_converter.c
311
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/str2nm_converter.c
313
sge_eval_expression.o: $(SGEOBJLIB_DIR)/sge_eval_expression.c
314
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_eval_expression.c
316
sge_advance_reservation.o: $(SGEOBJLIB_DIR)/sge_advance_reservation.c
317
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_advance_reservation.c
319
sge_ack.o: $(SGEOBJLIB_DIR)/sge_ack.c
320
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_ack.c
322
###############################################################################
323
# rules to build object codes for CULL data types
324
###############################################################################
326
sge_all_listsL.o: $(SGEOBJLIB_DIR)/sge_all_listsL.c
327
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_all_listsL.c
329
sge_answer.o: $(SGEOBJLIB_DIR)/sge_answer.c
330
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_answer.c
332
sge_feature.o: $(SGEOBJLIB_DIR)/sge_feature.c
333
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/sge_feature.c
335
###############################################################################
336
# rules to build test applications
337
###############################################################################
339
test_sge_object: test_sge_object.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(UTILIB) $(WINGRIDLIB_DEP) $(RMONLIB) $(COMMLIB) $(COMMLISTSLIB) $(LCKLIB)
340
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_object $(LFLAGS) test_sge_object.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(RMONLIB) $(DLLIB) $(LCKLIB) $(SECLIB) $(LIBS)
342
test_sge_range: test_sge_range.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(WINGRIDLIB_DEP) $(UTILIB) $(RMONLIB) $(COMMLISTSLIB) $(LCKLIB)
343
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_range $(LFLAGS) test_sge_range.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(WINGRIDLIB) $(COMMLISTSLIB) $(UTILIB) $(RMONLIB) $(LCKLIB) $(LIBS)
345
test_sge_attr: test_sge_attr.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(WINGRIDLIB_DEP) $(UTILIB) $(RMONLIB)
346
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_attr $(LFLAGS) test_sge_attr.o sig_handlers.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(WINGRIDLIB) $(UTILIB) $(RMONLIB) $(LIBS)
348
test_sge_schedd_conf: test_sge_schedd_conf.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(UTILIB) $(WINGRIDLIB_DEP) $(RMONLIB) $(COMMLIB) $(COMMLISTSLIB) $(LCKLIB)
349
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_schedd_conf $(LFLAGS) test_sge_schedd_conf.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(RMONLIB) $(DLLIB) $(LCKLIB) $(SECLIB) $(LIBS)
351
test_sge_utility: test_sge_utility.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(UTILIB) $(WINGRIDLIB_DEP) $(RMONLIB) $(COMMLIB) $(COMMLISTSLIB) $(LCKLIB)
352
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_utility $(LFLAGS) test_sge_utility.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(RMONLIB) $(DLLIB) $(LCKLIB) $(SECLIB) $(LIBS)
354
test_sge_resource_quota: test_sge_resource_quota.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(UTILIB) $(WINGRIDLIB_DEP) $(RMONLIB) $(COMMLIB) $(COMMLISTSLIB) $(LCKLIB)
355
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_sge_resource_quota $(LFLAGS) test_sge_resource_quota.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(RMONLIB) $(DLLIB) $(LCKLIB) $(SECLIB) $(LIBS)
357
test_eval_expression: test_eval_expression.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(UTILIB) $(WINGRIDLIB_DEP) $(RMONLIB) $(COMMLIB) $(COMMLISTSLIB) $(LCKLIB)
358
$(LD_WRAPPER) $(CC) $(CFLAGS) -o test_eval_expression $(LFLAGS) test_eval_expression.o $(SGEOBJLIB) $(SGEOBJDLIB) $(CULLLIB) $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(RMONLIB) $(DLLIB) $(LCKLIB) $(SECLIB) $(LIBS)
360
test_sge_object.o: $(SGEOBJLIB_DIR)/test_sge_object.c
361
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_object.c
363
test_sge_range.o: $(SGEOBJLIB_DIR)/test_sge_range.c
364
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_range.c
366
test_sge_attr.o: $(SGEOBJLIB_DIR)/test_sge_attr.c
367
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_attr.c
369
test_sge_schedd_conf.o: $(SGEOBJLIB_DIR)/test_sge_schedd_conf.c
370
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_schedd_conf.c
372
test_sge_utility.o: $(SGEOBJLIB_DIR)/test_sge_utility.c
373
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_utility.c
375
test_sge_resource_quota.o: $(SGEOBJLIB_DIR)/test_sge_resource_quota.c
376
$(CC) $(CFLAGS) -c $(SGEOBJLIB_DIR)/test_sge_resource_quota.c
378
test_eval_expression.o: $(SGEOBJLIB_DIR)/test_eval_expression.c
379
$(CC) $(CFLAGS) $(SHARED_CFLAGS) -c $(SGEOBJLIB_DIR)/test_eval_expression.c