Added module "EveryLB", which is a convenient way to link in
authorOrion Lawlor <olawlor@acm.org>
Fri, 7 Dec 2001 19:07:11 +0000 (19:07 +0000)
committerOrion Lawlor <olawlor@acm.org>
Fri, 7 Dec 2001 19:07:11 +0000 (19:07 +0000)
all existing load balancers.

src/ck-ldb/EveryLB.C [new file with mode: 0644]
src/ck-ldb/EveryLB.ci [new file with mode: 0644]
src/ck-ldb/Makefile_lb.sh

diff --git a/src/ck-ldb/EveryLB.C b/src/ck-ldb/EveryLB.C
new file mode 100644 (file)
index 0000000..fd5dd0b
--- /dev/null
@@ -0,0 +1,19 @@
+/*
+ Startup routine for use when you include all the load balancers.
+*/
+#include <charm++.h>
+#include <LBDatabase.h>
+#include "EveryLB.decl.h"
+
+static void CreateNoLB(void)
+{
+       /*empty-- let the user create the load balancer*/
+}
+
+void initEveryLB(void) {
+#if CMK_LBDB_ON
+  LBSetDefaultCreate(CreateNoLB);
+#endif
+}
+
+#include "EveryLB.def.h"
diff --git a/src/ck-ldb/EveryLB.ci b/src/ck-ldb/EveryLB.ci
new file mode 100644 (file)
index 0000000..85c4e38
--- /dev/null
@@ -0,0 +1,14 @@
+module EveryLB {
+   extern module RandCentLB;
+   extern module RecBisectBfLB;
+   extern module MetisLB;
+   extern module RefineLB;
+   extern module CommLB;
+   extern module Comm1LB;
+   extern module HeapCentLB;
+   extern module NeighborLB;
+   extern module WSLB;
+   extern module GreedyRefLB;
+   extern module RandRefLB;
+   initcall void initEveryLB(void);
+};
index e86d73083859d3ab5bf4b6681f3a0ad9a173895c..bf755ff1abeebc5757c7b6d9f1b4bfe30e24d819 100755 (executable)
@@ -30,3 +30,30 @@ $bal.o: $bal.C $bal.decl.h \$(CKHEADERS)
 
 EOB
 done
+
+rm EveryLB.ci
+echo "module EveryLB {" >> EveryLB.ci
+for bal in $LOADBALANCERS
+do
+       echo "   extern module $bal;" >> EveryLB.ci
+done
+echo "   initcall void initEveryLB(void);" >>EveryLB.ci
+echo "};" >> EveryLB.ci
+
+echo "LB_OBJ=EveryLB.o \\" >>$out
+for bal in $LOADBALANCERS
+do
+       echo "    $bal.o \\" >>$out
+done
+cat >> $out <<EOB
+
+EveryLB.o: EveryLB.C EveryLB.decl.h
+       \$(CHARMC) -c EveryLB.C
+
+EveryLB.decl.h: EveryLB.ci
+       \$(CHARMC) EveryLB.ci
+
+\$(L)/libmoduleEveryLB.a: \$(LB_OBJ)
+       \$(CHARMC) -o \$(L)/libmoduleEveryLB.a \$(LB_OBJ)
+
+EOB