-
Notifications
You must be signed in to change notification settings - Fork 111
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a workflow to create release build. #217
Conversation
- 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}} -DENABLE_TOOL=LLVM -S ${{github.workspace}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this will default to using g++ as the compiler. Is that desired?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This can be built with clang toolchain too, either works. Except for clang, we need to install necessary packages in the previous step.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should build the release binaries with clang to minimize surprises. Also the runner should already have clang-13 [1] on it so it's not necessary to install clang as a package.
https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. I will add -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ and test build on my personal repo.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM modulo the comment to use clang when building the binaries we release.
This PR setup a workflow to create a release build. Below is the steps to create a release
git tag <tag_name>
git push <repo> tag <tag_name>
This workflow can also be manually triggered to create a release for older versions.
The workflow shall be further improved so that we can create the release on the github webpage and let it trigger the release build.