From 41f57947d190f04abde355d7dbcee4686cfc1b1d Mon Sep 17 00:00:00 2001 From: Smail KOURTA Date: Thu, 7 Mar 2024 11:47:31 +0400 Subject: [PATCH 1/4] added github workflow to build and test tiramisu --- .github/workflows/cmake-single-platform.yml | 41 +++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 .github/workflows/cmake-single-platform.yml diff --git a/.github/workflows/cmake-single-platform.yml b/.github/workflows/cmake-single-platform.yml new file mode 100644 index 000000000..a2b3c7769 --- /dev/null +++ b/.github/workflows/cmake-single-platform.yml @@ -0,0 +1,41 @@ +# This starter workflow is for a CMake project running on a single platform. There is a different starter workflow if you need cross-platform coverage. +# See: https://github.com/actions/starter-workflows/blob/main/ci/cmake-multi-platform.yml +name: CMake on a single platform + +on: + push: + branches: [ "master", "merge_attempt" ] + pull_request: + branches: [ "master" ] + +env: + # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) + BUILD_TYPE: Release + +jobs: + build: + # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac. + # You can convert this to a matrix build if you need cross-platform coverage. + # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix + runs-on: ubuntu-latest + container: + image: skourta/tiramisu:latest + + steps: + - uses: actions/checkout@v3 + + - name: Configure CMake + # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} + + - name: Build + # Build your program with the given configuration + run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target tiramisu_auto_scheduler + + - name: Test + working-directory: ${{github.workspace}}/build + # Execute tests defined by the CMake configuration. + # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail + run: ctest -C ${{env.BUILD_TYPE}} + From 57240e41518e117393363f9db86976f0f0d54b42 Mon Sep 17 00:00:00 2001 From: Smail KOURTA Date: Thu, 7 Mar 2024 11:48:22 +0400 Subject: [PATCH 2/4] added building on PR on merge_attempt --- .github/workflows/cmake-single-platform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake-single-platform.yml b/.github/workflows/cmake-single-platform.yml index a2b3c7769..fb6345394 100644 --- a/.github/workflows/cmake-single-platform.yml +++ b/.github/workflows/cmake-single-platform.yml @@ -6,7 +6,7 @@ on: push: branches: [ "master", "merge_attempt" ] pull_request: - branches: [ "master" ] + branches: [ "master", "merge_attempt" ] env: # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) From 1fbb2dd0b479aa304524448cedbfaf05028446c9 Mon Sep 17 00:00:00 2001 From: Smail KOURTA Date: Thu, 7 Mar 2024 12:13:00 +0400 Subject: [PATCH 3/4] added paths to isl --- .github/workflows/cmake-single-platform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake-single-platform.yml b/.github/workflows/cmake-single-platform.yml index fb6345394..6d8a52a78 100644 --- a/.github/workflows/cmake-single-platform.yml +++ b/.github/workflows/cmake-single-platform.yml @@ -27,7 +27,7 @@ jobs: - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type - run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} + run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DISL_LIB_DIRECTORY=/tiramisu/tiramisu/3rdParty/isl/build/lib/ -DISL_INCLUDE_DIRECTORY=/tiramisu/tiramisu/3rdParty/isl/include - name: Build # Build your program with the given configuration From 9c08697412900eba210e8319f69a2e3c3d27ff64 Mon Sep 17 00:00:00 2001 From: Smail KOURTA Date: Thu, 7 Mar 2024 12:17:04 +0400 Subject: [PATCH 4/4] added path to tests in ctest command --- .github/workflows/cmake-single-platform.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/cmake-single-platform.yml b/.github/workflows/cmake-single-platform.yml index 6d8a52a78..779bbae43 100644 --- a/.github/workflows/cmake-single-platform.yml +++ b/.github/workflows/cmake-single-platform.yml @@ -34,8 +34,5 @@ jobs: run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} --target tiramisu_auto_scheduler - name: Test - working-directory: ${{github.workspace}}/build - # Execute tests defined by the CMake configuration. - # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail - run: ctest -C ${{env.BUILD_TYPE}} + run: ctest -C ${{env.BUILD_TYPE}} --test-dir ${{github.workspace}}/build