| # |
| # Copyright (c) 2003-2010 Christopher M. Kohlhoff (chris at kohlhoff dot com) |
| # |
| # Distributed under the Boost Software License, Version 1.0. (See accompanying |
| # file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
| # |
| |
| import os ; |
| import feature ; |
| |
| if [ os.name ] = SOLARIS |
| { |
| lib socket ; |
| lib nsl ; |
| } |
| else if [ os.name ] = NT |
| { |
| lib ws2_32 ; |
| lib mswsock ; |
| } |
| else if [ os.name ] = HPUX |
| { |
| lib ipv6 ; |
| } |
| else if [ os.name ] = QNXNTO |
| { |
| lib socket ; |
| } |
| |
| local USE_SELECT = |
| <define>BOOST_ASIO_DISABLE_DEV_POLL |
| <define>BOOST_ASIO_DISABLE_EPOLL |
| <define>BOOST_ASIO_DISABLE_KQUEUE |
| <define>BOOST_ASIO_DISABLE_IOCP |
| ; |
| |
| project |
| : requirements |
| <library>/boost/date_time//boost_date_time |
| <library>/boost/system//boost_system |
| <library>/boost/thread//boost_thread |
| <library>/boost/regex//boost_regex |
| <library>/boost/test//boost_test_exec_monitor |
| <define>BOOST_ALL_NO_LIB=1 |
| <threading>multi |
| <os>LINUX:<define>_XOPEN_SOURCE=600 |
| <os>LINUX:<define>_GNU_SOURCE=1 |
| <os>SOLARIS:<define>_XOPEN_SOURCE=500 |
| <os>SOLARIS:<define>__EXTENSIONS__ |
| <os>SOLARIS:<library>socket |
| <os>SOLARIS:<library>nsl |
| <os>NT:<define>_WIN32_WINNT=0x0501 |
| <os>NT,<toolset>cw:<library>ws2_32 |
| <os>NT,<toolset>cw:<library>mswsock |
| <os>NT,<toolset>gcc:<library>ws2_32 |
| <os>NT,<toolset>gcc:<library>mswsock |
| <os>NT,<toolset>gcc-cygwin:<define>__USE_W32_SOCKETS |
| <os>HPUX,<toolset>gcc:<define>_XOPEN_SOURCE_EXTENDED |
| <os>HPUX:<library>ipv6 |
| <os>QNXNTO:<library>socket |
| ; |
| |
| test-suite "asio" : |
| [ link basic_datagram_socket.cpp ] |
| [ link basic_datagram_socket.cpp : $(USE_SELECT) : basic_datagram_socket_select ] |
| [ link basic_deadline_timer.cpp ] |
| [ link basic_deadline_timer.cpp : $(USE_SELECT) : basic_deadline_timer_select ] |
| [ link basic_socket_acceptor.cpp ] |
| [ link basic_socket_acceptor.cpp : $(USE_SELECT) : basic_socket_acceptor_select ] |
| [ link basic_stream_socket.cpp ] |
| [ link basic_stream_socket.cpp : $(USE_SELECT) : basic_stream_socket_select ] |
| [ run buffer.cpp ] |
| [ run buffer.cpp : : : $(USE_SELECT) : buffer_select ] |
| [ run buffered_read_stream.cpp ] |
| [ run buffered_read_stream.cpp : : : $(USE_SELECT) : buffered_read_stream_select ] |
| [ run buffered_stream.cpp ] |
| [ run buffered_stream.cpp : : : $(USE_SELECT) : buffered_stream_select ] |
| [ run buffered_write_stream.cpp ] |
| [ run buffered_write_stream.cpp : : : $(USE_SELECT) : buffered_write_stream_select ] |
| [ run buffers_iterator.cpp ] |
| [ run buffers_iterator.cpp : : : $(USE_SELECT) : buffers_iterator_select ] |
| [ link completion_condition.cpp ] |
| [ link completion_condition.cpp : $(USE_SELECT) : completion_condition_select ] |
| [ link datagram_socket_service.cpp ] |
| [ link datagram_socket_service.cpp : $(USE_SELECT) : datagram_socket_service_select ] |
| [ link deadline_timer_service.cpp ] |
| [ link deadline_timer_service.cpp : $(USE_SELECT) : deadline_timer_service_select ] |
| [ run deadline_timer.cpp ] |
| [ run deadline_timer.cpp : : : $(USE_SELECT) : deadline_timer_select ] |
| [ run error.cpp ] |
| [ run error.cpp : : : $(USE_SELECT) : error_select ] |
| [ run io_service.cpp ] |
| [ run io_service.cpp : : : $(USE_SELECT) : io_service_select ] |
| [ link ip/address.cpp : : ip_address ] |
| [ link ip/address.cpp : $(USE_SELECT) : ip_address_select ] |
| [ link ip/address_v4.cpp : : ip_address_v4 ] |
| [ link ip/address_v4.cpp : $(USE_SELECT) : ip_address_v4_select ] |
| [ link ip/address_v6.cpp : : ip_address_v6 ] |
| [ link ip/address_v6.cpp : $(USE_SELECT) : ip_address_v6_select ] |
| [ link ip/basic_endpoint.cpp : : ip_basic_endpoint ] |
| [ link ip/basic_endpoint.cpp : $(USE_SELECT) : ip_basic_endpoint_select ] |
| [ link ip/basic_resolver.cpp : : ip_basic_resolver ] |
| [ link ip/basic_resolver.cpp : $(USE_SELECT) : ip_basic_resolver_select ] |
| [ link ip/basic_resolver_entry.cpp : : ip_basic_resolver_entry ] |
| [ link ip/basic_resolver_entry.cpp : $(USE_SELECT) : ip_basic_resolver_entry_select ] |
| [ link ip/basic_resolver_iterator.cpp : : ip_basic_resolver_iterator ] |
| [ link ip/basic_resolver_iterator.cpp : $(USE_SELECT) : ip_basic_resolver_iterator_select ] |
| [ link ip/basic_resolver_query.cpp : : ip_basic_resolver_query ] |
| [ link ip/basic_resolver_query.cpp : $(USE_SELECT) : ip_basic_resolver_query_select ] |
| [ run ip/host_name.cpp : : : : ip_host_name ] |
| [ run ip/host_name.cpp : : : $(USE_SELECT) : ip_host_name_select ] |
| [ run ip/multicast.cpp : : : : ip_multicast ] |
| [ run ip/multicast.cpp : : : $(USE_SELECT) : ip_multicast_select ] |
| [ link ip/resolver_query_base.cpp : : ip_resolver_query_base ] |
| [ link ip/resolver_query_base.cpp : $(USE_SELECT) : ip_resolver_query_base_select ] |
| [ link ip/resolver_service.cpp : : ip_resolver_service ] |
| [ link ip/resolver_service.cpp : $(USE_SELECT) : ip_resolver_service_select ] |
| [ run ip/tcp.cpp : : : : ip_tcp ] |
| [ run ip/tcp.cpp : : : $(USE_SELECT) : ip_tcp_select ] |
| [ run ip/udp.cpp : : : : ip_udp ] |
| [ run ip/udp.cpp : : : $(USE_SELECT) : ip_udp_select ] |
| [ run ip/unicast.cpp : : : : ip_unicast ] |
| [ run ip/unicast.cpp : : : $(USE_SELECT) : ip_unicast_select ] |
| [ run ip/v6_only.cpp : : : : ip_v6_only ] |
| [ run ip/v6_only.cpp : : : $(USE_SELECT) : ip_v6_only_select ] |
| [ run is_read_buffered.cpp ] |
| [ run is_read_buffered.cpp : : : $(USE_SELECT) : is_read_buffered_select ] |
| [ run is_write_buffered.cpp ] |
| [ run is_write_buffered.cpp : : : $(USE_SELECT) : is_write_buffered_select ] |
| [ link local/basic_endpoint.cpp : : local_basic_endpoint ] |
| [ link local/basic_endpoint.cpp : $(USE_SELECT) : local_basic_endpoint_select ] |
| [ link local/connect_pair.cpp : : local_connect_pair ] |
| [ link local/connect_pair.cpp : $(USE_SELECT) : local_connect_pair_select ] |
| [ link local/datagram_protocol.cpp : : local_datagram_protocol ] |
| [ link local/datagram_protocol.cpp : $(USE_SELECT) : local_datagram_protocol_select ] |
| [ link local/stream_protocol.cpp : : local_stream_protocol ] |
| [ link local/stream_protocol.cpp : $(USE_SELECT) : local_stream_protocol_select ] |
| [ link placeholders.cpp ] |
| [ link placeholders.cpp : $(USE_SELECT) : placeholders_select ] |
| [ link posix/basic_descriptor.cpp : : posix_basic_descriptor ] |
| [ link posix/basic_descriptor.cpp : $(USE_SELECT) : posix_basic_descriptor_select ] |
| [ link posix/basic_stream_descriptor.cpp : : posix_basic_stream_descriptor ] |
| [ link posix/basic_stream_descriptor.cpp : $(USE_SELECT) : posix_basic_stream_descriptor_select ] |
| [ link posix/descriptor_base.cpp : : posix_descriptor_base ] |
| [ link posix/descriptor_base.cpp : $(USE_SELECT) : posix_descriptor_base_select ] |
| [ link posix/stream_descriptor.cpp : : posix_stream_descriptor ] |
| [ link posix/stream_descriptor.cpp : $(USE_SELECT) : posix_stream_descriptor_select ] |
| [ link posix/stream_descriptor_service.cpp : : posix_stream_descriptor_service ] |
| [ link posix/stream_descriptor_service.cpp : $(USE_SELECT) : posix_stream_descriptor_service_select ] |
| [ run read.cpp ] |
| [ run read.cpp : : : $(USE_SELECT) : read_select ] |
| [ run read_at.cpp ] |
| [ run read_at.cpp : : : $(USE_SELECT) : read_at_select ] |
| [ run read_until.cpp ] |
| [ run read_until.cpp : : : $(USE_SELECT) : read_until_select ] |
| [ link socket_acceptor_service.cpp ] |
| [ link socket_acceptor_service.cpp : $(USE_SELECT) : socket_acceptor_service_select ] |
| [ run socket_base.cpp ] |
| [ run socket_base.cpp : : : $(USE_SELECT) : socket_base_select ] |
| [ run strand.cpp ] |
| [ run strand.cpp : : : $(USE_SELECT) : strand_select ] |
| [ link stream_socket_service.cpp ] |
| [ link stream_socket_service.cpp : $(USE_SELECT) : stream_socket_service_select ] |
| [ link time_traits.cpp ] |
| [ link time_traits.cpp : $(USE_SELECT) : time_traits_select ] |
| [ link windows/basic_handle.cpp : : windows_basic_handle ] |
| [ link windows/basic_handle.cpp : $(USE_SELECT) : windows_basic_handle_select ] |
| [ link windows/basic_random_access_handle.cpp : : windows_basic_random_access_handle ] |
| [ link windows/basic_random_access_handle.cpp : $(USE_SELECT) : windows_basic_random_access_handle_select ] |
| [ link windows/basic_stream_handle.cpp : : windows_basic_stream_handle ] |
| [ link windows/basic_stream_handle.cpp : $(USE_SELECT) : windows_basic_stream_handle_select ] |
| [ link windows/overlapped_ptr.cpp : : windows_overlapped_ptr ] |
| [ link windows/overlapped_ptr.cpp : $(USE_SELECT) : windows_overlapped_ptr_select ] |
| [ link windows/random_access_handle.cpp : : windows_random_access_handle ] |
| [ link windows/random_access_handle.cpp : $(USE_SELECT) : windows_random_access_handle_select ] |
| [ link windows/random_access_handle_service.cpp : : windows_random_access_handle_service ] |
| [ link windows/random_access_handle_service.cpp : $(USE_SELECT) : windows_random_access_handle_service_select ] |
| [ link windows/stream_handle.cpp : : windows_stream_handle ] |
| [ link windows/stream_handle.cpp : $(USE_SELECT) : windows_stream_handle_select ] |
| [ link windows/stream_handle_service.cpp : : windows_stream_handle_service ] |
| [ link windows/stream_handle_service.cpp : $(USE_SELECT) : windows_stream_handle_service_select ] |
| [ run write.cpp ] |
| [ run write.cpp : : : $(USE_SELECT) : write_select ] |
| [ run write_at.cpp ] |
| [ run write_at.cpp : : : $(USE_SELECT) : write_at_select ] |
| ; |