public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-fs/dislocker/files/, sys-fs/dislocker/
@ 2020-07-27 14:51 Andreas Schuerch
  0 siblings, 0 replies; 2+ messages in thread
From: Andreas Schuerch @ 2020-07-27 14:51 UTC (permalink / raw
  To: gentoo-commits

commit:     4f2c7c42c3b24c86fcb599e0f2933d2ab7a64245
Author:     Andreas Schuerch <nativemad <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 27 14:49:08 2020 +0000
Commit:     Andreas Schuerch <nativemad <AT> gentoo <DOT> org>
CommitDate: Mon Jul 27 14:50:09 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4f2c7c42

sys-fs/dislocker: various fixes, bug 700784 & 732204

Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Schuerch <nativemad <AT> gentoo.org>

 ...ocker-9999.ebuild => dislocker-0.7.1-r3.ebuild} |  25 +-
 sys-fs/dislocker/dislocker-9999.ebuild             |  25 +-
 .../files/dislocker-0.7.1-fix-find-ruby.patch      | 671 +++++++++++++++++++++
 3 files changed, 707 insertions(+), 14 deletions(-)

diff --git a/sys-fs/dislocker/dislocker-9999.ebuild b/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
similarity index 56%
copy from sys-fs/dislocker/dislocker-9999.ebuild
copy to sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
index 08e0e54087a..a15c39558dd 100644
--- a/sys-fs/dislocker/dislocker-9999.ebuild
+++ b/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
 
-inherit cmake-utils flag-o-matic
+inherit cmake flag-o-matic
 
 DESCRIPTION="Dislocker is used to read BitLocker encrypted partitions."
 HOMEPAGE="https://github.com/Aorimn/dislocker"
@@ -27,24 +27,35 @@ DEPEND="
 "
 RDEPEND="${DEPEND}"
 
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindRuby"
+
 src_prepare() {
-	cmake-utils_src_prepare
+	if use ruby && [[ ${PV} == "0.7.1" ]]; then
+		PATCHES=( "${FILESDIR}/${P}-fix-find-ruby.patch" )
+	fi
+	cmake_src_prepare
 
 # We either need to change Werror to Wno-error or remove the multiple declarations of FORTIFY_SOURCE
 #    sed 's:Werror:Wno-error:g' -i "${S}/src/CMakeLists.txt" || die
 	sed 's:-D_FORTIFY_SOURCE=2::g' -i "${S}/src/CMakeLists.txt" || die
 
-	sed 's:\.\./man:'../../${P}/man':g' -i "${S}/src/CMakeLists.txt" || die
+#	sed 's:\.\./man:'../../${P}/man':g' -i "${S}/src/CMakeLists.txt" || die
+# Do not process compressed versions of the manuals
+	sed -r 's:( create_symlink \$\{BIN_FUSE\}\.1)\.gz (.+\.1)\.gz\\:\1 \2\\:' -i "${S}/src/CMakeLists.txt" || die
+	sed -r 's:^(.+\.1\.gz):#\1:' -i "${S}/src/CMakeLists.txt" || die
 }
 
 src_configure() {
 	mycmakeargs=(
-		$(cmake-utils_use_find_package ruby Ruby)
+		$(cmake_use_find_package ruby Ruby)
 	)
-	cmake-utils_src_configure
+	cmake_src_configure
 }
 
 src_install() {
+	if ! use ruby; then
+		rm "${S}/man/linux/${PN}-find.1" || die
+	fi
 	find "${S}/man/linux" -name '*.1' -exec doman '{}' +
-	cmake-utils_src_install
+	cmake_src_install
 }

diff --git a/sys-fs/dislocker/dislocker-9999.ebuild b/sys-fs/dislocker/dislocker-9999.ebuild
index 08e0e54087a..a15c39558dd 100644
--- a/sys-fs/dislocker/dislocker-9999.ebuild
+++ b/sys-fs/dislocker/dislocker-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
 
-inherit cmake-utils flag-o-matic
+inherit cmake flag-o-matic
 
 DESCRIPTION="Dislocker is used to read BitLocker encrypted partitions."
 HOMEPAGE="https://github.com/Aorimn/dislocker"
@@ -27,24 +27,35 @@ DEPEND="
 "
 RDEPEND="${DEPEND}"
 
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindRuby"
+
 src_prepare() {
-	cmake-utils_src_prepare
+	if use ruby && [[ ${PV} == "0.7.1" ]]; then
+		PATCHES=( "${FILESDIR}/${P}-fix-find-ruby.patch" )
+	fi
+	cmake_src_prepare
 
 # We either need to change Werror to Wno-error or remove the multiple declarations of FORTIFY_SOURCE
 #    sed 's:Werror:Wno-error:g' -i "${S}/src/CMakeLists.txt" || die
 	sed 's:-D_FORTIFY_SOURCE=2::g' -i "${S}/src/CMakeLists.txt" || die
 
-	sed 's:\.\./man:'../../${P}/man':g' -i "${S}/src/CMakeLists.txt" || die
+#	sed 's:\.\./man:'../../${P}/man':g' -i "${S}/src/CMakeLists.txt" || die
+# Do not process compressed versions of the manuals
+	sed -r 's:( create_symlink \$\{BIN_FUSE\}\.1)\.gz (.+\.1)\.gz\\:\1 \2\\:' -i "${S}/src/CMakeLists.txt" || die
+	sed -r 's:^(.+\.1\.gz):#\1:' -i "${S}/src/CMakeLists.txt" || die
 }
 
 src_configure() {
 	mycmakeargs=(
-		$(cmake-utils_use_find_package ruby Ruby)
+		$(cmake_use_find_package ruby Ruby)
 	)
-	cmake-utils_src_configure
+	cmake_src_configure
 }
 
 src_install() {
+	if ! use ruby; then
+		rm "${S}/man/linux/${PN}-find.1" || die
+	fi
 	find "${S}/man/linux" -name '*.1' -exec doman '{}' +
-	cmake-utils_src_install
+	cmake_src_install
 }

