interpreter: add 'name' method to BuildTargetHolder
As any child of BuildTargetHolder might need the name of the object, provides a method to get object name. This is useful in gst-build to display the plugin name and not the filename.
This commit is contained in:
parent
58db8d5e11
commit
a46f0a6202
|
@ -2268,6 +2268,8 @@ A build target is either an [executable](#executable),
|
|||
target, usually only needed if an another target needs to access
|
||||
some generated internal headers of this target
|
||||
|
||||
- `name()` *Since 0.54.0*, returns the target name.
|
||||
|
||||
|
||||
### `configuration` data object
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
## Added 'name' method
|
||||
Build target objects (as returned by executable(), library(), ...) now have a name() method.
|
|
@ -771,6 +771,7 @@ class BuildTargetHolder(TargetHolder):
|
|||
super().__init__(target, interp)
|
||||
self.methods.update({'extract_objects': self.extract_objects_method,
|
||||
'extract_all_objects': self.extract_all_objects_method,
|
||||
'name': self.name_method,
|
||||
'get_id': self.get_id_method,
|
||||
'outdir': self.outdir_method,
|
||||
'full_path': self.full_path_method,
|
||||
|
@ -825,6 +826,12 @@ class BuildTargetHolder(TargetHolder):
|
|||
def get_id_method(self, args, kwargs):
|
||||
return self.held_object.get_id()
|
||||
|
||||
@FeatureNew('name', '0.54.0')
|
||||
@noPosargs
|
||||
@permittedKwargs({})
|
||||
def name_method(self, args, kwargs):
|
||||
return self.held_object.name
|
||||
|
||||
class ExecutableHolder(BuildTargetHolder):
|
||||
def __init__(self, target, interp):
|
||||
super().__init__(target, interp)
|
||||
|
|
|
@ -20,7 +20,7 @@ if meson.is_cross_build()
|
|||
endif
|
||||
|
||||
exe = executable('trivialprog', sources : sources)
|
||||
|
||||
assert(exe.name() == 'trivialprog')
|
||||
test('runtest', exe) # This is a comment
|
||||
|
||||
has_not_changed = false
|
||||
|
|
|
@ -2,7 +2,7 @@ project('static library test', 'c')
|
|||
|
||||
lib = static_library('mylib', get_option('source'),
|
||||
link_args : '-THISMUSTNOBEUSED') # Static linker needs to ignore all link args.
|
||||
|
||||
assert(lib.name() == 'mylib')
|
||||
has_not_changed = false
|
||||
if is_disabler(lib)
|
||||
has_not_changed = true
|
||||
|
|
Loading…
Reference in New Issue