configure.ac | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-)
New commits: commit b92c822be84f2a82625e2ece3a91e7f95015d186 Author: Stephan Bergmann <sberg...@redhat.com> AuthorDate: Wed Oct 26 08:08:53 2022 +0200 Commit: Stephan Bergmann <sberg...@redhat.com> CommitDate: Wed Oct 26 09:43:46 2022 +0200 Support --with-visual-studio=2022preview ...for recent Visual Studio 2022 Preview 17.4.0 (which can be installed alongside a Visual Studio 2022 17.3.x release) Change-Id: I104363ac0007a84617486dd798d6c4fb9c0a5ea2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141855 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sberg...@redhat.com> diff --git a/configure.ac b/configure.ac index bacc245f9396..842721cc4427 100644 --- a/configure.ac +++ b/configure.ac @@ -2607,7 +2607,7 @@ libo_FUZZ_ARG_WITH(doxygen, ,with_doxygen=yes) AC_ARG_WITH(visual-studio, - AS_HELP_STRING([--with-visual-studio=<2019/2022>], + AS_HELP_STRING([--with-visual-studio=<2019/2022/2022preview>], [Specify which Visual Studio version to use in case several are installed. Currently 2019 (default) and 2022 are supported.]), ,) @@ -4021,6 +4021,8 @@ map_vs_year_to_version() vsversion=16;; 2022) vsversion=17;; + 2022preview) + vsversion=17.4;; *) AC_MSG_ERROR([Assertion failure - invalid argument "$1" to map_vs_year_to_version()]);; esac @@ -4115,14 +4117,14 @@ find_msvc() PathFormat "$vswhere" vswhere=$formatted_path_unix for ver in $vsversions; do - vswhereoutput=`$vswhere -version "@<:@ $ver , $(expr $ver + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` + vswhereoutput=`$vswhere -version "@<:@ $ver , $(expr ${ver%%.*} + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` if test -z "$vswhereoutput"; then - vswhereoutput=`$vswhere -prerelease -version "@<:@ $ver , $(expr $ver + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` + vswhereoutput=`$vswhere -prerelease -version "@<:@ $ver , $(expr ${ver%%.*} + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` fi # Fall back to all MS products (this includes VC++ Build Tools) if ! test -n "$vswhereoutput"; then AC_MSG_CHECKING([VC++ Build Tools and similar]) - vswhereoutput=`$vswhere -products \* -version "@<:@ $ver , $(expr $ver + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` + vswhereoutput=`$vswhere -products \* -version "@<:@ $ver , $(expr ${ver%%.*} + 1) @:}@" -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath | head -1` fi if test -n "$vswhereoutput"; then PathFormat "$vswhereoutput" @@ -4132,13 +4134,16 @@ find_msvc() done if test -n "$vctest"; then - vcnumwithdot="$ver.0" + vcnumwithdot="$ver" + if test "${vcnumwithdot%%.*}" = "$vcnumwithdot"; then + vcnumwithdot=$vcnumwithdot.0 + fi case "$vcnumwithdot" in 16.0) vcyear=2019 vctoolset=v142 ;; - 17.0) + 17.0 | 17.4) vcyear=2022 vctoolset=v143 ;; @@ -4310,7 +4315,7 @@ if test "$_os" = "WINNT"; then # are always "better", we list them in reverse chronological order. case "$vcnumwithdot" in - 16.0 | 17.0) + 16.0 | 17.0 | 17.4) WINDOWS_SDK_ACCEPTABLE_VERSIONS="10.0 8.1A 8.1 8.0" ;; esac @@ -6681,7 +6686,7 @@ find_msms() dnl the result will be the highest MSM version found in the highest directory. case "$VCVER" in - 16.0 | 17.0) + 16.0 | 17.0 | 17.4) my_msm_files="Microsoft_VC141_CRT_x86.msm Microsoft_VC142_CRT_x86.msm Microsoft_VC143_CRT_x86.msm ${my_msm_files}" ;; esac @@ -6691,7 +6696,7 @@ find_msms() msmdir= case "$VCVER" in - 16.0 | 17.0) + 16.0 | 17.0 | 17.4) for f in ${my_msm_files}; do for l in `ls -1 $VC_PRODUCT_DIR/redist/MSVC/`; do my_msm_dir="$VC_PRODUCT_DIR/redist/MSVC/$l/MergeModules/" @@ -6729,7 +6734,7 @@ find_msvc_x64_dlls() msvcdllpath="$VC_PRODUCT_DIR/redist/x64/Microsoft.VC${VCVER}.CRT" case "$VCVER" in - 16.0 | 17.0) + 16.0 | 17.0 | 17.4) for crtver in 141 142 143; do for l in `ls -1 $VC_PRODUCT_DIR/redist/MSVC/`; do echo "$as_me:$LINENO: testing $VC_PRODUCT_DIR/redist/MSVC/$l/x64/Microsoft.VC$crtver.CRT" >&5