Cleaned up build file

This commit is contained in:
Jonas Bonér 2010-03-20 10:54:52 +01:00
parent 008506537d
commit f187f68720

View file

@ -7,11 +7,9 @@
Akka implements a unique hybrid of:
* Actors , which gives you:
* Simple and high-level abstractions for concurrency and parallelism.
* Asynchronous, non-blocking and highly performant event-driven programming
model.
* Very lightweight event-driven processes (create ~6.5 million actors on
4 G RAM).
* Simple and high-level abstractions for concurrency and parallelism.
* Asynchronous, non-blocking and highly performant event-driven programming model.
* Very lightweight event-driven processes (create ~6.5 million actors on 4 G RAM).
* Supervision hierarchies with let-it-crash semantics. For writing highly
fault-tolerant systems that never stop, systems that self-heal.
* Software Transactional Memory (STM). (Distributed transactions coming soon).
@ -22,14 +20,16 @@
* Cluster membership management.
Akka also has a set of add-on modules:
* Persistence: A set of pluggable back-end storage modules that works in sync
with the STM.
* Cassandra distributed and highly scalable database.
* MongoDB document database.
* Redis data structures database (upcoming)
* Persistence: A set of pluggable back-end storage modules that works in sync with the STM.
* Cassandra distributed and highly scalable database.
* MongoDB document database.
* Redis data structures database (upcoming)
* Camel: Expose Actors as Camel endpoints.
* REST (JAX-RS): Expose actors as REST services.
* Comet: Expose actors as Comet services.
* Security: Digest and Kerberos based security.
* Spring: Spring integration
* Guice: Guice integration
* Microkernel: Run Akka as a stand-alone kernel.
-------------------------------------------------------------------------------*/
@ -49,7 +49,8 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
// ------------------------------------------------------------
lazy val akkaHome = {
val home = System.getenv("AKKA_HOME")
if (home == null) throw new Error("You need to set the $AKKA_HOME environment variable to the root of the Akka distribution")
if (home == null) throw new Error(
"You need to set the $AKKA_HOME environment variable to the root of the Akka distribution")
home
}
lazy val deployPath = Path.fromFile(new java.io.File(akkaHome + "/deploy"))
@ -87,7 +88,8 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
lazy val akka_cluster = project("akka-cluster", "akka-cluster", new AkkaClusterParentProject(_))
lazy val akka_spring = project("akka-spring", "akka-spring", new AkkaSpringProject(_), akka_core)
lazy val akka_kernel = project("akka-kernel", "akka-kernel", new AkkaKernelProject(_),
akka_core, akka_rest, akka_spring, akka_persistence, akka_cluster, akka_amqp, akka_security, akka_comet, akka_patterns)
akka_core, akka_rest, akka_spring, akka_camel, akka_persistence,
akka_cluster, akka_amqp, akka_security, akka_comet, akka_patterns)
// functional tests in java
lazy val akka_fun_test = project("akka-fun-test-java", "akka-fun-test-java", new AkkaFunTestProject(_), akka_kernel)
@ -268,10 +270,14 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
}
class AkkaPersistenceParentProject(info: ProjectInfo) extends ParentProject(info) {
lazy val akka_persistence_common = project("akka-persistence-common", "akka-persistence-common", new AkkaPersistenceCommonProject(_), akka_core)
lazy val akka_persistence_redis = project("akka-persistence-redis", "akka-persistence-redis", new AkkaRedisProject(_), akka_persistence_common)
lazy val akka_persistence_mongo = project("akka-persistence-mongo", "akka-persistence-mongo", new AkkaMongoProject(_), akka_persistence_common)
lazy val akka_persistence_cassandra = project("akka-persistence-cassandra", "akka-persistence-cassandra", new AkkaCassandraProject(_), akka_persistence_common)
lazy val akka_persistence_common = project("akka-persistence-common", "akka-persistence-common",
new AkkaPersistenceCommonProject(_), akka_core)
lazy val akka_persistence_redis = project("akka-persistence-redis", "akka-persistence-redis",
new AkkaRedisProject(_), akka_persistence_common)
lazy val akka_persistence_mongo = project("akka-persistence-mongo", "akka-persistence-mongo",
new AkkaMongoProject(_), akka_persistence_common)
lazy val akka_persistence_cassandra = project("akka-persistence-cassandra", "akka-persistence-cassandra",
new AkkaCassandraProject(_), akka_persistence_common)
}
class AkkaJgroupsProject(info: ProjectInfo) extends DefaultProject(info) {
@ -286,8 +292,14 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
}
class AkkaClusterParentProject(info: ProjectInfo) extends ParentProject(info) {
lazy val akka_cluster_jgroups = project("akka-cluster-jgroups", "akka-cluster-jgroups", new AkkaJgroupsProject(_), akka_core)
lazy val akka_cluster_shoal = project("akka-cluster-shoal", "akka-cluster-shoal", new AkkaShoalProject(_), akka_core)
lazy val akka_cluster_jgroups = project("akka-cluster-jgroups", "akka-cluster-jgroups",
new AkkaJgroupsProject(_), akka_core)
lazy val akka_cluster_shoal = project("akka-cluster-shoal", "akka-cluster-shoal",
new AkkaShoalProject(_), akka_core)
}
class AkkaKernelProject(info: ProjectInfo) extends DefaultProject(info) {
lazy val dist = deployTask(info, distPath) dependsOn(`package`) describedAs("Deploying")
}
class AkkaSpringProject(info: ProjectInfo) extends DefaultProject(info) {
@ -299,10 +311,6 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
lazy val dist = deployTask(info, distPath) dependsOn(`package`) describedAs("Deploying")
}
class AkkaKernelProject(info: ProjectInfo) extends DefaultProject(info) {
lazy val dist = deployTask(info, distPath) dependsOn(`package`) describedAs("Deploying")
}
// examples
class AkkaFunTestProject(info: ProjectInfo) extends DefaultProject(info) {
val protobuf = "com.google.protobuf" % "protobuf-java" % "2.2.0"
@ -352,12 +360,18 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
}
class AkkaSamplesParentProject(info: ProjectInfo) extends ParentProject(info) {
lazy val akka_sample_chat = project("akka-sample-chat", "akka-sample-chat", new AkkaSampleChatProject(_), akka_kernel)
lazy val akka_sample_lift = project("akka-sample-lift", "akka-sample-lift", new AkkaSampleLiftProject(_), akka_kernel)
lazy val akka_sample_rest_java = project("akka-sample-rest-java", "akka-sample-rest-java", new AkkaSampleRestJavaProject(_), akka_kernel)
lazy val akka_sample_rest_scala = project("akka-sample-rest-scala", "akka-sample-rest-scala", new AkkaSampleRestScalaProject(_), akka_kernel)
lazy val akka_sample_camel = project("akka-sample-camel", "akka-sample-camel", new AkkaSampleCamelProject(_), akka_kernel)
lazy val akka_sample_security = project("akka-sample-security", "akka-sample-security", new AkkaSampleSecurityProject(_), akka_kernel)
lazy val akka_sample_chat = project("akka-sample-chat", "akka-sample-chat",
new AkkaSampleChatProject(_), akka_kernel)
lazy val akka_sample_lift = project("akka-sample-lift", "akka-sample-lift",
new AkkaSampleLiftProject(_), akka_kernel)
lazy val akka_sample_rest_java = project("akka-sample-rest-java", "akka-sample-rest-java",
new AkkaSampleRestJavaProject(_), akka_kernel)
lazy val akka_sample_rest_scala = project("akka-sample-rest-scala", "akka-sample-rest-scala",
new AkkaSampleRestScalaProject(_), akka_kernel)
lazy val akka_sample_camel = project("akka-sample-camel", "akka-sample-camel",
new AkkaSampleCamelProject(_), akka_kernel)
lazy val akka_sample_security = project("akka-sample-security", "akka-sample-security",
new AkkaSampleSecurityProject(_), akka_kernel)
}
// ------------------------------------------------------------
@ -385,7 +399,8 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) {
def deployTask(info: ProjectInfo, toDir: Path) = task {
val projectPath = info.projectPath.toString
val moduleName = projectPath.substring(projectPath.lastIndexOf(System.getProperty("file.separator")) + 1, projectPath.length)
val moduleName = projectPath.substring(
projectPath.lastIndexOf(System.getProperty("file.separator")) + 1, projectPath.length)
// FIXME need to find out a way to grab these paths from the sbt system
val JAR_FILE_NAME = moduleName + "_%s-%s.jar".format(defScalaVersion.value, version)
val JAR_FILE_PATH = projectPath + "/target/scala_%s/".format(defScalaVersion.value) + JAR_FILE_NAME