From 93d5d3b5dbf9c01b60c41136482668e38e5a3806 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Thu, 10 Sep 2015 05:47:43 +0000 Subject: [PATCH] Add a way to skip the Go bindings tests even when Go is configured in CMake. The Go bindings tests in an unoptimized build take over 30 seconds for me, making it the slowest test in 'check-llvm' by a factor of two. I've only rigged this up fully to the CMake build. If someone is interested in rigging it up to the autoconf build, they're welcome to do so. llvm-svn: 247243 --- llvm/CMakeLists.txt | 1 + llvm/test/Bindings/Go/lit.local.cfg | 3 +++ llvm/test/Makefile | 1 + llvm/test/lit.site.cfg.in | 1 + 4 files changed, 6 insertions(+) diff --git a/llvm/CMakeLists.txt b/llvm/CMakeLists.txt index dac2097..cabb661 100644 --- a/llvm/CMakeLists.txt +++ b/llvm/CMakeLists.txt @@ -338,6 +338,7 @@ option(LLVM_INCLUDE_EXAMPLES "Generate build targets for the LLVM examples" ON) option(LLVM_BUILD_TESTS "Build LLVM unit tests. If OFF, just generate build targets." OFF) option(LLVM_INCLUDE_TESTS "Generate build targets for the LLVM unit tests." ON) +option(LLVM_INCLUDE_GO_TESTS "Include the Go bindings tests in test build targets." ON) option (LLVM_BUILD_DOCS "Build the llvm documentation." OFF) option (LLVM_INCLUDE_DOCS "Generate build targets for llvm documentation." ON) diff --git a/llvm/test/Bindings/Go/lit.local.cfg b/llvm/test/Bindings/Go/lit.local.cfg index e86595b..d68d867 100644 --- a/llvm/test/Bindings/Go/lit.local.cfg +++ b/llvm/test/Bindings/Go/lit.local.cfg @@ -6,6 +6,9 @@ import sys if not 'go' in config.root.llvm_bindings: config.unsupported = True +if config.root.include_go_tests != 'ON': + config.unsupported = True + def find_executable(executable, path=None): if path is None: path = os.environ['PATH'] diff --git a/llvm/test/Makefile b/llvm/test/Makefile index 9b37ced..1584385 100644 --- a/llvm/test/Makefile +++ b/llvm/test/Makefile @@ -134,6 +134,7 @@ lit.site.cfg: FORCE @$(ECHOPATH) s!@OCAMLFLAGS@!$(addprefix -cclib ,$(LDFLAGS))!g >> lit.tmp @$(ECHOPATH) s=@HAVE_OCAMLOPT@=$(HAVE_OCAMLOPT)=g >> lit.tmp @$(ECHOPATH) s=@HAVE_OCAML_OUNIT@=$(HAVE_OCAML_OUNIT)=g >> lit.tmp + @$(ECHOPATH) s=@LLVM_INCLUDE_GO_TESTS@=ON=g >> lit.tmp @$(ECHOPATH) s=@GO_EXECUTABLE@=$(GO)=g >> lit.tmp @$(ECHOPATH) s!@HOST_CC@!$(CC)!g >> lit.tmp @$(ECHOPATH) s!@HOST_CXX@!$(CXX)!g >> lit.tmp diff --git a/llvm/test/lit.site.cfg.in b/llvm/test/lit.site.cfg.in index a181037..13f5372 100644 --- a/llvm/test/lit.site.cfg.in +++ b/llvm/test/lit.site.cfg.in @@ -19,6 +19,7 @@ config.ocamlfind_executable = "@OCAMLFIND@" config.have_ocamlopt = "@HAVE_OCAMLOPT@" config.have_ocaml_ounit = "@HAVE_OCAML_OUNIT@" config.ocaml_flags = "@OCAMLFLAGS@" +config.include_go_tests = "@LLVM_INCLUDE_GO_TESTS@" config.go_executable = "@GO_EXECUTABLE@" config.enable_shared = @ENABLE_SHARED@ config.enable_assertions = @ENABLE_ASSERTIONS@ -- 2.7.4