Example #1
0
    else:
        lib_espresso_cp = '${GRAALVM_HOME}/lib/graalvm/lib-espresso.jar'
else:
    if mx.is_windows():
        lib_espresso_cp = '%GRAALVM_HOME%\\jre\\lib\\graalvm\\lib-espresso.jar'
    else:
        lib_espresso_cp = '${GRAALVM_HOME}/jre/lib/graalvm/lib-espresso.jar'


espresso_library_config = mx_sdk_vm.LibraryConfig(
    destination='lib/<lib:espresso>',
    jar_distributions=['espresso:LIB_ESPRESSO'],
    build_args=[
        '--language:java',
        '--tool:all',
        '-H:+EnableSignalAPI',
        '-R:+EnableSignalHandling',
        '-R:+InstallSegfaultHandler',
        '--features=com.oracle.truffle.espresso.FinalizationFeature',
    ],
    home_finder=True,
)

mx_sdk_vm.register_graalvm_component(mx_sdk_vm.GraalVmLanguage(
    suite=_suite,
    name='Java on Truffle',
    short_name='java',
    installable_id='espresso',
    installable=True,
    license_files=['LICENSE_JAVAONTRUFFLE'],
    third_party_license_files=[],
Example #2
0
        suite=_suite,
        name='Java on Truffle',
        short_name='java',
        installable_id='espresso',
        installable=True,
        license_files=[],
        third_party_license_files=[],
        dependencies=['Truffle', 'Truffle NFI', 'ejvm'],
        truffle_jars=['espresso:ESPRESSO'],
        support_distributions=['espresso:ESPRESSO_SUPPORT'],
        library_configs=[
            mx_sdk_vm.LibraryConfig(
                destination='lib/<lib:espresso>',
                jar_distributions=['espresso:LIB_ESPRESSO'],
                build_args=[
                    '--language:java',
                    '--tool:all',
                ],
                home_finder=True,
            )
        ],
        polyglot_lib_jar_dependencies=['espresso:LIB_ESPRESSO'],
        has_polyglot_lib_entrypoints=True,
        priority=1,
        post_install_msg="""
This version of Java on Truffle is experimental. We do not recommended it for production use.

Usage: java -truffle [-options] class [args...]
           (to execute a class)
    or java -truffle [-options] -jar jarfile [args...]
           (to execute a jar file)
Example #3
0
        dependencies=['Graal.js'],
        truffle_jars=['graal-nodejs:TRUFFLENODE'],
        support_distributions=['graal-nodejs:TRUFFLENODE_GRAALVM_SUPPORT'],
        provided_executables=[
            'bin/<exe:node>',
            'bin/<cmd:npm>',
            'bin/<cmd:npx>',
        ],
        polyglot_lib_build_args=['--language:nodejs'],
        polyglot_lib_jar_dependencies=['graal-nodejs:TRUFFLENODE'],
        library_configs=[
            mx_sdk_vm.LibraryConfig(
                destination='lib/<lib:graal-nodejs>',
                jar_distributions=['graal-nodejs:TRUFFLENODE'],
                build_args=[
                    '--tool:all',
                    '--language:nodejs',
                    '-Dgraalvm.libpolyglot=true',  # `lib:graal-nodejs` should be initialized like `lib:polyglot` (GR-10038)
                ],
                home_finder=True,
            ),
        ],
        has_polyglot_lib_entrypoints=True,
        installable=True,
        stability="supported",
    ))

mx.update_commands(
    _suite, {
        'node': [node, ''],
        'npm': [npm, ''],
        'npx': [npx, ''],