fix bash not found issue for windows

This commit is contained in:
ohyzha
2024-10-22 09:25:15 +03:00
parent 4a598bef05
commit eb9264e3da
2 changed files with 9 additions and 8 deletions

View File

@@ -48,9 +48,9 @@ jobs:
shell: bash
run: |
if [ "${{ steps.cache.outputs.cache-hit }}" != "true" ]; then
cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DDEPENDENCY_MIRROR_FILE="${{github.workspace}}/.gitea/workflows/DependencyMirrors.txt"
cmake -B "${{github.workspace}}/build" -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DDEPENDENCY_MIRROR_FILE="${{github.workspace}}/.gitea/workflows/DependencyMirrors.txt"
else
cmake -B ${{github.workspace}}/build -C ${{github.workspace}}/build/cmake_checks_cache.txt -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DDEPENDENCY_MIRROR_FILE="${{github.workspace}}/.gitea/workflows/DependencyMirrors.txt"
cmake -B "${{github.workspace}}/build" -C ${{github.workspace}}/build/cmake_checks_cache.txt -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DDEPENDENCY_MIRROR_FILE="${{github.workspace}}/.gitea/workflows/DependencyMirrors.txt"
fi
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}

View File

@@ -1,19 +1,20 @@
cmake_minimum_required(VERSION 3.28 FATAL_ERROR)
set(BASH_EXECUTABLE "" CACHE FILEPATH "Path to bash executable")
if(WIN32)
# prefer using git's bash over WSL's(if it exists) under System32 since it leads to wrong shader generation
find_program(GIT_PROGRAM git NO_CACHE REQUIRED)
get_filename_component(GIT_DIR ${GIT_PROGRAM} DIRECTORY)
get_filename_component(GIT_BASE_DIR ${GIT_DIR} DIRECTORY)
find_program(BASH_PROGRAM bash HINTS "${GIT_BASE_DIR}/bin" NO_CACHE NO_DEFAULT_PATH REQUIRED)
set(BASH_EXECUTABLE ${BASH_PROGRAM} CACHE FILEPATH "Path to bash executable")
else()
set(BASH_EXECUTABLE "" CACHE FILEPATH "Path to bash executable")
if ("${BASH_EXECUTABLE}" STREQUAL "")
find_program(BASH_PROGRAM bash NO_CACHE REQUIRED)
find_program(BASH_PROGRAM bash HINTS "${GIT_BASE_DIR}/bin" NO_CACHE NO_DEFAULT_PATH QUIET)
if (BASH_PROGRAM)
set(BASH_EXECUTABLE ${BASH_PROGRAM} CACHE FILEPATH "Path to bash executable" FORCE)
endif()
endif()
if ("${BASH_EXECUTABLE}" STREQUAL "")
find_program(BASH_PROGRAM bash NO_CACHE REQUIRED)
set(BASH_EXECUTABLE ${BASH_PROGRAM} CACHE FILEPATH "Path to bash executable" FORCE)
endif()
# go from openVulkano/OpenVulkanoCpp to openVulkano
cmake_path(GET CMAKE_CURRENT_SOURCE_DIR PARENT_PATH ROOT_FOLDER)
set(SCRIPT_FOLDER "${ROOT_FOLDER}/Scripts")