diff options
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/backend/ninjabackend.py | 6 | ||||
-rw-r--r-- | mesonbuild/build.py | 8 |
2 files changed, 3 insertions, 11 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py index cc350b2..e0417f4 100644 --- a/mesonbuild/backend/ninjabackend.py +++ b/mesonbuild/backend/ninjabackend.py @@ -1089,9 +1089,9 @@ int dummy; raise InvalidArguments('Unknown target type for rustc.') args.append(cratetype) args += rustc.get_buildtype_args(self.environment.coredata.get_builtin_option('buildtype')) - depfile = target.name + '.d' - args += ['--out-dir', target.subdir] - args += ['--emit', 'dep-info', '--emit', 'link'] + depfile = os.path.join(target.subdir, target.name + '.d') + args += ['--emit', 'dep-info={}'.format(depfile), '--emit', 'link'] + args += ['-o', os.path.join(target.subdir, target.get_filename())] orderdeps = [os.path.join(t.subdir, t.get_filename()) for t in target.link_targets] linkdirs = OrderedDict() for d in target.link_targets: diff --git a/mesonbuild/build.py b/mesonbuild/build.py index 2806331..41e21e3 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -479,14 +479,6 @@ class BuildTarget(Target): # CSharp and Java targets can't contain any other file types assert(len(self.compilers) == 1) return - if 'rust' in self.compilers: - firstname = self.sources[0] - if isinstance(firstname, File): - firstname = firstname.fname - first = os.path.split(firstname)[1] - (base, suffix) = os.path.splitext(first) - if suffix != '.rs' or self.name != base: - raise InvalidArguments('In Rust targets, the first source file must be named projectname.rs.') def get_original_kwargs(self): return self.kwargs |