diff --git a/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch b/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch
new file mode 100644
index 00000000000..b5659f062cc
--- /dev/null
+++ b/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch
@@ -0,0 +1,671 @@
+diff -Nuar a/cmake/FindPackageHandleStandardArgs.cmake b/cmake/FindPackageHandleStandardArgs.cmake
+--- a/cmake/FindPackageHandleStandardArgs.cmake	1970-01-01 01:00:00.000000000 +0100
++++ b/cmake/FindPackageHandleStandardArgs.cmake	2020-03-04 11:38:51.062021412 +0100
+@@ -0,0 +1,258 @@
++# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
++# file Copyright.txt or https://cmake.org/licensing for details.
++
++include(${CMAKE_CURRENT_LIST_DIR}/FindPackageMessage.cmake)
++
++# internal helper macro
++macro(_FPHSA_FAILURE_MESSAGE _msg)
++  if (${_NAME}_FIND_REQUIRED)
++    message(FATAL_ERROR "${_msg}")
++  else ()
++    if (NOT ${_NAME}_FIND_QUIETLY)
++      message(STATUS "${_msg}")
++    endif ()
++  endif ()
++endmacro()
++
++
++# internal helper macro to generate the failure message when used in CONFIG_MODE:
++macro(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
++  # <PackageName>_CONFIG is set, but FOUND is false, this means that some other of the REQUIRED_VARS was not found:
++  if(${_NAME}_CONFIG)
++    _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: missing:${MISSING_VARS} (found ${${_NAME}_CONFIG} ${VERSION_MSG})")
++  else()
++    # If _CONSIDERED_CONFIGS is set, the config-file has been found, but no suitable version.
++    # List them all in the error message:
++    if(${_NAME}_CONSIDERED_CONFIGS)
++      set(configsText "")
++      list(LENGTH ${_NAME}_CONSIDERED_CONFIGS configsCount)
++      math(EXPR configsCount "${configsCount} - 1")
++      foreach(currentConfigIndex RANGE ${configsCount})
++        list(GET ${_NAME}_CONSIDERED_CONFIGS ${currentConfigIndex} filename)
++        list(GET ${_NAME}_CONSIDERED_VERSIONS ${currentConfigIndex} version)
++        string(APPEND configsText "    ${filename} (version ${version})\n")
++      endforeach()
++      if (${_NAME}_NOT_FOUND_MESSAGE)
++        string(APPEND configsText "    Reason given by package: ${${_NAME}_NOT_FOUND_MESSAGE}\n")
++      endif()
++      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} ${VERSION_MSG}, checked the following files:\n${configsText}")
++
++    else()
++      # Simple case: No Config-file was found at all:
++      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: found neither ${_NAME}Config.cmake nor ${_NAME_LOWER}-config.cmake ${VERSION_MSG}")
++    endif()
++  endif()
++endmacro()
++
++
++function(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
++
++# Set up the arguments for `cmake_parse_arguments`.
++  set(options  CONFIG_MODE  HANDLE_COMPONENTS)
++  set(oneValueArgs  FAIL_MESSAGE  VERSION_VAR  FOUND_VAR)
++  set(multiValueArgs REQUIRED_VARS)
++
++# Check whether we are in 'simple' or 'extended' mode:
++  set(_KEYWORDS_FOR_EXTENDED_MODE  ${options} ${oneValueArgs} ${multiValueArgs} )
++  list(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX)
++
++  if(${INDEX} EQUAL -1)
++    set(FPHSA_FAIL_MESSAGE ${_FIRST_ARG})
++    set(FPHSA_REQUIRED_VARS ${ARGN})
++    set(FPHSA_VERSION_VAR)
++  else()
++    cmake_parse_arguments(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}"  ${_FIRST_ARG} ${ARGN})
++
++    if(FPHSA_UNPARSED_ARGUMENTS)
++      message(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"")
++    endif()
++
++    if(NOT FPHSA_FAIL_MESSAGE)
++      set(FPHSA_FAIL_MESSAGE  "DEFAULT_MSG")
++    endif()
++
++    # In config-mode, we rely on the variable <PackageName>_CONFIG, which is set by find_package()
++    # when it successfully found the config-file, including version checking:
++    if(FPHSA_CONFIG_MODE)
++      list(INSERT FPHSA_REQUIRED_VARS 0 ${_NAME}_CONFIG)
++      list(REMOVE_DUPLICATES FPHSA_REQUIRED_VARS)
++      set(FPHSA_VERSION_VAR ${_NAME}_VERSION)
++    endif()
++
++    if(NOT FPHSA_REQUIRED_VARS)
++      message(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()")
++    endif()
++  endif()
++
++# now that we collected all arguments, process them
++
++  if("x${FPHSA_FAIL_MESSAGE}" STREQUAL "xDEFAULT_MSG")
++    set(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}")
++  endif()
++
++  list(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR)
++
++  string(TOUPPER ${_NAME} _NAME_UPPER)
++  string(TOLOWER ${_NAME} _NAME_LOWER)
++
++  if(FPHSA_FOUND_VAR)
++    if(FPHSA_FOUND_VAR MATCHES "^${_NAME}_FOUND$"  OR  FPHSA_FOUND_VAR MATCHES "^${_NAME_UPPER}_FOUND$")
++      set(_FOUND_VAR ${FPHSA_FOUND_VAR})
++    else()
++      message(FATAL_ERROR "The argument for FOUND_VAR is \"${FPHSA_FOUND_VAR}\", but only \"${_NAME}_FOUND\" and \"${_NAME_UPPER}_FOUND\" are valid names.")
++    endif()
++  else()
++    set(_FOUND_VAR ${_NAME_UPPER}_FOUND)
++  endif()
++
++  # collect all variables which were not found, so they can be printed, so the
++  # user knows better what went wrong (#6375)
++  set(MISSING_VARS "")
++  set(DETAILS "")
++  # check if all passed variables are valid
++  set(FPHSA_FOUND_${_NAME} TRUE)
++  foreach(_CURRENT_VAR ${FPHSA_REQUIRED_VARS})
++    if(NOT ${_CURRENT_VAR})
++      set(FPHSA_FOUND_${_NAME} FALSE)
++      string(APPEND MISSING_VARS " ${_CURRENT_VAR}")
++    else()
++      string(APPEND DETAILS "[${${_CURRENT_VAR}}]")
++    endif()
++  endforeach()
++  if(FPHSA_FOUND_${_NAME})
++    set(${_NAME}_FOUND TRUE)
++    set(${_NAME_UPPER}_FOUND TRUE)
++  else()
++    set(${_NAME}_FOUND FALSE)
++    set(${_NAME_UPPER}_FOUND FALSE)
++  endif()
++
++  # component handling
++  unset(FOUND_COMPONENTS_MSG)
++  unset(MISSING_COMPONENTS_MSG)
++
++  if(FPHSA_HANDLE_COMPONENTS)
++    foreach(comp ${${_NAME}_FIND_COMPONENTS})
++      if(${_NAME}_${comp}_FOUND)
++
++        if(NOT DEFINED FOUND_COMPONENTS_MSG)
++          set(FOUND_COMPONENTS_MSG "found components: ")
++        endif()
++        string(APPEND FOUND_COMPONENTS_MSG " ${comp}")
++
++      else()
++
++        if(NOT DEFINED MISSING_COMPONENTS_MSG)
++          set(MISSING_COMPONENTS_MSG "missing components: ")
++        endif()
++        string(APPEND MISSING_COMPONENTS_MSG " ${comp}")
++
++        if(${_NAME}_FIND_REQUIRED_${comp})
++          set(${_NAME}_FOUND FALSE)
++          string(APPEND MISSING_VARS " ${comp}")
++        endif()
++
++      endif()
++    endforeach()
++    set(COMPONENT_MSG "${FOUND_COMPONENTS_MSG} ${MISSING_COMPONENTS_MSG}")
++    string(APPEND DETAILS "[c${COMPONENT_MSG}]")
++  endif()
++
++  # version handling:
++  set(VERSION_MSG "")
++  set(VERSION_OK TRUE)
++
++  # check with DEFINED here as the requested or found version may be "0"
++  if (DEFINED ${_NAME}_FIND_VERSION)
++    if(DEFINED ${FPHSA_VERSION_VAR})
++      set(_FOUND_VERSION ${${FPHSA_VERSION_VAR}})
++
++      if(${_NAME}_FIND_VERSION_EXACT)       # exact version required
++        # count the dots in the version string
++        string(REGEX REPLACE "[^.]" "" _VERSION_DOTS "${_FOUND_VERSION}")
++        # add one dot because there is one dot more than there are components
++        string(LENGTH "${_VERSION_DOTS}." _VERSION_DOTS)
++        if (_VERSION_DOTS GREATER ${_NAME}_FIND_VERSION_COUNT)
++          # Because of the C++ implementation of find_package() ${_NAME}_FIND_VERSION_COUNT
++          # is at most 4 here. Therefore a simple lookup table is used.
++          if (${_NAME}_FIND_VERSION_COUNT EQUAL 1)
++            set(_VERSION_REGEX "[^.]*")
++          elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 2)
++            set(_VERSION_REGEX "[^.]*\\.[^.]*")
++          elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 3)
++            set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*")
++          else ()
++            set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*\\.[^.]*")
++          endif ()
++          string(REGEX REPLACE "^(${_VERSION_REGEX})\\..*" "\\1" _VERSION_HEAD "${_FOUND_VERSION}")
++          unset(_VERSION_REGEX)
++          if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _VERSION_HEAD)
++            set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
++            set(VERSION_OK FALSE)
++          else ()
++            set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
++          endif ()
++          unset(_VERSION_HEAD)
++        else ()
++          if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _FOUND_VERSION)
++            set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
++            set(VERSION_OK FALSE)
++          else ()
++            set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
++          endif ()
++        endif ()
++        unset(_VERSION_DOTS)
++
++      else()     # minimum version specified:
++        if (${_NAME}_FIND_VERSION VERSION_GREATER _FOUND_VERSION)
++          set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"")
++          set(VERSION_OK FALSE)
++        else ()
++          set(VERSION_MSG "(found suitable version \"${_FOUND_VERSION}\", minimum required is \"${${_NAME}_FIND_VERSION}\")")
++        endif ()
++      endif()
++
++    else()
++
++      # if the package was not found, but a version was given, add that to the output:
++      if(${_NAME}_FIND_VERSION_EXACT)
++         set(VERSION_MSG "(Required is exact version \"${${_NAME}_FIND_VERSION}\")")
++      else()
++         set(VERSION_MSG "(Required is at least version \"${${_NAME}_FIND_VERSION}\")")
++      endif()
++
++    endif()
++  else ()
++    # Check with DEFINED as the found version may be 0.
++    if(DEFINED ${FPHSA_VERSION_VAR})
++      set(VERSION_MSG "(found version \"${${FPHSA_VERSION_VAR}}\")")
++    endif()
++  endif ()
++
++  if(VERSION_OK)
++    string(APPEND DETAILS "[v${${FPHSA_VERSION_VAR}}(${${_NAME}_FIND_VERSION})]")
++  else()
++    set(${_NAME}_FOUND FALSE)
++  endif()
++
++
++  # print the result:
++  if (${_NAME}_FOUND)
++    FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG} ${COMPONENT_MSG}" "${DETAILS}")
++  else ()
++
++    if(FPHSA_CONFIG_MODE)
++      _FPHSA_HANDLE_FAILURE_CONFIG_MODE()
++    else()
++      if(NOT VERSION_OK)
++        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})")
++      else()
++        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} (missing:${MISSING_VARS}) ${VERSION_MSG}")
++      endif()
++    endif()
++
++  endif ()
++
++  set(${_NAME}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
++  set(${_NAME_UPPER}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
++endfunction()
+diff -Nuar a/cmake/FindPackageMessage.cmake b/cmake/FindPackageMessage.cmake
+--- a/cmake/FindPackageMessage.cmake	1970-01-01 01:00:00.000000000 +0100
++++ b/cmake/FindPackageMessage.cmake	2020-03-04 11:38:51.062021412 +0100
+@@ -0,0 +1,19 @@
++# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
++# file Copyright.txt or https://cmake.org/licensing for details.
++
++function(find_package_message pkg msg details)
++  # Avoid printing a message repeatedly for the same find result.
++  if(NOT ${pkg}_FIND_QUIETLY)
++    string(REPLACE "\n" "" details "${details}")
++    set(DETAILS_VAR FIND_PACKAGE_MESSAGE_DETAILS_${pkg})
++    if(NOT "${details}" STREQUAL "${${DETAILS_VAR}}")
++      # The message has not yet been printed.
++      message(STATUS "${msg}")
++
++      # Save the find details in the cache to avoid printing the same
++      # message again.
++      set("${DETAILS_VAR}" "${details}"
++        CACHE INTERNAL "Details about finding ${pkg}")
++    endif()
++  endif()
++endfunction()
+diff -Nuar a/cmake/FindRuby.cmake b/cmake/FindRuby.cmake
+--- a/cmake/FindRuby.cmake	2017-02-09 10:33:45.000000000 +0100
++++ b/cmake/FindRuby.cmake	2020-03-04 11:38:51.062021412 +0100
+@@ -1,89 +1,297 @@
+-# Ruby cmake package
+-#
+-# Returns
+-# RUBY_FOUND
+-# RUBY_INCLUDE_DIRS
+-# RUBY_LIBRARIES
+-# RUBY_VERSION_MAJOR
+-# RUBY_VERSION_MINOR
+-# RUBY_VERSION_STRING
+-
+-if(RUBY_FOUND)
+-   set(RUBY_FIND_QUIETLY TRUE)
+-endif()
+-
+-find_program(RUBY_EXECUTABLE
+-  NAMES ruby2.2 ruby22 ruby2.1 ruby21 ruby2.0 ruby2 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
+-  PATHS /usr/bin /usr/local/bin /usr/pkg/bin
+-  )
+-if(RUBY_EXECUTABLE)
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['MAJOR']"
+-    OUTPUT_VARIABLE RUBY_VERSION_MAJOR
+-    )
+-
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['MINOR']"
+-    OUTPUT_VARIABLE RUBY_VERSION_MINOR
+-    )
+-
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['TEENY']"
+-    OUTPUT_VARIABLE RUBY_VERSION_TEENY
+-    )
+-  set(RUBY_VERSION_STRING ${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}.${RUBY_VERSION_TEENY})
+-
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
+-    OUTPUT_VARIABLE RUBY_ARCH_DIR
+-    )
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
+-    OUTPUT_VARIABLE RUBY_ARCH
+-    )
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
+-    OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
+-    )
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
+-    OUTPUT_VARIABLE RUBY_LIB_PATH
+-    )
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['archincludedir']"
+-    OUTPUT_VARIABLE RUBY_ARCH_INC_DIR
+-    )
+-  execute_process(
+-    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['RUBY_SO_NAME']"
+-    OUTPUT_VARIABLE RUBY_SO_NAME
+-    )
+-
+-  find_path(RUBY_INCLUDE_DIRS
+-    NAMES ruby.h ruby/config.h
+-    PATHS ${RUBY_ARCH_DIR}
+-    )
+-  set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
+-  find_library(RUBY_LIB
+-    NAMES ${RUBY_SO_NAME}
+-    PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
+-    )
+-
+-  if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
+-    set(RUBY_FOUND TRUE)
+-    set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH};${RUBY_ARCH_INC_DIR}/ruby-${RUBY_VERSION_STRING}")
+-    set(RUBY_LIBRARIES ${RUBY_LIB})
+-  endif()
++# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
++# file Copyright.txt or https://cmake.org/licensing for details.
++
++#[[
++FindRuby
++--------
++
++This module finds if Ruby is installed and determines where the
++include files and libraries are.  Ruby 1.8, 1.9, 2.0 through 2.5 are
++supported.
++
++The minimum required version of Ruby can be specified using the
++standard syntax, e.g.  find_package(Ruby 1.8)
++
++It also determines what the name of the library is.  This code sets
++the following variables:
++
++RUBY_EXECUTABLE
++    full path to the ruby binary
++RUBY_INCLUDE_DIRS
++    include dirs to be used when using the ruby library
++RUBY_LIBRARY
++    full path to the ruby library
++RUBY_VERSION
++    the version of ruby which was found, e.g. "1.8.7"
++RUBY_FOUND
++    set to true if ruby ws found successfully
+ 
+-  if(RUBY_OLD_VERSION)
+-    set(RUBY_FOUND FALSE)
+-    set(RUBY_NOT_FOUND TRUE)
++Also:
++
++RUBY_INCLUDE_PATH
++    same as RUBY_INCLUDE_DIRS, only provided for compatibility reasons, don't use it
++#]]
++
++#   RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'`
++#   RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'`
++#   RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'`
++#   RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'`
++#   RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
++
++# uncomment the following line to get debug output for this file
++set(_RUBY_DEBUG_OUTPUT TRUE)
++
++# Determine the list of possible names of the ruby executable depending
++# on which version of ruby is required
++set(_RUBY_POSSIBLE_EXECUTABLE_NAMES ruby)
++
++# if 1.9 is required, don't look for ruby18 and ruby1.8, default to version 1.8
++if(DEFINED Ruby_FIND_VERSION_MAJOR AND DEFINED Ruby_FIND_VERSION_MINOR)
++   set(Ruby_FIND_VERSION_SHORT_NODOT "${Ruby_FIND_VERSION_MAJOR}${RUBY_FIND_VERSION_MINOR}")
++   # we can't construct that if only major version is given
++   set(_RUBY_POSSIBLE_EXECUTABLE_NAMES
++       ruby${Ruby_FIND_VERSION_MAJOR}.${Ruby_FIND_VERSION_MINOR}
++       ruby${Ruby_FIND_VERSION_MAJOR}${Ruby_FIND_VERSION_MINOR}
++       ${_RUBY_POSSIBLE_EXECUTABLE_NAMES})
++else()
++   set(Ruby_FIND_VERSION_SHORT_NODOT "18")
++endif()
++
++if(NOT Ruby_FIND_VERSION_EXACT)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.5 ruby25)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.4 ruby24)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.3 ruby23)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.2 ruby22)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.1 ruby21)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.0 ruby20)
++  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby1.9 ruby19)
++
++  # if we want a version below 1.9, also look for ruby 1.8
++  if("${Ruby_FIND_VERSION_SHORT_NODOT}" VERSION_LESS "19")
++    list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby1.8 ruby18)
+   endif()
+ 
+-  mark_as_advanced(
+-    RUBY_INCLUDE_DIRS
+-    RUBY_LIBRARIES
+-    RUBY_LIB
+-    RUBY_VERSION_MAJOR RUBY_VERSION_MINOR
+-    RUBY_VERSION_STRING
+-    )
++  list(REMOVE_DUPLICATES _RUBY_POSSIBLE_EXECUTABLE_NAMES)
++endif()
++
++find_program(RUBY_EXECUTABLE NAMES ${_RUBY_POSSIBLE_EXECUTABLE_NAMES})
++
++if(RUBY_EXECUTABLE  AND NOT  RUBY_VERSION_MAJOR)
++  function(_RUBY_CONFIG_VAR RBVAR OUTVAR)
++    execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['${RBVAR}']"
++      RESULT_VARIABLE _RUBY_SUCCESS
++      OUTPUT_VARIABLE _RUBY_OUTPUT
++      ERROR_QUIET)
++    if(_RUBY_SUCCESS OR _RUBY_OUTPUT STREQUAL "")
++      execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['${RBVAR}']"
++        RESULT_VARIABLE _RUBY_SUCCESS
++        OUTPUT_VARIABLE _RUBY_OUTPUT
++        ERROR_QUIET)
++    endif()
++    set(${OUTVAR} "${_RUBY_OUTPUT}" PARENT_SCOPE)
++  endfunction()
++
++
++  # query the ruby version
++   _RUBY_CONFIG_VAR("MAJOR" RUBY_VERSION_MAJOR)
++   _RUBY_CONFIG_VAR("MINOR" RUBY_VERSION_MINOR)
++   _RUBY_CONFIG_VAR("TEENY" RUBY_VERSION_PATCH)
++
++   # query the different directories
++   _RUBY_CONFIG_VAR("archdir" RUBY_ARCH_DIR)
++   _RUBY_CONFIG_VAR("arch" RUBY_ARCH)
++   _RUBY_CONFIG_VAR("rubyhdrdir" RUBY_HDR_DIR)
++   _RUBY_CONFIG_VAR("rubyarchhdrdir" RUBY_ARCHHDR_DIR)
++   _RUBY_CONFIG_VAR("libdir" RUBY_POSSIBLE_LIB_DIR)
++   _RUBY_CONFIG_VAR("rubylibdir" RUBY_RUBY_LIB_DIR)
++
++   # site_ruby
++   _RUBY_CONFIG_VAR("sitearchdir" RUBY_SITEARCH_DIR)
++   _RUBY_CONFIG_VAR("sitelibdir" RUBY_SITELIB_DIR)
++
++   # vendor_ruby available ?
++   execute_process(COMMAND ${RUBY_EXECUTABLE} -r vendor-specific -e "print 'true'"
++      OUTPUT_VARIABLE RUBY_HAS_VENDOR_RUBY  ERROR_QUIET)
++
++   if(RUBY_HAS_VENDOR_RUBY)
++      _RUBY_CONFIG_VAR("vendorlibdir" RUBY_VENDORLIB_DIR)
++      _RUBY_CONFIG_VAR("vendorarchdir" RUBY_VENDORARCH_DIR)
++   endif()
++
++   # save the results in the cache so we don't have to run ruby the next time again
++   set(RUBY_VERSION_MAJOR    ${RUBY_VERSION_MAJOR}    CACHE PATH "The Ruby major version" FORCE)
++   set(RUBY_VERSION_MINOR    ${RUBY_VERSION_MINOR}    CACHE PATH "The Ruby minor version" FORCE)
++   set(RUBY_VERSION_PATCH    ${RUBY_VERSION_PATCH}    CACHE PATH "The Ruby patch version" FORCE)
++   set(RUBY_ARCH_DIR         ${RUBY_ARCH_DIR}         CACHE PATH "The Ruby arch dir" FORCE)
++   set(RUBY_HDR_DIR          ${RUBY_HDR_DIR}          CACHE PATH "The Ruby header dir (1.9+)" FORCE)
++   set(RUBY_ARCHHDR_DIR      ${RUBY_ARCHHDR_DIR}      CACHE PATH "The Ruby arch header dir (2.0+)" FORCE)
++   set(RUBY_POSSIBLE_LIB_DIR ${RUBY_POSSIBLE_LIB_DIR} CACHE PATH "The Ruby lib dir" FORCE)
++   set(RUBY_RUBY_LIB_DIR     ${RUBY_RUBY_LIB_DIR}     CACHE PATH "The Ruby ruby-lib dir" FORCE)
++   set(RUBY_SITEARCH_DIR     ${RUBY_SITEARCH_DIR}     CACHE PATH "The Ruby site arch dir" FORCE)
++   set(RUBY_SITELIB_DIR      ${RUBY_SITELIB_DIR}      CACHE PATH "The Ruby site lib dir" FORCE)
++   set(RUBY_HAS_VENDOR_RUBY  ${RUBY_HAS_VENDOR_RUBY}  CACHE BOOL "Vendor Ruby is available" FORCE)
++   set(RUBY_VENDORARCH_DIR   ${RUBY_VENDORARCH_DIR}   CACHE PATH "The Ruby vendor arch dir" FORCE)
++   set(RUBY_VENDORLIB_DIR    ${RUBY_VENDORLIB_DIR}    CACHE PATH "The Ruby vendor lib dir" FORCE)
++
++   mark_as_advanced(
++     RUBY_ARCH_DIR
++     RUBY_ARCH
++     RUBY_HDR_DIR
++     RUBY_ARCHHDR_DIR
++     RUBY_POSSIBLE_LIB_DIR
++     RUBY_RUBY_LIB_DIR
++     RUBY_SITEARCH_DIR
++     RUBY_SITELIB_DIR
++     RUBY_HAS_VENDOR_RUBY
++     RUBY_VENDORARCH_DIR
++     RUBY_VENDORLIB_DIR
++     RUBY_VERSION_MAJOR
++     RUBY_VERSION_MINOR
++     RUBY_VERSION_PATCH
++     )
++endif()
++
++# In case RUBY_EXECUTABLE could not be executed (e.g. cross compiling)
++# try to detect which version we found. This is not too good.
++if(RUBY_EXECUTABLE AND NOT RUBY_VERSION_MAJOR)
++   # by default assume 1.8.0
++   set(RUBY_VERSION_MAJOR 1)
++   set(RUBY_VERSION_MINOR 8)
++   set(RUBY_VERSION_PATCH 0)
++   # check whether we found 1.9.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby1\\.?9")
++      set(RUBY_VERSION_MAJOR 1)
++      set(RUBY_VERSION_MINOR 9)
++   endif()
++   # check whether we found 2.0.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?0")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 0)
++   endif()
++   # check whether we found 2.1.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?1")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 1)
++   endif()
++   # check whether we found 2.2.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?2")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 2)
++   endif()
++   # check whether we found 2.3.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?3")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 3)
++   endif()
++   # check whether we found 2.4.x
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?4")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 4)
++   endif()
++   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?5")
++      set(RUBY_VERSION_MAJOR 2)
++      set(RUBY_VERSION_MINOR 5)
++   endif()
+ endif()
++
++if(RUBY_VERSION_MAJOR)
++   set(RUBY_VERSION "${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}.${RUBY_VERSION_PATCH}")
++   set(_RUBY_VERSION_SHORT "${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}")
++   set(_RUBY_VERSION_SHORT_NODOT "${RUBY_VERSION_MAJOR}${RUBY_VERSION_MINOR}")
++   set(_RUBY_NODOT_VERSION "${RUBY_VERSION_MAJOR}${RUBY_VERSION_MINOR}${RUBY_VERSION_PATCH}")
++endif()
++
++find_path(RUBY_INCLUDE_DIR
++   NAMES ruby.h
++   HINTS
++   ${RUBY_HDR_DIR}
++   ${RUBY_ARCH_DIR}
++   /usr/lib/ruby/${_RUBY_VERSION_SHORT}/i586-linux-gnu/ )
++
++set(RUBY_INCLUDE_DIRS ${RUBY_INCLUDE_DIR} )
++
++# if ruby > 1.8 is required or if ruby > 1.8 was found, search for the config.h dir
++if( "${Ruby_FIND_VERSION_SHORT_NODOT}" GREATER 18  OR  "${_RUBY_VERSION_SHORT_NODOT}" GREATER 18  OR  RUBY_HDR_DIR)
++   find_path(RUBY_CONFIG_INCLUDE_DIR
++     NAMES ruby/config.h  config.h
++     HINTS
++     ${RUBY_HDR_DIR}/${RUBY_ARCH}
++     ${RUBY_ARCH_DIR}
++     ${RUBY_ARCHHDR_DIR}
++     )
++
++   set(RUBY_INCLUDE_DIRS ${RUBY_INCLUDE_DIRS} ${RUBY_CONFIG_INCLUDE_DIR} )
++endif()
++
++
++# Determine the list of possible names for the ruby library
++set(_RUBY_POSSIBLE_LIB_NAMES ruby ruby-static ruby${_RUBY_VERSION_SHORT} ruby${_RUBY_VERSION_SHORT_NODOT} ruby-${_RUBY_VERSION_SHORT} ruby-${RUBY_VERSION})
++
++if(WIN32)
++   set( _RUBY_MSVC_RUNTIME "" )
++   if( MSVC_VERSION EQUAL 1200 )
++     set( _RUBY_MSVC_RUNTIME "60" )
++   endif()
++   if( MSVC_VERSION EQUAL 1300 )
++     set( _RUBY_MSVC_RUNTIME "70" )
++   endif()
++   if( MSVC_VERSION EQUAL 1310 )
++     set( _RUBY_MSVC_RUNTIME "71" )
++   endif()
++   if( MSVC_VERSION EQUAL 1400 )
++     set( _RUBY_MSVC_RUNTIME "80" )
++   endif()
++   if( MSVC_VERSION EQUAL 1500 )
++     set( _RUBY_MSVC_RUNTIME "90" )
++   endif()
++
++   set(_RUBY_ARCH_PREFIX "")
++   if(CMAKE_SIZEOF_VOID_P EQUAL 8)
++     set(_RUBY_ARCH_PREFIX "x64-")
++   endif()
++
++   list(APPEND _RUBY_POSSIBLE_LIB_NAMES
++               "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}"
++               "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}-static"
++               "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}"
++               "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}-static" )
++endif()
++
++find_library(RUBY_LIBRARY NAMES ${_RUBY_POSSIBLE_LIB_NAMES} HINTS ${RUBY_POSSIBLE_LIB_DIR} )
++
++include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
++set(_RUBY_REQUIRED_VARS RUBY_EXECUTABLE RUBY_INCLUDE_DIR RUBY_LIBRARY)
++if(_RUBY_VERSION_SHORT_NODOT GREATER 18)
++   list(APPEND _RUBY_REQUIRED_VARS RUBY_CONFIG_INCLUDE_DIR)
++endif()
++
++if(_RUBY_DEBUG_OUTPUT)
++   message(STATUS "--------FindRuby.cmake debug------------")
++   message(STATUS "_RUBY_POSSIBLE_EXECUTABLE_NAMES: ${_RUBY_POSSIBLE_EXECUTABLE_NAMES}")
++   message(STATUS "_RUBY_POSSIBLE_LIB_NAMES: ${_RUBY_POSSIBLE_LIB_NAMES}")
++   message(STATUS "RUBY_ARCH_DIR: ${RUBY_ARCH_DIR}")
++   message(STATUS "RUBY_HDR_DIR: ${RUBY_HDR_DIR}")
++   message(STATUS "RUBY_POSSIBLE_LIB_DIR: ${RUBY_POSSIBLE_LIB_DIR}")
++   message(STATUS "Found RUBY_VERSION: \"${RUBY_VERSION}\" , short: \"${_RUBY_VERSION_SHORT}\", nodot: \"${_RUBY_VERSION_SHORT_NODOT}\"")
++   message(STATUS "_RUBY_REQUIRED_VARS: ${_RUBY_REQUIRED_VARS}")
++   message(STATUS "RUBY_EXECUTABLE: ${RUBY_EXECUTABLE}")
++   message(STATUS "RUBY_LIBRARY: ${RUBY_LIBRARY}")
++   message(STATUS "RUBY_INCLUDE_DIR: ${RUBY_INCLUDE_DIR}")
++   message(STATUS "RUBY_CONFIG_INCLUDE_DIR: ${RUBY_CONFIG_INCLUDE_DIR}")
++   message(STATUS "--------------------")
++endif()
++
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(Ruby  REQUIRED_VARS  ${_RUBY_REQUIRED_VARS}
++                                        VERSION_VAR RUBY_VERSION )
++
++mark_as_advanced(
++  RUBY_EXECUTABLE
++  RUBY_LIBRARY
++  RUBY_INCLUDE_DIR
++  RUBY_CONFIG_INCLUDE_DIR
++  )
++
++# Set some variables for compatibility with previous version of this file
++set(RUBY_POSSIBLE_LIB_PATH ${RUBY_POSSIBLE_LIB_DIR})
++set(RUBY_RUBY_LIB_PATH ${RUBY_RUBY_LIB_DIR})
++set(RUBY_INCLUDE_PATH ${RUBY_INCLUDE_DIRS})


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: sys-fs/dislocker/files/, sys-fs/dislocker/
@ 2020-11-15 15:31 Joonas Niilola
  0 siblings, 0 replies; 2+ messages in thread
