#___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__

###############################################################################
# Variable definitions for targets to build
###############################################################################
WINGRIDLIB_DIR = $(SDIR)/libs/wingrid
UTILBIN_DIR = $(SDIR)/utilbin
UTILIB_DIR = $(SDIR)/libs/uti

WINGRIDLIB = libwingrid$(LIBEXT)

WINGRIDLIB_SRC = \
	wingrid.c \
   windows_gui.c

WINGRIDLIB_PASSWD_DYNAMIC_OBJ = sge_passwd_lib.o
WINGRIDLIB_PASSWD_STATIC_OBJ = sge_passwd_static_lib.o

WINGRIDLIB_OBJS = $(WINGRIDLIB_SRC:.c=.o) $(WINGRIDLIB_PASSWD_DYNAMIC_OBJ)
WINGRIDLIB_STATIC_OBJS = $(WINGRIDLIB_SRC:.c=.o) $(WINGRIDLIB_PASSWD_STATIC_OBJ)

###############################################################################
# global rules: all, clean, depend, messages
###############################################################################
wingridlib: $(WINGRIDLIB) libwingrid_static.a

clean:
	$(RM) $(WINGRIDLIB_OBJS) $(WINGRIDLIB_PASSWD_STATIC_OBJ) libwingrid.a \
         libwingrid$(SHAREDEXT) libwingrid_static.a

depend:
	$(DEPEND) -f$(WINGRIDLIB_DIR)/wingrid_dependencies $(WINGRIDLIB_DIR)/*.c

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

###############################################################################
# rules to build library
###############################################################################
libwingrid.a: $(WINGRIDLIB_OBJS)
	$(AR) $(ARFLAGS) libwingrid.a $(WINGRIDLIB_OBJS)
	$(RANLIB) libwingrid.a

libwingrid_static.a: $(WINGRIDLIB_STATIC_OBJS)
	$(AR) $(ARFLAGS) libwingrid_static.a $(WINGRIDLIB_STATIC_OBJS)
	$(RANLIB) libwingrid_static.a

###############################################################################
# include dependencies for object files generated by sge_depend
###############################################################################
include $(WINGRIDLIB_DIR)/wingrid_dependencies

###############################################################################
# rules to build object codes
###############################################################################
wingrid.o: $(WINGRIDLIB_DIR)/wingrid.c
	$(CC) $(CFLAGS) -c $(WINGRIDLIB_DIR)/wingrid.c

windows_gui.o: $(WINGRIDLIB_DIR)/windows_gui.c
	$(CC) $(CFLAGS) -c $(WINGRIDLIB_DIR)/windows_gui.c

sge_passwd_lib.o: $(UTILBIN_DIR)/sge_passwd.c
	$(CC) $(CFLAGS) -c $(UTILBIN_DIR)/sge_passwd.c -o sge_passwd_lib.o

sge_passwd_static_lib.o: $(UTILBIN_DIR)/sge_passwd.c
	$(CC) $(CFLAGS) -ULOAD_OPENSSL -c $(UTILBIN_DIR)/sge_passwd.c -o sge_passwd_static_lib.o

