build.gradle 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. apply plugin: 'base'
  2. allprojects {
  3. version = '3.1.0.CI-SNAPSHOT'
  4. releaseBuild = version.endsWith('RELEASE')
  5. snapshotBuild = version.endsWith('SNAPSHOT')
  6. group = 'org.springframework.security'
  7. repositories {
  8. mavenRepo name:'Local', urls: "file://" + System.properties['user.home'] + "/.m2/repository"
  9. mavenCentral()
  10. mavenRepo name: 'SpringSource Milestone Repo', urls: 'http://repository.springsource.com/maven/bundles/milestone'
  11. mavenRepo name: 'SpringSource Maven Snapshot Repo', urls: 'http://maven.springframework.org/snapshot/'
  12. mavenRepo name: 'SpringSource Enterprise Release', urls: 'http://repository.springsource.com/maven/bundles/release'
  13. mavenRepo name: 'SpringSource Enterprise External', urls: 'http://repository.springsource.com/maven/bundles/external'
  14. // mavenRepo(name: 'Spock Snapshots', urls: 'http://m2repo.spockframework.org/snapshots')
  15. }
  16. }
  17. // Set up different subproject lists for individual configuration
  18. javaProjects = subprojects.findAll { project -> project.name != 'docs' && project.name != 'faq' && project.name != 'manual' }
  19. sampleProjects = subprojects.findAll { project -> project.name.startsWith('spring-security-samples') }
  20. itestProjects = subprojects.findAll { project -> project.name.startsWith('itest') }
  21. coreModuleProjects = javaProjects - sampleProjects - itestProjects
  22. aspectjProjects = [project(':spring-security-aspects'), project(':spring-security-samples-aspectj')]
  23. configure(javaProjects) {
  24. apply from: "$rootDir/gradle/javaprojects.gradle"
  25. }
  26. configure(coreModuleProjects) {
  27. apply from: "$rootDir/gradle/bundlor.gradle"
  28. apply from: "$rootDir/gradle/maven-deployment.gradle"
  29. apply from: "$rootDir/gradle/emma.gradle"
  30. // Gives better names in structure101 jar diagram
  31. sourceSets.main.classesDir = new File(buildDir, "classes/" + project.name.substring("spring-security".length() + 1))
  32. }
  33. configure (aspectjProjects) {
  34. apply from: "$rootDir/gradle/aspectj.gradle"
  35. }
  36. apply from: "$rootDir/gradle/dist.gradle"
  37. configure(javaProjects) {
  38. apply plugin: 'idea'
  39. apply plugin: 'eclipse'
  40. ideaModule {
  41. downloadJavadoc=false
  42. excludeDirs.add(buildDir)
  43. gradleCacheVariable = 'GRADLE_CACHE'
  44. outputDir = "$rootProject.projectDir/intellij/out" as File
  45. testOutputDir = "$rootProject.projectDir/intellij/testOut" as File
  46. }
  47. }
  48. apply plugin: 'idea'
  49. ideaModule {
  50. excludeDirs += file('.gradle')
  51. excludeDirs += file('buildSrc/build')
  52. excludeDirs += file('buildSrc/.gradle')
  53. }
  54. ideaProject {
  55. javaVersion = '1.6'
  56. subprojects = javaProjects
  57. withXml { node ->
  58. // Use git
  59. def vcsConfig = node.component.find { it.'@name' == 'VcsDirectoryMappings' }
  60. vcsConfig.mapping[0].'@vcs' = 'Git'
  61. }
  62. }
  63. task wrapper(type: Wrapper) {
  64. gradleVersion = '0.9-rc-1'
  65. jarPath = 'gradle/wrapper'
  66. }