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)
75
CXXOBJ = $(CXXSRC:%.cxx=%.o)
76
CXXDSSOBJ = $(CXXDLSTRICTSRC:%.cxx=%.so)
77
CXXDLSOBJ = $(CXXDLLOOSESRC:%.cxx=%.so)
78
NEWOBJ = $(NEWSRC:%.cxx=%.o)
80
$(CXXDSSOBJ) : %$(CCAFE_SHLIB_SUFFIX) : %.cxx allobj
82
#$(CCAFE_HOME)/dc/component/genDLWrapperStrict $* > $*_wrapper.cxx
83
#$(CCAFE_HOME)/dc/component/genDLIndex $@ create_$* $* > $*.cca
84
$(CXX) -c $(CXXFLAGS) $(LOCALFLAGS) $(CCAFE_SHLIB_CFLAGS) $<
85
$(CXX) -c $(CXXFLAGS) $(LOCALFLAGS) $(CCAFE_SHLIB_CFLAGS) \
86
$(WRAPPERFLAGS) $*_wrapper.cxx
87
$(CCAFE_SHLIB_LD) $(CCAFE_SHLIB_LDFLAGS) -o $@ $*.o $*_wrapper.o \
89
-$(RM) $*.o $(NEWOBJ) $*_wrapper.o
94
@echo done $(CXXOBJ) $(JAVACLS) $(JNIHDR)
97
ar $(ARFLAGS) $(LIB) $(CXXOBJ) $(NEWOBJ)
100
dllib: $(CXXDSSOBJ) $(CXXDLSOBJ)
102
allobj : $(CXXOBJ) $(JAVACLS) $(JNIHDR) $(NEWOBJ)
106
$(CXXOBJ) : $(CXXSRC)
110
$(RM) -f $(CXXOBJ) $(LIB) $(JAVACLS) $(JNIHDR) $(NEWOBJ) *.so *_wrapper.o *.i *~
113
$(DEPEND) $(CXXFLAGS) $(LOCALFLAGS) $(CXXSRC) $(NEWSRC)
116
$(DEPENDSYS) $(CXXFLAGS) $(LOCALFLAGS) $(CXXSRC) $(NEWSRC)
118
#include Makefile.depends