зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1231764 - part 3 - rename RustRlibLibrary to RustCrate; r=chmanchester
rlibs are going to be less important once we start building with cargo: the focus will move to crates instead, so that's what we should call the moz.build object.
This commit is contained in:
Родитель
c94c59b23b
Коммит
be1a17c817
|
@ -30,7 +30,7 @@ from mozbuild.frontend.data import (
|
|||
GeneratedWebIDLFile,
|
||||
PreprocessedTestWebIDLFile,
|
||||
PreprocessedWebIDLFile,
|
||||
RustRlibLibrary,
|
||||
RustCrate,
|
||||
SharedLibrary,
|
||||
TestManifest,
|
||||
TestWebIDLFile,
|
||||
|
|
|
@ -59,7 +59,7 @@ from ..frontend.data import (
|
|||
ObjdirPreprocessedFiles,
|
||||
PerSourceFlag,
|
||||
Program,
|
||||
RustRlibLibrary,
|
||||
RustCrate,
|
||||
SharedLibrary,
|
||||
SimpleProgram,
|
||||
Sources,
|
||||
|
@ -577,7 +577,7 @@ class RecursiveMakeBackend(CommonBackend):
|
|||
else:
|
||||
return False
|
||||
|
||||
elif isinstance(obj, RustRlibLibrary):
|
||||
elif isinstance(obj, RustCrate):
|
||||
# Nothing to do because |Sources| has done the work for us.
|
||||
pass
|
||||
|
||||
|
@ -1162,7 +1162,7 @@ class RecursiveMakeBackend(CommonBackend):
|
|||
if libdef.symbols_file:
|
||||
backend_file.write('SYMBOLS_FILE := %s\n' % libdef.symbols_file)
|
||||
|
||||
rust_rlibs = [o for o in libdef.linked_libraries if isinstance(o, RustRlibLibrary)]
|
||||
rust_rlibs = [o for o in libdef.linked_libraries if isinstance(o, RustCrate)]
|
||||
if rust_rlibs:
|
||||
# write out Rust file with extern crate declarations.
|
||||
extern_crate_file = mozpath.join(libdef.objdir, 'rul.rs')
|
||||
|
@ -1219,7 +1219,7 @@ class RecursiveMakeBackend(CommonBackend):
|
|||
% (relpath, lib.import_name))
|
||||
if isinstance(obj, SharedLibrary):
|
||||
write_shared_and_system_libs(lib)
|
||||
elif isinstance(lib, RustRlibLibrary):
|
||||
elif isinstance(lib, RustCrate):
|
||||
backend_file.write_once('RLIB_EXTERN_CRATE_OPTIONS += --extern %s=%s/%s\n'
|
||||
% (lib.crate_name, relpath, lib.rlib_filename))
|
||||
elif isinstance(obj, SharedLibrary):
|
||||
|
@ -1244,7 +1244,7 @@ class RecursiveMakeBackend(CommonBackend):
|
|||
# libraries have been listed to ensure that the Rust objects are
|
||||
# searched after the C/C++ objects that might reference Rust symbols.
|
||||
# Building the Rust super-crate will take care of Rust->Rust linkage.
|
||||
if isinstance(obj, SharedLibrary) and any(isinstance(o, RustRlibLibrary)
|
||||
if isinstance(obj, SharedLibrary) and any(isinstance(o, RustCrate)
|
||||
for o in obj.linked_libraries):
|
||||
backend_file.write('STATIC_LIBS += $(RS_STATICLIB_CRATE_OBJ)\n')
|
||||
|
||||
|
|
|
@ -445,7 +445,7 @@ class Library(BaseLibrary):
|
|||
self.is_sdk = is_sdk
|
||||
|
||||
|
||||
class RustRlibLibrary(Library):
|
||||
class RustCrate(Library):
|
||||
"""Context derived container object for a Rust rlib"""
|
||||
|
||||
def __init__(self, context, basename, crate_name, srcdir, rlib_filename, link_into):
|
||||
|
|
|
@ -60,7 +60,7 @@ from .data import (
|
|||
PreprocessedTestWebIDLFile,
|
||||
PreprocessedWebIDLFile,
|
||||
Program,
|
||||
RustRlibLibrary,
|
||||
RustCrate,
|
||||
SdkFiles,
|
||||
SharedLibrary,
|
||||
SimpleProgram,
|
||||
|
@ -195,7 +195,7 @@ class TreeMetadataEmitter(LoggingMixin):
|
|||
def _emit_libs_derived(self, contexts):
|
||||
# First do FINAL_LIBRARY linkage.
|
||||
for lib in (l for libs in self._libs.values() for l in libs):
|
||||
if not isinstance(lib, (StaticLibrary, RustRlibLibrary)) or not lib.link_into:
|
||||
if not isinstance(lib, (StaticLibrary, RustCrate)) or not lib.link_into:
|
||||
continue
|
||||
if lib.link_into not in self._libs:
|
||||
raise SandboxValidationError(
|
||||
|
@ -724,7 +724,7 @@ class TreeMetadataEmitter(LoggingMixin):
|
|||
(base, _) = mozpath.splitext(mozpath.basename(f))
|
||||
crate_name = context.relsrcdir.replace('/', '_') + '_' + base
|
||||
rlib_filename = 'lib' + base + '.rlib'
|
||||
lib = RustRlibLibrary(context, libname, crate_name,
|
||||
lib = RustCrate(context, libname, crate_name,
|
||||
mozpath.join(context.srcdir, mozpath.dirname(f)),
|
||||
rlib_filename, final_lib)
|
||||
self._libs[libname].append(lib)
|
||||
|
|
Загрузка…
Ссылка в новой задаче