commit:     7f3aeb10affb4ddf4033eb5c763dbed71d7fc229
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Tue Apr 11 18:51:42 2023 +0000
Commit:     orbea <orbea <AT> riseup <DOT> net>
CommitDate: Wed Apr 12 02:04:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=7f3aeb10

www-servers/h2o: Merge ::gentoo changes

Closes: https://github.com/gentoo/libressl/pull/518
Signed-off-by: orbea <orbea <AT> riseup.net>

 www-servers/h2o/files/h2o-2.2-ruby30.patch | 63 +++++++++++++++++++++++++++
 www-servers/h2o/files/h2o-2.3-mruby.patch  | 70 ++++++++++++++++++++++++++++++
 www-servers/h2o/h2o-2.2.6-r1.ebuild        |  5 ++-
 3 files changed, 136 insertions(+), 2 deletions(-)

diff --git a/www-servers/h2o/files/h2o-2.2-ruby30.patch 
b/www-servers/h2o/files/h2o-2.2-ruby30.patch
new file mode 100644
index 0000000..47692d6
--- /dev/null
+++ b/www-servers/h2o/files/h2o-2.2-ruby30.patch
@@ -0,0 +1,63 @@
+--- a/deps/mruby/Rakefile
++++ b/deps/mruby/Rakefile
+@@ -37,15 +37,15 @@
+ task :default => :all
+ 
+ bin_path = ENV['INSTALL_DIR'] || "#{MRUBY_ROOT}/bin"
+-FileUtils.mkdir_p bin_path, { :verbose => $verbose }
++FileUtils.mkdir_p bin_path, :verbose => $verbose
+ 
+ depfiles = MRuby.targets['host'].bins.map do |bin|
+   install_path = MRuby.targets['host'].exefile("#{bin_path}/#{bin}")
+   source_path = 
MRuby.targets['host'].exefile("#{MRuby.targets['host'].build_dir}/bin/#{bin}")
+ 
+   file install_path => source_path do |t|
+-    FileUtils.rm_f t.name, { :verbose => $verbose }
+-    FileUtils.cp t.prerequisites.first, t.name, { :verbose => $verbose }
++    FileUtils.rm_f t.name, :verbose => $verbose
++    FileUtils.cp t.prerequisites.first, t.name, :verbose => $verbose
+   end
+ 
+   install_path
+@@ -78,8 +78,8 @@
+         install_path = MRuby.targets['host'].exefile("#{bin_path}/#{bin}")
+ 
+         file install_path => exec do |t|
+-          FileUtils.rm_f t.name, { :verbose => $verbose }
+-          FileUtils.cp t.prerequisites.first, t.name, { :verbose => $verbose }
++          FileUtils.rm_f t.name, :verbose => $verbose
++          FileUtils.cp t.prerequisites.first, t.name, :verbose => $verbose
+         end
+         depfiles += [ install_path ]
+       elsif target == MRuby.targets['host-debug']
+@@ -87,8 +87,8 @@
+           install_path = 
MRuby.targets['host-debug'].exefile("#{bin_path}/#{bin}")
+ 
+           file install_path => exec do |t|
+-            FileUtils.rm_f t.name, { :verbose => $verbose }
+-            FileUtils.cp t.prerequisites.first, t.name, { :verbose => 
$verbose }
++            FileUtils.rm_f t.name, :verbose => $verbose
++            FileUtils.cp t.prerequisites.first, t.name, :verbose => $verbose
+           end
+           depfiles += [ install_path ]
+         end
+@@ -127,16 +127,16 @@
+ desc "clean all built and in-repo installed artifacts"
+ task :clean do
+   MRuby.each_target do |t|
+-    FileUtils.rm_rf t.build_dir, { :verbose => $verbose }
++    FileUtils.rm_rf t.build_dir, :verbose => $verbose
+   end
+-  FileUtils.rm_f depfiles, { :verbose => $verbose }
++  FileUtils.rm_f depfiles, :verbose => $verbose
+   puts "Cleaned up target build folder"
+ end
+ 
+ desc "clean everything!"
+ task :deep_clean => ["clean"] do
+   MRuby.each_target do |t|
+-    FileUtils.rm_rf t.gem_clone_dir, { :verbose => $verbose }
++    FileUtils.rm_rf t.gem_clone_dir, :verbose => $verbose
+   end
+   puts "Cleaned up mrbgems build folder"
+ end

