Jvm.hx 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package runci.targets;
  2. import runci.System.*;
  3. import runci.Config.*;
  4. class Jvm {
  5. static public function getJavaDependencies() {
  6. haxelibInstallGit("HaxeFoundation", "hxjava", true);
  7. haxelibInstallGit("HaxeFoundation", "format", "jvm", "--always");
  8. runCommand("javac", ["-version"]);
  9. }
  10. static final miscJavaDir = getMiscSubDir('java');
  11. static public function run(args:Array<String>) {
  12. deleteDirectoryRecursively("bin/jvm");
  13. getJavaDependencies();
  14. runCommand("haxe", ["compile-java-native.hxml"]);
  15. for (level in 0...3) {
  16. final args = args.concat(["-D", "jvm.dynamic-level=" + level]);
  17. runCommand("haxe", ["compile-jvm-only.hxml", "--hxb", "bin/hxb/jvm.zip"].concat(args));
  18. runCommand("java", ["-jar", "bin/unit.jar"]);
  19. runCommand("haxe", ["compile-jvm-only.hxml", "--hxb-lib", "bin/hxb/jvm.zip"].concat(args));
  20. runCommand("java", ["-jar", "bin/unit.jar"]);
  21. runCommand("haxe", ["compile-jvm-only.hxml","-dce","no"].concat(args));
  22. runCommand("java", ["-jar", "bin/unit.jar"]);
  23. runCommand("haxe", ["compile-jvm-only.hxml", "--hxb-lib", "bin/hxb/jvm.zip"].concat(args));
  24. runCommand("java", ["-jar", "bin/unit.jar"]);
  25. }
  26. changeDirectory(miscJavaDir);
  27. runCommand("haxe", ["run.hxml"]);
  28. changeDirectory(sysDir);
  29. runCommand("haxe", ["compile-jvm.hxml"].concat(args));
  30. runSysTest("java", ["-jar", "bin/jvm/sys.jar"]);
  31. changeDirectory(threadsDir);
  32. runCommand("haxe", ["build.hxml", "--jvm", "export/threads.jar"].concat(args));
  33. runCommand("java", ["-jar", "export/threads.jar"]);
  34. }
  35. }