-
Notifications
You must be signed in to change notification settings - Fork 25
Fix Windows build compatibility (MSVC cl.exe and clang-cl) #53
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
Open
lorisercole
wants to merge
39
commits into
wavefunction91:master
Choose a base branch
from
lorisercole:fix/msvc-build
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
39 commits
Select commit
Hold shift + click to select a range
8828179
Add MSVC native cl.exe build support
lorisercole 3829995
Silence noisy MSVC warnings
lorisercole 7d83223
manage warnings
lorisercole a266e2a
avoid clang warning: strdup
lorisercole 601f72e
formatting
lorisercole 871fcc1
Revert strdup and silence warning
lorisercole 3f417b3
Revert "Revert strdup and silence warning"
lorisercole 466a1f2
Fix portability and memory leak in exchcxx_exception::what()
lorisercole 4a931c3
comment cl warning suppression flags
lorisercole 5746023
fix(msvc): add /EHsc and /Zc:preprocessor
lorisercole 2e9de30
suppress(msvc): C4800 — implicit double-to-bool in generated kernel h…
lorisercole 1243e1b
suppress(msvc): C4514 — unreferenced inline functions removed by linker
lorisercole 106c044
suppress(msvc): C4710/C4711 — function inlining diagnostics
lorisercole 74d17d0
suppress(msvc): C4061 — enumerator not handled by explicit switch case
lorisercole 4cfce2a
suppress(msvc): C4266 — virtual function with no override available
lorisercole 5fd0d51
suppress(msvc): C4702 — unreachable code in kernel dispatch tables
lorisercole e7110fe
suppress(msvc): C4365 — signed/unsigned mismatch in STL-heavy code
lorisercole 87163da
suppress(msvc): C5045 — Spectre mitigation informational
lorisercole 0f179ab
suppress(msvc): C4820/C4626 — struct padding and deleted assignment
lorisercole ff42cd1
fix(msvc): C4100/C4101 — unused tau params and vtau_k in deorbitalize…
lorisercole 163be0e
fix(msvc): C4267 — size_t→int conversions in test files
lorisercole 38285fc
fix(msvc): C4018/C4701 in xc_kernel_test.cxx
lorisercole 46ba601
fix(msvc): C4189 — xcNumber unused when XC_MAJOR_VERSION <= 7
lorisercole a63ab7e
fix(msvc/gcc): C4267 in xc_functional_test.cxx — keep size_t, cast at…
lorisercole 853780f
refactor(msvc): move warning-suppression flags from build script to C…
lorisercole f526b7a
fix(msvc): C4267 — remaining size_t→int casts in kern.eval_* and comp…
lorisercole 6016041
fix(msvc): C4530 — add /EHsc via add_compile_options in top-level CMa…
lorisercole a5baf9b
fix(msvc): C4267 — npts should be int not size_t when sourced from re…
lorisercole 49ac834
refactor(clang-cl): align warning flags with MSVC policy
lorisercole 244fd15
build(clang-cl): add -Wall -Wextra policy flags to build script
lorisercole fff6bc9
fix(clang-cl): extend /EHsc to clang-cl — both cl and clang-cl accept it
lorisercole d92b809
build(clang-cl): reset the same CXX flags as the cl build script
lorisercole 945c055
build(msvc): guard GCC/Clang developer warning flags behind if(NOT MSVC)
lorisercole f92bed6
fix(clang-cl): suppress CRT deprecation warnings in FetchContent'd libxc
lorisercole 9bbf6eb
fix(msvc): add /permissive- globally to recognise C++ alternative tokens
lorisercole 79dfa6d
cleanup
lorisercole ace341e
fix: npts should be size_t in XCKernel Metadata Validity test
lorisercole c79b769
fix(msvc): scope /EHsc and /permissive- to CXX only
lorisercole 20a2d60
fix(msvc): make warning-suppression flags PRIVATE on exchcxx target
lorisercole File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,3 +1,4 @@ | ||
| build | ||
| .vscode | ||
| *.*.swp | ||
| build*/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| # patch_libxc_work_mgga.cmake | ||
| # Portable replacement for: | ||
| # sed -i -e "s/p->info->family != XC_KINETIC/p->info->kind != XC_KINETIC/g" src/work_mgga_inc.c | ||
| # Run from the libxc source directory via PATCH_COMMAND. | ||
|
|
||
| set(_file "src/work_mgga_inc.c") | ||
| if(NOT EXISTS "${_file}") | ||
| message(FATAL_ERROR "patch_libxc_work_mgga.cmake: ${_file} not found (cwd=${CMAKE_CURRENT_SOURCE_DIR})") | ||
| endif() | ||
|
|
||
| file(READ "${_file}" _content) | ||
| string(REPLACE "p->info->family != XC_KINETIC" "p->info->kind != XC_KINETIC" _content "${_content}") | ||
| file(WRITE "${_file}" "${_content}") | ||
|
lorisercole marked this conversation as resolved.
lorisercole marked this conversation as resolved.
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.