Skip to content

Commit 173709b

Browse files
committed
[GR-63732] Added deliverable parameter to NativeImageProject.
1 parent e82c747 commit 173709b

File tree

2 files changed

+12
-15
lines changed

2 files changed

+12
-15
lines changed

sdk/mx.sdk/mx_sdk_vm_ng.py

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -201,8 +201,9 @@ def clean(self, forBuild=False):
201201
mx.rmtree(self.witness_file(), ignore_errors=True)
202202

203203
class NativeImageProject(mx.Project, metaclass=ABCMeta):
204-
def __init__(self, suite, name, deps, workingSets, theLicense=None, **kw_args):
204+
def __init__(self, suite, name, deps, workingSets, theLicense=None, deliverable=None, **kw_args):
205205
super().__init__(suite, name, subDir=None, srcDirs=[], deps=deps, workingSets=workingSets, d=suite.dir, theLicense=theLicense, **kw_args)
206+
self.deliverable = deliverable if deliverable else name
206207
if not hasattr(self, 'buildDependencies'):
207208
self.buildDependencies = []
208209
if not _external_bootstrap_graalvm and _has_stage1_components():
@@ -221,9 +222,8 @@ def output_file(self):
221222
def output_file_name(self):
222223
pass
223224

224-
@abstractmethod
225225
def base_file_name(self):
226-
pass
226+
return self.deliverable
227227

228228
@abstractmethod
229229
def options_file_name(self):
@@ -294,9 +294,6 @@ def resolveDeps(self):
294294
if mx_sdk_vm_impl._force_bash_launchers(self.output_file_name(), build_by_default=True):
295295
self.ignore = "Skipped executable"
296296

297-
def base_file_name(self):
298-
return self.name
299-
300297
def output_file_name(self):
301298
return mx.exe_suffix(self.base_file_name())
302299

@@ -307,6 +304,12 @@ def name_suffix(self):
307304
return mx.exe_suffix("")
308305

309306
class NativeImageLibraryProject(NativeImageProject):
307+
308+
def __init__(self, suite, name, deps, workingSets, theLicense=None, deliverable=None, **kw_args):
309+
if not deliverable:
310+
deliverable = name[3:] if name.startswith('lib') else name
311+
super().__init__(suite, name, deps, workingSets, theLicense, deliverable, **kw_args)
312+
310313
def resolveDeps(self):
311314
super().resolveDeps()
312315
if mx_sdk_vm_impl._skip_libraries(self.output_file_name(), build_by_default=True):
@@ -324,12 +327,6 @@ def getArchivableResults(self, use_relpath=True, single=False):
324327
if isfile(absolute_path) and e.endswith('.h'):
325328
yield absolute_path, e
326329

327-
def base_file_name(self):
328-
name = self.name
329-
if name.startswith('lib'):
330-
name = name[3:]
331-
return name
332-
333330
def output_file_name(self):
334331
return mx.add_lib_prefix(mx.add_lib_suffix(self.base_file_name()))
335332

truffle/mx.truffle/mx_truffle.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1493,7 +1493,7 @@ def _qualname(distribution_name):
14931493
if build_for_current_platform:
14941494
# 2. Register a project building the isolate library
14951495
isolate_deps = [language_pom_distribution, 'truffle-enterprise:TRUFFLE_ENTERPRISE']
1496-
build_library = __PolyglotIsolateProject(language_suite, language_id, isolate_deps, isolate_build_options)
1496+
build_library = PolyglotIsolateProject(language_suite, language_id, isolate_deps, isolate_build_options)
14971497
register_project(build_library)
14981498

14991499
# 3. Register layout distribution with isolate library and isolate resources
@@ -1611,7 +1611,7 @@ def _qualname(distribution_name):
16111611
mx.add_argument('--polyglot-isolates', action='store', help='Comma-separated list of languages for which the polyglot isolate library should be built. Setting the value to `true` builds all polyglot isolate libraries.')
16121612

16131613

1614-
class __PolyglotIsolateProject(mx_sdk_vm_ng.LanguageLibraryProject):
1614+
class PolyglotIsolateProject(mx_sdk_vm_ng.LanguageLibraryProject):
16151615
"""
16161616
A language library project dedicated to construct a language polyglot isolate library.
16171617
Instances are created by register_polyglot_isolate_distributions when a language
@@ -1623,7 +1623,7 @@ def __init__(self, language_suite, language_id, isolate_deps, isolate_build_opti
16231623
'-H:APIFunctionPrefix=truffle_isolate_',
16241624
'-H:+CopyLanguageResources'
16251625
] + isolate_build_options
1626-
super().__init__(language_suite, f'lib{language_id}vm', isolate_deps, ['Truffle'], None, **{'build_args': build_args})
1626+
super().__init__(language_suite, f'{language_id}.isolate', isolate_deps, ['Truffle'], None, f'{language_id}vm', **{'build_args': build_args})
16271627

16281628
def resolveDeps(self):
16291629
super().resolveDeps()

0 commit comments

Comments
 (0)