blob: 5791e5087af6f7c0a07e31500da8030635ba1e91 [file] [log] [blame]
Ian Zerny5fffb0a2019-02-11 13:54:22 +01001#!/usr/bin/env python
2# Copyright (c) 2019, the R8 project authors. Please see the AUTHORS file
3# for details. All rights reserved. Use of this source code is governed by a
4# BSD-style license that can be found in the LICENSE file.
5
Ian Zerny3f54e222019-02-12 10:51:17 +01006import defines
Ian Zerny5fffb0a2019-02-11 13:54:22 +01007import os
8import sys
Ian Zerny5fffb0a2019-02-11 13:54:22 +01009
Ian Zerny3f54e222019-02-12 10:51:17 +010010JDK_DIR = os.path.join(defines.THIRD_PARTY, 'openjdk')
Ian Zerny5fffb0a2019-02-11 13:54:22 +010011
12def GetJdkHome():
13 root = os.path.join(JDK_DIR, 'openjdk-9.0.4')
Ian Zerny3f54e222019-02-12 10:51:17 +010014 if defines.IsLinux():
Ian Zerny5fffb0a2019-02-11 13:54:22 +010015 return os.path.join(root, 'linux')
Ian Zerny3f54e222019-02-12 10:51:17 +010016 elif defines.IsOsX():
Ian Zerny5fffb0a2019-02-11 13:54:22 +010017 return os.path.join(root, 'osx')
Ian Zerny3f54e222019-02-12 10:51:17 +010018 elif defines.IsWindows():
Ian Zerny5fffb0a2019-02-11 13:54:22 +010019 return os.path.join(root, 'windows')
20 else:
21 return os.environ['JAVA_HOME']
Ian Zerny5fffb0a2019-02-11 13:54:22 +010022
23def GetJavaExecutable(jdkHome=None):
24 jdkHome = jdkHome if jdkHome else GetJdkHome()
Ian Zerny3f54e222019-02-12 10:51:17 +010025 executable = 'java.exe' if defines.IsWindows() else 'java'
Ian Zerny5fffb0a2019-02-11 13:54:22 +010026 return os.path.join(jdkHome, 'bin', executable) if jdkHome else executable
27
28def GetJavacExecutable(jdkHome=None):
29 jdkHome = jdkHome if jdkHome else GetJdkHome()
Ian Zerny3f54e222019-02-12 10:51:17 +010030 executable = 'javac.exe' if defines.IsWindows() else 'javac'
Ian Zerny5fffb0a2019-02-11 13:54:22 +010031 return os.path.join(jdkHome, 'bin', executable) if jdkHome else executable
32
Ian Zerny5fffb0a2019-02-11 13:54:22 +010033def Main():
34 print GetJdkHome()
35
36if __name__ == '__main__':
37 sys.exit(Main())