# Copyright (C) 2001-2003
# William E. Kempf
#
# Permission to use, copy, modify, distribute and sell this software
# and its documentation for any purpose is hereby granted without fee,
# provided that the above copyright notice appear in all copies and
# that both that copyright notice and this permission notice appear
# in supporting documentation.  William E. Kempf makes no representations
# about the suitability of this software for any purpose.
# It is provided "as is" without express or implied warranty.
#
# Boost.Threads tutorial Jamfile
#
# Additional configuration variables used:
#   1. PTW32 may be used on Win32 platforms to specify that the pthreads-win32
#      library should be used instead of "native" threads. This feature is
#      mostly used for testing and it's generally recommended you use the
#      native threading libraries instead. PTW32 should be set to be a list
#      of two strings, the first specifying the installation path of the
#      pthreads-win32 library and the second specifying which library
#      variant to link against (see the pthreads-win32 documentation).
#      Example: jam -sPTW32="c:\pthreads-win32 pthreadVCE.lib"

# Declare the location of this subproject relative to the root.

subproject libs/thread/tutorial ;

# Include threads.jam for Boost.Threads global build information.
# This greatly simplifies the Jam code needed to configure the build
# for the various Win32 build types.
import ../build/threads ;

{
    template tutorial
        ## sources ##
        : <template>thread_base
          <dll>../build/boost_thread
        ## requirements ##
        :
        ## default build ##
        :
    ;

    exe helloworld : <template>tutorial helloworld.cpp ;
    exe helloworld2 : <template>tutorial helloworld2.cpp ;
    exe helloworld3 : <template>tutorial helloworld3.cpp ;
    exe helloworld4 : <template>tutorial helloworld4.cpp ;
    exe factorial : <template>tutorial factorial.cpp ;
    exe factorial2 : <template>tutorial factorial2.cpp ;
    exe factorial3 : <template>tutorial factorial3.cpp ;
    exe counter : <template>tutorial counter.cpp ;
    exe bounded_buffer : <template>tutorial bounded_buffer.cpp ;
    exe once : <template>tutorial once.cpp ;
}
