SRCS = glob(['src/main/java/**/*.java']) RSRC = glob(['src/main/resources/**/*']) DEPS = [ '//lib:commons-lang', '//lib:grappa', '//lib:gson', '//lib:guava', '//lib:joda-time', '//lib:jsr305', '//lib:pegdown', '//lib:prettify', '//lib/jgit:jgit', '//lib/jgit:jgit-servlet', '//lib/slf4j:slf4j-api', '//lib/soy:soy', ] DEPS_ALL = DEPS + [ '//lib/jgit:jgit-archive', '//lib/guice:guice', ] java_library( name = 'servlet', srcs = SRCS, resources = RSRC, deps = DEPS_ALL, provided_deps = ['//lib:servlet-api_2_5'], visibility = ['PUBLIC'], ) java_test( name = 'servlet_tests', srcs = glob(['src/test/java/**/*.java']), deps = DEPS_ALL + [ ':servlet', # Gitiles is designed to compile against the Servlet API v2.5. '//lib:servlet-api_2_5', '//lib/jgit:junit', '//lib/junit:junit', ], visibility = ['//:classpath'], ) genrule( name = 'static-resources', cmd = 'mkdir $TMP/+static' + ';cd $TMP/+static' + ';cp -r $SRCDIR/src/main/resources/com/google/gitiles/static/* .' + ';cd $TMP' + ';zip -qr $OUT *', srcs = glob(['src/main/resources/com/google/gitiles/static/**/*']), out = 'static-resources.zip', visibility = ['PUBLIC'], ) java_sources( name = 'src', srcs = SRCS + RSRC, visibility = ['PUBLIC'], ) java_doc( name = 'javadoc', title = 'Gitiles API Documentation', pkg = 'com.google.gitiles', paths = ['gitiles-servlet/src/main/java'], srcs = SRCS, deps = DEPS + [ '//lib/guice:guice_library', '//lib/guice:guice-assistedinject', '//lib/guice:javax-inject', '//lib/jgit:jgit-archive_library', '//lib:servlet-api_2_5', ], visibility = ['PUBLIC'], )