[Lldb-commits] [lldb] 1a8c996 - [lldb/Scripts] Remove buildbot.py
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Fri Jan 10 13:45:15 PST 2020
Author: Jonas Devlieghere
Date: 2020-01-10T13:44:41-08:00
New Revision: 1a8c996a8894a6ae2bf3b98780972bc7bdb6b8e6
URL: https://github.com/llvm/llvm-project/commit/1a8c996a8894a6ae2bf3b98780972bc7bdb6b8e6
DIFF: https://github.com/llvm/llvm-project/commit/1a8c996a8894a6ae2bf3b98780972bc7bdb6b8e6.diff
LOG: [lldb/Scripts] Remove buildbot.py
This file is outdated and still references SVN. Buildbots are configured
through the zorg repository.
Added:
Modified:
Removed:
lldb/scripts/buildbot.py
################################################################################
diff --git a/lldb/scripts/buildbot.py b/lldb/scripts/buildbot.py
deleted file mode 100755
index 06ee556be39c..000000000000
--- a/lldb/scripts/buildbot.py
+++ /dev/null
@@ -1,196 +0,0 @@
-#!/usr/bin/env python
-
-import argparse
-import os
-import os.path
-import shutil
-import subprocess
-import sys
-
-
-class BuildError(Exception):
-
- def __init__(self,
- string=None,
- path=None,
- inferior_error=None):
- self.m_string = string
- self.m_path = path
- self.m_inferior_error = inferior_error
-
- def __str__(self):
- if self.m_path and self.m_string:
- return "Build error: %s (referring to %s)" % (
- self.m_string, self.m_path)
- if self.m_path:
- return "Build error (referring to %s)" % (self.m_path)
- if self.m_string:
- return "Build error: %s" % (self.m_string)
- return "Build error"
-
-
-class LLDBBuildBot:
-
- def __init__(
- self,
- build_directory_path,
- log_path,
- lldb_repository_url="http://llvm.org/svn/llvm-project/lldb/trunk",
- llvm_repository_url="http://llvm.org/svn/llvm-project/llvm/trunk",
- clang_repository_url="http://llvm.org/svn/llvm-project/cfe/trunk",
- revision=None):
- self.m_build_directory_path = os.path.abspath(build_directory_path)
- self.m_log_path = os.path.abspath(log_path)
- self.m_lldb_repository_url = lldb_repository_url
- self.m_llvm_repository_url = llvm_repository_url
- self.m_clang_repository_url = clang_repository_url
- self.m_revision = revision
- self.m_log_stream = None
-
- def Setup(self):
- if os.path.exists(self.m_build_directory_path):
- raise BuildError(
- string="Build directory exists",
- path=self.m_build_directory_path)
- if os.path.exists(self.m_log_path):
- raise BuildError(string="Log file exists", path=self.m_log_path)
- self.m_log_stream = open(self.m_log_path, 'w')
- os.mkdir(self.m_build_directory_path)
-
- def Checkout(self):
- os.chdir(self.m_build_directory_path)
-
- cmdline_prefix = []
-
- if self.m_revision is not None:
- cmdline_prefix = ["svn", "-r %s" % (self.m_revision), "co"]
- else:
- cmdline_prefix = ["svn", "co"]
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_lldb_repository_url,
- "lldb"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
- if returncode != 0:
- raise BuildError(string="Couldn't checkout LLDB")
-
- os.chdir("lldb")
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_llvm_repository_url,
- "llvm.checkout"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't checkout LLVM")
-
- os.symlink("llvm.checkout", "llvm")
-
- os.chdir("llvm/tools")
-
- returncode = subprocess.call(
- cmdline_prefix + [
- self.m_clang_repository_url,
- "clang"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't checkout Clang")
-
- def Build(self):
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb/llvm")
-
- returncode = subprocess.call(["./configure",
- "--disable-optimized",
- "--enable-assertions",
- "--enable-targets=x86,x86_64,arm"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't configure LLVM/Clang")
-
- returncode = subprocess.call(["make"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't build LLVM/Clang")
-
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb")
-
- returncode = subprocess.call(["xcodebuild",
- "-project", "lldb.xcodeproj",
- "-target", "lldb-tool",
- "-configuration", "Debug",
- "-arch", "x86_64",
- "LLVM_CONFIGURATION=Debug+Asserts",
- "OBJROOT=build"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- if returncode != 0:
- raise BuildError(string="Couldn't build LLDB")
-
- def Test(self):
- os.chdir(self.m_build_directory_path)
- os.chdir("lldb/test")
-
- returncode = subprocess.call(["./dotest.py", "-t"],
- stdout=self.m_log_stream,
- stderr=self.m_log_stream)
-
- def Takedown(self):
- os.chdir("/tmp")
- self.m_log_stream.close()
- shutil.rmtree(self.m_build_directory_path)
-
- def Run(self):
- self.Setup()
- self.Checkout()
- self.Build()
- # self.Test()
- self.Takedown()
-
-
-def GetArgParser():
- parser = argparse.ArgumentParser(
- description="Try to build LLDB/LLVM/Clang and run the full test suite.")
- parser.add_argument(
- "--build-path",
- "-b",
- required=True,
- help="A (nonexistent) path to put temporary build products into",
- metavar="path")
- parser.add_argument(
- "--log-file",
- "-l",
- required=True,
- help="The name of a (nonexistent) log file",
- metavar="file")
- parser.add_argument(
- "--revision",
- "-r",
- required=False,
- help="The LLVM revision to use",
- metavar="N")
- return parser
-
-parser = GetArgParser()
-arg_dict = vars(parser.parse_args())
-
-build_bot = LLDBBuildBot(build_directory_path=arg_dict["build_path"],
- log_path=arg_dict["log_file"],
- revision=arg_dict["revision"])
-
-try:
- build_bot.Run()
-except BuildError as err:
- print(err)
More information about the lldb-commits
mailing list