1 suite = {
   2   "mxversion" : "5.6.16",
   3   "name" : "jvmci",
   4   "url" : "http://openjdk.java.net/projects/graal",
   5   "developer" : {
   6     "name" : "Truffle and Graal developers",
   7     "email" : "graal-dev@openjdk.java.net",
   8     "organization" : "Graal",
   9     "organizationUrl" : "http://openjdk.java.net/projects/graal",
  10   },
  11   "repositories" : {
  12     "lafo-snapshots" : {
  13       "url" : "https://curio.ssw.jku.at/nexus/content/repositories/snapshots",
  14       "licenses" : ["GPLv2-CPE", "UPL"]
  15     },
  16   },
  17 
  18   "licenses" : {
  19     "UPL" : {
  20       "name" : "Universal Permissive License, Version 1.0",
  21       "url" : "http://opensource.org/licenses/UPL",
  22     }
  23   },
  24 
  25   "defaultLicense" : "GPLv2-CPE",
  26 
  27   # This puts mx/ as a sibling of the JDK build configuration directories
  28   # (e.g., macosx-x86_64-normal-server-release).
  29   "outputRoot" : "../build/mx/hotspot",
  30 
  31     # ------------- Libraries -------------
  32 
  33   "libraries" : {
  34 
  35     "TESTNG" : {
  36       "urls" : ["http://central.maven.org/maven2/org/testng/testng/6.9.10/testng-6.9.10.jar"],
  37       "sha1" : "6feb3e964aeb7097aff30c372aac3ec0f8d87ede",
  38     },
  39 
  40     # Stubs for classes introduced in JDK9 that allow compilation with a JDK8 javac and Eclipse.
  41     # The "path" and "sha1" attributes are added when mx_jvmci is loaded
  42     # (see mx_jvmci._update_JDK9_STUBS_library()).
  43     "JDK9_STUBS" : {
  44         "license" : "GPLv2-CPE",
  45      },
  46   },
  47 
  48   "projects" : {
  49 
  50     # ------------- JVMCI:Service -------------
  51 
  52     "jdk.vm.ci.services" : {
  53       "subDir" : "src/jdk.vm.ci/share/classes",
  54       "sourceDirs" : ["src"],
  55       "javaCompliance" : "1.8",
  56       "workingSets" : "API,JVMCI",
  57     },
  58 
  59     # ------------- JVMCI:API -------------
  60 
  61     "jdk.vm.ci.common" : {
  62       "subDir" : "src/jdk.vm.ci/share/classes",
  63       "sourceDirs" : ["src"],
  64       "checkstyle" : "jdk.vm.ci.services",
  65       "javaCompliance" : "1.8",
  66       "workingSets" : "API,JVMCI",
  67     },
  68 
  69     "jdk.vm.ci.meta" : {
  70       "subDir" : "src/jdk.vm.ci/share/classes",
  71       "sourceDirs" : ["src"],
  72       "checkstyle" : "jdk.vm.ci.services",
  73       "javaCompliance" : "1.8",
  74       "workingSets" : "API,JVMCI",
  75     },
  76 
  77     "jdk.vm.ci.code" : {
  78       "subDir" : "src/jdk.vm.ci/share/classes",
  79       "sourceDirs" : ["src"],
  80       "dependencies" : ["jdk.vm.ci.meta"],
  81       "checkstyle" : "jdk.vm.ci.services",
  82       "javaCompliance" : "1.8",
  83       "workingSets" : "API,JVMCI",
  84     },
  85 
  86     "jdk.vm.ci.code.test" : {
  87       "subDir" : "test/compiler/jvmci",
  88       "sourceDirs" : ["src"],
  89       "dependencies" : [
  90         "mx:JUNIT",
  91         "jdk.vm.ci.amd64",
  92         "jdk.vm.ci.sparc",
  93         "jdk.vm.ci.code",
  94         "jdk.vm.ci.hotspot",
  95       ],
  96       "checkstyle" : "jdk.vm.ci.services",
  97       "javaCompliance" : "1.8",
  98       "workingSets" : "API,JVMCI",
  99     },
 100 
 101     "jdk.vm.ci.runtime" : {
 102       "subDir" : "src/jdk.vm.ci/share/classes",
 103       "sourceDirs" : ["src"],
 104       "dependencies" : [
 105         "jdk.vm.ci.code",
 106       ],
 107       "checkstyle" : "jdk.vm.ci.services",
 108       "javaCompliance" : "1.8",
 109       "workingSets" : "API,JVMCI",
 110     },
 111 
 112     "jdk.vm.ci.runtime.test" : {
 113       "subDir" : "test/compiler/jvmci",
 114       "sourceDirs" : ["src"],
 115       "dependencies" : [
 116         "mx:JUNIT",
 117         "jdk.vm.ci.common",
 118         "jdk.vm.ci.runtime",
 119       ],
 120       "checkstyle" : "jdk.vm.ci.services",
 121       "javaCompliance" : "1.8",
 122       "workingSets" : "API,JVMCI",
 123     },
 124 
 125     "jdk.vm.ci.inittimer" : {
 126       "subDir" : "src/jdk.vm.ci/share/classes",
 127       "sourceDirs" : ["src"],
 128       "checkstyle" : "jdk.vm.ci.services",
 129       "javaCompliance" : "1.8",
 130       "workingSets" : "JVMCI",
 131     },
 132 
 133     # ------------- JVMCI:Generic -------------
 134 
 135     "jdk.vm.ci.aarch64" : {
 136       "subDir" : "src/jdk.vm.ci/share/classes",
 137       "sourceDirs" : ["src"],
 138       "dependencies" : ["jdk.vm.ci.code"],
 139       "checkstyle" : "jdk.vm.ci.services",
 140       "javaCompliance" : "1.8",
 141       "workingSets" : "JVMCI,AArch64",
 142     },
 143 
 144     "jdk.vm.ci.amd64" : {
 145       "subDir" : "src/jdk.vm.ci/share/classes",
 146       "sourceDirs" : ["src"],
 147       "dependencies" : ["jdk.vm.ci.code"],
 148       "checkstyle" : "jdk.vm.ci.services",
 149       "javaCompliance" : "1.8",
 150       "workingSets" : "JVMCI,AMD64",
 151     },
 152 
 153     "jdk.vm.ci.sparc" : {
 154       "subDir" : "src/jdk.vm.ci/share/classes",
 155       "sourceDirs" : ["src"],
 156       "dependencies" : ["jdk.vm.ci.code"],
 157       "checkstyle" : "jdk.vm.ci.services",
 158       "javaCompliance" : "1.8",
 159       "workingSets" : "JVMCI,SPARC",
 160     },
 161 
 162     # ------------- JVMCI:HotSpot -------------
 163 
 164     "jdk.vm.ci.hotspot" : {
 165       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 166       "sourceDirs" : ["src"],
 167       "dependencies" : [
 168         "jdk.vm.ci.hotspotvmconfig",
 169         "jdk.vm.ci.common",
 170         "jdk.vm.ci.inittimer",
 171         "jdk.vm.ci.runtime",
 172         "jdk.vm.ci.services",
 173         "JDK9_STUBS",
 174       ],
 175       "checkstyle" : "jdk.vm.ci.services",
 176       "javaCompliance" : "1.8",
 177       "workingSets" : "JVMCI",
 178     },
 179 
 180     "jdk.vm.ci.hotspot.test" : {
 181       "subDir" : "test/compiler/jvmci",
 182       "sourceDirs" : ["src"],
 183       "dependencies" : [
 184         "TESTNG",
 185         "jdk.vm.ci.hotspot",
 186       ],
 187       "checkstyle" : "jdk.vm.ci.services",
 188       "javaCompliance" : "1.8",
 189       "workingSets" : "API,JVMCI",
 190     },
 191 
 192     "jdk.vm.ci.hotspotvmconfig" : {
 193       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 194       "sourceDirs" : ["src"],
 195       "checkstyle" : "jdk.vm.ci.services",
 196       "javaCompliance" : "1.8",
 197       "workingSets" : "JVMCI,HotSpot",
 198     },
 199 
 200     "jdk.vm.ci.hotspot.aarch64" : {
 201       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 202       "sourceDirs" : ["src"],
 203       "dependencies" : [
 204         "jdk.vm.ci.aarch64",
 205         "jdk.vm.ci.hotspot",
 206       ],
 207       "checkstyle" : "jdk.vm.ci.services",
 208       "javaCompliance" : "1.8",
 209       "workingSets" : "JVMCI,HotSpot,AArch64",
 210     },
 211 
 212     "jdk.vm.ci.hotspot.amd64" : {
 213       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 214       "sourceDirs" : ["src"],
 215       "dependencies" : [
 216         "jdk.vm.ci.amd64",
 217         "jdk.vm.ci.hotspot",
 218       ],
 219       "checkstyle" : "jdk.vm.ci.services",
 220       "javaCompliance" : "1.8",
 221       "workingSets" : "JVMCI,HotSpot,AMD64",
 222     },
 223 
 224     "jdk.vm.ci.hotspot.sparc" : {
 225       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 226       "sourceDirs" : ["src"],
 227       "dependencies" : [
 228         "jdk.vm.ci.sparc",
 229         "jdk.vm.ci.hotspot",
 230       ],
 231       "checkstyle" : "jdk.vm.ci.services",
 232       "javaCompliance" : "1.8",
 233       "workingSets" : "JVMCI,HotSpot,SPARC",
 234     },
 235 
 236     "hotspot" : {
 237       "native" : True,
 238       "class" : "HotSpotProject",
 239     }
 240   },
 241 
 242   "distributions" : {
 243 
 244     # ------------- Distributions -------------
 245 
 246     "JVMCI_SERVICES" : {
 247       "subDir" : "src/jdk.vm.ci/share/classes",
 248       "dependencies" : ["jdk.vm.ci.services"],
 249     },
 250 
 251     "JVMCI_API" : {
 252       "subDir" : "src/jdk.vm.ci/share/classes",
 253       "dependencies" : [
 254         "jdk.vm.ci.inittimer",
 255         "jdk.vm.ci.runtime",
 256         "jdk.vm.ci.common",
 257         "jdk.vm.ci.aarch64",
 258         "jdk.vm.ci.amd64",
 259         "jdk.vm.ci.sparc",
 260       ],
 261       "distDependencies" : [
 262         "JVMCI_SERVICES",
 263       ],
 264     },
 265 
 266     "JVMCI_HOTSPOTVMCONFIG" : {
 267       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 268       "dependencies" : [
 269         "jdk.vm.ci.hotspotvmconfig",
 270       ],
 271     },
 272 
 273     "JVMCI_HOTSPOT" : {
 274       "subDir" : "src/jdk.vm.ci.hotspot/share/classes",
 275       "dependencies" : [
 276         "jdk.vm.ci.hotspot.aarch64",
 277         "jdk.vm.ci.hotspot.amd64",
 278         "jdk.vm.ci.hotspot.sparc",
 279       ],
 280       "distDependencies" : [
 281         "JVMCI_HOTSPOTVMCONFIG",
 282         "JVMCI_SERVICES",
 283         "JVMCI_API",
 284       ],
 285     },
 286 
 287     "JVMCI_TEST" : {
 288       "subDir" : "test/compiler/jvmci",
 289       "dependencies" : [
 290         "jdk.vm.ci.runtime.test",
 291       ],
 292       "distDependencies" : [
 293         "JVMCI_API",
 294       ],
 295       "exclude" : ["mx:JUNIT"],
 296     },
 297 
 298     # This exists to have a monolithic jvmci.jar file which simplifies
 299     # using the -Xoverride option in JDK9.
 300     "JVMCI" : {
 301       "subDir" : "src/jdk.vm.ci/share/classes",
 302       "overlaps" : [
 303         "JVMCI_API",
 304         "JVMCI_SERVICES",
 305         "JVMCI_HOTSPOT",
 306         "JVMCI_HOTSPOTVMCONFIG",
 307       ],
 308       "dependencies" : [
 309         "jdk.vm.ci.services",
 310         "jdk.vm.ci.inittimer",
 311         "jdk.vm.ci.runtime",
 312         "jdk.vm.ci.common",
 313         "jdk.vm.ci.aarch64",
 314         "jdk.vm.ci.amd64",
 315         "jdk.vm.ci.sparc",
 316         "jdk.vm.ci.hotspotvmconfig",
 317         "jdk.vm.ci.hotspot.aarch64",
 318         "jdk.vm.ci.hotspot.amd64",
 319         "jdk.vm.ci.hotspot.sparc",
 320       ],
 321       "exclude" : ["JDK9_STUBS"]
 322     },
 323   },
 324 }