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 shell: bash
run: | run: |
if [ "${{ steps.cache.outputs.cache-hit }}" != "true" ]; then 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 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 fi
- name: Build - name: Build
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}

View File

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