From e7a8fe1967f295129b3118b1bc8a5cc210dcd528 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247243 91177308-0d34-0410-b5e6-96231b3b80d8 --- CMakeLists.txt | 1 + test/Bindings/Go/lit.local.cfg | 3 +++ test/Makefile | 1 + test/lit.site.cfg.in | 1 + 4 files changed, 6 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index dac209765a8..cabb661dbd3 100644 --- a/CMakeLists.txt +++ b/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/test/Bindings/Go/lit.local.cfg b/test/Bindings/Go/lit.local.cfg index e86595b8cb5..d68d867fb30 100644 --- a/test/Bindings/Go/lit.local.cfg +++ b/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/test/Makefile b/test/Makefile index 9b37cedaaff..15843853b01 100644 --- a/test/Makefile +++ b/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/test/lit.site.cfg.in b/test/lit.site.cfg.in index a1810379658..13f5372ef7e 100644 --- a/test/lit.site.cfg.in +++ b/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.34.1