# Makefile for sf module.

# STATICLIB is used to specify an archive target - that is, the module
# object files are combined into one file with unix 'ar' program. This
# file is then easy to link into the binary in the top level makefile.
# You must write here a name for the archive file, for example libbisup.a.
STATICLIB = libsf.a

# DYNLIB is used to specify a dynamic library name. For example libbisup.so.
DYNLIB = libsf.so

# OBJS must have all object files of your module. It is necessary to
# define this and STATIC/DYNLIB _before_ the next step (include Rules.Make),
# otherwise the makefiles WON'T WORK.
OBJS =	scheduler.o \
	task.o \
	schedulerhandle.o \
	exception.o \
	otime.o \
	fifoscheduler.o

# If you have installed OmniBroker v1.0 or higher to your system and
# want to use sfORBScheduler for applications that include both CORBA
# objects and SF tasks, please add following file to the OBJS above.
# Note that you must then have OB includes available and you must link
# libOB.a into your application to make it work.
#	orbscheduler.o

#
# Include a Rules file
#
include $(OPPSRC)/Rules.Make

static : $(OBJS)
	$(AR) $(AROPTIONS) $(STATICLIB) $(OBJS)
	$(RANLIB) $(STATICLIB)

dynamic : $(OBJS)
	$(CC) -shared $(CCFLAGS) -o $(DYNLIB) $(OBJS)

# Install rules.
static_install : static
	$(INSTALL) $(INSTALLOPTS) $(STATICLIB) $(INSTALLTARGET)

dynamic_install : dynamic
	$(INSTALL) $(INSTALLOPTS) $(DYNLIB) $(INSTALLTARGET)

deepdep : dep
#	@for i in $(SUBDIRS); do ( cd $$i && $(MAKE) deepdep ); done

deepclean : clean
#	@for i in $(SUBDIRS); do ( cd $$i && $(MAKE) deepclean ); done


# Dependencies are below. The line next to this is used by makedepend, so
# DO NOT DELETE

