def _run_cmake(self, cmake_opts): if not self.run_cmake: log.dbg('not running cmake; build system is present') return # Invoke CMake from the current working directory using the # -S and -B options (officially introduced in CMake 3.13.0). # This is important because users expect invocations like this # to Just Work: # # west build -- -DOVERLAY_CONFIG=relative-path.conf final_cmake_args = ['-B{}'.format(self.build_dir), '-S{}'.format(self.source_dir), '-G{}'.format(DEFAULT_CMAKE_GENERATOR)] if self.args.board: final_cmake_args.append('-DBOARD={}'.format(self.args.board)) if cmake_opts: final_cmake_args.extend(cmake_opts) cmake.run_cmake(final_cmake_args)
def _run_cmake(self, cmake_opts): if not self.run_cmake: log.dbg('not running cmake; build system is present') return # It's unfortunate to have to use the undocumented -B and -H # options to set the source and binary directories. # # However, it's the only known way to set that directory and # run CMake from the current working directory. This is # important because users expect invocations like this to Just # Work: # # west build -- -DOVERLAY_CONFIG=relative-path.conf final_cmake_args = ['-B{}'.format(self.build_dir), '-H{}'.format(self.source_dir), '-G{}'.format(DEFAULT_CMAKE_GENERATOR)] if self.args.board: final_cmake_args.append('-DBOARD={}'.format(self.args.board)) if cmake_opts: final_cmake_args.extend(cmake_opts) cmake.run_cmake(final_cmake_args)