diff --git a/Mk/bsd.ruby.mk b/Mk/bsd.ruby.mk index 5de87d6ec01f..b54f5aea57fa 100644 --- a/Mk/bsd.ruby.mk +++ b/Mk/bsd.ruby.mk @@ -164,8 +164,8 @@ RUBY23= "" # PLIST_SUB helpers # # Ruby 2.4 # -RUBY_RELVERSION= 2.4.4 -RUBY_PORTREVISION= 4 +RUBY_RELVERSION= 2.4.5 +RUBY_PORTREVISION= 0 RUBY_PORTEPOCH= 1 RUBY_PATCHLEVEL= 0 RUBY24= "" # PLIST_SUB helpers diff --git a/lang/ruby24/Makefile b/lang/ruby24/Makefile index cf25a0476678..a470e02e670e 100644 --- a/lang/ruby24/Makefile +++ b/lang/ruby24/Makefile @@ -23,6 +23,8 @@ BUILD_DEPENDS= libffi>=0:devel/libffi LIB_DEPENDS= libyaml.so:textproc/libyaml RUN_DEPENDS= libffi>=0:devel/libffi +USES= autoreconf cpe ssl tar:xz + CONFIGURE_ARGS= ${RUBY_CONFIGURE_ARGS} \ --disable-rpath \ --enable-pthread \ @@ -37,7 +39,6 @@ GNU_CONFIGURE= yes # Keep this, else ruby will fail to load libraries dependent of libpthread. LIBS+= -lpthread -L${LOCALBASE}/lib USE_LDCONFIG= yes -USES= autoreconf cpe ssl tar:xz WRKSRC= ${RUBY_WRKSRC} RUBY_VER= 2.4 @@ -110,14 +111,14 @@ MAKE_JOBS_UNSAFE= yes .endif .if ${RUBY_VER} == ${RUBY_DEFAULT_VER} -MLINKS= ${RUBY_NAME}.1 ruby.1 PLIST_SUB+= IF_DEFAULT="" .else PKGNAMESUFFIX= ${RUBY_VER:C/\.//} PLIST_SUB+= IF_DEFAULT="@comment " .endif -INSTALLED_SCRIPTS= irb erb rdoc ri ruby +INSTALLED_SCRIPTS= erb irb rdoc ri ruby +INSTALLED_MANUALS= erb irb ri ruby EXTSAMPLES= bigdecimal/sample/*.rb @@ -167,13 +168,19 @@ pre-install-RDOC-on: ${MKDIR} ${STAGEDIR}${RUBY_SITERIDIR} post-install: +.if ${RUBY_VER} == ${RUBY_DEFAULT_VER} # # Link just installed "ruby" to "ruby24", etc. # -.if ${RUBY_VER} == ${RUBY_DEFAULT_VER} . for FILE in ${INSTALLED_SCRIPTS} ${LN} -fs ${FILE}${RUBY_SUFFIX} ${STAGEDIR}${PREFIX}/bin/${FILE} . endfor +# +# Link "ruby.1.gz" to "ruby24.1.gz", etc. +# +. for FILE in ${INSTALLED_MANUALS} + ${LN} -fs ${FILE}${RUBY_SUFFIX}.1.gz ${STAGEDIR}${MANPREFIX}/man/man1/${FILE}.1.gz +. endfor .endif post-install-DEBUG-off: diff --git a/lang/ruby24/distinfo b/lang/ruby24/distinfo index 6c4963f1f2a5..6be12be9cbb6 100644 --- a/lang/ruby24/distinfo +++ b/lang/ruby24/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1522331781 -SHA256 (ruby/ruby-2.4.4.tar.xz) = 1d0034071d675193ca769f64c91827e5f54cb3a7962316a41d5217c7bc6949f0 -SIZE (ruby/ruby-2.4.4.tar.xz) = 10049304 +TIMESTAMP = 1540022786 +SHA256 (ruby/ruby-2.4.5.tar.xz) = 2f0cdcce9989f63ef7c2939bdb17b1ef244c4f384d85b8531d60e73d8cc31eeb +SIZE (ruby/ruby-2.4.5.tar.xz) = 10064712 diff --git a/lang/ruby24/files/patch-configure.in b/lang/ruby24/files/patch-configure.in index b72fd938b61d..898ee7b5d3fc 100644 --- a/lang/ruby24/files/patch-configure.in +++ b/lang/ruby24/files/patch-configure.in @@ -1,6 +1,6 @@ ---- configure.in.orig 2018-03-02 20:59:11.000000000 +0800 -+++ configure.in 2018-07-19 14:22:04.753721000 +0800 -@@ -2573,7 +2573,7 @@ +--- configure.in.orig 2018-10-17 08:30:28 UTC ++++ configure.in +@@ -2573,7 +2573,7 @@ if test "$ac_cv_func_qsort_r" != no; the AC_CACHE_CHECK(whether qsort_r is GNU version, rb_cv_gnu_qsort_r, [AC_TRY_COMPILE([ @%:@include @@ -9,7 +9,7 @@ int (*compar)(const void *, const void *, void *), void *arg); ],[ ], -@@ -2583,7 +2583,7 @@ +@@ -2583,7 +2583,7 @@ void qsort_r(void *base, size_t nmemb, s AC_CACHE_CHECK(whether qsort_r is BSD version, rb_cv_bsd_qsort_r, [AC_TRY_COMPILE([ @%:@include @@ -18,7 +18,7 @@ void *arg, int (*compar)(void *, const void *, const void *)); ],[ ], [rb_cv_bsd_qsort_r=yes], -@@ -3423,7 +3423,7 @@ +@@ -3423,7 +3423,7 @@ if test "$with_dln_a_out" != yes; then : ${LDSHARED='$(CC) -shared'} if test "$rb_cv_binary_elf" = yes; then LDFLAGS="$LDFLAGS -rdynamic" @@ -27,7 +27,7 @@ else test "$GCC" = yes && test "$rb_cv_prog_gnu_ld" = yes || LDSHARED='$(LD) -Bshareable' fi -@@ -3896,6 +3895,7 @@ +@@ -3896,6 +3896,7 @@ AS_CASE("$enable_shared", [yes], [ [freebsd*|dragonfly*], [ SOLIBS='$(LIBS)' LIBRUBY_SO='lib$(RUBY_SO_NAME).so.$(MAJOR)$(MINOR)' diff --git a/lang/ruby24/files/patch-ext-openssl-extconf.rb b/lang/ruby24/files/patch-ext-openssl-extconf.rb deleted file mode 100644 index be58b92ea90b..000000000000 --- a/lang/ruby24/files/patch-ext-openssl-extconf.rb +++ /dev/null @@ -1,28 +0,0 @@ -From 75de15ddcdab6efe7faf3ca1f6b5c6e5b6ba57cc Mon Sep 17 00:00:00 2001 -From: Kazuki Yamaguchi -Date: Sat, 24 Mar 2018 01:44:37 +0900 -Subject: [PATCH] extconf.rb: fix build with LibreSSL 2.7.0 - -Our compat implementation of accessor functions that were introduced in -OpenSSL 1.1.0 conflicts with those from LibreSSL 2.7.0. Use the -HAVE_OPAQUE_OPENSSL code path when LibreSSL 2.7 or newer is detected. - -Fix suggested by Joel Sing. - -Fixes: https://github.com/ruby/openssl/issues/192 - ---- ext/openssl/extconf.rb.orig -+++ ext/openssl/extconf.rb -@@ -157,8 +157,11 @@ def find_openssl_library - have_func("SSL_is_server") - - # added in 1.1.0 -+if !have_struct_member("SSL", "ctx", "openssl/ssl.h") || -+ try_static_assert("LIBRESSL_VERSION_NUMBER >= 0x2070000fL", "openssl/opensslv.h") -+ $defs.push("-DHAVE_OPAQUE_OPENSSL") -+end - have_func("CRYPTO_lock") || $defs.push("-DHAVE_OPENSSL_110_THREADING_API") --have_struct_member("SSL", "ctx", "openssl/ssl.h") || $defs.push("-DHAVE_OPAQUE_OPENSSL") - have_func("BN_GENCB_new") - have_func("BN_GENCB_free") - have_func("BN_GENCB_get_arg") diff --git a/lang/ruby24/files/patch-lib_rdoc_generator_json_index.rb b/lang/ruby24/files/patch-lib_rdoc_generator_json__index.rb similarity index 71% rename from lang/ruby24/files/patch-lib_rdoc_generator_json_index.rb rename to lang/ruby24/files/patch-lib_rdoc_generator_json__index.rb index 1211131e7e17..5a528ca79ee9 100644 --- a/lang/ruby24/files/patch-lib_rdoc_generator_json_index.rb +++ b/lang/ruby24/files/patch-lib_rdoc_generator_json__index.rb @@ -1,6 +1,6 @@ ---- ./lib/rdoc/generator/json_index.rb.orig 2017-11-12 19:37:25.144883000 -0500 -+++ ./lib/rdoc/generator/json_index.rb 2017-11-12 19:37:44.551836000 -0500 -@@ -175,7 +175,7 @@ +--- lib/rdoc/generator/json_index.rb.orig 2016-09-07 22:23:38 UTC ++++ lib/rdoc/generator/json_index.rb +@@ -175,7 +175,7 @@ class RDoc::Generator::JsonIndex debug_msg "Writing gzipped search index to %s" % outfile Zlib::GzipWriter.open(outfile) do |gz| @@ -9,7 +9,7 @@ gz.orig_name = search_index_file.basename.to_s gz.write search_index gz.close -@@ -193,7 +193,7 @@ +@@ -193,7 +193,7 @@ class RDoc::Generator::JsonIndex debug_msg "Writing gzipped file to %s" % outfile Zlib::GzipWriter.open(outfile) do |gz| diff --git a/lang/ruby24/files/patch-tool_mkconfig.rb b/lang/ruby24/files/patch-tool_mkconfig.rb index fe3fa72e5eb9..cdd7fae90e3d 100644 --- a/lang/ruby24/files/patch-tool_mkconfig.rb +++ b/lang/ruby24/files/patch-tool_mkconfig.rb @@ -1,6 +1,6 @@ ---- tool/mkconfig.rb.orig 2015-12-09 20:53:21 UTC +--- tool/mkconfig.rb.orig 2016-11-17 07:19:49 UTC +++ tool/mkconfig.rb -@@ -168,8 +168,9 @@ def vars.expand(val, config = self) +@@ -159,8 +159,9 @@ def vars.expand(val, config = self) val.replace(newval) unless newval == val val end @@ -11,4 +11,4 @@ +rubyarchdir = "/lib/ruby/#{major}.#{minor}/#{arch}" relative_archdir = rubyarchdir.rindex(prefix, 0) ? rubyarchdir[prefix.size..-1] : rubyarchdir puts %[\ - # frozen-string-literal: false + # encoding: ascii-8bit diff --git a/lang/ruby24/pkg-plist b/lang/ruby24/pkg-plist index 63885bafea4b..e028f21f7cd1 100644 --- a/lang/ruby24/pkg-plist +++ b/lang/ruby24/pkg-plist @@ -879,9 +879,13 @@ lib/lib%%RUBY_NAME%%.so.%%RUBY_SHLIBVER%% %%RUBY_LIBDIR%%/yaml/dbm.rb %%RUBY_LIBDIR%%/yaml/store.rb libdata/pkgconfig/ruby-%%RUBY_VER%%.pc +%%IF_DEFAULT%%man/man1/erb.1.gz man/man1/erb%%RUBY_SUFFIX%%.1.gz +%%IF_DEFAULT%%man/man1/irb.1.gz man/man1/irb%%RUBY_SUFFIX%%.1.gz +%%IF_DEFAULT%%man/man1/ri.1.gz man/man1/ri%%RUBY_SUFFIX%%.1.gz +%%IF_DEFAULT%%man/man1/ruby.1.gz man/man1/%%RUBY_NAME%%.1.gz %%DOCS%%%%RUBY_DOCDIR%%/COPYING %%DOCS%%%%RUBY_DOCDIR%%/COPYING.ja @@ -4088,6 +4092,7 @@ man/man1/%%RUBY_NAME%%.1.gz %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d31/struct_dbls.html %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d32/dir_8c.html %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d32/dir_8c_source.html +%%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d3c/structselect__set.html %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d35/ruby__atomic_8h__dep__incl.map %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d35/ruby__atomic_8h__dep__incl.md5 %%CAPIDOCS%%%%RUBY_DOCDIR%%/capi/html/de/d35/ruby__atomic_8h__dep__incl.png @@ -7628,6 +7633,7 @@ man/man1/%%RUBY_NAME%%.1.gz %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/initialize-i.ri %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/mkdir_p_safe-i.ri %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/new-c.ri +%%RDOC%%%%RUBY_RIDIR%%/Gem/Package/normalize_path-i.ri %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/read_checksums-i.ri %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/realpath-i.ri %%RDOC%%%%RUBY_RIDIR%%/Gem/Package/security_policy-i.ri