From: Joonas Niilola @ 2020-11-15 15:31 UTC (permalink / raw
  To: gentoo-commits

commit:     8abbcea6c078df83ec27638f56e14bb46192b0b4
Author:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 15 13:41:54 2020 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sun Nov 15 15:31:18 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8abbcea6

sys-fs/dislocker: fix SizeViolation issue

Closes: https://bugs.gentoo.org/748222
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 sys-fs/dislocker/Manifest                          |   1 +
 sys-fs/dislocker/dislocker-0.7.1-r3.ebuild         |   5 +-
 sys-fs/dislocker/dislocker-9999.ebuild             |   5 +-
 .../files/dislocker-0.7.1-fix-find-ruby.patch      | 671 ---------------------
 4 files changed, 7 insertions(+), 675 deletions(-)

diff --git a/sys-fs/dislocker/Manifest b/sys-fs/dislocker/Manifest
index 5765522a20e..40ff38a7b8f 100644
--- a/sys-fs/dislocker/Manifest
+++ b/sys-fs/dislocker/Manifest
@@ -1 +1,2 @@
+DIST dislocker-0.7.1-fix-find-ruby.patch 25942 BLAKE2B bd9d93c5eddcbade0039c1787dae36f5dd01f91cd435dfb9dbcfcb16f0f09cba7e73a3221c8b2f3843d0a68199fb9e38bdb91428fa784442659f7af53ab6d4dd SHA512 70f5a628659ef4645d757b899f3e6310e3a4d2ab89f429748c711177a0944e9b0eabf5341e394ab09216b0fa18e3c2b0832406b27f40c04510df937ffe5f65ef
 DIST dislocker-0.7.1.tar.gz 103194 BLAKE2B 05421b0d3e7686480e40a41e67086017c454b76e0852fef78a7b5d10134cf388b4bf7b9669d87b867418f4c074cc023ea9b0260dbdbc837322d04f217aa40b28 SHA512 8852ba3e363fdea992eebecfe1e4dad2b85404f57c57ce6b2937a9859d03cfa88d969926c9e11e6d22596c6d96805b7d1737893ae2c5a957448ab26708bce226

diff --git a/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild b/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
index a15c39558dd..73f3b33aa54 100644
--- a/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
+++ b/sys-fs/dislocker/dislocker-0.7.1-r3.ebuild
@@ -12,7 +12,8 @@ if [[ ${PV} == *9999* ]]; then
 	EGIT_REPO_URI="https://github.com/Aorimn/dislocker.git"
 	inherit git-r3
 else
-	SRC_URI="https://github.com/Aorimn/dislocker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	SRC_URI="https://github.com/Aorimn/dislocker/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	https://dev.gentoo.org/~juippis/distfiles/tmp/dislocker-0.7.1-fix-find-ruby.patch"
 	KEYWORDS="~amd64 ~x86"
 fi
 
@@ -31,7 +32,7 @@ CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindRuby"
 
 src_prepare() {
 	if use ruby && [[ ${PV} == "0.7.1" ]]; then
-		PATCHES=( "${FILESDIR}/${P}-fix-find-ruby.patch" )
+		PATCHES=( "${DISTDIR}/${P}-fix-find-ruby.patch" )
 	fi
 	cmake_src_prepare
 

diff --git a/sys-fs/dislocker/dislocker-9999.ebuild b/sys-fs/dislocker/dislocker-9999.ebuild
index a15c39558dd..73f3b33aa54 100644
--- a/sys-fs/dislocker/dislocker-9999.ebuild
+++ b/sys-fs/dislocker/dislocker-9999.ebuild
@@ -12,7 +12,8 @@ if [[ ${PV} == *9999* ]]; then
 	EGIT_REPO_URI="https://github.com/Aorimn/dislocker.git"
 	inherit git-r3
 else
-	SRC_URI="https://github.com/Aorimn/dislocker/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	SRC_URI="https://github.com/Aorimn/dislocker/archive/v${PV}.tar.gz -> ${P}.tar.gz
+	https://dev.gentoo.org/~juippis/distfiles/tmp/dislocker-0.7.1-fix-find-ruby.patch"
 	KEYWORDS="~amd64 ~x86"
 fi
 
@@ -31,7 +32,7 @@ CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindRuby"
 
 src_prepare() {
 	if use ruby && [[ ${PV} == "0.7.1" ]]; then
-		PATCHES=( "${FILESDIR}/${P}-fix-find-ruby.patch" )
+		PATCHES=( "${DISTDIR}/${P}-fix-find-ruby.patch" )
 	fi
 	cmake_src_prepare
 

diff --git a/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch b/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch
deleted file mode 100644
index b5659f062cc..00000000000
--- a/sys-fs/dislocker/files/dislocker-0.7.1-fix-find-ruby.patch
+++ /dev/null
@@ -1,671 +0,0 @@
-diff -Nuar a/cmake/FindPackageHandleStandardArgs.cmake b/cmake/FindPackageHandleStandardArgs.cmake
---- a/cmake/FindPackageHandleStandardArgs.cmake	1970-01-01 01:00:00.000000000 +0100
-+++ b/cmake/FindPackageHandleStandardArgs.cmake	2020-03-04 11:38:51.062021412 +0100
-@@ -0,0 +1,258 @@
-+# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
-+# file Copyright.txt or https://cmake.org/licensing for details.
-+
-+include(${CMAKE_CURRENT_LIST_DIR}/FindPackageMessage.cmake)
-+
-+# internal helper macro
-+macro(_FPHSA_FAILURE_MESSAGE _msg)
-+  if (${_NAME}_FIND_REQUIRED)
-+    message(FATAL_ERROR "${_msg}")
-+  else ()
-+    if (NOT ${_NAME}_FIND_QUIETLY)
-+      message(STATUS "${_msg}")
-+    endif ()
-+  endif ()
-+endmacro()
-+
-+
-+# internal helper macro to generate the failure message when used in CONFIG_MODE:
-+macro(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
-+  # <PackageName>_CONFIG is set, but FOUND is false, this means that some other of the REQUIRED_VARS was not found:
-+  if(${_NAME}_CONFIG)
-+    _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: missing:${MISSING_VARS} (found ${${_NAME}_CONFIG} ${VERSION_MSG})")
-+  else()
-+    # If _CONSIDERED_CONFIGS is set, the config-file has been found, but no suitable version.
-+    # List them all in the error message:
-+    if(${_NAME}_CONSIDERED_CONFIGS)
-+      set(configsText "")
-+      list(LENGTH ${_NAME}_CONSIDERED_CONFIGS configsCount)
-+      math(EXPR configsCount "${configsCount} - 1")
-+      foreach(currentConfigIndex RANGE ${configsCount})
-+        list(GET ${_NAME}_CONSIDERED_CONFIGS ${currentConfigIndex} filename)
-+        list(GET ${_NAME}_CONSIDERED_VERSIONS ${currentConfigIndex} version)
-+        string(APPEND configsText "    ${filename} (version ${version})\n")
-+      endforeach()
-+      if (${_NAME}_NOT_FOUND_MESSAGE)
-+        string(APPEND configsText "    Reason given by package: ${${_NAME}_NOT_FOUND_MESSAGE}\n")
-+      endif()
-+      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} ${VERSION_MSG}, checked the following files:\n${configsText}")
-+
-+    else()
-+      # Simple case: No Config-file was found at all:
-+      _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: found neither ${_NAME}Config.cmake nor ${_NAME_LOWER}-config.cmake ${VERSION_MSG}")
-+    endif()
-+  endif()
-+endmacro()
-+
-+
-+function(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
-+
-+# Set up the arguments for `cmake_parse_arguments`.
-+  set(options  CONFIG_MODE  HANDLE_COMPONENTS)
-+  set(oneValueArgs  FAIL_MESSAGE  VERSION_VAR  FOUND_VAR)
-+  set(multiValueArgs REQUIRED_VARS)
-+
-+# Check whether we are in 'simple' or 'extended' mode:
-+  set(_KEYWORDS_FOR_EXTENDED_MODE  ${options} ${oneValueArgs} ${multiValueArgs} )
-+  list(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX)
-+
-+  if(${INDEX} EQUAL -1)
-+    set(FPHSA_FAIL_MESSAGE ${_FIRST_ARG})
-+    set(FPHSA_REQUIRED_VARS ${ARGN})
-+    set(FPHSA_VERSION_VAR)
-+  else()
-+    cmake_parse_arguments(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}"  ${_FIRST_ARG} ${ARGN})
-+
-+    if(FPHSA_UNPARSED_ARGUMENTS)
-+      message(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"")
-+    endif()
-+
-+    if(NOT FPHSA_FAIL_MESSAGE)
-+      set(FPHSA_FAIL_MESSAGE  "DEFAULT_MSG")
-+    endif()
-+
-+    # In config-mode, we rely on the variable <PackageName>_CONFIG, which is set by find_package()
-+    # when it successfully found the config-file, including version checking:
-+    if(FPHSA_CONFIG_MODE)
-+      list(INSERT FPHSA_REQUIRED_VARS 0 ${_NAME}_CONFIG)
-+      list(REMOVE_DUPLICATES FPHSA_REQUIRED_VARS)
-+      set(FPHSA_VERSION_VAR ${_NAME}_VERSION)
-+    endif()
-+
-+    if(NOT FPHSA_REQUIRED_VARS)
-+      message(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()")
-+    endif()
-+  endif()
-+
-+# now that we collected all arguments, process them
-+
-+  if("x${FPHSA_FAIL_MESSAGE}" STREQUAL "xDEFAULT_MSG")
-+    set(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}")
-+  endif()
-+
-+  list(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR)
-+
-+  string(TOUPPER ${_NAME} _NAME_UPPER)
-+  string(TOLOWER ${_NAME} _NAME_LOWER)
-+
-+  if(FPHSA_FOUND_VAR)
-+    if(FPHSA_FOUND_VAR MATCHES "^${_NAME}_FOUND$"  OR  FPHSA_FOUND_VAR MATCHES "^${_NAME_UPPER}_FOUND$")
-+      set(_FOUND_VAR ${FPHSA_FOUND_VAR})
-+    else()
-+      message(FATAL_ERROR "The argument for FOUND_VAR is \"${FPHSA_FOUND_VAR}\", but only \"${_NAME}_FOUND\" and \"${_NAME_UPPER}_FOUND\" are valid names.")
-+    endif()
-+  else()
-+    set(_FOUND_VAR ${_NAME_UPPER}_FOUND)
-+  endif()
-+
-+  # collect all variables which were not found, so they can be printed, so the
-+  # user knows better what went wrong (#6375)
-+  set(MISSING_VARS "")
-+  set(DETAILS "")
-+  # check if all passed variables are valid
-+  set(FPHSA_FOUND_${_NAME} TRUE)
-+  foreach(_CURRENT_VAR ${FPHSA_REQUIRED_VARS})
-+    if(NOT ${_CURRENT_VAR})
-+      set(FPHSA_FOUND_${_NAME} FALSE)
-+      string(APPEND MISSING_VARS " ${_CURRENT_VAR}")
-+    else()
-+      string(APPEND DETAILS "[${${_CURRENT_VAR}}]")
-+    endif()
-+  endforeach()
-+  if(FPHSA_FOUND_${_NAME})
-+    set(${_NAME}_FOUND TRUE)
-+    set(${_NAME_UPPER}_FOUND TRUE)
-+  else()
-+    set(${_NAME}_FOUND FALSE)
-+    set(${_NAME_UPPER}_FOUND FALSE)
-+  endif()
-+
-+  # component handling
-+  unset(FOUND_COMPONENTS_MSG)
-+  unset(MISSING_COMPONENTS_MSG)
-+
-+  if(FPHSA_HANDLE_COMPONENTS)
-+    foreach(comp ${${_NAME}_FIND_COMPONENTS})
-+      if(${_NAME}_${comp}_FOUND)
-+
-+        if(NOT DEFINED FOUND_COMPONENTS_MSG)
-+          set(FOUND_COMPONENTS_MSG "found components: ")
-+        endif()
-+        string(APPEND FOUND_COMPONENTS_MSG " ${comp}")
-+
-+      else()
-+
-+        if(NOT DEFINED MISSING_COMPONENTS_MSG)
-+          set(MISSING_COMPONENTS_MSG "missing components: ")
-+        endif()
-+        string(APPEND MISSING_COMPONENTS_MSG " ${comp}")
-+
-+        if(${_NAME}_FIND_REQUIRED_${comp})
-+          set(${_NAME}_FOUND FALSE)
-+          string(APPEND MISSING_VARS " ${comp}")
-+        endif()
-+
-+      endif()
-+    endforeach()
-+    set(COMPONENT_MSG "${FOUND_COMPONENTS_MSG} ${MISSING_COMPONENTS_MSG}")
-+    string(APPEND DETAILS "[c${COMPONENT_MSG}]")
-+  endif()
-+
-+  # version handling:
-+  set(VERSION_MSG "")
-+  set(VERSION_OK TRUE)
-+
-+  # check with DEFINED here as the requested or found version may be "0"
-+  if (DEFINED ${_NAME}_FIND_VERSION)
-+    if(DEFINED ${FPHSA_VERSION_VAR})
-+      set(_FOUND_VERSION ${${FPHSA_VERSION_VAR}})
-+
-+      if(${_NAME}_FIND_VERSION_EXACT)       # exact version required
-+        # count the dots in the version string
-+        string(REGEX REPLACE "[^.]" "" _VERSION_DOTS "${_FOUND_VERSION}")
-+        # add one dot because there is one dot more than there are components
-+        string(LENGTH "${_VERSION_DOTS}." _VERSION_DOTS)
-+        if (_VERSION_DOTS GREATER ${_NAME}_FIND_VERSION_COUNT)
-+          # Because of the C++ implementation of find_package() ${_NAME}_FIND_VERSION_COUNT
-+          # is at most 4 here. Therefore a simple lookup table is used.
-+          if (${_NAME}_FIND_VERSION_COUNT EQUAL 1)
-+            set(_VERSION_REGEX "[^.]*")
-+          elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 2)
-+            set(_VERSION_REGEX "[^.]*\\.[^.]*")
-+          elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 3)
-+            set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*")
-+          else ()
-+            set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*\\.[^.]*")
-+          endif ()
-+          string(REGEX REPLACE "^(${_VERSION_REGEX})\\..*" "\\1" _VERSION_HEAD "${_FOUND_VERSION}")
-+          unset(_VERSION_REGEX)
-+          if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _VERSION_HEAD)
-+            set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
-+            set(VERSION_OK FALSE)
-+          else ()
-+            set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
-+          endif ()
-+          unset(_VERSION_HEAD)
-+        else ()
-+          if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _FOUND_VERSION)
-+            set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
-+            set(VERSION_OK FALSE)
-+          else ()
-+            set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
-+          endif ()
-+        endif ()
-+        unset(_VERSION_DOTS)
-+
-+      else()     # minimum version specified:
-+        if (${_NAME}_FIND_VERSION VERSION_GREATER _FOUND_VERSION)
-+          set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"")
-+          set(VERSION_OK FALSE)
-+        else ()
-+          set(VERSION_MSG "(found suitable version \"${_FOUND_VERSION}\", minimum required is \"${${_NAME}_FIND_VERSION}\")")
-+        endif ()
-+      endif()
-+
-+    else()
-+
-+      # if the package was not found, but a version was given, add that to the output:
-+      if(${_NAME}_FIND_VERSION_EXACT)
-+         set(VERSION_MSG "(Required is exact version \"${${_NAME}_FIND_VERSION}\")")
-+      else()
-+         set(VERSION_MSG "(Required is at least version \"${${_NAME}_FIND_VERSION}\")")
-+      endif()
-+
-+    endif()
-+  else ()
-+    # Check with DEFINED as the found version may be 0.
-+    if(DEFINED ${FPHSA_VERSION_VAR})
-+      set(VERSION_MSG "(found version \"${${FPHSA_VERSION_VAR}}\")")
-+    endif()
-+  endif ()
-+
-+  if(VERSION_OK)
-+    string(APPEND DETAILS "[v${${FPHSA_VERSION_VAR}}(${${_NAME}_FIND_VERSION})]")
-+  else()
-+    set(${_NAME}_FOUND FALSE)
-+  endif()
-+
-+
-+  # print the result:
-+  if (${_NAME}_FOUND)
-+    FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG} ${COMPONENT_MSG}" "${DETAILS}")
-+  else ()
-+
-+    if(FPHSA_CONFIG_MODE)
-+      _FPHSA_HANDLE_FAILURE_CONFIG_MODE()
-+    else()
-+      if(NOT VERSION_OK)
-+        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (found ${${_FIRST_REQUIRED_VAR}})")
-+      else()
-+        _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} (missing:${MISSING_VARS}) ${VERSION_MSG}")
-+      endif()
-+    endif()
-+
-+  endif ()
-+
-+  set(${_NAME}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
-+  set(${_NAME_UPPER}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
-+endfunction()
-diff -Nuar a/cmake/FindPackageMessage.cmake b/cmake/FindPackageMessage.cmake
---- a/cmake/FindPackageMessage.cmake	1970-01-01 01:00:00.000000000 +0100
-+++ b/cmake/FindPackageMessage.cmake	2020-03-04 11:38:51.062021412 +0100
-@@ -0,0 +1,19 @@
-+# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
-+# file Copyright.txt or https://cmake.org/licensing for details.
-+
-+function(find_package_message pkg msg details)
-+  # Avoid printing a message repeatedly for the same find result.
-+  if(NOT ${pkg}_FIND_QUIETLY)
-+    string(REPLACE "\n" "" details "${details}")
-+    set(DETAILS_VAR FIND_PACKAGE_MESSAGE_DETAILS_${pkg})
-+    if(NOT "${details}" STREQUAL "${${DETAILS_VAR}}")
-+      # The message has not yet been printed.
-+      message(STATUS "${msg}")
-+
-+      # Save the find details in the cache to avoid printing the same
-+      # message again.
-+      set("${DETAILS_VAR}" "${details}"
-+        CACHE INTERNAL "Details about finding ${pkg}")
-+    endif()
-+  endif()
-+endfunction()
-diff -Nuar a/cmake/FindRuby.cmake b/cmake/FindRuby.cmake
---- a/cmake/FindRuby.cmake	2017-02-09 10:33:45.000000000 +0100
-+++ b/cmake/FindRuby.cmake	2020-03-04 11:38:51.062021412 +0100
-@@ -1,89 +1,297 @@
--# Ruby cmake package
--#
--# Returns
--# RUBY_FOUND
--# RUBY_INCLUDE_DIRS
--# RUBY_LIBRARIES
--# RUBY_VERSION_MAJOR
--# RUBY_VERSION_MINOR
--# RUBY_VERSION_STRING
--
--if(RUBY_FOUND)
--   set(RUBY_FIND_QUIETLY TRUE)
--endif()
--
--find_program(RUBY_EXECUTABLE
--  NAMES ruby2.2 ruby22 ruby2.1 ruby21 ruby2.0 ruby2 ruby1.9.3 ruby193 ruby1.9.2 ruby192 ruby1.9.1 ruby191 ruby1.9 ruby19 ruby1.8 ruby18 ruby
--  PATHS /usr/bin /usr/local/bin /usr/pkg/bin
--  )
--if(RUBY_EXECUTABLE)
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['MAJOR']"
--    OUTPUT_VARIABLE RUBY_VERSION_MAJOR
--    )
--
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['MINOR']"
--    OUTPUT_VARIABLE RUBY_VERSION_MINOR
--    )
--
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['TEENY']"
--    OUTPUT_VARIABLE RUBY_VERSION_TEENY
--    )
--  set(RUBY_VERSION_STRING ${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}.${RUBY_VERSION_TEENY})
--
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubyhdrdir'] || RbConfig::CONFIG['archdir']"
--    OUTPUT_VARIABLE RUBY_ARCH_DIR
--    )
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['arch']"
--    OUTPUT_VARIABLE RUBY_ARCH
--    )
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['libdir']"
--    OUTPUT_VARIABLE RUBY_POSSIBLE_LIB_PATH
--    )
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['rubylibdir']"
--    OUTPUT_VARIABLE RUBY_LIB_PATH
--    )
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['archincludedir']"
--    OUTPUT_VARIABLE RUBY_ARCH_INC_DIR
--    )
--  execute_process(
--    COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['RUBY_SO_NAME']"
--    OUTPUT_VARIABLE RUBY_SO_NAME
--    )
--
--  find_path(RUBY_INCLUDE_DIRS
--    NAMES ruby.h ruby/config.h
--    PATHS ${RUBY_ARCH_DIR}
--    )
--  set(RUBY_INCLUDE_ARCH "${RUBY_INCLUDE_DIRS}/${RUBY_ARCH}")
--  find_library(RUBY_LIB
--    NAMES ${RUBY_SO_NAME}
--    PATHS ${RUBY_POSSIBLE_LIB_PATH} ${RUBY_RUBY_LIB_PATH}
--    )
--
--  if(RUBY_LIB AND RUBY_INCLUDE_DIRS)
--    set(RUBY_FOUND TRUE)
--    set(RUBY_INCLUDE_DIRS "${RUBY_INCLUDE_DIRS};${RUBY_INCLUDE_ARCH};${RUBY_ARCH_INC_DIR}/ruby-${RUBY_VERSION_STRING}")
--    set(RUBY_LIBRARIES ${RUBY_LIB})
--  endif()
-+# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
-+# file Copyright.txt or https://cmake.org/licensing for details.
-+
-+#[[
-+FindRuby
-+--------
-+
-+This module finds if Ruby is installed and determines where the
-+include files and libraries are.  Ruby 1.8, 1.9, 2.0 through 2.5 are
-+supported.
-+
-+The minimum required version of Ruby can be specified using the
-+standard syntax, e.g.  find_package(Ruby 1.8)
-+
-+It also determines what the name of the library is.  This code sets
-+the following variables:
-+
-+RUBY_EXECUTABLE
-+    full path to the ruby binary
-+RUBY_INCLUDE_DIRS
-+    include dirs to be used when using the ruby library
-+RUBY_LIBRARY
-+    full path to the ruby library
-+RUBY_VERSION
-+    the version of ruby which was found, e.g. "1.8.7"
-+RUBY_FOUND
-+    set to true if ruby ws found successfully
- 
--  if(RUBY_OLD_VERSION)
--    set(RUBY_FOUND FALSE)
--    set(RUBY_NOT_FOUND TRUE)
-+Also:
-+
-+RUBY_INCLUDE_PATH
-+    same as RUBY_INCLUDE_DIRS, only provided for compatibility reasons, don't use it
-+#]]
-+
-+#   RUBY_ARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"archdir"@:>@)'`
-+#   RUBY_SITEARCHDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitearchdir"@:>@)'`
-+#   RUBY_SITEDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"sitelibdir"@:>@)'`
-+#   RUBY_LIBDIR=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"libdir"@:>@)'`
-+#   RUBY_LIBRUBYARG=`$RUBY -r rbconfig -e 'printf("%s",Config::CONFIG@<:@"LIBRUBYARG_SHARED"@:>@)'`
-+
-+# uncomment the following line to get debug output for this file
-+set(_RUBY_DEBUG_OUTPUT TRUE)
-+
-+# Determine the list of possible names of the ruby executable depending
-+# on which version of ruby is required
-+set(_RUBY_POSSIBLE_EXECUTABLE_NAMES ruby)
-+
-+# if 1.9 is required, don't look for ruby18 and ruby1.8, default to version 1.8
-+if(DEFINED Ruby_FIND_VERSION_MAJOR AND DEFINED Ruby_FIND_VERSION_MINOR)
-+   set(Ruby_FIND_VERSION_SHORT_NODOT "${Ruby_FIND_VERSION_MAJOR}${RUBY_FIND_VERSION_MINOR}")
-+   # we can't construct that if only major version is given
-+   set(_RUBY_POSSIBLE_EXECUTABLE_NAMES
-+       ruby${Ruby_FIND_VERSION_MAJOR}.${Ruby_FIND_VERSION_MINOR}
-+       ruby${Ruby_FIND_VERSION_MAJOR}${Ruby_FIND_VERSION_MINOR}
-+       ${_RUBY_POSSIBLE_EXECUTABLE_NAMES})
-+else()
-+   set(Ruby_FIND_VERSION_SHORT_NODOT "18")
-+endif()
-+
-+if(NOT Ruby_FIND_VERSION_EXACT)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.5 ruby25)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.4 ruby24)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.3 ruby23)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.2 ruby22)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.1 ruby21)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby2.0 ruby20)
-+  list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby1.9 ruby19)
-+
-+  # if we want a version below 1.9, also look for ruby 1.8
-+  if("${Ruby_FIND_VERSION_SHORT_NODOT}" VERSION_LESS "19")
-+    list(APPEND _RUBY_POSSIBLE_EXECUTABLE_NAMES ruby1.8 ruby18)
-   endif()
- 
--  mark_as_advanced(
--    RUBY_INCLUDE_DIRS
--    RUBY_LIBRARIES
--    RUBY_LIB
--    RUBY_VERSION_MAJOR RUBY_VERSION_MINOR
--    RUBY_VERSION_STRING
--    )
-+  list(REMOVE_DUPLICATES _RUBY_POSSIBLE_EXECUTABLE_NAMES)
-+endif()
-+
-+find_program(RUBY_EXECUTABLE NAMES ${_RUBY_POSSIBLE_EXECUTABLE_NAMES})
-+
-+if(RUBY_EXECUTABLE  AND NOT  RUBY_VERSION_MAJOR)
-+  function(_RUBY_CONFIG_VAR RBVAR OUTVAR)
-+    execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print RbConfig::CONFIG['${RBVAR}']"
-+      RESULT_VARIABLE _RUBY_SUCCESS
-+      OUTPUT_VARIABLE _RUBY_OUTPUT
-+      ERROR_QUIET)
-+    if(_RUBY_SUCCESS OR _RUBY_OUTPUT STREQUAL "")
-+      execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "print Config::CONFIG['${RBVAR}']"
-+        RESULT_VARIABLE _RUBY_SUCCESS
-+        OUTPUT_VARIABLE _RUBY_OUTPUT
-+        ERROR_QUIET)
-+    endif()
-+    set(${OUTVAR} "${_RUBY_OUTPUT}" PARENT_SCOPE)
-+  endfunction()
-+
-+
-+  # query the ruby version
-+   _RUBY_CONFIG_VAR("MAJOR" RUBY_VERSION_MAJOR)
-+   _RUBY_CONFIG_VAR("MINOR" RUBY_VERSION_MINOR)
-+   _RUBY_CONFIG_VAR("TEENY" RUBY_VERSION_PATCH)
-+
-+   # query the different directories
-+   _RUBY_CONFIG_VAR("archdir" RUBY_ARCH_DIR)
-+   _RUBY_CONFIG_VAR("arch" RUBY_ARCH)
-+   _RUBY_CONFIG_VAR("rubyhdrdir" RUBY_HDR_DIR)
-+   _RUBY_CONFIG_VAR("rubyarchhdrdir" RUBY_ARCHHDR_DIR)
-+   _RUBY_CONFIG_VAR("libdir" RUBY_POSSIBLE_LIB_DIR)
-+   _RUBY_CONFIG_VAR("rubylibdir" RUBY_RUBY_LIB_DIR)
-+
-+   # site_ruby
-+   _RUBY_CONFIG_VAR("sitearchdir" RUBY_SITEARCH_DIR)
-+   _RUBY_CONFIG_VAR("sitelibdir" RUBY_SITELIB_DIR)
-+
-+   # vendor_ruby available ?
-+   execute_process(COMMAND ${RUBY_EXECUTABLE} -r vendor-specific -e "print 'true'"
-+      OUTPUT_VARIABLE RUBY_HAS_VENDOR_RUBY  ERROR_QUIET)
-+
-+   if(RUBY_HAS_VENDOR_RUBY)
-+      _RUBY_CONFIG_VAR("vendorlibdir" RUBY_VENDORLIB_DIR)
-+      _RUBY_CONFIG_VAR("vendorarchdir" RUBY_VENDORARCH_DIR)
-+   endif()
-+
-+   # save the results in the cache so we don't have to run ruby the next time again
-+   set(RUBY_VERSION_MAJOR    ${RUBY_VERSION_MAJOR}    CACHE PATH "The Ruby major version" FORCE)
-+   set(RUBY_VERSION_MINOR    ${RUBY_VERSION_MINOR}    CACHE PATH "The Ruby minor version" FORCE)
-+   set(RUBY_VERSION_PATCH    ${RUBY_VERSION_PATCH}    CACHE PATH "The Ruby patch version" FORCE)
-+   set(RUBY_ARCH_DIR         ${RUBY_ARCH_DIR}         CACHE PATH "The Ruby arch dir" FORCE)
-+   set(RUBY_HDR_DIR          ${RUBY_HDR_DIR}          CACHE PATH "The Ruby header dir (1.9+)" FORCE)
-+   set(RUBY_ARCHHDR_DIR      ${RUBY_ARCHHDR_DIR}      CACHE PATH "The Ruby arch header dir (2.0+)" FORCE)
-+   set(RUBY_POSSIBLE_LIB_DIR ${RUBY_POSSIBLE_LIB_DIR} CACHE PATH "The Ruby lib dir" FORCE)
-+   set(RUBY_RUBY_LIB_DIR     ${RUBY_RUBY_LIB_DIR}     CACHE PATH "The Ruby ruby-lib dir" FORCE)
-+   set(RUBY_SITEARCH_DIR     ${RUBY_SITEARCH_DIR}     CACHE PATH "The Ruby site arch dir" FORCE)
-+   set(RUBY_SITELIB_DIR      ${RUBY_SITELIB_DIR}      CACHE PATH "The Ruby site lib dir" FORCE)
-+   set(RUBY_HAS_VENDOR_RUBY  ${RUBY_HAS_VENDOR_RUBY}  CACHE BOOL "Vendor Ruby is available" FORCE)
-+   set(RUBY_VENDORARCH_DIR   ${RUBY_VENDORARCH_DIR}   CACHE PATH "The Ruby vendor arch dir" FORCE)
-+   set(RUBY_VENDORLIB_DIR    ${RUBY_VENDORLIB_DIR}    CACHE PATH "The Ruby vendor lib dir" FORCE)
-+
-+   mark_as_advanced(
-+     RUBY_ARCH_DIR
-+     RUBY_ARCH
-+     RUBY_HDR_DIR
-+     RUBY_ARCHHDR_DIR
-+     RUBY_POSSIBLE_LIB_DIR
-+     RUBY_RUBY_LIB_DIR
-+     RUBY_SITEARCH_DIR
-+     RUBY_SITELIB_DIR
-+     RUBY_HAS_VENDOR_RUBY
-+     RUBY_VENDORARCH_DIR
-+     RUBY_VENDORLIB_DIR
-+     RUBY_VERSION_MAJOR
-+     RUBY_VERSION_MINOR
-+     RUBY_VERSION_PATCH
-+     )
-+endif()
-+
-+# In case RUBY_EXECUTABLE could not be executed (e.g. cross compiling)
-+# try to detect which version we found. This is not too good.
-+if(RUBY_EXECUTABLE AND NOT RUBY_VERSION_MAJOR)
-+   # by default assume 1.8.0
-+   set(RUBY_VERSION_MAJOR 1)
-+   set(RUBY_VERSION_MINOR 8)
-+   set(RUBY_VERSION_PATCH 0)
-+   # check whether we found 1.9.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby1\\.?9")
-+      set(RUBY_VERSION_MAJOR 1)
-+      set(RUBY_VERSION_MINOR 9)
-+   endif()
-+   # check whether we found 2.0.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?0")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 0)
-+   endif()
-+   # check whether we found 2.1.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?1")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 1)
-+   endif()
-+   # check whether we found 2.2.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?2")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 2)
-+   endif()
-+   # check whether we found 2.3.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?3")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 3)
-+   endif()
-+   # check whether we found 2.4.x
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?4")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 4)
-+   endif()
-+   if(${RUBY_EXECUTABLE} MATCHES "ruby2\\.?5")
-+      set(RUBY_VERSION_MAJOR 2)
-+      set(RUBY_VERSION_MINOR 5)
-+   endif()
- endif()
-+
-+if(RUBY_VERSION_MAJOR)
-+   set(RUBY_VERSION "${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}.${RUBY_VERSION_PATCH}")
-+   set(_RUBY_VERSION_SHORT "${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR}")
-+   set(_RUBY_VERSION_SHORT_NODOT "${RUBY_VERSION_MAJOR}${RUBY_VERSION_MINOR}")
-+   set(_RUBY_NODOT_VERSION "${RUBY_VERSION_MAJOR}${RUBY_VERSION_MINOR}${RUBY_VERSION_PATCH}")
-+endif()
-+
-+find_path(RUBY_INCLUDE_DIR
-+   NAMES ruby.h
-+   HINTS
-+   ${RUBY_HDR_DIR}
-+   ${RUBY_ARCH_DIR}
-+   /usr/lib/ruby/${_RUBY_VERSION_SHORT}/i586-linux-gnu/ )
-+
-+set(RUBY_INCLUDE_DIRS ${RUBY_INCLUDE_DIR} )
-+
-+# if ruby > 1.8 is required or if ruby > 1.8 was found, search for the config.h dir
-+if( "${Ruby_FIND_VERSION_SHORT_NODOT}" GREATER 18  OR  "${_RUBY_VERSION_SHORT_NODOT}" GREATER 18  OR  RUBY_HDR_DIR)
-+   find_path(RUBY_CONFIG_INCLUDE_DIR
-+     NAMES ruby/config.h  config.h
-+     HINTS
-+     ${RUBY_HDR_DIR}/${RUBY_ARCH}
-+     ${RUBY_ARCH_DIR}
-+     ${RUBY_ARCHHDR_DIR}
-+     )
-+
-+   set(RUBY_INCLUDE_DIRS ${RUBY_INCLUDE_DIRS} ${RUBY_CONFIG_INCLUDE_DIR} )
-+endif()
-+
-+
-+# Determine the list of possible names for the ruby library
-+set(_RUBY_POSSIBLE_LIB_NAMES ruby ruby-static ruby${_RUBY_VERSION_SHORT} ruby${_RUBY_VERSION_SHORT_NODOT} ruby-${_RUBY_VERSION_SHORT} ruby-${RUBY_VERSION})
-+
-+if(WIN32)
-+   set( _RUBY_MSVC_RUNTIME "" )
-+   if( MSVC_VERSION EQUAL 1200 )
-+     set( _RUBY_MSVC_RUNTIME "60" )
-+   endif()
-+   if( MSVC_VERSION EQUAL 1300 )
-+     set( _RUBY_MSVC_RUNTIME "70" )
-+   endif()
-+   if( MSVC_VERSION EQUAL 1310 )
-+     set( _RUBY_MSVC_RUNTIME "71" )
-+   endif()
-+   if( MSVC_VERSION EQUAL 1400 )
-+     set( _RUBY_MSVC_RUNTIME "80" )
-+   endif()
-+   if( MSVC_VERSION EQUAL 1500 )
-+     set( _RUBY_MSVC_RUNTIME "90" )
-+   endif()
-+
-+   set(_RUBY_ARCH_PREFIX "")
-+   if(CMAKE_SIZEOF_VOID_P EQUAL 8)
-+     set(_RUBY_ARCH_PREFIX "x64-")
-+   endif()
-+
-+   list(APPEND _RUBY_POSSIBLE_LIB_NAMES
-+               "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}"
-+               "${_RUBY_ARCH_PREFIX}msvcr${_RUBY_MSVC_RUNTIME}-ruby${_RUBY_NODOT_VERSION}-static"
-+               "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}"
-+               "${_RUBY_ARCH_PREFIX}msvcrt-ruby${_RUBY_NODOT_VERSION}-static" )
-+endif()
-+
-+find_library(RUBY_LIBRARY NAMES ${_RUBY_POSSIBLE_LIB_NAMES} HINTS ${RUBY_POSSIBLE_LIB_DIR} )
-+
-+include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
-+set(_RUBY_REQUIRED_VARS RUBY_EXECUTABLE RUBY_INCLUDE_DIR RUBY_LIBRARY)
-+if(_RUBY_VERSION_SHORT_NODOT GREATER 18)
-+   list(APPEND _RUBY_REQUIRED_VARS RUBY_CONFIG_INCLUDE_DIR)
-+endif()
-+
-+if(_RUBY_DEBUG_OUTPUT)
-+   message(STATUS "--------FindRuby.cmake debug------------")
-+   message(STATUS "_RUBY_POSSIBLE_EXECUTABLE_NAMES: ${_RUBY_POSSIBLE_EXECUTABLE_NAMES}")
-+   message(STATUS "_RUBY_POSSIBLE_LIB_NAMES: ${_RUBY_POSSIBLE_LIB_NAMES}")
-+   message(STATUS "RUBY_ARCH_DIR: ${RUBY_ARCH_DIR}")
-+   message(STATUS "RUBY_HDR_DIR: ${RUBY_HDR_DIR}")
-+   message(STATUS "RUBY_POSSIBLE_LIB_DIR: ${RUBY_POSSIBLE_LIB_DIR}")
-+   message(STATUS "Found RUBY_VERSION: \"${RUBY_VERSION}\" , short: \"${_RUBY_VERSION_SHORT}\", nodot: \"${_RUBY_VERSION_SHORT_NODOT}\"")
-+   message(STATUS "_RUBY_REQUIRED_VARS: ${_RUBY_REQUIRED_VARS}")
-+   message(STATUS "RUBY_EXECUTABLE: ${RUBY_EXECUTABLE}")
-+   message(STATUS "RUBY_LIBRARY: ${RUBY_LIBRARY}")
-+   message(STATUS "RUBY_INCLUDE_DIR: ${RUBY_INCLUDE_DIR}")
-+   message(STATUS "RUBY_CONFIG_INCLUDE_DIR: ${RUBY_CONFIG_INCLUDE_DIR}")
-+   message(STATUS "--------------------")
-+endif()
-+
-+FIND_PACKAGE_HANDLE_STANDARD_ARGS(Ruby  REQUIRED_VARS  ${_RUBY_REQUIRED_VARS}
-+                                        VERSION_VAR RUBY_VERSION )
-+
-+mark_as_advanced(
-+  RUBY_EXECUTABLE
-+  RUBY_LIBRARY
-+  RUBY_INCLUDE_DIR
-+  RUBY_CONFIG_INCLUDE_DIR
-+  )
-+
-+# Set some variables for compatibility with previous version of this file
-+set(RUBY_POSSIBLE_LIB_PATH ${RUBY_POSSIBLE_LIB_DIR})
-+set(RUBY_RUBY_LIB_PATH ${RUBY_RUBY_LIB_DIR})
-+set(RUBY_INCLUDE_PATH ${RUBY_INCLUDE_DIRS})


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-11-15 15:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-11-15 15:31 [gentoo-commits] repo/gentoo:master commit in: sys-fs/dislocker/files/, sys-fs/dislocker/ Joonas Niilola
  -- strict thread matches above, loose matches on Subject: below --
2020-07-27 14:51 Andreas Schuerch

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox