mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
ext/openssl/extconf.rb: check with -Werror=deprecated-declarations
This reverts commit 0d7d8b2989
,
but restore `$warnflags` without the flag, to get rid of using
deprecated functions.
This commit is contained in:
parent
4c88107c54
commit
c3abbc1b2f
2 changed files with 21 additions and 1 deletions
|
@ -1,7 +1,23 @@
|
||||||
# frozen_string_literal: false
|
# frozen_string_literal: false
|
||||||
module OpenSSL
|
module OpenSSL
|
||||||
|
def self.deprecated_warning_flag
|
||||||
|
unless flag = (@deprecated_warning_flag ||= nil)
|
||||||
|
if try_compile("", flag = "-Werror=deprecated-declarations")
|
||||||
|
$warnflags = "#{@warnflags = $warnflags}" #{flag}"
|
||||||
|
else
|
||||||
|
flag = ""
|
||||||
|
end
|
||||||
|
@deprecated_warning_flag = flag
|
||||||
|
end
|
||||||
|
flag
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.restore_warning_flag
|
||||||
|
$warnflags = @warnflags
|
||||||
|
end
|
||||||
|
|
||||||
def self.check_func(func, header)
|
def self.check_func(func, header)
|
||||||
have_func(func, header)
|
have_func(func, header, deprecated_warning_flag)
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.check_func_or_macro(func, header)
|
def self.check_func_or_macro(func, header)
|
||||||
|
|
|
@ -19,6 +19,9 @@ dir_config("kerberos")
|
||||||
|
|
||||||
Logging::message "=== OpenSSL for Ruby configurator ===\n"
|
Logging::message "=== OpenSSL for Ruby configurator ===\n"
|
||||||
|
|
||||||
|
# Check with -Werror=deprecated-declarations if available
|
||||||
|
OpenSSL.deprecated_warning_flag
|
||||||
|
|
||||||
##
|
##
|
||||||
# Adds -DOSSL_DEBUG for compilation and some more targets when GCC is used
|
# Adds -DOSSL_DEBUG for compilation and some more targets when GCC is used
|
||||||
# To turn it on, use: --with-debug or --enable-debug
|
# To turn it on, use: --with-debug or --enable-debug
|
||||||
|
@ -166,5 +169,6 @@ have_func("EVP_PBE_scrypt")
|
||||||
Logging::message "=== Checking done. ===\n"
|
Logging::message "=== Checking done. ===\n"
|
||||||
|
|
||||||
create_header
|
create_header
|
||||||
|
OpenSSL.restore_warning_flag
|
||||||
create_makefile("openssl")
|
create_makefile("openssl")
|
||||||
Logging::message "Done.\n"
|
Logging::message "Done.\n"
|
||||||
|
|
Loading…
Add table
Reference in a new issue