#
# 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 ]
  ;
