def METHOD_NAME(self, *args, **kwargs):
    """Build with Bazel"""
    if not get_software_root('Bazel'):
        raise EasyBuildError("Bazel not found in dependency list.")
    # separate build dir for Bazel
    build_dir = os.path.join(self.builddir, 'easybuild_obj')
    if os.path.exists(build_dir):
        self.log.warning('Build directory %s already exists (from previous iterations?). Removing...', build_dir)
        remove_dir(build_dir)
    mkdir(build_dir, parents=True)
    bazel_opts = "--output_user_root %s" % build_dir
    # build target
    bazel_build_pkg = '//reverb/pip_package:build_pip_package'
    # generate build command
    bazel_build_opts = self.cfg['buildopts']
    # by default generate a release build
    if not all(opt in bazel_build_opts for opt in (" --compilation_mode", " -c")):
        bazel_build_opts += " --compilation_mode=opt"
    # set C++ standard (--cxxopt can be used multiple times)
    cstd = self.toolchain.options.get('cstd', None)
    if cstd:
        bazel_build_opts += " --cxxopt='-std=%s'" % cstd
    # use JDK from EB
    bazel_build_opts += " --host_javabase=@local_jdk//:jdk"
    # explicitly set the number of processes
    bazel_build_opts += " --jobs=%d" % self.cfg['parallel']
    # print full compilation commands
    bazel_build_opts += " --subcommands"
    bazel_cmd = "%s bazel %s build %s %s" % (self.cfg['prebuildopts'], bazel_opts, bazel_build_opts,
                                             bazel_build_pkg)
    return run_cmd(bazel_cmd, log_all=True, simple=True, log_output=True)