###############################################################################
# Variable definitions for targets to build
###############################################################################
#___INFO__MARK_BEGIN__
##########################################################################
#
#  The Contents of this file are made available subject to the terms of
#  the Sun Industry Standards Source License Version 1.2
#
#  Sun Microsystems Inc., March, 2001
#
#
#  Sun Industry Standards Source License Version 1.2
#  =================================================
#  The contents of this file are subject to the Sun Industry Standards
#  Source License Version 1.2 (the "License"); You may not use this file
#  except in compliance with the License. You may obtain a copy of the
#  License at http://gridengine.sunsource.net/Gridengine_SISSL_license.html
#
#  Software provided under this License is provided on an "AS IS" basis,
#  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
#  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
#  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
#  See the License for the specific provisions governing your rights and
#  obligations concerning the Software.
#
#  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
#
#  Copyright: 2001 by Sun Microsystems, Inc.
#
#  All Rights Reserved.
#
##########################################################################
#___INFO__MARK_END__
COMM_EXAMPLES_DIR = $(SDIR)/libs/comm/examples

COMMLISTSLIB = libcommlists$(LIBEXT)
COMMLIB      = libcomm$(LIBEXT)

COMM_EXAMPLES_SRC =       \
         server_demo.c    \
         client_demo.c    \
         external_fd_demo.c \
         external_fd_server_demo.c

COMM_EXAMPLES_OBJS = $(COMM_EXAMPLES_SRC:.c=.o)


###############################################################################
# global rules: all, clean, depend, messages
###############################################################################
commexamples_all: server_demo client_demo external_fd_demo external_fd_server_demo


commexamples_clean:
		$(RM) $(COMM_EXAMPLES_OBJS) server_demo client_demo external_fd_demo external_fd_server_demo

commexamples_depend:
		$(DEPEND) -f $(COMM_EXAMPLES_DIR)/commexamples_dependencies $(COMM_EXAMPLES_DIR)/*.c

commexamples_messages:
	@echo Creating $@
	@for i in `ls $(COMM_EXAMPLES_DIR)/*.c`; do \
	   $(CC) $(CFLAGS) -DEXTRACT_MESSAGES -E $$i | $(XGETTEXT) - ;\
	done

###############################################################################
# include dependencies for object files generated by sge_depend
###############################################################################
include $(COMM_EXAMPLES_DIR)/commexamples_dependencies

###############################################################################
# rules to build object codes
###############################################################################
server_demo: server_demo.o $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB_DEP)  
	$(CC) -o server_demo $(LFLAGS) server_demo.o $(COMMLIB) $(SECLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(DLLIB) $(LIBS)

client_demo: client_demo.o $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB_DEP) 
	$(CC) -o client_demo $(LFLAGS) client_demo.o $(COMMLIB) $(SECLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(DLLIB) $(LIBS)

external_fd_server_demo: external_fd_server_demo.o $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB_DEP)
	$(CC) -o external_fd_server_demo $(LFLAGS) external_fd_server_demo.o $(COMMLIB) $(SECLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(DLLIB) $(LIBS)

external_fd_demo: external_fd_demo.o $(COMMLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB_DEP) 
	$(CC) -o external_fd_demo $(LFLAGS) external_fd_demo.o $(COMMLIB) $(SECLIB) $(COMMLISTSLIB) $(UTILIB) $(WINGRIDLIB) $(DLLIB) $(LIBS)

server_demo.o: $(COMM_EXAMPLES_DIR)/server_demo.c
	$(CC) $(CFLAGS) -c $(COMM_EXAMPLES_DIR)/server_demo.c
client_demo.o: $(COMM_EXAMPLES_DIR)/client_demo.c
	$(CC) $(CFLAGS) -c $(COMM_EXAMPLES_DIR)/client_demo.c
external_fd_server_demo.o: $(COMM_EXAMPLES_DIR)/external_fd_server_demo.c
	$(CC) $(CFLAGS) -c $(COMM_EXAMPLES_DIR)/external_fd_server_demo.c
external_fd_demo.o: $(COMM_EXAMPLES_DIR)/external_fd_demo.c
	$(CC) $(CFLAGS) -c $(COMM_EXAMPLES_DIR)/external_fd_demo.c
