From 867550db434bfbdecd35a2714d60012932dbafe7 Mon Sep 17 00:00:00 2001 From: Charlie Savage Date: Fri, 1 Mar 2024 23:51:57 -0800 Subject: FindRuby: Add support for 3.3 --- Modules/FindRuby.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake index 4fe8bd5..029bdc2 100644 --- a/Modules/FindRuby.cmake +++ b/Modules/FindRuby.cmake @@ -8,7 +8,7 @@ FindRuby Find Ruby This module finds if Ruby is installed and determines where the -include files and libraries are. Ruby 1.8 through 3.2 are +include files and libraries are. Ruby 1.8 through 3.3 are supported. The minimum required version of Ruby can be specified using the @@ -136,13 +136,13 @@ set(Ruby_FIND_VERSION_SHORT_NODOT "${Ruby_FIND_VERSION_MAJOR}${Ruby_FIND_VERSION # Set name of possible executables, ignoring the minor # Eg: -# 2.1.1 => from ruby32 to ruby21 included -# 2.1 => from ruby32 to ruby21 included -# 2 => from ruby32 to ruby20 included -# empty => from ruby32 to ruby18 included +# 2.1.1 => from ruby33 to ruby21 included +# 2.1 => from ruby33 to ruby21 included +# 2 => from ruby33 to ruby20 included +# empty => from ruby33 to ruby18 included if(NOT Ruby_FIND_VERSION_EXACT) - foreach(_ruby_version RANGE 32 18 -1) + foreach(_ruby_version RANGE 33 18 -1) string(SUBSTRING "${_ruby_version}" 0 1 _ruby_major_version) string(SUBSTRING "${_ruby_version}" 1 1 _ruby_minor_version) -- cgit v0.12 From c2bf3e46faf8530ce176e564d779aafccaabbf7a Mon Sep 17 00:00:00 2001 From: Charlie Savage Date: Mon, 4 Mar 2024 19:23:06 -0800 Subject: FindRuby: Fix finding Ruby 3.1+ on Windows It switched to the UCRT C runtime. --- Modules/FindRuby.cmake | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Modules/FindRuby.cmake b/Modules/FindRuby.cmake index 029bdc2..4cc17c7 100644 --- a/Modules/FindRuby.cmake +++ b/Modules/FindRuby.cmake @@ -417,7 +417,7 @@ endif() set(_Ruby_POSSIBLE_LIB_NAMES ruby ruby-static ruby${_Ruby_VERSION_SHORT} ruby${_Ruby_VERSION_SHORT_NODOT} ruby${_Ruby_NODOT_VERSION} ruby-${_Ruby_VERSION_SHORT} ruby-${Ruby_VERSION}) if(WIN32) - set(_Ruby_POSSIBLE_MSVC_RUNTIMES "msvcrt;vcruntime140;vcruntime140_1") + set(_Ruby_POSSIBLE_MSVC_RUNTIMES "ucrt;msvcrt;vcruntime140;vcruntime140_1") if(MSVC_TOOLSET_VERSION) list(APPEND _Ruby_POSSIBLE_MSVC_RUNTIMES "msvcr${MSVC_TOOLSET_VERSION}") else() @@ -426,16 +426,19 @@ if(WIN32) set(_Ruby_POSSIBLE_VERSION_SUFFICES "${_Ruby_NODOT_VERSION};${_Ruby_NODOT_VERSION_ZERO_PATCH}") - set(_Ruby_ARCH_PREFIX "") if(CMAKE_SIZEOF_VOID_P EQUAL 8) - set(_Ruby_ARCH_PREFIX "x64-") + set(_Ruby_POSSIBLE_ARCH_PREFIXS "libx64-;x64-") + else() + set(_Ruby_POSSIBLE_ARCH_PREFIXS "lib") endif() foreach(_Ruby_MSVC_RUNTIME ${_Ruby_POSSIBLE_MSVC_RUNTIMES}) foreach(_Ruby_VERSION_SUFFIX ${_Ruby_POSSIBLE_VERSION_SUFFICES}) - list(APPEND _Ruby_POSSIBLE_LIB_NAMES - "${_Ruby_ARCH_PREFIX}${_Ruby_MSVC_RUNTIME}-ruby${_Ruby_VERSION_SUFFIX}" - "${_Ruby_ARCH_PREFIX}${_Ruby_MSVC_RUNTIME}-ruby${_Ruby_VERSION_SUFFIX}-static") + foreach(_Ruby_ARCH_PREFIX ${_Ruby_POSSIBLE_ARCH_PREFIXS}) + list(APPEND _Ruby_POSSIBLE_LIB_NAMES + "${_Ruby_ARCH_PREFIX}${_Ruby_MSVC_RUNTIME}-ruby${_Ruby_VERSION_SUFFIX}" + "${_Ruby_ARCH_PREFIX}${_Ruby_MSVC_RUNTIME}-ruby${_Ruby_VERSION_SUFFIX}-static") + endforeach() endforeach() endforeach() endif() -- cgit v0.12