1 #############################################################################"
3 # This one Makefile serves all of converse and charm. It includes
6 # * The CONVERSE libraries
12 # This Makefile is common to all machines. This works because the charmc
13 # is smart enough to "conceal" the differences between machines. charmc
14 # gets its smarts by reading the conv-mach.sh configuration file.
16 # If you wish to compile with debugging, optimization, or some other charm
17 # option, you can do so by setting OPTS. For example, if you need a lot
18 # of debugging information, you could type:
20 # make charm++ OPTS="-g -save -verbose"
22 ###############################################################################
28 all: charm
++ bigsim LIBS AMPI f90charm TSM SM PVM doc
31 cd ..
/tests
; $(MAKE
) all OPTS
='$(OPTS)'
32 cd ..
/examples
; $(MAKE
) all OPTS
='$(OPTS)'
35 @echo
"$(OPTS)" > OPTS
40 TSM
: converse
$(L
)/libtsm.a
42 SM
: converse
$(L
)/libsm.a
44 PVM
: converse
$(L
)/libpvmc.a
47 cd libs
/ck-libs
/amr
; make
all OPTS
='$(OPTS)'
54 MBLOCK
: AMPI MBLOCKC MBLOCKF
66 f90charm
: charm
++ $(L
)/libf90charm.a
68 default_libs
: completion multicast pythonCCS
70 ChaNGa
: charm
++ cache liveViz
73 cd libs
/ck-libs
/cache
&& $(MAKE
)
76 cd libs
/ck-libs
/liveViz
&& $(MAKE
)
79 cd libs
/ck-libs
/multicast
&& $(MAKE
)
82 cd libs
/ck-libs
/pythonCCS
&& $(MAKE
)
85 cd libs
/ck-libs
/completion
&& $(MAKE
)
87 translators
: charmxi conv-cpm
90 cd libs
/ck-libs
/pose
&& $(MAKE
)
93 cd libs
/ck-libs
/multiphaseSharedArrays
&& $(MAKE
)
96 # make the lib, include
97 cd langs
/jade
&& $(MAKE
)
100 cd libs
/ck-libs
/fftlib
&& $(MAKE
)
102 # This should be done offline, since the user does not need to compile
103 # parser files, etc. All they need is the libjade + include files,
104 # antlr.jar, jade.jar, and a few scripts which the jade target takes
107 # make parser.g -> .java files
108 # cd langs/jade && $(MAKE) p
109 # make the jade.jar file
110 # cd ../java/charm/jade && $(MAKE)
113 TAU_MAKEFILE
=Make.tau
114 include $(TAU_MAKEFILE
) #stub-makefile
116 #builds TAU's trace library
118 echo
"buliding charm trace library with support for TAU."
119 $(MAKE
) $(L
)/libtrace-Tau.a
$(L
)/libtrace-all.a TAU_TRACE_OBJ
=libtrace-Tau.o
121 LIBS
: CONVLIBS CHARMLIBS
122 cd libs
; $(MAKE
) otherlibs
123 echo
"Built LIBS Successfully"
126 cd ..
/tests
; $(MAKE
) bgtest OPTS
='$(OPTS)'
127 cd ..
/examples
; $(MAKE
) bgtest OPTS
='$(OPTS)'
130 cd ..
/tests
; $(MAKE
) test OPTS
='$(OPTS)'
131 cd ..
/examples
; $(MAKE
) test OPTS
='$(OPTS)'
133 test-converse
: converse
134 cd ..
/tests
; $(MAKE
) test-converse OPTS
='$(OPTS)'
136 test-charm
: charm
++ METIS
137 cd ..
/tests
; $(MAKE
) test-charm OPTS
='$(OPTS)'
140 cd ..
/tests
; $(MAKE
) test-AMPI OPTS
='$(OPTS)'
143 cd ..
/tests
; $(MAKE
) test-fem OPTS
='$(OPTS)'
152 cd ..
/doc
; make html
157 CHARMC
=..
/bin
/charmc
$(CHARMOPTS
) $(OPTS
)
159 SEQCHARMC
=..
/bin
/charmc
-seq
$(CHARMOPTS
)
161 NATIVECHARMC
=..
/bin
/charmc
-host
$(CHARMOPTS
)
163 CHARMXI
=..
/bin
/charmc
-intrinsic
$(OPTS
)
165 CIDEPENDFILE
= Make.cidepends
166 DEPENDFILE
= Make.depends
168 include $(CIDEPENDFILE
)
169 include $(DEPENDFILE
)
171 CIFILES
= $(wildcard *.ci
)
173 %.ci.stamp
: %.ci ..
/bin
/charmxi
174 $(CHARMXI
) $< && touch
$@
176 # Automatically generated by script Makefile_lb.sh
179 # Build changes for external libraries
182 ###############################################################################
184 # The basics (bin, lib, include, headers, charmc, conv-mach.sh)
186 ###############################################################################
188 CVHEADERS
=cpthreads.h converse.h conv-trace.h conv-random.h conv-qd.h \
189 queueing.h conv-cpath.h conv-cpm.h persistent.h\
190 trace.h trace-common.h trace-bluegene.h trace-projections.h \
191 trace-simple.h trace-controlPoints.h charm-api.h \
192 conv-ccs.h ccs-client.c ccs-client.h \
193 ccs-server.h ccs-auth.c ccs-auth.h \
194 memory-isomalloc.h debug-conv.h debug-conv
++.h conv-autoconfig.h \
195 conv-common.h conv-config.sh conv-config.h conv-mach.h conv-mach.sh \
196 blue.h blue-conv.h bgconverse.h cmipool.h mempool.h \
197 cmidirect.h cmidirectmanytomany.h
199 CONVCOMHEADERS
= 3dgridrouter.h hypercuberouter.h hypercubetopology.h \
200 routerstrategy.h convcomlibstrategy.h convcomlib.h dummyconversestrategy.h treerouter.h \
201 convcomlibmanager.h graphrouter.h petable.h gridrouter.h router.h \
202 prefixrouter.h pipebroadcastconverse.h pipelinestrategy.h
204 # The .c files are there to be #included by clients whole
205 # This is a bit unusual, but makes client linking simpler.
206 UTILHEADERS
=pup.h pupf.h pup_c.h pup_stl.h pup_mpi.h pup_toNetwork.h pup_toNetwork4.h pup_paged.h pup_cmialloc.h\
207 ckimage.h ckdll.h ckhashtable.h ckbitvector.h cklists.h ckliststring.h \
208 cksequence.h ckstatistics.h ckvector3d.h conv-lists.h RTH.h ckcomplex.h \
209 sockRoutines.h sockRoutines.c ckpool.h BGLTorus.h BGPTorus.h \
210 TopoManager.h XT3Torus.h XTTorus.h cmimemcpy.h simd.h SSE-Double.h SSE-Float.h crc32.h
212 CKHEADERS
=ck.h ckstream.h envelope.h init.h qd.h charm.h charm
++.h \
213 ckfutures.h ckIgetControl.h cktiming.h debug-charm.h\
214 ckcallback.h CkCallback.decl.h ckcallback-ccs.h \
215 ckarrayreductionmgr.h cksection.h \
216 ckarrayindex.h ckarray.h cklocation.h ckreduction.h \
217 ckcheckpoint.h ckmemcheckpoint.h ckevacuation.h\
218 ckmessagelogging.h ckobjid.h\
219 ckobjQ.h readonly.h charisma.h \
220 comlib.h ComlibArrayListener.h ComlibStrategy.h \
221 ComlibLearner.h
$(UTILHEADERS
) \
222 tempo.h waitqd.h LBDatabase.h lbdb.h lbdb
++.h LBProfit.h
$(LBHEADERS
) \
223 LBDBManager.h LBComm.h LBOM.h LBObj.h LBMachineUtil.h LBAgent.h \
224 Refiner.h RefinerApprox.h RefinerComm.h ckgraph.h ckheap.h \
225 elements.h CommLBHeap.h topology.h manager.h \
226 BaseLB.h CentralLB.h CentralLBMsg.h \
227 NborBaseLB.h HybridBaseLB.h HybridLBMsg.h \
229 BlueGene.h middle.h middle-conv.h middle-blue.h \
230 CkMarshall.decl.h CkArray.decl.h CkLocation.decl.h \
231 CkReduction.decl.h CkArrayReductionMgr.decl.h\
232 tempo.decl.h waitqd.decl.h \
233 CkFutures.decl.h CkCheckpoint.decl.h CkMemCheckpoint.decl.h \
234 LBDatabase.decl.h CentralLB.decl.h NullLB.decl.h \
237 HybridBaseLB.decl.h EveryLB.decl.h CommonLBs.decl.h \
238 charisma.decl.h TraceSummary.decl.h TraceProjections.decl.h \
239 TraceSimple.decl.h TraceControlPoints.decl.h TraceTau.decl.h \
240 TraceUtilization.decl.h BlueGene.decl.h \
241 comlib.decl.h ComlibManager.h DummyStrategy.h \
242 MulticastStrategy.h DirectMulticastStrategy.h RingMulticastStrategy.h \
243 ChunkMulticastStrategy.h OneTimeMulticastStrategy.h MultiRingMulticast.h \
244 EachToManyMulticastStrategy.h MsgPacker.h StreamingStrategy.h \
245 NodeMulticast.h PipeBroadcastStrategy.h MeshStreamingStrategy.h \
246 PrioStreaming.h MPIStrategy.h MsgPacker.h StreamingStrategy.h \
247 BroadcastStrategy.h ComlibSectionInfo.h AAPLearner.h \
248 AAMLearner.h ComlibStats.h \
249 RectMulticastStrategy.h ckdirect.h \
250 ControlPoints.decl.h PathHistory.decl.h \
251 pathHistory.h envelope-path.h \
252 controlPoints.h controlPointsf.h arrayRedistributor.h cp_effects.h register.h stats.h \
253 cksequence_internal.h cksequence_factory.h random_sequence.h strided_sequence.h \
254 $(CVHEADERS
) $(CONVCOMHEADERS
)
256 ALLHEADERS
=$(CKHEADERS
) \
257 simplemsg.h sm.h pvmc.h pvm3.h sdag.h vector2d.h \
258 graph.h bitvecset.h ckset.h LBSimulation.h \
264 # Headers is used only for the dependencies
265 headers
: dirs
+sources
269 conv-autoconfig.h
: configure config_opts.sh
270 @. .
/config_opts.sh
; echo .
/configure
$(QUIET
) $$CONFIG_OPTS; \
271 .
/configure
$(QUIET
) $$CONFIG_OPTS && touch conv-autoconfig.h
273 .PHONY
: clean veryclean VERSION.new
279 echo
"const char * const CmiCommitID = \"`cat VERSION`\";" > $@
280 commitid.o
: CC
=$(CHARMC
)
282 headerlinks
: dirs
+sources Makefile
$(ALLHEADERS
)
283 @
[ "x$QUIET" = "x--quiet" ] || echo
"Soft-linking headers..."
284 -for hdr in
$(ALLHEADERS
) ; do
test ! -f
"../include/$$hdr" && .
/system_ln
"../tmp/$$hdr" ..
/include ; done
289 # (cd .. ; basename "`pwd`" | sed -e 's@-.*@@') > .gdir
291 find .
-type l
-exec
rm {} \
;
294 rm -rf ..
/bin
; mkdir ..
/bin
295 rm -rf ..
/lib
; mkdir ..
/lib
296 rm -rf ..
/lib_so
; mkdir ..
/lib_so
; touch ..
/lib_so
/.charmso
299 rm -rf ..
/doc
; ln
-s ..
/doc ..
/doc
300 ..
/..
/src
/scripts
/gatherflat ..
/..
/src
/scripts .
301 .
/gatherflat ..
/..
/src
/conv-core .
302 .
/gatherflat ..
/..
/src
/conv-ldb .
303 .
/gatherflat ..
/..
/src
/conv-ccs .
304 .
/gatherflat ..
/..
/src
/conv-perf .
305 .
/gatherflat ..
/..
/src
/ck-core .
306 .
/gatherflat ..
/..
/src
/util .
307 .
/gatherflat ..
/..
/src
/ck-perf .
308 .
/gatherflat ..
/..
/src
/ck-ldb .
309 .
/gatherflat ..
/..
/src
/ck-com .
310 .
/gatherflat ..
/..
/src
/ck-cp .
311 .
/gatherflat ..
/..
/src
/conv-com .
312 .
/gatherflat ..
/..
/src
/langs
/simplemsg .
313 .
/gatherflat ..
/..
/src
/langs
/pvmc .
314 .
/gatherflat ..
/..
/src
/langs
/bluegene .
315 .
/gatherflat ..
/..
/src
/langs
/f90charm .
316 .
/gatherflat ..
/..
/src
/xlat-i .
317 .
/gatherflat ..
/..
/src
/xlatcpm .
318 .
/gathertree ..
/..
/src
/QuickThreads QuickThreads
319 .
/gathertree ..
/..
/src
/libs libs
320 .
/gathertree ..
/..
/src
/arch
/util .
321 .
/gathertree ..
/..
/src
/langs langs
322 .
/gathertree ..
/..
/src
/langs
/jade langs
/jade
323 .
/gathertree ..
/..
/src
/arch
/common .
324 .
/gathertree ..
/..
/src
/arch
/`cat .gdir` .
325 test -f ..
/..
/src
/arch
/`cat .gdir`/gdir_link
&& cat ..
/..
/src
/arch
/`cat .gdir`/gdir_link
> .gdir.new
&& .
/gathertree ..
/..
/src
/arch
/`cat .gdir.new` . || true
326 .
/gatherflat ..
/..
/src
/arch
/`cat .vdir` .
327 .
/gathertree ..
/..
/examples ..
/examples
328 .
/gathertree ..
/..
/tests ..
/tests
329 rm -f ..
/bin
/dep.pl
; cp dep.pl ..
/bin
/
331 -.
/system_ln ..
/tmp
/charmc ..
/bin
/
332 # -ln -s ../../java/bin charmjavabin
333 # -ln -s ../../java/bin ../bin/charmjavabin
334 # -ln -s charmjavabin/* ../bin/
337 rm -rf ..
/include ; mkdir ..
/include
338 -.
/system_ln ..
/tmp
/conv-
*.
*h ..
/include
339 -.
/system_ln ..
/tmp
/cc-
*.
*h ..
/include
340 -.
/system_ln ..
/tmp
/conv-mach-opt.sh ..
/include
341 if
[ -x .
/special.sh
] ; then .
/special.sh
; fi
342 if
[ ! -f conv-common.h
] ; then
( touch conv-common.h
) ; fi
345 ###############################################################################
349 ###############################################################################
350 CLBLIBS
=$(L
)/libldb-rand.o
$(L
)/libldb-spray.o
$(L
)/libldb-workstealing.o
$(L
)/libldb-neighbor.o
$(L
)/libldb-none.o
$(L
)/libldb-test.o
$(L
)/libldb-bluegene.o
352 TRACELIBS
= $(L
)/libtrace-converse.a
$(L
)/libtracef_f.a
354 BUILD_TRACING
=$(shell CHARMINC
=.
; if
test -f .
/conv-config.sh
; then . .
/conv-config.sh
; echo
$$CMK_TRACE_ENABLED; fi
)
356 ifneq "$(BUILD_TRACING)" "0"
357 TRACELIBS
+= $(L
)/libtrace-projections.a
$(L
)/libtrace-summary.a \
358 $(L
)/libtrace-utilization.a
$(L
)/libtrace-simple.a \
359 $(L
)/libtrace-counter.a
$(L
)/libtrace-bluegene.a \
360 $(L
)/libtrace-projector.a
$(L
)/libtrace-all.a \
361 $(L
)/libtrace-memory.a
364 MEMLIBS
=$(L
)/libmemory-default.o
$(L
)/libmemory-os.o
$(L
)/libmemory-gnu.o \
365 $(L
)/libmemory-gnuold.o
$(L
)/libmemory-verbose.o \
366 $(L
)/libmemory-paranoid.o \
367 $(L
)/libmemory-leak.o
$(L
)/libmemory-isomalloc.o \
368 $(L
)/libmemory-os-verbose.o
$(L
)/libmemory-os-isomalloc.o \
369 $(L
)/libmemory-os-leak.o
$(L
)/libmemory-os-paranoid.o \
370 $(L
)/libmemory-os-lock.o
$(L
)/libmemory-os-wrapper.o
372 BUILD_CHARMDEBUG
=$(shell CHARMINC
=.
; if
test -f .
/conv-config.sh
; then . .
/conv-config.sh
; echo
$$CMK_CHARMDEBUG; fi
)
374 ifneq "$(BUILD_CHARMDEBUG)" "0"
375 MEMLIBS
+= $(L
)/libmemory-charmdebug.o
$(L
)/libmemory-charmdebug-mmap.o \
376 $(L
)/libmemory-charmdebug-slot.o \
377 $(L
)/libmemory-charmdebug-mmap-slot.o \
378 $(L
)/libmemory-os-charmdebug.o
$(L
)/libmemory-hooks-charmdebug.o
381 THREADLIBS
=$(L
)/libthreads-default.o
$(L
)/libthreads-default-tls.o \
382 $(L
)/libthreads-qt.o
$(L
)/libthreads-qt-tls.o \
383 $(L
)/libthreads-context.o
$(L
)/libthreads-context-tls.o \
384 $(L
)/libthreads-uJcontext.o
$(L
)/libthreads-uJcontext-tls.o \
385 $(L
)/libthreads-pthreads.o
$(L
)/libthreads-fibers.o \
386 $(L
)/libthreads-stackcopy.o
$(L
)/libthreads-memoryalias.o \
387 $(L
)/libthreads-qt-memoryalias.o \
388 $(L
)/libthreads-context-memoryalias.o \
389 $(L
)/libthreads-uJcontext-memoryalias.o
391 CVLIBS
=$(L
)/libconv-core.a \
392 $(L
)/libconv-cplus-y.a
$(L
)/libconv-cplus-n.a \
393 $(L
)/libconv-util.a
$(L
)/libconv-utilf.a \
394 $(CLBLIBS
) $(TRACELIBS
) $(MEMLIBS
) $(THREADLIBS
) \
397 LIBCONV_CORE
= convcore.o conv-conds.o queueing.o msgmgr.o \
398 cpm.o cpthreads.o futures.o cldb.o topology.o random.o \
399 debug-conv.o debug-conv
++.o generate.o edgelist.o conv-ccs.o ccs-builtins.o middle-ccs.o \
400 traceCore.o traceCoreCommon.o \
401 converseProjections.o machineProjections.o \
402 quiescence.o isomalloc.o mem-arena.o conv-counter.o \
403 global-nop.o cmipool.o cpuaffinity.o cputopology.o \
404 cmitls.o memoryaffinity.o commitid.o
406 #############################################
407 #Comlib Core objects that go into libck.a
408 COMLIB_CORE_OBJS
= ComlibModuleInterface.o
409 ##############################################
411 LIBCONV_UTIL
=pup_util.o pup_toNetwork.o pup_toNetwork4.o \
412 pup_xlater.o pup_c.o pup_paged.o pup_cmialloc.o \
413 ckimage.o ckdll.o ckhashtable.o sockRoutines.o \
414 conv-lists.o RTH.o persist-comm.o mempool.o graph.o \
415 TopoManager.o CrayNid.o crc32.o
417 LIBCONV_UTILF
=pup_f.o
419 converse
: fmain-ok charmrun-target swapglobal-target conv-cpm
421 charmrun-target
: sockRoutines.c sockRoutines.h ccs-server.c ccs-server.h sockRoutines-seq.o
$(L
)/libck.a
$(CVLIBS
)
422 if
[ -d charmrun
] ; then
( cd charmrun
; $(MAKE
) OPTS
='$(OPTS)' -j1
) ; fi
423 if
[ -f charmrun
] ; then
( cp
-f charmrun ..
/bin
) ; fi
426 -@
$(CHARMC
) -c fmain.f90
430 QUICK_THREADS
: $(CVHEADERS
)
431 -( cd QuickThreads
&& $(MAKE
) clean )
432 ( cd QuickThreads
;.
/configure
)
433 ( cd QuickThreads
; $(MAKE
) qt OPTS
='$(OPTS)' ) ||
( echo
"Did you try to build net-linux on a 64-bit system? Try net-linux-x86_64" && false
)
434 cp
-f QuickThreads
/libqt.a ..
/lib
/libckqt.a
435 -(CHARMINC
=.
; . .
/conv-config.sh
; \
436 test -d ..
/lib_so
&& \
437 cp
-f QuickThreads
/libqt.
$$CMK_SHARED_SUF ..
/lib_so
&& \
438 cp
-f QuickThreads
/libqt.
$$CMK_SHARED_SUF ..
/lib_so
/libckqt.
$$CMK_SHARED_SUF)
442 cd libs
/ck-libs
/parmetis
/METISLib
&& $(MAKE
) OPTS
='$(OPTS)'
445 cd libs
; $(MAKE
) convlibs OPTS
='$(OPTS)'
447 $(L
)/libconv-core.a
: $(LIBCONV_CORE
)
448 $(CHARMC
) $(TAU_LIBS
) -o
$@
$(LIBCONV_CORE
)
450 $(L
)/libconv-cplus-y.a
: $(L
)/libconv-cplus-n.a
452 include Makefile.machine
454 $(L
)/libconv-cplus-n.a
: machine.c
$(CVHEADERS
)
455 @
-test -f
$(INC
)/mpi.h
&& mv
-f
$(INC
)/mpi.h
$(INC
)/mpi.BAK || true
456 $(CHARMC
) -o machine.o
-DFOR_CPLUS
=1 machine.c
457 @
-test -f .
/bglmachine.C
&& $(CHARMC
) -o machine.o
-DFOR_CPLUS
=1 bglmachine.C || true
458 $(CHARMC
) -o
$(L
)/libconv-cplus-y.a machine.o
459 $(CHARMC
) -o
$(L
)/libconv-cplus-n.a
-DFOR_CPLUS
=0 machine.c
460 @
-test -f
$(INC
)/mpi.BAK
&& mv
-f
$(INC
)/mpi.BAK
$(INC
)/mpi.h || true
462 $(L
)/libconv-util.a
: $(LIBCONV_UTIL
)
463 $(CHARMC
) -o
$@
$(LIBCONV_UTIL
)
465 $(L
)/libconv-utilf.a
: $(LIBCONV_UTILF
)
466 -$(CHARMC
) -o
$@
$(LIBCONV_UTILF
) || touch
$@
468 $(L
)/libccs-client.a
: ccs-client.o
469 $(CHARMC
) -o
$@ ccs-client.o
471 ccs-client.o
: ccs-client.c
$(CVHEADERS
)
472 $(CHARMC
) ccs-client.c
474 sockRoutines.o
: sockRoutines.c
$(CVHEADERS
) $(UTILHEADERS
)
475 $(CHARMC
) -DCMK_USE_CONVERSE
=1 sockRoutines.c
477 sockRoutines-seq.o
: sockRoutines.c
$(CVHEADERS
) $(UTILHEADERS
)
478 $(SEQCHARMC
) -o sockRoutines-seq.o sockRoutines.c
480 pup_util.o
: pup_util.C
$(CVHEADERS
) $(UTILHEADERS
)
481 $(CHARMC
) -o pup_util.o pup_util.C
483 pup_toNetwork.o
: pup_toNetwork.C
$(CVHEADERS
) $(UTILHEADERS
)
484 $(CHARMC
) -I.
-o pup_toNetwork.o pup_toNetwork.C
486 pup_toNetwork4.o
: pup_toNetwork4.C
$(CVHEADERS
) $(UTILHEADERS
)
487 $(CHARMC
) -I.
-o pup_toNetwork4.o pup_toNetwork4.C
489 pup_xlater.o
: pup_xlater.C
$(CVHEADERS
) $(UTILHEADERS
)
490 $(CHARMC
) -I.
-o pup_xlater.o pup_xlater.C
492 pup_c.o
: pup_c.C
$(CVHEADERS
) $(UTILHEADERS
)
493 $(CHARMC
) -o pup_c.o pup_c.C
495 pup_paged.o
: pup_paged.C
$(CVHEADERS
) $(UTILHEADERS
)
496 $(CHARMC
) -o pup_paged.o pup_paged.C
498 pup_f.f90
: pup_f.f90.sh
501 pup_f.o
: pup_f.f90
$(CVHEADERS
)
502 -$(CHARMC
) -c pup_f.f90
&& $(CHARMC
) -cpmod ..
/include pupmod.M || touch pup_f.o
504 pup_cmialloc.o
: pup_cmialloc.C
$(CVHEADERS
) $(UTILHEADERS
)
505 $(CHARMC
) -o pup_cmialloc.o pup_cmialloc.C
507 ckhashtable.o
: ckhashtable.C ckhashtable.h
$(CVHEADERS
)
508 $(CHARMC
) -o ckhashtable.o ckhashtable.C
510 TopoManager.o
: TopoManager.C TopoManager.h BGLTorus.h BGPTorus.h XT3Torus.h XTTorus.h CrayNid.c
$(CVHEADERS
) $(UTILHEADERS
)
511 $(CHARMC
) -o TopoManager.o TopoManager.C
513 CrayNid.o
: CrayNid.c
$(CVHEADERS
) $(UTILHEADERS
)
514 $(CHARMC
) -c
-o CrayNid.o CrayNid.c
516 ckdll.o
: ckdll.C ckdll.h
$(CVHEADERS
)
517 $(CHARMC
) -o ckdll.o ckdll.C
519 ckimage.o
: ckimage.C ckimage.h
$(CVHEADERS
)
520 $(CHARMC
) -o ckimage.o ckimage.C
522 graph.o
: graph.c
$(CVHEADERS
) $(UTILHEADERS
)
523 $(CHARMC
) -c
-o graph.o graph.c
525 RTH.o
: RTH.C RTH.h
$(CVHEADERS
)
526 $(CHARMC
) -o RTH.o RTH.C
528 persist-comm.o
: persist-comm.c
$(CVHEADERS
)
529 $(CHARMC
) -o persist-comm.o persist-comm.c
531 mempool.o
: mempool.c
$(CVHEADERS
)
532 $(CHARMC
) -o mempool.o mempool.c
534 conv-lists.o
: conv-lists.C
$(UTILHEADERS
) $(CVHEADERS
)
535 $(CHARMC
) -o conv-lists.o conv-lists.C
537 crc32.o
: crc32.c crc32.h
538 $(CHARMC
) -optimize
-o crc32.o crc32.c
540 ## Converse load balancers (seed balancers, -balance)
541 $(L
)/libldb-none.o
: cldb.none.c
$(CVHEADERS
)
542 $(CHARMC
) -o
$@ cldb.none.c
544 $(L
)/libldb-rand.o
: cldb.rand.c cldb.h
$(CVHEADERS
)
545 $(CHARMC
) -o
$@ cldb.rand.c
547 $(L
)/libldb-neighbor.o
: cldb.neighbor.c cldb.neighbor.h graph.h
$(CVHEADERS
)
548 $(CHARMC
) -o
$@ cldb.neighbor.c
550 $(L
)/libldb-workstealing.o
: cldb.workstealing.c cldb.workstealing.h graph.h
$(CVHEADERS
)
551 $(CHARMC
) -o
$@ cldb.workstealing.c
553 $(L
)/libldb-spray.o
: cldb.spray.c
$(CVHEADERS
)
554 $(CHARMC
) -o
$@ cldb.spray.c
557 #$(L)/libldb-prioritycentralized.o: cldb.prioritycentralized.c cldb.prioritycentralized.h $(CVHEADERS)
558 # $(CHARMC) -o $@ cldb.prioritycentralized.c
560 #//$(L)/libldb-prioritycentralizedopt.o: cldb.prioritycentralizedopt.c cldb.prioritycentralizedopt.h $(CVHEADERS)
561 #// $(CHARMC) -o $@ cldb.prioritycentralizedopt.c
563 $(L
)/libldb-test.o
: cldb.
test.c
$(CVHEADERS
)
564 $(CHARMC
) -o
$@ cldb.
test.c
566 $(L
)/libldb-bluegene.o
: cldb.bluegene.c
$(CVHEADERS
)
567 $(CHARMC
) -o
$@ cldb.bluegene.c
569 ## Memory allocation libraries (-memory)
570 MEM_DEPS
=memory.c memory-gnu.c memory-gnuold.c converse.h conv-mach.h
$(CVHEADERS
)
571 $(L
)/libmemory-default.o
: $(MEM_DEPS
)
572 $(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_DEFAULT memory.c
574 $(L
)/libmemory-os.o
: $(MEM_DEPS
)
575 $(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_OS memory.c
577 $(L
)/libmemory-os-verbose.o
: memory-verbose.c
$(MEM_DEPS
)
578 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_VERBOSE memory.c || touch
$@
580 $(L
)/libmemory-os-paranoid.o
: memory-paranoid.c
$(MEM_DEPS
)
581 -$(CHARMC
) -o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_PARANOID memory.c || touch
$@
583 $(L
)/libmemory-os-leak.o
: $(MEM_DEPS
)
584 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_LEAK memory.c || touch
$@
586 $(L
)/libmemory-os-isomalloc.o
: memory-isomalloc.c
$(MEM_DEPS
)
587 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch
$@
589 $(L
)/libmemory-os-lock.o
: memory-lock.c
$(MEM_DEPS
)
590 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_LOCK memory.c || touch
$@
592 $(L
)/libmemory-os-charmdebug.o
: memory-charmdebug.c
$(MEM_DEPS
)
593 -$(CHARMC
) -o
$@
-DCMK_MEMORY_BUILD_OS_WRAPPED
-DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch
$@
595 $(L
)/libmemory-os-wrapper.o
: memory-os-wrapper.C
$(MEM_DEPS
)
596 -$(CHARMC
) -o
$@ memory-os-wrapper.C || touch
$@
598 $(L
)/libmemory-hooks-charmdebug.o
: memory-charmdebug.c
$(MEM_DEPS
)
599 -$(CHARMC
) -o
$@
-DCMK_MEMORY_BUILD_GNU_HOOKS
-DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch
$@
601 # If the system doesn't have sbrk, these compilations may fail.
602 # This is OK, but then we can't use "-memory gnu" or friends.
603 $(L
)/libmemory-gnu.o
: $(MEM_DEPS
)
604 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_GNU memory.c || touch
$@
606 $(L
)/libmemory-gnuold.o
: $(MEM_DEPS
)
607 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_GNUOLD memory.c || touch
$@
609 $(L
)/libmemory-verbose.o
: memory-verbose.c
$(MEM_DEPS
)
610 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_VERBOSE memory.c || touch
$@
612 $(L
)/libmemory-paranoid.o
: memory-paranoid.c
$(MEM_DEPS
)
613 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_PARANOID memory.c || touch
$@
615 $(L
)/libmemory-leak.o
: memory-leak.c
$(MEM_DEPS
)
616 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_LEAK memory.c || touch
$@
618 $(L
)/libmemory-cache.o
: memory-cache.c
$(MEM_DEPS
)
619 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_CACHE memory.c || touch
$@
621 $(L
)/libmemory-isomalloc.o
: memory-isomalloc.c
$(MEM_DEPS
)
622 -$(CHARMC
) -I.
-o
$@
-DCMK_MEMORY_BUILD_ISOMALLOC memory.c || touch
$@
624 $(L
)/libmemory-charmdebug.o
: memory-charmdebug.c
$(MEM_DEPS
)
625 -$(CHARMC
) -I.
-optimize
-o
$@
-DCMK_MEMORY_BUILD_CHARMDEBUG memory.c || touch
$@
627 $(L
)/libmemory-charmdebug-slot.o
: memory-charmdebug.c
$(MEM_DEPS
)
628 -$(CHARMC
) -I.
-optimize
-o
$@
-DCMK_MEMORY_BUILD_CHARMDEBUG
-DCMK_SEPARATE_SLOT memory.c || touch
$@
630 $(L
)/libmemory-charmdebug-mmap.o
: memory-charmdebug.c
$(MEM_DEPS
)
631 -$(CHARMC
) -I.
-optimize
-o
$@
-DCMK_MEMORY_BUILD_CHARMDEBUG
-DCPD_USE_MMAP memory.c || touch
$@
633 $(L
)/libmemory-charmdebug-mmap-slot.o
: memory-charmdebug.c
$(MEM_DEPS
)
634 -$(CHARMC
) -I.
-optimize
-o
$@
-DCMK_MEMORY_BUILD_CHARMDEBUG
-DCPD_USE_MMAP
-DCMK_SEPARATE_SLOT memory.c || touch
$@
636 ## Thread libraries (-thread)
638 LIBTHREADSDEPS
= threads.c
$(CVHEADERS
) QUICK_THREADS
640 $(L
)/libthreads-default.o
: $(LIBTHREADSDEPS
)
641 $(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_DEFAULT
=1 -IQuickThreads
-I. threads.c
643 $(L
)/libthreads-default-tls.o
: $(LIBTHREADSDEPS
)
644 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_DEFAULT
=1 -DCMK_THREADS_BUILD_TLS
=1 -IQuickThreads
-I. threads.c
2> /dev
/null || touch
$@
646 $(L
)/libthreads-qt.o
: $(LIBTHREADSDEPS
)
647 $(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_QT
=1 -IQuickThreads threads.c
649 $(L
)/libthreads-qt-tls.o
: $(LIBTHREADSDEPS
)
650 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_QT
=1 -DCMK_THREADS_BUILD_TLS
=1 -IQuickThreads threads.c
2> /dev
/null || touch
$@
652 $(L
)/libthreads-context.o
: $(LIBTHREADSDEPS
)
653 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_CONTEXT
=1 -IQuickThreads threads.c || touch
$@
655 $(L
)/libthreads-context-tls.o
: $(LIBTHREADSDEPS
)
656 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_CONTEXT
=1 -DCMK_THREADS_BUILD_TLS
=1 -IQuickThreads threads.c
2> /dev
/null || touch
$@
658 $(L
)/libthreads-uJcontext.o
: $(LIBTHREADSDEPS
) uJcontext.c
659 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_JCONTEXT
=1 -IQuickThreads
-I. threads.c || touch
$@
661 $(L
)/libthreads-uJcontext-tls.o
: $(LIBTHREADSDEPS
) uJcontext.c
662 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_JCONTEXT
=1 -DCMK_THREADS_BUILD_TLS
=1 -IQuickThreads
-I. threads.c || touch
$@
664 $(L
)/libthreads-pthreads.o
: $(LIBTHREADSDEPS
)
665 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_PTHREADS
=1 -IQuickThreads threads.c || touch
$@
667 $(L
)/libthreads-fibers.o
: $(LIBTHREADSDEPS
)
668 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_FIBERS
=1 -IQuickThreads threads.c
2> /dev
/null || touch
$@
670 $(L
)/libthreads-stackcopy.o
: $(LIBTHREADSDEPS
)
671 -$(CHARMC
) -o
$@
-DCMK_THREADS_BUILD_STACKCOPY
=1 -IQuickThreads threads.c || touch
$@
673 $(L
)/libthreads-memoryalias.o
: $(LIBTHREADSDEPS
)
674 -$(CHARMC
) -o
$@
-DCMK_THREADS_ALIAS_STACK
=1 -DCMK_THREADS_BUILD_DEFAULT
=1 -IQuickThreads threads.c || touch
$@
676 $(L
)/libthreads-qt-memoryalias.o
: $(LIBTHREADSDEPS
)
677 -$(CHARMC
) -o
$@
-DCMK_THREADS_ALIAS_STACK
=1 -DCMK_THREADS_BUILD_QT
=1 -IQuickThreads threads.c || touch
$@
679 $(L
)/libthreads-context-memoryalias.o
: $(LIBTHREADSDEPS
)
680 -$(CHARMC
) -o
$@
-DCMK_THREADS_ALIAS_STACK
=1 -DCMK_THREADS_BUILD_CONTEXT
=1 -IQuickThreads threads.c || touch
$@
682 $(L
)/libthreads-uJcontext-memoryalias.o
: $(LIBTHREADSDEPS
)
683 -$(CHARMC
) -o
$@
-DCMK_THREADS_ALIAS_STACK
=1 -DCMK_THREADS_BUILD_JCONTEXT
=1 -IQuickThreads
-I. threads.c || touch
$@
685 ## Global swapping (-swapglobal)
686 swapglobal-target
: $(L
)/libglobal-swap.o
$(L
)/libglobal-copy.o
$(L
)/loadsym.o
688 $(L
)/libglobal-swap.o
: global-elfgot.C
$(CVHEADERS
)
689 -$(CHARMC
) -c global-elfgot.C
-o
$@ || touch
$@
691 $(L
)/libglobal-copy.o
: global-elfcopy.C
$(CVHEADERS
)
692 -$(CHARMC
) -c global-elfcopy.C
-o
$@ || touch
$@
694 $(L
)/loadsym.o
: loadsym.c
$(CVHEADERS
)
695 -$(CHARMC
) -c loadsym.c
-o
$@ || touch
$@
697 ###############################################################################
701 ###############################################################################
703 CK_LIBS_CORE
=$(L
)/libck.a
705 LIBCK_CORE
=trace-common.o tracec.o tracef.o init.o register.o qd.o ck.o main.o \
706 msgalloc.o ckfutures.o ckIgetControl.o debug-message.o debug-charm.o ckcallback.o \
707 cklocation.o ckarray.o ckreduction.o ckarrayreductionmgr.o \
708 tempo.o waitqd.o LBDatabase.o lbdb.o lbdbf.o charisma.o ckobjQ.o \
709 LBAgent.o LBProfit.o ckcheckpoint.o ckmemcheckpoint.o ckevacuation.o ckmessagelogging.o\
710 LBDBManager.o LBComm.o LBObj.o LBMachineUtil.o CentralPredictor.o \
711 BaseLB.o CentralLB.o HybridBaseLB.o NborBaseLB.o \
712 ckgraph.o LButil.o Refiner.o RefinerApprox.o \
713 RefinerComm.o bitvecset.o ckset.o ckheap.o CommLBHeap.o \
714 NullLB.o LBSimulation.o
$(COMLIB_CORE_OBJS
) modifyScheduler.o \
715 charmProjections.o cktiming.o ckbitvector.o \
716 pathHistory.o controlPoints.o arrayRedistributor.o cp_effects.o trace-controlPoints.o
718 charm-target
: converse
$(L
)/libck.a
$(L
)/libckf.a loadbalancers default_libs comlib_objs
720 CHARMLIBS
: charm
++ CONVLIBS
721 cd libs
; $(MAKE
) charmlibs OPTS
='$(OPTS)'
723 $(L
)/libck.a
: $(LIBCK_CORE
)
724 $(CHARMC
) -o
$@
$(LIBCK_CORE
)
726 ## Charm fortran AMPI
728 CK_FOR_LIBS_CORE
=$(L
)/libckf.a
730 LIBCKF_CORE
=charmf.o charmmod.o
732 $(L
)/libckf.a
: $(LIBCKF_CORE
)
733 -$(CHARMC
) -o
$@
$(LIBCKF_CORE
) || touch
$@
735 charmf.o
: charmf.C
$(CKHEADERS
) charmf.h
736 $(CHARMC
) -c
-I. charmf.C
738 charmmod.o
: charmmod.f90
739 -$(CHARMC
) -c charmmod.f90 || touch
$@
740 -$(CHARMC
) -cpmod ..
/include charm.M
742 ## Tracing libraries (profiling, -tracemode)
743 LIBTRACE_PROJ
=trace-projections.o
744 $(L
)/libtrace-projections.a
: $(LIBTRACE_PROJ
)
745 $(CHARMC
) -o
$@
$(LIBTRACE_PROJ
)
747 LIBTRACE_SUMM
=trace-summary.o
748 $(L
)/libtrace-summary.a
: $(LIBTRACE_SUMM
)
749 $(CHARMC
) -o
$@
$(LIBTRACE_SUMM
)
751 LIBTRACE_UTIL
=trace-utilization.o
752 $(L
)/libtrace-utilization.a
: $(LIBTRACE_UTIL
)
753 $(CHARMC
) -o
$@
$(LIBTRACE_UTIL
)
755 LIBTRACE_SIMPLE
=trace-simple.o
756 $(L
)/libtrace-simple.a
: $(LIBTRACE_SIMPLE
)
757 $(CHARMC
) -o
$@
$(LIBTRACE_SIMPLE
)
759 libtrace-Tau.o
: trace-Tau.C charm
++.h charm.h converse.h conv-config.h \
760 conv-autoconfig.h conv-common.h conv-mach.h conv-mach-opt.h \
761 conv-mach-ifort.h pup_c.h conv-cpm.h conv-cpath.h conv-qd.h \
762 conv-random.h conv-lists.h conv-trace.h persistent.h debug-conv.h pup.h \
763 middle.h middle-conv.h cklists.h ckbitvector.h ckstream.h init.h \
764 ckhashtable.h debug-charm.h CkMarshall.decl.h cksection.h ckcallback.h \
765 conv-ccs.h sockRoutines.h ccs-server.h ckobjQ.h ckreduction.h \
766 CkReduction.decl.h CkArrayReductionMgr.decl.h \
767 ckmemcheckpoint.h CkMemCheckpoint.decl.h readonly.h ckarray.h \
768 cklocation.h LBDatabase.h lbdb.h LBDBManager.h LBObj.h LBOM.h LBComm.h \
769 LBMachineUtil.h lbdb
++.h LBDatabase.decl.h NullLB.decl.h BaseLB.decl.h \
770 CkLocation.decl.h CkArray.decl.h ComlibArrayListener.h ComlibStrategy.h \
771 convcomlibstrategy.h ComlibLearner.h envelope.h envelope-path.h CkFutures.decl.h \
772 charisma.h charisma.decl.h tempo.h tempo.decl.h waitqd.h waitqd.decl.h \
773 sdag.h ckcheckpoint.h CkCheckpoint.decl.h ckevacuation.h \
774 ckarrayreductionmgr.h trace.h trace-bluegene.h trace-simple.h \
775 register.h trace-common.h trace-simpleBOC.h TraceSimple.decl.h \
777 $(CHARMC
) -c
-I.
$(TAU_INCLUDE
) $(TAU_DEFS
) trace-Tau.C
-o libtrace-Tau.o
779 tau_selective.o
: $(TAUROOT
)/utils
/tau_selective.
cpp
780 $(CHARMC
) -I
$(TAUROOT
)/utils
-DTAU_DYNINST
$(TAUROOT
)/utils
/tau_selective.
cpp
782 $(L
)/libtrace-Tau.a
: $(TAU_TRACE_OBJ
) tau_selective.o
783 $(CHARMC
) $(TAU_LIBS
) -o
$@
$(TAU_TRACE_OBJ
) tau_selective.o
$(TAU_TRACE_OBJ
)
785 LIBTRACE_COUNT
=trace-counter.o
786 $(L
)/libtrace-counter.a
: $(LIBTRACE_COUNT
)
787 $(CHARMC
) -o
$@
$(LIBTRACE_COUNT
)
789 LIBTRACE_BG
=trace-bluegene.o
790 $(L
)/libtrace-bluegene.a
:$(LIBTRACE_BG
)
791 $(CHARMC
) -o
$@
$(LIBTRACE_BG
)
793 LIBTRACE_MEMORY
=trace-memory.o
794 $(L
)/libtrace-memory.a
: $(LIBTRACE_MEMORY
)
795 $(CHARMC
) -o
$@
$(LIBTRACE_MEMORY
)
797 LIBTRACE_ALL
=trace-all.o trace-projections.o trace-summary.o trace-simple.o \
798 $(TAU_TRACE_OBJ
) trace-projector.o traceCore.o traceCoreCommon.o charmProjections.o converseProjections.o machineProjections.o trace-memory.o trace-utilization.o
800 $(L
)/libtrace-all.a
: $(LIBTRACE_ALL
)
801 $(CHARMC
) -o
$@
$(LIBTRACE_ALL
)
803 LIBTRACE_PROJECTOR
=trace-projector.o traceCore.o traceCoreCommon.o charmProjections.o converseProjections.o machineProjections.o
804 $(L
)/libtrace-projector.a
: $(LIBTRACE_PROJECTOR
)
805 $(CHARMC
) -o
$@
$(LIBTRACE_PROJECTOR
)
807 LIBTRACE_CONVERSE
=trace-converse.o
808 $(L
)/libtrace-converse.a
: $(LIBTRACE_CONVERSE
)
809 $(CHARMC
) -o
$@
$(LIBTRACE_CONVERSE
)
811 LIBTRACE_FOR
=tracef_f.o
812 $(L
)/libtracef_f.a
: $(LIBTRACE_FOR
)
813 -$(CHARMC
) -o
$@
$(LIBTRACE_FOR
) || touch
$@
815 tracef_f.o
: tracef_f.f90
816 -$(CHARMC
) -o
$@
-c tracef_f.f90
&& $(CHARMC
) -cpmod ..
/include tracemod.M || touch
$@
818 # used for make depends
819 TRACE_OBJS
= trace-projections.o trace-summary.o trace-simple.o \
820 trace-counter.o trace-utilization.o \
821 trace-bluegene.o trace-projector.o trace-converse.o trace-all.o \
825 ###############################################################################
827 # Dynamic Load Balancers
829 ###############################################################################
831 loadbalancers
: $(ALL_LDBS
) $(L
)/libmoduleEveryLB.a
$(L
)/libmoduleCommonLBs.a
833 ######################################################################
835 #Communication Optimization Library
837 ######################################################################
839 STRATEGY_OBJS
= MPIStrategy.o StreamingStrategy.o \
840 DummyStrategy.o NodeMulticast.o ChunkMulticastStrategy.o OneTimeMulticastStrategy.o \
841 EachToManyMulticastStrategy.o ComlibSectionInfo.o \
842 AAPLearner.o ComlibStats.o AAMLearner.o \
843 MsgPacker.o MulticastStrategy.o DirectMulticastStrategy.o \
844 RingMulticastStrategy.o MultiRingMulticast.o\
845 PipeBroadcastStrategy.o MeshStreamingStrategy.o \
846 PrioStreaming.o BroadcastStrategy.o RectMulticastStrategy.o \
847 convcomlibstrategy.o ComlibManager.o ComlibStrategy.o
849 CONVERSE_COM_OBJS
= gridrouter.o hypercuberouter.o treerouter.o petable.o \
850 3dgridrouter.o graphrouter.o hypercubetopology.o \
851 routerstrategy.o convcomlibmanager.o pipebroadcastconverse.o \
852 pipelinestrategy.o prefixrouter.o
854 COMLIB_OBJS
= $(STRATEGY_OBJS
) $(CONVERSE_COM_OBJS
)
856 comlib_objs
: $(L
)/libmodulecomlib.a
$(L
)/libconvcom.a
858 $(L
)/libconvcom.a
: $(COMLIB_OBJS
)
859 $(CHARMC
) -o
$(L
)/libconvcom.a
$(CONVERSE_COM_OBJS
)
861 #for backward compatibility, keep libmodulecommlib.a with double m.
862 $(L
)/libmodulecomlib.a
: $(COMLIB_OBJS
)
863 $(CHARMC
) -o
$(L
)/libmodulecomlib.a
$(COMLIB_OBJS
)
864 cp
-f
$(L
)/libmodulecomlib.a
$(L
)/libmodulecommlib.a
867 ###############################################################################
871 ###############################################################################
873 bigsim
: bigsim-target
877 bigsim-target
: charm
++ $(L
)/libconv-bigsim.a
$(L
)/libconv-bigsim-logs.a
$(L
)/libconv-bluegene-stub.a
$(L
)/libblue-standalone.a METIS
879 $(L
)/libbluegene.a
: BlueGene.C BlueGene.h BlueGene.decl.h BlueGene.def.h
880 $(CHARMC
) -c BlueGene.C
881 $(CHARMC
) -o
$@ BlueGene.o
883 # (Converse) Blue Gene emulator
884 BLUE_HEADERS
= blue_types.h bigsim_timing.h blue_defs.h bigsim_logs.h blue.h blue_impl.h bigsim_network.h bigsim_record.h bigsim_ooc.h bigsim_debug.h shared-alloc.h
885 BLUE_OBJS
= blue.o bigsim_node.o bigsim_proc.o bigsim_init.o bigsim_timing.o bigsim_record.o bigsim_ooc.o shared_alloc.o
886 BIGSIM_IO_OBJS
= bigsim_read.o bigsim_logs.o bigsim_api.o
888 LIBBLUE_OBJS
= $(BLUE_OBJS
) $(BIGSIM_IO_OBJS
) blue_stub.o blue_standalone.o
890 $(L
)/libconv-bigsim.a
: $(BLUE_OBJS
)
891 $(CHARMC
) -o
$@
$(BLUE_OBJS
)
893 $(L
)/libconv-bigsim-logs.a
: $(BIGSIM_IO_OBJS
)
894 $(CHARMC
) -o
$@
$(BIGSIM_IO_OBJS
)
896 $(L
)/libconv-bluegene-stub.a
: blue_stub.o
897 $(CHARMC
) -o
$@ blue_stub.o
899 $(L
)/libblue-standalone.a
: blue_standalone.o
900 $(CHARMC
) -o
$@ blue_standalone.o
902 ###############################################################################
906 ###############################################################################
909 $(NATIVECHARMC
) -language c
-o conv-cpm
-cp ..
/bin
/ conv-cpm.o
911 conv-cpm.o
: conv-cpm.c
$(CVHEADERS
)
912 $(NATIVECHARMC
) conv-cpm.c
914 ###############################################################################
916 # The interface translator
918 ###############################################################################
920 XIHEADERS
=conv-autoconfig.h xi-symbol.h xi-util.h xi-grammar.tab.h
921 CHARMXIOBJ
=xi-main.o xi-symbol.o xi-grammar.tab.o xi-scan.o xi-util.o
922 SDAGOBJ
=sdag-globals.o CSdagConstruct.o CEntry.o
923 SDAGHEADERS
= CToken.h EToken.h CParsedFile.h \
924 sdag-globals.h CEntry.h
926 charmxi
: ..
/bin
/charmxi
928 ..
/bin
/charmxi
: $(CHARMXIOBJ
) $(SDAGOBJ
)
929 $(NATIVECHARMC
) -language c
++ -cp ..
/bin
/ -o charmxi
$(CHARMXIOBJ
) $(SDAGOBJ
)
931 xi-main.o
: xi-main.C
$(XIHEADERS
) $(SDAGHEADERS
)
932 $(NATIVECHARMC
) xi-main.C
934 xi-symbol.o
: xi-symbol.C
$(XIHEADERS
) $(SDAGHEADERS
)
935 $(NATIVECHARMC
) xi-symbol.C
937 xi-util.o
: xi-util.C
$(XIHEADERS
) $(SDAGHEADERS
)
938 $(NATIVECHARMC
) xi-util.C
940 xi-grammar.tab.o
: xi-grammar.tab.C
$(XIHEADERS
) $(SDAGHEADERS
)
941 $(NATIVECHARMC
) xi-grammar.tab.C
943 xi-scan.o
: xi-scan.C
$(XIHEADERS
) $(SDAGHEADERS
)
944 $(NATIVECHARMC
) -I.
-DYY_NEVER_INTERACTIVE xi-scan.C
946 sdag-globals.o
: sdag-globals.C
$(XIHEADERS
) $(SDAGHEADERS
)
947 $(NATIVECHARMC
) -c sdag-globals.C
949 CSdagConstruct.o
: CSdagConstruct.C
$(XIHEADERS
) $(SDAGHEADERS
)
950 $(NATIVECHARMC
) -c CSdagConstruct.C
952 CEntry.o
: CEntry.C
$(XIHEADERS
) $(SDAGHEADERS
)
953 $(NATIVECHARMC
) -c CEntry.C
955 ###############################################################################
959 ###############################################################################
961 $(L
)/libtsm.a
: converse simplemsg.c simplemsg.h
962 $(CHARMC
) -o
$@ simplemsg.c
964 $(L
)/libsm.a
: converse sm.c sm.h
967 ###############################################################################
971 ###############################################################################
973 PVMC
=pvmc_buf.o pvmc_comm.o pvmc_conv.o pvmc_main.o pvmc_pack.o pvmc_groups.o
975 $(L
)/libpvmc.a
: $(PVMC
)
976 $(CHARMC
) -o
$@
$(PVMC
)
978 pvmc_buf.o
: pvmc_buf.c pvmc.h pvm3.h converse.h
979 $(CHARMC
) -o
$@ pvmc_buf.c
981 pvmc_conv.o
: pvmc_conv.c pvmc.h pvm3.h converse.h
982 $(CHARMC
) -o
$@ pvmc_conv.c
984 pvmc_pack.o
: pvmc_pack.c pvmc.h pvm3.h converse.h
985 $(CHARMC
) -o
$@ pvmc_pack.c
987 pvmc_comm.o
: pvmc_comm.c pvmc.h pvm3.h converse.h
988 $(CHARMC
) -o
$@ pvmc_comm.c
990 pvmc_groups.o
: pvmc_groups.c pvmc.h pvm3.h converse.h
991 $(CHARMC
) -o
$@ pvmc_groups.c
993 pvmc_main.o
: pvmc_main.c pvmc.h pvm3.h converse.h
994 $(CHARMC
) -o
$@ pvmc_main.c
996 $(L
)/libf90charm.a
: charmxi f90main.ci f90main.h f90main.C futil.f90
998 $(CHARMC
) -c
-DAMPI_FORTRAN
=1 f90main.C
999 -$(CHARMC
) -c futil.f90
1000 -$(CHARMC
) -o
$@ f90main.o futil.o
1002 ###############################################################################
1006 ###############################################################################
1009 @
test ! -d
$(DESTDIR
)/include && mkdir
-p
$(DESTDIR
)/include || true
1010 @
test ! -d
$(DESTDIR
)/lib
&& mkdir
-p
$(DESTDIR
)/lib || true
1011 @
test ! -d
$(DESTDIR
)/lib_so
&& mkdir
-p
$(DESTDIR
)/lib_so || true
1012 @
test ! -d
$(DESTDIR
)/bin
&& mkdir
-p
$(DESTDIR
)/bin || true
1013 cp
-f ..
/include/* $(DESTDIR
)/include
1014 cp
-f ..
/lib
/* $(DESTDIR
)/lib
1015 cp
-f ..
/lib_so
/* $(DESTDIR
)/lib_so
1016 # cp -f ../bin/* $(DESTDIR)/bin
1017 for f in ..
/bin
/*; do if
test -f
$$f; then cp
-f
$$f $(DESTDIR
)/bin
; fi
; done
1021 rm -f conv-autoconfig.h config.cache
1022 rm -f QuickThreads
/libqt.a
1023 rm -f charmxi conv-cpm
1024 rm -f TAGS basics cmk_extras core
1030 if
[ -d charmrun
] ; then
( cd charmrun
; make
clean ) ; fi
1031 -( cd doc
&& $(MAKE
) clean )
1032 ( cd libs
; $(MAKE
) clean )
1033 ( cd ..
/examples
&& $(MAKE
) clean )
1034 ( cd ..
/tests
&& $(MAKE
) clean )
1044 mv Makefile .Makefile
1045 mv Make.depends .Make.depends
1046 rm -rf
[a-z
]* [A-Z
]*
1047 mv .Make.depends Make.depends
1048 rm -rf .
[a-z
]* .
[A-Z
]*
1051 config
: configure.in
1052 autoconf
&& autoheader
1055 echo
"Creating " $(CIDEPENDFILE
) " ...";
1056 if
[ -f
$(CIDEPENDFILE
) ]; then \
1057 /bin
/cp
-f
$(CIDEPENDFILE
) $(CIDEPENDFILE
).old
; \
1059 echo
'#generated by make cidepends' > $(CIDEPENDFILE
); \
1060 for cifile in
$(wildcard *.ci
); do \
1061 echo
"checking generated modules for $$cifile" ; \
1062 $(CHARMXI
) -M
$$cifile | sed
'/\.stamp:/a \\t $$(CHARMC) -intrinsic $$< && touch $$@' >> $(CIDEPENDFILE
) ; \
1067 echo
"Creating " $(DEPENDFILE
) " ...";
1068 if
[ -f
$(DEPENDFILE
) ]; then \
1069 /bin
/cp
-f
$(DEPENDFILE
) $(DEPENDFILE
).old
; \
1071 echo
'#generated by make depends' > $(DEPENDFILE
); \
1072 touch metis.h scotch.h
; \
1074 for i in
$(LIBCONV_CORE
) $(TRACE_OBJS
) $(LIBCK_CORE
) $(ALL_LB_OBJS
) $(LIBBLUE_OBJS
) $(COMLIB_OBJS
) ; do \
1075 processed
='false'; \
1076 for f in
$$processFiles; do \
1077 if
test $$i = $$f ; then \
1078 processed
=true
; break
; \
1081 test $$processed = 'true' && continue
; \
1082 processFiles
="$$processFiles $$i"; \
1083 SRCFILE
=`basename $$i .o`.C
; \
1084 [ ! -f
$$SRCFILE ] && SRCFILE
=`basename $$i .o`.c
; \
1085 echo
"checking dependencies for $$SRCFILE" ; \
1086 if g
++ -MM
-Wno-deprecated
-I.
-I
$(INC
) $$SRCFILE >> $(DEPENDFILE
); then echo
' $$(CHARMC) -c -I. '$$SRCFILE >> $(DEPENDFILE
) ; else echo
'' ; echo
"Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit
; fi
; \
1087 echo
'' >> $(DEPENDFILE
) ; \
1089 rm -f metis.h scotch.h
1092 dependsCaseSensitive
: cidepends
1094 @echo
"Creating " $(DEPENDFILE
) " ...";
1095 if
[ -f
$(DEPENDFILE
) ]; then \
1096 /bin
/cp
-f
$(DEPENDFILE
) $(DEPENDFILE
).old
; \
1098 echo
'#generated by make depends' > $(DEPENDFILE
); \
1099 touch metis.h scotch.h
; \
1101 for i in
$(LIBCONV_CORE
) $(TRACE_OBJS
) $(LIBCK_CORE
) $(ALL_LB_OBJS
) $(LIBBLUE_OBJS
) $(COMLIB_OBJS
); do \
1102 processed
='false'; \
1103 for f in
$$processFiles; do \
1104 if
test $$i = $$f ; then \
1105 processed
=true
; break
; \
1108 test $$processed = 'true' && continue
; \
1109 processFiles
="$$processFiles $$i"; \
1110 SRCFILE
=`basename $$i .o`.C
; \
1111 SRCDIR
=`dirname $$i` ; \
1112 found
=`/usr/bin/find $$SRCDIR -depth 1 -name $$SRCFILE`; \
1113 [ ! $$found ] && SRCFILE
=`basename $$i .o`.c
; \
1114 echo
"checking dependencies for $$SRCFILE" ; \
1115 if g
++ -MM
-Wno-deprecated
-I.
-I
$(INC
) $$SRCFILE >> $(DEPENDFILE
); then echo
' $$(CHARMC) -c -I. '$$SRCFILE >> $(DEPENDFILE
) ; else echo
'' ; echo
"Compilation of '$$SRCFILE' failed, please fix it first!!!!" ; exit
; fi
; \
1116 echo
'' >> $(DEPENDFILE
) ; \
1118 rm -f metis.h scotch.h