You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-games/openscenegraph-openmw/files/openscenegraph-3.6.5-use_bo...

264 lines
6.8 KiB

--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -764,7 +764,7 @@
FIND_PACKAGE(DirectInput)
FIND_PACKAGE(NVTT)
IF (NOT WIN32)
- FIND_PACKAGE(Asio)
+ FIND_PACKAGE(Boost)
ENDIF()
FIND_PACKAGE(ZeroConf)
--- a/CMakeModules/FindAsio.cmake
+++ b/CMakeModules/FindAsio.cmake
@@ -1,22 +0,0 @@
-# Locate ASIO-headers (http://think-async.com/Asio)
-# This module defines
-# ASIO_FOUND, if false, do not try to link to gdal
-# ASIO_INCLUDE_DIR, where to find the headers
-#
-# Created by Stephan Maximilian Huber
-
-FIND_PATH(ASIO_INCLUDE_DIR
- NAMES
- asio.hpp
- PATHS
- /usr/include
- /usr/local/include
-)
-
-SET(ASIO_FOUND "NO")
-IF(ASIO_INCLUDE_DIR)
- FIND_PACKAGE( Boost 1.37 )
- IF(Boost_FOUND)
- SET(ASIO_FOUND "YES")
- ENDIF()
-ENDIF()
--- a/src/osgPlugins/CMakeLists.txt
+++ b/src/osgPlugins/CMakeLists.txt
@@ -299,13 +299,13 @@
#
# Device integration plugins
#
-IF (SDL_FOUND)
+IF(SDL_FOUND)
ADD_PLUGIN_DIRECTORY(sdl)
-ENDIF(SDL_FOUND)
+ENDIF()
-IF(ASIO_FOUND)
+IF(Boost_FOUND)
ADD_PLUGIN_DIRECTORY(RestHttpDevice)
-ENDIF(ASIO_FOUND)
+ENDIF()
IF(ZEROCONF_FOUND)
--- a/src/osgPlugins/RestHttpDevice/CMakeLists.txt
+++ b/src/osgPlugins/RestHttpDevice/CMakeLists.txt
@@ -1,6 +1,5 @@
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
-INCLUDE_DIRECTORIES(${ASIO_INCLUDE_DIR})
-
+
SET(TARGET_SRC
connection.cpp
io_service_pool.cpp
@@ -26,7 +25,7 @@
RestHttpDevice.hpp
)
-SET(TARGET_ADDED_LIBRARIES osgPresentation )
+SET(TARGET_ADDED_LIBRARIES osgPresentation)
#### end var setup ###
SETUP_PLUGIN(resthttp)
--- a/src/osgPlugins/RestHttpDevice/connection.cpp
+++ b/src/osgPlugins/RestHttpDevice/connection.cpp
@@ -37,14 +37,14 @@
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));
}
-void connection::handle_read(const asio::error_code& e,
+void connection::handle_read(const boost::system::error_code& e,
std::size_t bytes_transferred)
{
if (!e)
@@ -82,12 +82,12 @@
// handler returns. The connection class's destructor closes the socket.
}
-void connection::handle_write(const asio::error_code& e)
+void connection::handle_write(const boost::system::error_code& e)
{
if (!e)
{
// Initiate graceful connection closure.
- asio::error_code ignored_ec;
+ boost::system::error_code ignored_ec;
socket_.shutdown(asio::ip::tcp::socket::shutdown_both, ignored_ec);
}
--- a/src/osgPlugins/RestHttpDevice/connection.hpp
+++ b/src/osgPlugins/RestHttpDevice/connection.hpp
@@ -11,7 +11,7 @@
#ifndef HTTP_SERVER_CONNECTION_HPP
#define HTTP_SERVER_CONNECTION_HPP
-#include <asio.hpp>
+#include <boost/asio.hpp>
#include <boost/array.hpp>
#include <boost/noncopyable.hpp>
#include <boost/shared_ptr.hpp>
@@ -21,6 +21,8 @@
#include "request_handler.hpp"
#include "request_parser.hpp"
+using namespace boost;
+
namespace http {
namespace server {
@@ -42,11 +44,11 @@
~connection();
private:
/// Handle completion of a read operation.
- void handle_read(const asio::error_code& e,
+ void handle_read(const boost::system::error_code& e,
std::size_t bytes_transferred);
/// Handle completion of a write operation.
- void handle_write(const asio::error_code& e);
+ void handle_write(const boost::system::error_code& e);
/// Socket for the connection.
asio::ip::tcp::socket socket_;
--- a/src/osgPlugins/RestHttpDevice/io_service_pool.cpp
+++ b/src/osgPlugins/RestHttpDevice/io_service_pool.cpp
@@ -11,7 +11,7 @@
#include "server.hpp"
#include <stdexcept>
#include <boost/bind.hpp>
-#include <boost/shared_ptr.hpp>
+#include <boost/thread.hpp>
namespace http {
namespace server {
@@ -36,17 +36,14 @@
void io_service_pool::run()
{
// Create a pool of threads to run all of the io_services.
- std::vector<boost::shared_ptr<asio::thread> > threads;
+ std::vector<thread> threads;
for (std::size_t i = 0; i < io_services_.size(); ++i)
- {
- boost::shared_ptr<asio::thread> thread(new asio::thread(
- boost::bind(&asio::io_service::run, io_services_[i])));
- threads.push_back(thread);
- }
+ threads.emplace_back(thread(boost::bind(&asio::io_service::run,
+ io_services_[i])));
// 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()
--- a/src/osgPlugins/RestHttpDevice/io_service_pool.hpp
+++ b/src/osgPlugins/RestHttpDevice/io_service_pool.hpp
@@ -11,11 +11,13 @@
#ifndef HTTP_SERVER_IO_SERVICE_POOL_HPP
#define HTTP_SERVER_IO_SERVICE_POOL_HPP
-#include <asio.hpp>
+#include <boost/asio.hpp>
#include <vector>
#include <boost/noncopyable.hpp>
#include <boost/shared_ptr.hpp>
+using namespace boost;
+
namespace http {
namespace server {
--- a/src/osgPlugins/RestHttpDevice/reply.hpp
+++ b/src/osgPlugins/RestHttpDevice/reply.hpp
@@ -13,9 +13,11 @@
#include <string>
#include <vector>
-#include <asio.hpp>
+#include <boost/asio.hpp>
#include "header.hpp"
+using namespace boost;
+
namespace http {
namespace server {
--- a/src/osgPlugins/RestHttpDevice/server.cpp
+++ b/src/osgPlugins/RestHttpDevice/server.cpp
@@ -23,7 +23,7 @@
request_handler_(doc_root)
{
// Open the acceptor with the option to reuse the address (i.e. SO_REUSEADDR).
- asio::ip::tcp::resolver resolver(acceptor_.get_io_service());
+ 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);
acceptor_.open(endpoint.protocol());
@@ -47,7 +47,7 @@
io_service_pool_.stop();
}
-void server::handle_accept(const asio::error_code& e)
+void server::handle_accept(const boost::system::error_code& e)
{
if (!e)
{
--- a/src/osgPlugins/RestHttpDevice/server.hpp
+++ b/src/osgPlugins/RestHttpDevice/server.hpp
@@ -11,7 +11,7 @@
#ifndef HTTP_SERVER_SERVER_HPP
#define HTTP_SERVER_SERVER_HPP
-#include <asio.hpp>
+#include <boost/asio.hpp>
#include <string>
#include <vector>
#include <boost/noncopyable.hpp>
@@ -20,6 +20,8 @@
#include "io_service_pool.hpp"
#include "request_handler.hpp"
+using namespace boost;
+
namespace http {
namespace server {
@@ -38,12 +40,12 @@
/// Stop the server.
void stop();
-
+
void setCallback(request_handler::Callback* cb) { request_handler_.setCallback(cb); }
private:
/// Handle completion of an asynchronous accept operation.
- void handle_accept(const asio::error_code& e);
+ void handle_accept(const boost::system::error_code& e);
/// The pool of io_service objects used to perform asynchronous operations.
io_service_pool io_service_pool_;