1
# CCAFE_HOME= To be set as an Environment variable:
2
# Eg: export CCAFE_HOME=/msrc/proj/cca/manoj/dccafe/cxx
4
# Here we must contend with two kinds of .o file --
5
# those built normally and those built for use in
6
# dynamic libraries. To that end we delete .o files
7
# built for DL as soon as we've converted them to .so.
11
EG_ROOT=$(CCA_ROOT)/cxx/eg
13
include $(CCAFE_HOME)/Makefile.Rules
14
include $(CCAFE_HOME)/MakeIncl.CCAFE_Component
15
include $(EG_ROOT)/ccaComponent/MakeIncl.EGComponent
17
#OTHERFLAGS = -D_DBG_ILOOP -D_DBG_PLATE1
19
ifdef LINUX64_QUADRICS
20
EXTRA_LIBS = -lshmem -lelan3 -lelan -lpthread
23
GA_INC = -I$(GA_HOME)/include
24
GA_LIBS = -L$(GA_HOME)/lib/$(TARGET) -L$(MPI_LIB) -ldl -lc -lglobal\
25
-lma -llinalg -larmci -ltcgmsg-mpi $(LIBMPI)\
26
-lg2c -lnsl $(EXTRA_LIBS) -lm
28
LOCALFLAGS= $(OTHERFLAGS) $(EG_INC) $(GA_INC) -I$(MPI_INCLUDE) -I.
35
$(CXX) -c $(SHARED_FLAGS) $(CXXFLAGS) $<
38
$(CXX) -c $(SHARED_FLAGS) $(CXXFLAGS) $(LOCALFLAGS) $<
42
$(CXX) $(CPPFLAGS) $(LOCALFLAGS) $< | egrep -v ^$$ |egrep -v '^# ' > $@
46
$(JAVAC) $(JAVAFLAGS) $<
48
$(JAVAH) $(JAVAHFLAGS) $(<:%.class=%)
52
# dl stuff that is not ccaffeine dependent
56
# dl stuff that is ccaffeine dependent
62
# stuff built with or without a parallel environment.
63
CXXSRC = $(CXXDLSTRICTSRC) $(CXXDLLOOSESRC) $(CXXDLNONESRC)
68
CXXOBJ = $(CXXSRC:%.cxx=%.o)
69
CXXDSSOBJ = $(CXXDLSTRICTSRC:%.cxx=%.so)
70
CXXDLSOBJ = $(CXXDLLOOSESRC:%.cxx=%.so)
71
NEWOBJ = $(NEWSRC:%.cxx=%.o)
73
$(CXXDSSOBJ) : %$(CCAFE_SHLIB_SUFFIX) : %.cxx
75
#$(CCAFE_HOME)/dc/component/genDLWrapperStrict $* > $*_wrapper.cxx
76
#$(CCAFE_HOME)/dc/component/genDLIndex $@ create_$* $* > $*.cca
77
$(CXX) -c $(CXXFLAGS) $(LOCALFLAGS) $(CCAFE_SHLIB_CFLAGS) $<
78
$(CXX) -c $(CXXFLAGS) $(LOCALFLAGS) $(CCAFE_SHLIB_CFLAGS) \
79
$(WRAPPERFLAGS) $*_wrapper.cxx
80
$(CCAFE_SHLIB_LD) $(CCAFE_SHLIB_LDFLAGS) -o $@ $*.o $*_wrapper.o \
82
-$(RM) $*.o $(NEWOBJ) $*_wrapper.o
87
@echo done $(CXXOBJ) $(JAVACLS) $(JNIHDR)
90
ar $(ARFLAGS) $(LIB) $(CXXOBJ) $(NEWOBJ)
93
dllib: $(CXXDSSOBJ) $(CXXDLSOBJ)
95
allobj : $(CXXOBJ) $(JAVACLS) $(JNIHDR) $(NEWOBJ)
103
$(RM) -f $(CXXOBJ) $(LIB) $(JAVACLS) $(JNIHDR) $(NEWOBJ) *.so *_wrapper.o *.i *~
106
$(DEPEND) $(CXXFLAGS) $(LOCALFLAGS) $(CXXSRC) $(NEWSRC)
109
$(DEPENDSYS) $(CXXFLAGS) $(LOCALFLAGS) $(CXXSRC) $(NEWSRC)
111
#include Makefile.depends