Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

- Update SBT for new project layout

- Using SBT 0.75.RC0 now
- Add SBT launcher with liftsh wrapper for convenience
  • Loading branch information...
commit dee425060707c9a44a56c1cd8acfa5fd1fd6fd7e 1 parent d32a017
@indrajitr indrajitr authored
View
56 .gitignore
@@ -0,0 +1,56 @@
+# use glob syntax.
+syntax: glob
+*.ser
+*.class
+*~
+*.bak
+*.off
+*.old
+.DS_Store
+
+# logs
+derby.log
+
+# eclipse conf file
+.settings
+.classpath
+.project
+.manager
+.externalToolBuilders
+
+# ensime/emacs conf files
+.ensime
+.scala_dependencies
+
+# building
+target
+null
+tmp*
+dist
+test-output
+
+# sbt
+target
+lib_managed
+src_managed
+project/boot
+project/plugins/project
+
+# other scm
+.svn
+.CVS
+.hg*
+
+# switch to regexp syntax.
+# syntax: regexp
+# ^\.pc/
+
+# IntelliJ
+*.iml
+*.ipr
+*.iws
+.idea
+
+# Pax Runner (for easy OSGi launching)
+runner
+
View
11 liftsh
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+# Load custom liftsh config
+if test -f ~/.liftsh.config; then
+ . ~/.liftsh.config
+fi
+
+# Default option if nothing is specified
+DEFAULT_OPTS="-Dfile.encoding=UTF-8 -Xss8M -Xmx1G -noverify -XX:+CMSClassUnloadingEnabled -XX:+UseConcMarkSweepGC -XX:MaxPermSize=512M -Dfile.encoding=utf8 -Dsbt.intransitive=true"
+
+exec java ${LIFTSH_OPTS:-${DEFAULT_OPTS}} -jar `dirname $0`/project/sbt-launch-0.7.5.RC0.jar "$@"
View
9 liftsh.cmd
@@ -0,0 +1,9 @@
+@echo off
+
+set DEFAULT_OPTS="-Dfile.encoding=UTF-8 -Xss8M -Xmx1G -noverify -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M -Dfile.encoding=utf8 -Dsbt.intransitive=true"
+
+if "%LIFTSH_OPTS%"=="" (
+ set LIFTSH_OPTS=DEFAULT_OPTS
+)
+
+java "%LIFTSH_OPTS%" -jar "%~dp0\project\sbt-launch-0.7.5.RC0.jar" %*
View
7 project/build.properties
@@ -0,0 +1,7 @@
+#Project properties
+project.organization=net.liftweb
+project.name=lift-modules
+sbt.version=0.7.5.RC0
+project.version=2.3-SNAPSHOT
+build.scala.versions=2.8.1 2.8.0
+project.initialize=false
View
102 project/build/LiftModulesProject.scala
@@ -0,0 +1,102 @@
+/*
+ * Copyright 2010-2011 WorldWide Conferencing, LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import net.liftweb.sbt._
+import sbt._
+
+
+class LiftModulesProject(info: ProjectInfo) extends ParentProject(info) with LiftParentProject {
+
+ // TODO: consider cross-lift build, for now set it to current project version
+ val liftVersion = version.toString
+
+ object LiftDependencies {
+ // Lift dependencies
+ lazy val lift_common = "net.liftweb" %% "lift-common" % liftVersion
+ lazy val lift_actor = "net.liftweb" %% "lift-actor" % liftVersion
+ lazy val lift_json = "net.liftweb" %% "lift-jason" % liftVersion
+ lazy val lift_util = "net.liftweb" %% "lift-util" % liftVersion
+ lazy val lift_webkit = "net.liftweb" %% "lift-webkit" % liftVersion
+ lazy val lift_db = "net.liftweb" %% "lift-db" % liftVersion
+ lazy val lift_mapper = "net.liftweb" %% "lift-mapper" % liftVersion
+ }
+
+ import CompileScope._
+ import ProvidedScope._
+ import LiftDependencies._
+
+
+ // Modules projects
+ // ----------------
+ lazy val amqp = modulesProject("amqp", lift_actor, amqp_client)()
+ lazy val facebook = modulesProject("facebook", lift_webkit)()
+ lazy val imaging = modulesProject("imaging", lift_util, sanselan)()
+ lazy val jta = modulesProject("jta", lift_util, scalajpa, persistence_api, transaction_api,
+ atomikos_api, atomikos_jta, atomikos_txn, atomikos_util, hibernate_em)()
+ lazy val machine = modulesProject("machine", lift_mapper)()
+ lazy val oauth = modulesProject("oauth", lift_webkit)()
+ lazy val oauth_mapper = modulesProject("oauth-mapper", lift_mapper)(oauth)
+ lazy val openid = modulesProject("openid", lift_mapper, openid4java_consumer)()
+ // lazy val osgi
+ lazy val paypal = modulesProject("paypal", lift_webkit, commons_httpclient)()
+ lazy val scalate = modulesProject("scalate", lift_webkit, scalate_core, servlet_api)()
+ lazy val textile = modulesProject("textile", lift_util)()
+ lazy val widgets = modulesProject("widgets", lift_webkit, logback, log4j)()
+ lazy val xmpp = modulesProject("xmpp", lift_actor, smackx)()
+
+
+ // Modules apidocs
+ // ---------------
+ lazy val modules_doc = project(".", "lift-modules-doc", new DefaultProject(_) with LiftDefaultDocProject)
+
+
+ private def modulesProject(path: String, libs: ModuleID*)(deps: Project*) =
+ project(path, "lift-" + path, new ModulesProject(_, libs: _*), deps: _*)
+
+
+ // Default base
+ // ------------
+ class ModulesProject(info: ProjectInfo, libs: ModuleID*) extends DefaultProject(info) with LiftDefaultProject {
+
+ override def libraryDependencies = super.libraryDependencies ++ libs
+
+ // TODO: Remove these and resort to LiftDefaultProject settings
+ override def compileOptions = Seq("-Xwarninit", "-encoding", "utf8").map(CompileOption)
+
+ // System property hack for derby.log, webapptests
+ override def testAction =
+ super.testAction dependsOn
+ task {
+ System.setProperty("derby.stream.error.file", (outputPath / "derby.log").absString)
+ System.setProperty("net.liftweb.webapptest.src.test.webapp", (testSourcePath / "webapp").absString)
+ None
+ }
+
+ // FIXME: breaks with SBT
+ override def testOptions =
+ ExcludeTests(
+ // Core tests
+ "net.liftweb.util.ActorPingUnit" :: "net.liftweb.util.ActorPingSpec" ::
+ // Web tests
+ "net.liftweb.webapptest.OneShot" :: "net.liftweb.webapptest.ToHeadUsages" :: "net.liftweb.http.SnippetSpec" ::
+ // Persistence tests
+ "net.liftweb.mapper.MapperSpecs" :: "net.liftweb.squerylrecord.SquerylRecordSpecs" ::
+ // LDAP
+ "net.liftweb.ldap.LdapSpecs" :: Nil) ::
+ super.testOptions.toList
+ }
+
+}
View
9 project/plugins/Plugins.scala
@@ -0,0 +1,9 @@
+import sbt._
+class Plugins(info: ProjectInfo) extends PluginDefinition(info) {
+
+ // Add ScalaToolsSnapshots
+ lazy val snapshots = ScalaToolsSnapshots
+
+ // Add plugin
+ lazy val a = "net.liftweb" % "lift-sbt" % "2.3-SNAPSHOT"
+}
View
BIN  project/sbt-launch-0.7.5.RC0.jar
Binary file not shown
Please sign in to comment.
Something went wrong with that request. Please try again.