# Generated automatically from Makefile.in by configure.
# Copyright 1995 Barbara Liskov

TOP = ..
srcdir = /export/home/thor/thor/linux/../or
VPATH = /export/home/thor/thor/linux/../or

include $(TOP)/config/Makedefs

SUBDIRS = mm tests gc

CCCINCS = -I. -I$(srcdir) -I.. -I$(srcdir)/..

ifeq ($(HOSTTYPE),alpha)
THREAD_LIBS = -laio -lpthread -lmach -lc_r -lpthread
LIBS = $(TCLLIB) -ltcl $(THREAD_LIBS) -lm $(EXTRALIBS)
else
THREAD_LIBS = -lpthread
LIBS = $(TCLLIB) $(THREAD_LIBS) -lm $(EXTRALIBS)
endif

THOR_LIBS = gc/libgc.a mm/libmm.a ../common/libcommon.a ../utils/libutils.a

CCCSRCS = \
    cachedir.cc \
    commit.cc \
    coord_set.cc \
    debug_message.cc\
    fe_map.cc \
    fe_manager.cc \
    fe_recv_message.cc \
    init.cc \
    inv_set.cc \
    main.cc \
    message_stats.cc \
    or_manager.cc \
    or_or_msg.cc \
    or_send_message.cc \
    or_send_data_msg.cc \
    rwlock_mutex.cc \
    rwlock_unfair.cc \
    rwlock_fifo.cc \
    server.cc \
    thread.cc \
    tm.cc \
    tstatus.cc \
    update.cc \
    vqueue.cc

TARGETS = or or.prof
DOCFILES = $(srcdir)/README.tex $(srcdir)/*.h $(srcdir)/*.cc

all: or

or: $(OBJECTS) $(THOR_LIBS)
	@-rm -f $@
	$(CCCLINKER) -o or $(OBJECTS) $(THOR_LIBS) $(LIBS)

or.pixie: or
	pixie or

# XXX does not work yet due to multiple threads
or.mon: $(OBJECTS) $(THOR_LIBS)
	@-rm -f $@
	$(CCCLINKER) -p -o $@ $(OBJECTS) $(THOR_LIBS) $(LIBS)

log_or: $(OBJECTS) $(THOR_LIBS)
	$(CCCLINKER) -o log_or $(OBJECTS) $(THOR_LIBS) $(LIBS)

# XXX This only works with cxx
or.prof: $(OBJECTS) $(THOR_LIBS)
	/usr/lib/cmplrs/cxx/ld -o or.prof -G 8 -g0 -call_shared -nocount\
	/usr/lib/cmplrs/cxx/mcrt0.o /usr/lib/cmplrs/cxx/_main.o -count\
	-L/usr/lib/cmplrs/cxx\
	$(OBJECTS) $(THOR_LIBS)\
	$(LIBS) -nocount -lcxx\
	-rpath /usr/lib/cmplrs/cxx /usr/lib/cmplrs/cxx/libexc.a\
	/usr/lib/cmplrs/cc/libprof1_r.a -lc

../common/libcommon.a:
	cd ../common; $(MAKE) libcommon.a

../utils/libutils.a:
	cd ../utils; $(MAKE) libutils.a

mm/libmm.a: FORCE
	cd mm; $(MAKE) libmm.a

mm/liblmm.a: FORCE
	cd mm; $(MAKE) liblmm.a

FORCE:

depend: $(GENERATED)