diff --git a/www-servers/h2o/files/h2o-2.3-mruby.patch 
b/www-servers/h2o/files/h2o-2.3-mruby.patch
new file mode 100644
index 0000000..4f64565
--- /dev/null
+++ b/www-servers/h2o/files/h2o-2.3-mruby.patch
@@ -0,0 +1,70 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -237,6 +237,19 @@
+     SET(WSLAY_LIBRARIES -lwslay)
+ ENDIF (NOT WSLAY_FOUND)
+ 
++IF (PKG_CONFIG_FOUND)
++    PKG_CHECK_MODULES(ONIG onigmo)
++    IF (NOT ONIG_FOUND)
++      PKG_CHECK_MODULES(ONIG oniguruma)
++    ENDIF (NOT ONIG_FOUND)
++    IF (ONIG_FOUND)
++        LINK_DIRECTORIES(${ONIG_LIBRARY_DIRS})
++    ENDIF (ONIG_FOUND)
++ENDIF (PKG_CONFIG_FOUND)
++IF (NOT ONIG_FOUND AND WITH_MRUBY)
++    MESSAGE(FATAL_ERROR "Onigmo/Oniguruma not found")
++ENDIF (NOT ONIG_FOUND AND WITH_MRUBY)
++
+ IF (ZLIB_FOUND)
+     INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIRS})
+     LINK_DIRECTORIES(${ZLIB_LIBRARY_DIRS})
+@@ -743,7 +756,7 @@
+     ADD_CUSTOM_TARGET(mruby
+         # deps/mruby/tasks/toolchains/clang.rake looks for CC, CXX and LD.
+         # There are no C++ files in deps/mruby, use the C compiler for 
linking.
+-        MRUBY_TOOLCHAIN=${MRUBY_TOOLCHAIN} CC=${CMAKE_C_COMPILER} 
CXX=${CMAKE_CXX_COMPILER} LD=${CMAKE_C_COMPILER} 
MRUBY_CONFIG=${CMAKE_CURRENT_SOURCE_DIR}/misc/mruby_config.rb 
MRUBY_BUILD_DIR=${CMAKE_CURRENT_BINARY_DIR}/mruby 
MRUBY_ADDITIONAL_CONFIG=${MRUBY_ADDITIONAL_CONFIG} ruby minirake
++        MRUBY_TOOLCHAIN=${MRUBY_TOOLCHAIN} CC=${CMAKE_C_COMPILER} 
CXX=${CMAKE_CXX_COMPILER} LD=${CMAKE_C_COMPILER} 
MRUBY_CONFIG=${CMAKE_CURRENT_SOURCE_DIR}/misc/mruby_config.rb 
MRUBY_BUILD_DIR=${CMAKE_CURRENT_BINARY_DIR}/mruby 
MRUBY_ADDITIONAL_CONFIG=${MRUBY_ADDITIONAL_CONFIG} ruby minirake -v
+         WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/deps/mruby
+         BYPRODUCTS "${CMAKE_CURRENT_BINARY_DIR}/mruby/host/lib/libmruby.a"
+                    
"${CMAKE_CURRENT_BINARY_DIR}/mruby/host/mrbgems/mruby-onig-regexp/onigmo-6.2.0/.libs/libonigmo.a"
+@@ -777,7 +790,7 @@
+     # note: the paths need to be determined before libmruby.flags.mak is 
generated
+     TARGET_LINK_LIBRARIES(h2o
+         "${CMAKE_CURRENT_BINARY_DIR}/mruby/host/lib/libmruby.a"
+-        
"${CMAKE_CURRENT_BINARY_DIR}/mruby/host/mrbgems/mruby-onig-regexp/onigmo-6.2.0/.libs/libonigmo.a"
++        ${ONIG_LIBRARIES}
+         "m")
+     ADD_DEPENDENCIES(h2o mruby)
+ ENDIF (WITH_MRUBY)
+--- a/deps/mruby-onig-regexp/mrbgem.rake
++++ b/deps/mruby-onig-regexp/mrbgem.rake
+@@ -108,10 +108,8 @@
+ 
+   if spec.respond_to? :search_package and spec.search_package 'onigmo'
+     spec.cc.defines += ['HAVE_ONIGMO_H']
+-    spec.linker.libraries << 'onigmo'
+   elsif spec.respond_to? :search_package and spec.search_package 'oniguruma'
+     spec.cc.defines += ['HAVE_ONIGURUMA_H']
+-    spec.linker.libraries << 'onig'
+   elsif build.cc.respond_to? :search_header_path and 
build.cc.search_header_path 'onigmo.h'
+     spec.cc.defines += ['HAVE_ONIGMO_H']
+     spec.linker.libraries << 'onigmo'
+--- a/misc/mruby_config.rb
++++ b/misc/mruby_config.rb
+@@ -15,13 +15,7 @@
+   # use mrbgems
+   Dir.glob("../mruby-*/mrbgem.rake") do |x|
+     g = File.basename File.dirname x
+-    if g == 'mruby-onig-regexp'
+-      conf.gem "../deps/#{g}" do |c|
+-        c.bundle_onigmo
+-      end
+-    else
+-      conf.gem "../deps/#{g}"
+-    end
++    conf.gem "../deps/#{g}"
+   end
+ 
+   # include all the core GEMs

diff --git a/www-servers/h2o/h2o-2.2.6-r1.ebuild 
b/www-servers/h2o/h2o-2.2.6-r1.ebuild
index abb112d..c3be8ec 100644
--- a/www-servers/h2o/h2o-2.2.6-r1.ebuild
+++ b/www-servers/h2o/h2o-2.2.6-r1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI="8"
 CMAKE_MAKEFILE_GENERATOR="emake"
 SSL_DEPS_SKIP=1
-USE_RUBY="ruby26 ruby27"
+USE_RUBY="ruby27 ruby30 ruby31"
 
 inherit cmake ruby-single ssl-cert systemd toolchain-funcs
 
@@ -41,6 +41,7 @@ BDEPEND="libh2o? ( virtual/pkgconfig )
 PATCHES=(
        "${FILESDIR}"/${PN}-2.2-libressl-3.5.patch
        "${FILESDIR}"/${PN}-2.2-mruby.patch
+       "${FILESDIR}"/${PN}-2.2-ruby30.patch
 )
 
 src_prepare() {

Reply via email to