From 8e26aeaca2a19592a9eea3917f3139bfde8641f0 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Wed, 15 Jan 2025 06:41:45 +0000 Subject: gentoo auto-resync : 15:01:2025 - 06:41:45 --- dev-games/Manifest.gz | Bin 5732 -> 5729 bytes dev-games/openscenegraph/Manifest | 2 + .../files/openscenegraph-3.6.5-boost-1.87.0.patch | 301 +++++++++++++++++++++ .../openscenegraph-3.6.5-r116.ebuild | 172 ++++++++++++ 4 files changed, 475 insertions(+) create mode 100644 dev-games/openscenegraph/files/openscenegraph-3.6.5-boost-1.87.0.patch create mode 100644 dev-games/openscenegraph/openscenegraph-3.6.5-r116.ebuild (limited to 'dev-games') diff --git a/dev-games/Manifest.gz b/dev-games/Manifest.gz index 38fc8acc90d3..63f5a73ad04c 100644 Binary files a/dev-games/Manifest.gz and b/dev-games/Manifest.gz differ diff --git a/dev-games/openscenegraph/Manifest b/dev-games/openscenegraph/Manifest index d5c49ce73e1b..830cf9a52152 100644 --- a/dev-games/openscenegraph/Manifest +++ b/dev-games/openscenegraph/Manifest @@ -1,5 +1,6 @@ AUX openscenegraph-3.6.3-cmake.patch 993 BLAKE2B 3adb6691bb1c2e9cc4e88ef5c1e107bd429564248fd72c6f4d70c1622b2933273e02f294d5fd3b2529fdbbdef65cdba41db7b441b7334b6180995896b52f8212 SHA512 2905fa5031641f2d3a8cec46c32c1cbf8adfb34b7c460c22eaecca66f5cc0b73c2bda4ed68dca3bda12a5f49385c2257bd5b4f3271b13eb979298eeaefb45789 AUX openscenegraph-3.6.3-docdir.patch 2991 BLAKE2B 9d2d3bab0d8956f66b4b23a112dbd42cbf6dc60b8f423d71f1082700d19a04867232597fadd14a60c77a0add9e60b5ffb4a0db6811dd26d854afb04d208cf716 SHA512 fd1294e441007b488186dbd944c82d1f960f7a898bcc093d0a5edfb936c727f18ad289be8dec8cfa4fbba80965bb7992b6d3a4e2c0f690a7736c05cda49a2bea +AUX openscenegraph-3.6.5-boost-1.87.0.patch 12571 BLAKE2B c9f2ed8ec754f3ee6b6cb30b22beb2d374199753c9b1f3918f7faae5da290e7700a7721e6bd351eb706b0120e5aafb3e24434f27d66fdbae1b2e1fb30e11c779 SHA512 8583c94f40160c235126ce9b0c774e2906d752a92408aae586f85f64df9a366e6611adc7260de050df8997fcf9a88c73ac63ea46b7264a3303ed9732c5778189 AUX openscenegraph-3.6.5-cmake_lua_version.patch 440 BLAKE2B 51a35309b01a096f9423ff64e66d62f99d3e26bd898db0b53c135dc99318b236a1b129211f51de9b1a29d054e0810aa4ff2a7c307dc4b4a606eb4075a60748d9 SHA512 a41c7a65b1cfd0dabc080f509cf288f575b3ec5d7666a4a889a8c3156e9d32559e1f802e23783c5c70376c82a24dd87813e9bfde0876085e0e3967b47852059a AUX openscenegraph-3.6.5-openexr3.patch 2014 BLAKE2B ea9d75986ea68519ca9d5dab066273cb8a5eb8a492c96131240d023660c939d948276c459a617413ba55b80767a945bfec038ac4ada7ca6f46185aeccdc949a4 SHA512 6cd446c69d99b68da6bf39862cdc81d51be534ed35cea9f2858dc7771dd189a9ee5f5c1f76ea1247680b03eff5b7ec3f2331c2e9505c17d5a6a3f3cac4d2ed1e AUX openscenegraph-3.6.5-remove-register-keyword.patch 4507 BLAKE2B e5b6ae132492198906db6e3490bb1c578f5294422e0bcf9b31d582187cf3de1dccc76189c0825a237f659ddaa0f956fa1d9f9e14e3bd85022d88d3918ea3cdc7 SHA512 874cf70b4c5e93d1f0b322e2c5c70cbddeda36a3e55c6ed4ecd14cfd3bb18c7bf7d841ba7d19375a2be06ece8d6550c673bb0e2aa2ecf3f7af2346403e3cabdc @@ -7,4 +8,5 @@ AUX openscenegraph-3.6.5-use_boost_asio.patch 6995 BLAKE2B 0b0c0af9980b59e1cfd4c DIST OpenSceneGraph-3.6.5.tar.gz 5780762 BLAKE2B 31ebeeae94eb6aff043788313946d5c08886f97d97cd5796e600918e137ef7f06839206b79b2f5649aac7f34037d4d79e18a5638152e150de931b7f7a7d3c38b SHA512 7002fa30a3bcf6551d2e1050b4ca75a3736013fd190e4f50953717406864da1952deb09f530bc8c5ddf6e4b90204baec7dbc283f497829846d46d561f66feb4b EBUILD openscenegraph-3.6.5-r114.ebuild 4547 BLAKE2B 5f56b11a9d5fb8cd392fc10ee9e63df5381bcfb26a9847b99c60f7b5b2652aa63bc925f5ff39910ade4ca34a7c0c03444779c474f13575014ae7fb8b6046d63e SHA512 6d727fc0faa407d11c5e31a53d3968b71f5d4409834a6eba97460d1d2332ae625931863f9de4735004914000c077797dfe1ef1a8522ec152ac5e86c39c6a240e EBUILD openscenegraph-3.6.5-r115.ebuild 4547 BLAKE2B 79788b4d0c3d9bb70f6330a481ab48c5dad0b9b59da7197748f630172dcc119fe21be05a94e712f6e5eb028dc37f6b514e71287c84e2f38233533797b2bd198f SHA512 00906dd98fed7dc6f4398c8feb7afedfb58f6d8a412f060c221906b13c93f89cc22a01b4b51081b84ad8bdfe8f5d7f4fca63a89ff02b1d4e880a653da3216392 +EBUILD openscenegraph-3.6.5-r116.ebuild 4594 BLAKE2B 0576aa845c71d637e01440377e3b9b1e80abad599f8f73b9c37a1a6529a6678f93b8a979e0a6aac2a850bf2d54c7af1ef6a9ffc6f39910cc8a6cb58b214d68ba SHA512 1ce4cdc30b929bfc156d54cfb1af3731453fd6600a1c7be1700d1c825c7615c72d211a1f50681ae6c8910c87b0b4e8ab6f6428e4d1dad7671e0769ed08a931c8 MISC metadata.xml 1821 BLAKE2B 2b9f8f3e71f190ba0f61a0e930e2a6fdb98ba8ef36838f2b88b74868ef41c25cc43bebcdbb3266208fac7ad13a1d73276543a145aa4f003c6e6937c6952f84f3 SHA512 693dba1413ccb84e8e2d1814cece3eac9fe506aaedaf61af4cb4b16301e4482be9409d874a1f392b095f443c37a19a4d97e2e271c84716dc7e192d001332e8a1 diff --git a/dev-games/openscenegraph/files/openscenegraph-3.6.5-boost-1.87.0.patch b/dev-games/openscenegraph/files/openscenegraph-3.6.5-boost-1.87.0.patch new file mode 100644 index 000000000000..22e54593b981 --- /dev/null +++ b/dev-games/openscenegraph/files/openscenegraph-3.6.5-boost-1.87.0.patch @@ -0,0 +1,301 @@ +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/connection.cpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/connection.cpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/connection.cpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/connection.cpp 2024-12-27 12:45:50.072697619 +0100 +@@ -10,16 +10,17 @@ + + #include "connection.hpp" + #include +-#include ++#include ++using namespace boost::placeholders; + #include "request_handler.hpp" + #include + + namespace http { + namespace server { + +-connection::connection(asio::io_service& io_service, ++connection::connection(boost::asio::io_context& io_context, + request_handler& handler) +- : socket_(io_service), ++ : socket_(io_context), + request_handler_(handler) + { + OSG_DEBUG << "RestHttpDevice :: connection::connection" << std::endl; +@@ -29,7 +30,7 @@ connection::~connection() + { + OSG_DEBUG << "RestHttpDevice :: connection::~connection" << std::endl; + } +-asio::ip::tcp::socket& connection::socket() ++boost::asio::ip::tcp::socket& connection::socket() + { + return socket_; + } +@@ -38,10 +39,8 @@ void connection::start() + { + OSG_DEBUG << "RestHttpDevice :: connection::start" << std::endl; + +- socket_.async_read_some(asio::buffer(buffer_), +- boost::bind(&connection::handle_read, shared_from_this(), +- asio::placeholders::error, +- asio::placeholders::bytes_transferred)); ++ socket_.async_read_some(boost::asio::buffer(buffer_), ++ boost::bind(&connection::handle_read, shared_from_this(), _1, _2)); + } + + void connection::handle_read(const boost::system::error_code& e, +@@ -56,23 +55,19 @@ void connection::handle_read(const boost + if (result) + { + request_handler_.handle_request(request_, reply_); +- asio::async_write(socket_, reply_.to_buffers(), +- boost::bind(&connection::handle_write, shared_from_this(), +- asio::placeholders::error)); ++ boost::asio::async_write(socket_, reply_.to_buffers(), ++ boost::bind(&connection::handle_write, shared_from_this(), _1)); + } + else if (!result) + { + reply_ = reply::stock_reply(reply::bad_request); +- asio::async_write(socket_, reply_.to_buffers(), +- boost::bind(&connection::handle_write, shared_from_this(), +- asio::placeholders::error)); ++ boost::asio::async_write(socket_, reply_.to_buffers(), ++ boost::bind(&connection::handle_write, shared_from_this(), _1)); + } + else + { +- socket_.async_read_some(asio::buffer(buffer_), +- boost::bind(&connection::handle_read, shared_from_this(), +- asio::placeholders::error, +- asio::placeholders::bytes_transferred)); ++ socket_.async_read_some(boost::asio::buffer(buffer_), ++ boost::bind(&connection::handle_read, shared_from_this(), _1, _2)); + } + } + +@@ -88,7 +83,7 @@ void connection::handle_write(const boos + { + // Initiate graceful connection closure. + boost::system::error_code ignored_ec; +- socket_.shutdown(asio::ip::tcp::socket::shutdown_both, ignored_ec); ++ socket_.shutdown(boost::asio::ip::tcp::socket::shutdown_both, ignored_ec); + } + + // No new asynchronous operations are started. This means that all shared_ptr +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/connection.hpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/connection.hpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/connection.hpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/connection.hpp 2024-12-27 12:40:08.523007514 +0100 +@@ -33,7 +33,7 @@ class connection + { + public: + /// Construct a connection with the given io_service. +- explicit connection(asio::io_service& io_service, ++ explicit connection(boost::asio::io_context& io_context, + request_handler& handler); + + /// Get the socket associated with the connection. +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/io_service_pool.cpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/io_service_pool.cpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/io_service_pool.cpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/io_service_pool.cpp 2024-12-27 12:48:08.654997383 +0100 +@@ -8,16 +8,18 @@ + // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + // + +-#include "server.hpp" ++#include "io_service_pool.hpp" + #include +-#include ++#include ++using namespace boost::placeholders; ++#include + #include + + namespace http { + namespace server { + + io_service_pool::io_service_pool(std::size_t pool_size) +- : next_io_service_(0) ++ : next_io_context_(0) + { + if (pool_size == 0) + throw std::runtime_error("io_service_pool size is 0"); +@@ -26,9 +28,9 @@ io_service_pool::io_service_pool(std::si + // exit until they are explicitly stopped. + for (std::size_t i = 0; i < pool_size; ++i) + { +- io_service_ptr io_service(new asio::io_service); +- work_ptr work(new asio::io_service::work(*io_service)); +- io_services_.push_back(io_service); ++ io_context_ptr io_context(new boost::asio::io_context); ++ work_ptr work(new boost::asio::executor_work_guard(boost::asio::make_work_guard(*io_context))); ++ io_contexts_.push_back(io_context); + work_.push_back(work); + } + } +@@ -36,31 +38,34 @@ io_service_pool::io_service_pool(std::si + void io_service_pool::run() + { + // Create a pool of threads to run all of the io_services. +- std::vector threads; +- for (std::size_t i = 0; i < io_services_.size(); ++i) +- threads.emplace_back(thread(boost::bind(&asio::io_service::run, +- io_services_[i]))); ++ std::vector> threads; ++ for (std::size_t i = 0; i < io_contexts_.size(); ++i) ++ { ++ boost::shared_ptr thread(new boost::thread( ++ boost::bind(&boost::asio::io_context::run, io_contexts_[i]))); ++ threads.push_back(thread); ++ } + + // Wait for all threads in the pool to exit. + for (std::size_t i = 0; i < threads.size(); ++i) +- threads[i].join(); ++ threads[i]->join(); + } + + void io_service_pool::stop() + { + // Explicitly stop all io_services. +- for (std::size_t i = 0; i < io_services_.size(); ++i) +- io_services_[i]->stop(); ++ for (std::size_t i = 0; i < io_contexts_.size(); ++i) ++ io_contexts_[i]->stop(); + } + +-asio::io_service& io_service_pool::get_io_service() ++boost::asio::io_context& io_service_pool::get_io_context() + { + // Use a round-robin scheme to choose the next io_service to use. +- asio::io_service& io_service = *io_services_[next_io_service_]; +- ++next_io_service_; +- if (next_io_service_ == io_services_.size()) +- next_io_service_ = 0; +- return io_service; ++ boost::asio::io_context& io_context = *io_contexts_[next_io_context_]; ++ ++next_io_context_; ++ if (next_io_context_ == io_contexts_.size()) ++ next_io_context_ = 0; ++ return io_context; + } + + } // namespace server +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/io_service_pool.hpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/io_service_pool.hpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/io_service_pool.hpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/io_service_pool.hpp 2024-12-27 12:40:08.523007514 +0100 +@@ -16,8 +16,6 @@ + #include + #include + +-using namespace boost; +- + namespace http { + namespace server { + +@@ -36,20 +34,20 @@ public: + void stop(); + + /// Get an io_service to use. +- asio::io_service& get_io_service(); ++ boost::asio::io_context& get_io_context(); + + private: +- typedef boost::shared_ptr io_service_ptr; +- typedef boost::shared_ptr work_ptr; ++ typedef boost::shared_ptr io_context_ptr; ++ typedef boost::shared_ptr> work_ptr; + + /// The pool of io_services. +- std::vector io_services_; ++ std::vector io_contexts_; + + /// The work that keeps the io_services running. + std::vector work_; + + /// The next io_service to use for a connection. +- std::size_t next_io_service_; ++ std::size_t next_io_context_; + }; + + } // namespace server +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/ReaderWriterRestHttpDevice.cpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/ReaderWriterRestHttpDevice.cpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/ReaderWriterRestHttpDevice.cpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/ReaderWriterRestHttpDevice.cpp 2024-12-27 12:49:01.143868489 +0100 +@@ -35,6 +35,8 @@ + #include + #include + #include "RestHttpDevice.hpp" ++#include ++using namespace boost::placeholders; + + + +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/RestHttpDevice.cpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/RestHttpDevice.cpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/RestHttpDevice.cpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/RestHttpDevice.cpp 2024-12-27 12:48:44.131586152 +0100 +@@ -16,6 +16,8 @@ + #include + #include + #include "request_handler.hpp" ++#include ++using namespace boost::placeholders; + + namespace RestHttp { + +diff '--color=auto' -urNp openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/server.cpp openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/server.cpp +--- openscenegraph-3.6.5-orig/src/osgPlugins/RestHttpDevice/server.cpp 2024-12-27 12:34:55.469783593 +0100 ++++ openscenegraph-3.6.5-dwok/src/osgPlugins/RestHttpDevice/server.cpp 2024-12-27 12:47:11.326045994 +0100 +@@ -9,7 +9,8 @@ + // + + #include "server.hpp" +-#include ++#include ++using namespace boost::placeholders; + + namespace http { + namespace server { +@@ -17,22 +18,21 @@ namespace server { + server::server(const std::string& address, const std::string& port, + const std::string& doc_root, std::size_t io_service_pool_size) + : io_service_pool_(io_service_pool_size), +- acceptor_(io_service_pool_.get_io_service()), ++ acceptor_(io_service_pool_.get_io_context()), + new_connection_(new connection( +- io_service_pool_.get_io_service(), request_handler_)), ++ io_service_pool_.get_io_context(), request_handler_)), + request_handler_(doc_root) + { + // Open the acceptor with the option to reuse the address (i.e. SO_REUSEADDR). +- asio::ip::tcp::resolver resolver(io_service_pool_.get_io_service()); +- asio::ip::tcp::resolver::query query(address, port); +- asio::ip::tcp::endpoint endpoint = *resolver.resolve(query); ++ boost::asio::ip::tcp::resolver resolver(io_service_pool_.get_io_context()); ++ boost::asio::ip::tcp::resolver::results_type endpoints = resolver.resolve(address, port); ++ boost::asio::ip::tcp::endpoint endpoint = *endpoints.begin(); + acceptor_.open(endpoint.protocol()); +- acceptor_.set_option(asio::ip::tcp::acceptor::reuse_address(true)); ++ acceptor_.set_option(boost::asio::ip::tcp::acceptor::reuse_address(true)); + acceptor_.bind(endpoint); + acceptor_.listen(); + acceptor_.async_accept(new_connection_->socket(), +- boost::bind(&server::handle_accept, this, +- asio::placeholders::error)); ++ boost::bind(&server::handle_accept, this, _1)); + } + + void server::run() +@@ -54,10 +54,9 @@ void server::handle_accept(const boost:: + OSG_DEBUG << "RestHttpDevice :: server::handle_accept" << std::endl; + new_connection_->start(); + new_connection_.reset(new connection( +- io_service_pool_.get_io_service(), request_handler_)); ++ io_service_pool_.get_io_context(), request_handler_)); + acceptor_.async_accept(new_connection_->socket(), +- boost::bind(&server::handle_accept, this, +- asio::placeholders::error)); ++ boost::bind(&server::handle_accept, this, _1)); + } + else + { diff --git a/dev-games/openscenegraph/openscenegraph-3.6.5-r116.ebuild b/dev-games/openscenegraph/openscenegraph-3.6.5-r116.ebuild new file mode 100644 index 000000000000..6c16da00e7b7 --- /dev/null +++ b/dev-games/openscenegraph/openscenegraph-3.6.5-r116.ebuild @@ -0,0 +1,172 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-1 ) + +WX_GTK_VER="3.2-gtk3" +inherit cmake flag-o-matic lua-single wxwidgets + +MY_PN="OpenSceneGraph" +MY_P=${MY_PN}-${PV} + +DESCRIPTION="Open source high performance 3D graphics toolkit" +HOMEPAGE="https://www.openscenegraph.com/" +SRC_URI="https://github.com/${PN}/${MY_PN}/archive/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_PN}-${MY_P}" + +LICENSE="wxWinLL-3 LGPL-2.1" +SLOT="0/161" # NOTE: CHECK WHEN BUMPING! Subslot is SOVERSION +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc64 x86" +IUSE=" + collada curl dicom debug doc egl examples ffmpeg fltk fox gdal + gif glut gstreamer jpeg las lua openexr openinventor osgapps pdf png + sdl sdl2 svg tiff truetype vnc wxwidgets xrandr +zlib +" + +REQUIRED_USE=" + dicom? ( zlib ) + lua? ( ${LUA_REQUIRED_USE} ) + openexr? ( zlib ) + sdl2? ( sdl ) +" + +# TODO: FBX, GTA, NVTT, OpenVRML, Performer +BDEPEND=" + app-arch/unzip + virtual/pkgconfig + doc? ( app-text/doxygen[dot] ) +" +#