Skip to content
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 Windows/Linux no-dependency builds #1196

Merged
merged 12 commits into from
Apr 24, 2024

Conversation

sethrj
Copy link
Member

@sethrj sethrj commented Apr 21, 2024

The "build with zero dependencies" use case is helpful for trying to get up and running on a completely new experimental system. Adding a Windows build with error checking improves our ability to catch subtle mistakes, and improves downstream compatibility with SCALE (@hartsw ) and other users.

A follow-on request will fix the errors from no-JSON and MSVC.

Throwing from a C function with windows:
```
celeritas\src\corecel\sys\ScopedSignalHandler.cc(29): error C2220: the following warning is treated as an error
celeritas\src\corecel\sys\ScopedSignalHandler.cc(29): warning C4297: '`anonymous-namespace'::celer_set_signal': function assumed not to throw an exception but does
celeritas\src\corecel\sys\ScopedSignalHandler.cc(29): note: The function is extern "C" and /EHc was specified
```

Using `std::fma` in an integer template context:
```
celeritas\src\orange\MatrixUtils.cc(76): error C2220: the following warning is treated as an error
celeritas\src\orange\MatrixUtils.cc(76): warning C4244: '=': conversion from 'double' to 'int', possible loss of data
```

Missing include:
```
celeritas\src\orange\orangeinp\detail\PostfixLogicBuilder.cc(215): error C2039: 'sort': is not a member of 'std'
```

Not propagating compile flags to celer-g4 when Geant4 is disabled:
```
ostream(779): error C2220: the following warning is treated as an error
ostream(779): warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
```

Accidental use of real_type instead of size_type:
```
celeritas\src\celeritas\optical\detail\../OpticalGenData.hh(150): warning C4244: 'argument': conversion from 'const celeritas::real_type' to 'size_t', possible loss of data
```

Implicit truncation from real_type to size_type:
```
2024-04-21T11:40:36.2485761Z D:\a\celeritas\celeritas\src\celeritas/optical/ScintillationPreGenerator.hh(120): error C2220: the following warning is treated as an error
2024-04-21T11:40:36.2488477Z D:\a\celeritas\celeritas\src\celeritas/optical/ScintillationPreGenerator.hh(120): warning C4244: '=': conversion from 'T' to 'celeritas::size_type', possible loss of data
```
@sethrj sethrj added documentation Improvements or additions to documentation, examples, and tests enhancement New feature or request labels Apr 21, 2024
@sethrj sethrj requested a review from pcanal April 21, 2024 11:54
src/orange/MatrixUtils.cc Outdated Show resolved Hide resolved
src/celeritas/optical/OpticalGenData.hh Outdated Show resolved Hide resolved
.jenkins Show resolved Hide resolved
scripts/doc-requirements.txt Show resolved Hide resolved
@sethrj
Copy link
Member Author

sethrj commented Apr 24, 2024

Ping @pcanal

@pcanal
Copy link
Contributor

pcanal commented Apr 24, 2024

Ideally commit 524fbd4 (and any related addition) would become its own PR as it is distinct in nature (actual code fix) from the rest of the PR (infrastructure/CI extension).

@sethrj
Copy link
Member Author

sethrj commented Apr 24, 2024

@pcanal Agreed, I can do that.

@sethrj sethrj requested a review from pcanal April 24, 2024 18:57
Copy link
Contributor

@pcanal pcanal left a comment

Choose a reason for hiding this comment

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

LGTM

@sethrj sethrj merged commit 89336e5 into celeritas-project:develop Apr 24, 2024
25 of 28 checks passed
@sethrj sethrj deleted the windows-ci branch April 24, 2024 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation, examples, and tests enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants