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.
This PR contains two commits. One that updates the visual studio solution and project files associated with the mf6.exe and mf6.dll and the other updates the same files for zonebudget and MF5to6. They all still use ifort as the fortran compiler.
This will not invoke any tests, but I ran
pixi run autotest
on my local machine. All tests pass except for the following:I am unsure as to the cause of the libmf6.dll errors as the file is placed in the bin directory. It could also be that these tests have not been run with VS made dll targets in a while (or some quark of Windows). I will keep looking into it, but the original version of the dll project files would not compile at all for me initially.
The bulk of the changes are described in the git commit log. The major changes are that win32 is removed and all projects are setup to compile x64. The sln/vfproj files are updated to VS2022 format, which is backward compatible with VS2019.
The major fix is that mfbmi needed several modification to successfully compile with the current version of ifort in oneAPI (2021.12). In particular, mf6bmi required ignoring the LIBCMT, LIBCMTD, and LIBIFCOREMT (not originally there) and mf6 no longer required ignoring LIBCMT.
The project for Zonebudget now produces "zbud6.exe" as its output rather than "zonebudget.exe"
The Zonebudget and MF5to6 now produce their executables in the bin folder,
rather then using a post-build "copy" event.
Added /Qdiag-disable:10448 to suppress warning about ifort being deprecated.
The intermediate directory was changed from
$(ProjectName)/$(Platform)/$(ConfigurationName)
to
$(ProjectName)_$(Platform)_$(ConfigurationName)
to simply the structure from having multiply directories that contain nothing but a single directory.