Windows build systems: use ninja and enable tests (#33589)
* Set default CMake generator is ninja on Windows * Enable build systems tests (except for autotools/make)
This commit is contained in:
parent
37634f8b08
commit
f3c080e546
@ -248,7 +248,8 @@ def std_cmake_args(self):
|
|||||||
@staticmethod
|
@staticmethod
|
||||||
def std_args(pkg, generator=None):
|
def std_args(pkg, generator=None):
|
||||||
"""Computes the standard cmake arguments for a generic package"""
|
"""Computes the standard cmake arguments for a generic package"""
|
||||||
generator = generator or "Unix Makefiles"
|
default_generator = "Ninja" if sys.platform == "win32" else "Unix Makefiles"
|
||||||
|
generator = generator or default_generator
|
||||||
valid_primary_generators = ["Unix Makefiles", "Ninja"]
|
valid_primary_generators = ["Unix Makefiles", "Ninja"]
|
||||||
primary_generator = _extract_primary_generator(generator)
|
primary_generator = _extract_primary_generator(generator)
|
||||||
if primary_generator not in valid_primary_generators:
|
if primary_generator not in valid_primary_generators:
|
||||||
|
@ -23,8 +23,6 @@
|
|||||||
|
|
||||||
DATA_PATH = os.path.join(spack.paths.test_path, "data")
|
DATA_PATH = os.path.join(spack.paths.test_path, "data")
|
||||||
|
|
||||||
pytestmark = pytest.mark.skipif(sys.platform == "win32", reason="does not run on windows")
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture()
|
@pytest.fixture()
|
||||||
def concretize_and_setup(default_mock_concretization):
|
def concretize_and_setup(default_mock_concretization):
|
||||||
@ -45,6 +43,7 @@ def _func(dir_str):
|
|||||||
return _func
|
return _func
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.skipif(sys.platform == "win32", reason="make not available on Windows")
|
||||||
@pytest.mark.usefixtures("config", "mock_packages", "working_env")
|
@pytest.mark.usefixtures("config", "mock_packages", "working_env")
|
||||||
class TestTargets:
|
class TestTargets:
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
@ -93,6 +92,7 @@ def test_negative_ninja_check(self, input_dir, test_dir, concretize_and_setup):
|
|||||||
s.package._if_ninja_target_execute("check")
|
s.package._if_ninja_target_execute("check")
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.skipif(sys.platform == "win32", reason="autotools not available on windows")
|
||||||
@pytest.mark.usefixtures("config", "mock_packages")
|
@pytest.mark.usefixtures("config", "mock_packages")
|
||||||
class TestAutotoolsPackage:
|
class TestAutotoolsPackage:
|
||||||
def test_with_or_without(self, default_mock_concretization):
|
def test_with_or_without(self, default_mock_concretization):
|
||||||
|
Loading…
Reference in New Issue
Block a user