Outdated getopt in windows/getopt. Used also for Linux/macOS CMake builds
The version of
getopt in windows/getopt is outdated. It's incompatible with the version that the Linux autotools builds use. The fix for !1561 (merged) in commit !1561 (997e12cf) shows this incompatibility.
Also, this outdated version is used by the CMake builds, regardless of which operating system you're on. I discovered this the hard way by an accidental (details provided on a need-to-know basis
windows/getopt in this Ubuntu CMake job.
My plan right now is to:
vcpkgto the windows/dependencies/libraries submodule
- Adapt the CMake builds to:
- Use the vcpkg version on Windows
- Use the native/Docker image version on Linux and hope that this also works on macOS
- Adapt the MSBuild builds to use the vcpkg version
My plan is to add a new
vcpkg top level directory to windows/dependencies/libraries so that libraries can be installed there directly without the need to figure out which file to put where in the old structure. In future, we can replace other outdated packages in the old structure with new ones installed with
I would very much like to hear your comments on this and the above.
As a reference, these are the
getopt files that are installed with vcpkg:
~/vcpkg/vcpkg-export-20200910-082739$ find . -type f ./.vcpkg-root ./installed/vcpkg/info/getopt-win32_0.1_x86-windows.list ./installed/vcpkg/info/getopt_0_x86-windows.list ./installed/x86-windows/bin/getopt.dll ./installed/x86-windows/bin/getopt.pdb ./installed/x86-windows/debug/bin/getopt.dll ./installed/x86-windows/debug/bin/getopt.pdb ./installed/x86-windows/debug/lib/getopt.lib ./installed/x86-windows/include/getopt.h ./installed/x86-windows/lib/getopt.lib ./installed/x86-windows/share/getopt/vcpkg_abi_info.txt ./installed/x86-windows/share/getopt-win32/copyright ./installed/x86-windows/share/getopt-win32/vcpkg_abi_info.txt ./scripts/buildsystems/msbuild/applocal.ps1 ./scripts/buildsystems/msbuild/vcpkg-general.xml ./scripts/buildsystems/msbuild/vcpkg.props ./scripts/buildsystems/msbuild/vcpkg.targets ./scripts/buildsystems/vcpkg.cmake ./scripts/cmake/vcpkg_get_windows_sdk.cmake