diff --git a/.github/scripts/build_windows_executables.bat b/.github/scripts/build_windows_executables.bat index 70257fcb69..3d4efe2846 100644 --- a/.github/scripts/build_windows_executables.bat +++ b/.github/scripts/build_windows_executables.bat @@ -28,6 +28,7 @@ devenv vs-build/MoorDyn/MoorDynDriver.sln /Build "Release|x64" devenv vs-build/MoorDyn_c_binding/MoorDyn_c_binding.sln /Build "Release|x64" devenv vs-build/FAST/FAST.sln /Build "Release|x64" devenv vs-build/SeaState/SeaStateDriver.sln /Build "Release|x64" +devenv vs-build/SeaState_c_binding/SeaState_c_binding.sln /Build "Release|x64" devenv vs-build/SimpleElastoDyn/SimpleElastoDyn_Driver.sln /Build "Release|x64" devenv vs-build/SubDyn/SubDyn.sln /Build "Release|x64" devenv vs-build/TurbSim/TurbSim.vfproj /Build "Release|x64" diff --git a/.github/scripts/windows_devenv_test.bat b/.github/scripts/windows_devenv_test.bat new file mode 100644 index 0000000000..494a6edfbe --- /dev/null +++ b/.github/scripts/windows_devenv_test.bat @@ -0,0 +1,13 @@ +@REM Check if devenv actually works +for /f "usebackq tokens=1* delims=: " %%i in (`"C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" -latest`) do ( + if /i "%%i"=="productPath" set devenv=%%j +) + +@REM above command finds devenv.exe, but that opens the VS instance. We need the devenv.com version +set devenv=%devenv:devenv.exe=devenv.com% + +echo Using Visual Studio: %devenv% + +"%devenv%" /? + +exit /b %ERRORLEVEL% diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index adf3513704..a7819ab029 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -145,6 +145,10 @@ jobs: submodules: true fetch-depth: 0 + - name: Test devenv actually works + shell: cmd + run: .github/scripts/windows_devenv_test.bat + - name: Install Intel oneAPI BaseKit (Windows) shell: cmd env: diff --git a/vs-build/HydroDyn/HydroDynDriver.vfproj b/vs-build/HydroDyn/HydroDynDriver.vfproj index 3b057f9d10..6b4bd4fe78 100644 --- a/vs-build/HydroDyn/HydroDynDriver.vfproj +++ b/vs-build/HydroDyn/HydroDynDriver.vfproj @@ -437,7 +437,8 @@ - + + @@ -454,8 +455,7 @@ - - + @@ -472,7 +472,9 @@ - + + + @@ -488,8 +490,7 @@ - - + @@ -506,8 +507,7 @@ - - + diff --git a/vs-build/HydroDyn_c_binding/HydroDyn_c_binding.vfproj b/vs-build/HydroDyn_c_binding/HydroDyn_c_binding.vfproj index efe02d92b2..34780120da 100644 --- a/vs-build/HydroDyn_c_binding/HydroDyn_c_binding.vfproj +++ b/vs-build/HydroDyn_c_binding/HydroDyn_c_binding.vfproj @@ -214,7 +214,6 @@ - @@ -263,11 +262,12 @@ - - + + + @@ -382,5 +382,6 @@ + diff --git a/vs-build/MoorDyn/MoorDynDriver.vfproj b/vs-build/MoorDyn/MoorDynDriver.vfproj index 7dba18e7fa..9f7ac9fdfc 100644 --- a/vs-build/MoorDyn/MoorDynDriver.vfproj +++ b/vs-build/MoorDyn/MoorDynDriver.vfproj @@ -85,7 +85,6 @@ - @@ -251,5 +250,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vs-build/MoorDyn_c_binding/MoorDyn_c_binding.vfproj b/vs-build/MoorDyn_c_binding/MoorDyn_c_binding.vfproj index b70d760c32..f74ba72b6b 100644 --- a/vs-build/MoorDyn_c_binding/MoorDyn_c_binding.vfproj +++ b/vs-build/MoorDyn_c_binding/MoorDyn_c_binding.vfproj @@ -105,7 +105,6 @@ - @@ -273,5 +272,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/vs-build/SeaState/SeaStateDriver.vfproj b/vs-build/SeaState/SeaStateDriver.vfproj index 483c4ab25a..f0f29c7847 100644 --- a/vs-build/SeaState/SeaStateDriver.vfproj +++ b/vs-build/SeaState/SeaStateDriver.vfproj @@ -199,7 +199,8 @@ - + + @@ -212,8 +213,7 @@ - - + @@ -226,7 +226,9 @@ - + + + @@ -239,8 +241,6 @@ - - diff --git a/vs-build/SeaState_c_binding/SeaState_c_binding.sln b/vs-build/SeaState_c_binding/SeaState_c_binding.sln new file mode 100644 index 0000000000..16bae50940 --- /dev/null +++ b/vs-build/SeaState_c_binding/SeaState_c_binding.sln @@ -0,0 +1,64 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28307.902 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8A7732CE-4ADA-4074-973E-8E797747D444}") = "SeaState_c_binding", "SeaState_c_binding.vfproj", "{84782F71-FD4C-4427-AD62-B33EF3C9FFE2}" + ProjectSection(ProjectDependencies) = postProject + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16} = {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FAST_Registry", "..\Registry\FAST_Registry.vcxproj", "{DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug_Double|Win32 = Debug_Double|Win32 + Debug_Double|x64 = Debug_Double|x64 + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release_Double|Win32 = Release_Double|Win32 + Release_Double|x64 = Release_Double|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug_Double|Win32.ActiveCfg = Debug_Double|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug_Double|Win32.Build.0 = Debug_Double|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug_Double|x64.ActiveCfg = Debug_Double|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug_Double|x64.Build.0 = Debug_Double|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug|Win32.ActiveCfg = Debug|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug|Win32.Build.0 = Debug|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug|x64.ActiveCfg = Debug|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Debug|x64.Build.0 = Debug|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release_Double|Win32.ActiveCfg = Release_Double|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release_Double|Win32.Build.0 = Release_Double|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release_Double|x64.ActiveCfg = Release_Double|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release_Double|x64.Build.0 = Release_Double|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release|Win32.ActiveCfg = Release|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release|Win32.Build.0 = Release|Win32 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release|x64.ActiveCfg = Release|x64 + {84782F71-FD4C-4427-AD62-B33EF3C9FFE2}.Release|x64.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug_Double|Win32.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug_Double|Win32.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug_Double|x64.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug_Double|x64.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug|Win32.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug|Win32.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug|x64.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Debug|x64.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release_Double|Win32.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release_Double|Win32.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release_Double|x64.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release_Double|x64.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release|Win32.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release|Win32.Build.0 = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release|x64.ActiveCfg = Release|x64 + {DA16A3A6-3297-4628-9E46-C6FA0E3C4D16}.Release|x64.Build.0 = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {49DA4583-1BAB-4459-8F53-EB898075680D} + EndGlobalSection +EndGlobal diff --git a/vs-build/SeaState_c_binding/SeaState_c_binding.vfproj b/vs-build/SeaState_c_binding/SeaState_c_binding.vfproj new file mode 100644 index 0000000000..7ea7b9851b --- /dev/null +++ b/vs-build/SeaState_c_binding/SeaState_c_binding.vfproj @@ -0,0 +1,252 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +