Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 2 additions & 13 deletions .github/workflows/sycl-linux-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -286,20 +286,9 @@ jobs:

- name: Install utilities
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
# TODO replace utility installation with a single CMake target
run: |
cmake --build $GITHUB_WORKSPACE/build --target utils/FileCheck/install
cmake --build $GITHUB_WORKSPACE/build --target utils/count/install
cmake --build $GITHUB_WORKSPACE/build --target utils/not/install
cmake --build $GITHUB_WORKSPACE/build --target utils/lit/install
cmake --build $GITHUB_WORKSPACE/build --target utils/llvm-lit/install
cmake --build $GITHUB_WORKSPACE/build --target install-llvm-size
cmake --build $GITHUB_WORKSPACE/build --target install-llvm-cov
cmake --build $GITHUB_WORKSPACE/build --target install-llvm-profdata
cmake --build $GITHUB_WORKSPACE/build --target install-compiler-rt
# This is required to perform the DeviceConfigFile consistency test, see
# sycl/test-e2e/Basic/device_config_file_consistency.cpp.
cmake --install $GITHUB_WORKSPACE/build --component DeviceConfigFile
cmake --build $GITHUB_WORKSPACE/build --target install-test-utilities

- name: Additional Install for "--shared-libs" build
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' && contains(inputs.build_configure_extra_args, '--shared-libs') }}
run: |
Expand Down
12 changes: 2 additions & 10 deletions .github/workflows/sycl-windows-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -221,17 +221,9 @@ jobs:
- name: Install utilities
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
shell: bash
# TODO replace utility installation with a single CMake target
run: |
cmake --build build --target utils/FileCheck/install
cmake --build build --target utils/count/install
cmake --build build --target utils/not/install
cmake --build build --target utils/lit/install
cmake --build build --target utils/llvm-lit/install
cmake --build build --target install-llvm-size
cmake --build build --target install-llvm-cov
cmake --build build --target install-llvm-profdata
cmake --build build --target install-compiler-rt
cmake --build $GITHUB_WORKSPACE/build --target install-test-utilities

- name: Pack toolchain
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
shell: bash
Expand Down
15 changes: 15 additions & 0 deletions sycl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -599,3 +599,18 @@ add_custom_target(deploy-sycl-toolchain
add_subdirectory(doc)
# SYCL End-to-End tests
add_subdirectory(test-e2e)

add_custom_target(install-test-utilities ALL
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we add sycl to the target name as this is not common to all the llvm tests? eg: llvm-size/llvm-profdata are not common.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ALL means this target will be built every time when we build, is this intended?
I think we probably want to remove it so that this is only done when called explicitly in the workflow.

COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target utils/FileCheck/install
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target utils/count/install
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target utils/not/install
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target utils/lit/install
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target utils/llvm-lit/install
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target install-llvm-size
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target install-llvm-cov
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target install-llvm-profdata
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR} --target install-compiler-rt
Comment on lines +604 to +612
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably better to use one cmake call with multiple targets? So that ninja can parallel the build if these utils are not yet built.

# This is required to perform the DeviceConfigFile consistency test, see
# sycl/test-e2e/Basic/device_config_file_consistency.cpp.
COMMAND ${CMAKE_COMMAND} --install ${CMAKE_BINARY_DIR} --component DeviceConfigFile
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this very specific to one test only? and Linux only? Can that test install the file itself when run?

)
Loading