diff --git a/Cargo.lock b/Cargo.lock index 453b6c3..b464d11 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -207,7 +207,7 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] name = "spirv-to-dxil" -version = "0.2.4" +version = "0.2.5" dependencies = [ "bitflags", "bytemuck", diff --git a/spirv-to-dxil-sys/Cargo.toml b/spirv-to-dxil-sys/Cargo.toml index e09efb3..7ddaa27 100644 --- a/spirv-to-dxil-sys/Cargo.toml +++ b/spirv-to-dxil-sys/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "spirv-to-dxil-sys" -version = "0.2.2" +version = "0.2.3" edition = "2021" description = "Raw bindings to spirv-to-dxil" license = "MIT" diff --git a/spirv-to-dxil-sys/native/CMakeLists.txt b/spirv-to-dxil-sys/native/CMakeLists.txt index abe9898..fe17f47 100644 --- a/spirv-to-dxil-sys/native/CMakeLists.txt +++ b/spirv-to-dxil-sys/native/CMakeLists.txt @@ -15,10 +15,23 @@ if(PIP_EXE STREQUAL "PIP_EXE-NOTFOUND") message(FATAL_ERROR "pip required") endif(PIP_EXE STREQUAL "PIP_EXE-NOTFOUND") -execute_process(COMMAND ${Python_EXECUTABLE} -m pip install mako) +cmake_path(GET Python_EXECUTABLE PARENT_PATH PYTHON_DIR) +cmake_path(APPEND PYTHON_DIR "Scripts" OUTPUT_VARIABLE PYTHON_SCRIPTS_DIR) +LIST(APPEND CMAKE_PROGRAM_PATH PYTHON_SCRIPTS_DIR ...) + +execute_process(COMMAND ${Python_EXECUTABLE} -m pip install meson ninja mako) + +find_program(MESON_EXE meson) +if(MESON_EXE STREQUAL "MESON_EXE-NOTFOUND") + message(FATAL_ERROR "meson failed to install") +endif(MESON_EXE STREQUAL "MESON_EXE-NOTFOUND") + +find_program(NINJA_EXE ninja) +if(NINJA_EXE STREQUAL "NINJA_EXE-NOTFOUND") + message(FATAL_ERROR "ninja failed to install") +endif(NINJA_EXE STREQUAL "NINJA_EXE-NOTFOUND") string(TOLOWER ${CMAKE_BUILD_TYPE} MESON_BUILD_TYPE) - set(MESA_EXTRA_FLAGS -Dbuildtype=${MESON_BUILD_TYPE} # enable spirv-to-dxil (obviously)