-
Notifications
You must be signed in to change notification settings - Fork 74
Introduce FreeBSD CI #142
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
base: master
Are you sure you want to change the base?
Introduce FreeBSD CI #142
Conversation
|
steps: | ||
- name: Repository checkout | ||
uses: actions/checkout@v4 | ||
- uses: cross-platform-actions/action@9a4355714f90c057476048788b82147e99b7c0f0 # v0.28.0 + fix for 14.3 |
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.
- uses: cross-platform-actions/action@9a4355714f90c057476048788b82147e99b7c0f0 # v0.28.0 + fix for 14.3 | |
- uses: cross-platform-actions/action@v0.29 |
Could use this now right?
# Configure | ||
mkdir build && cd build | ||
cmake -DCMAKE_Fortran_COMPILER="/usr/local/bin/gfortran13" .. | ||
|
||
# Build | ||
gmake -j |
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.
Modern syntax:
# Configure | |
mkdir build && cd build | |
cmake -DCMAKE_Fortran_COMPILER="/usr/local/bin/gfortran13" .. | |
# Build | |
gmake -j | |
cmake \ | |
-B build \ | |
-DCMAKE_Fortran_COMPILER=gfortran13 | |
cmake --build build |
But is the CMAKE_Fortran_COMPILER
actually needed?
|
||
# Install dependencies | ||
sudo -E pkg install -y \ | ||
cmake gmake mpich gcc13 openblas |
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.
Is there no ninja-build
. It would be preferred for faster builds.
# Use latest package set | ||
sudo mkdir -p /usr/local/etc/pkg/repos/ | ||
sudo cp /etc/pkg/FreeBSD.conf /usr/local/etc/pkg/repos/FreeBSD.conf | ||
sudo sed -i.bak -e 's|/quarterly|/latest|' /usr/local/etc/pkg/repos/FreeBSD.conf |
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.
Any reason to test the latest and not the version specified above?
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.
All FreeBSD package repos are "rolling release". The difference between latest
and quarterly
is that the former rolls constantly while the latter rolls once in 3 months. It feels more natural for me to use latest
to detect breakages earlier.
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 don't have strong opinions on this as I am not familiar with the ecosystem, so I am ok with any. A FreeBSD packager like @yurivict if they are available to give feedback on this would be appreciated.
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'm a FreeBSD packager myself and latest
is what I'm pushing in various CIs:
https://github.com/klee/klee/blob/1c9fbc1013a6000b39615cc9a5aba83e43a4bf75/.cirrus.yml#L6
https://github.com/PackageKit/PackageKit/blob/a38188979def9f79157179056edd734dc3281cdf/.cirrus.yml#L8
Tests are not run at the moment because they cause the job to hang (or are they take so much time?)
This will be investigated later.