diff options
Diffstat (limited to '3rdparty/asio/boostify.pl')
-rw-r--r-- | 3rdparty/asio/boostify.pl | 583 |
1 files changed, 0 insertions, 583 deletions
diff --git a/3rdparty/asio/boostify.pl b/3rdparty/asio/boostify.pl deleted file mode 100644 index c29b83b0cce..00000000000 --- a/3rdparty/asio/boostify.pl +++ /dev/null @@ -1,583 +0,0 @@ -#!/usr/bin/perl -w - -use strict; -use File::Path; - -our $boost_dir = "boostified"; - -sub print_line -{ - my ($output, $line, $from, $lineno) = @_; - - # Warn if the resulting line is >80 characters wide. - if (length($line) > 80) - { - if ($from =~ /\.[chi]pp$/) - { - print("Warning: $from:$lineno: output >80 characters wide.\n"); - } - } - - # Write the output. - print($output $line . "\n"); -} - -sub source_contains_asio_thread_usage -{ - my ($from) = @_; - - # Open the input file. - open(my $input, "<$from") or die("Can't open $from for reading"); - - # Check file for use of asio::thread. - while (my $line = <$input>) - { - chomp($line); - if ($line =~ /asio::thread/) - { - close($input); - return 1; - } - elsif ($line =~ /^ *thread /) - { - close($input); - return 1; - } - } - - close($input); - return 0; -} - -sub source_contains_asio_include -{ - my ($from) = @_; - - # Open the input file. - open(my $input, "<$from") or die("Can't open $from for reading"); - - # Check file for inclusion of asio.hpp. - while (my $line = <$input>) - { - chomp($line); - if ($line =~ /# *include [<"]asio\.hpp[>"]/) - { - close($input); - return 1; - } - } - - close($input); - return 0; -} - -sub copy_source_file -{ - my ($from, $to) = @_; - - # Ensure the output directory exists. - my $dir = $to; - $dir =~ s/[^\/]*$//; - mkpath($dir); - - # First determine whether the file makes any use of asio::thread. - my $uses_asio_thread = source_contains_asio_thread_usage($from); - - my $includes_asio = source_contains_asio_include($from); - - my $is_asio_hpp = 0; - $is_asio_hpp = 1 if ($from =~ /asio\.hpp/); - - my $needs_doc_link = 0; - $needs_doc_link = 1 if ($is_asio_hpp); - - my $is_error_hpp = 0; - $is_error_hpp = 1 if ($from =~ /asio\/error\.hpp/); - - my $is_qbk = 0; - $is_qbk = 1 if ($from =~ /.qbk$/); - - my $is_xsl = 0; - $is_xsl = 1 if ($from =~ /.xsl$/); - - my $is_test = 0; - $is_test = 1 if ($from =~ /tests\/unit/); - - # Open the files. - open(my $input, "<$from") or die("Can't open $from for reading"); - open(my $output, ">$to") or die("Can't open $to for writing"); - - # Copy the content. - my $lineno = 1; - while (my $line = <$input>) - { - chomp($line); - - # Unconditional replacements. - $line =~ s/[\\@]ref boost_bind/boost::bind()/g; - if ($from =~ /.*\.txt$/) - { - $line =~ s/[\\@]ref async_read/boost::asio::async_read()/g; - $line =~ s/[\\@]ref async_write/boost::asio::async_write()/g; - } - if ($line =~ /asio_detail_posix_thread_function/) - { - $line =~ s/asio_detail_posix_thread_function/boost_asio_detail_posix_thread_function/g; - } - if ($line =~ /asio_signal_handler/) - { - $line =~ s/asio_signal_handler/boost_asio_signal_handler/g; - } - if ($line =~ /ASIO_/ && !($line =~ /BOOST_ASIO_/)) - { - $line =~ s/ASIO_/BOOST_ASIO_/g; - } - - # Extra replacements for quickbook and XSL source only. - if ($is_qbk || $is_xsl) - { - $line =~ s/asio\.examples/boost_asio.examples/g; - $line =~ s/asio\.history/boost_asio.history/g; - $line =~ s/asio\.index/boost_asio.index/g; - $line =~ s/asio\.overview/boost_asio.overview/g; - $line =~ s/asio\.reference/boost_asio.reference/g; - $line =~ s/asio\.tutorial/boost_asio.tutorial/g; - $line =~ s/asio\.using/boost_asio.using/g; - $line =~ s/Asio/Boost.Asio/g; - $line =~ s/changes made in each release/changes made in each Boost release/g; - $line =~ s/\[\$/[\$boost_asio\//g; - $line =~ s/\[@\.\.\/src\/examples/[\@boost_asio\/example/g; - $line =~ s/include\/asio/boost\/asio/g; - $line =~ s/\^asio/^boost\/asio/g; - $line =~ s/namespaceasio/namespaceboost_1_1asio/g; - $line =~ s/ \(\[\@examples\/diffs.*$//; - } - - # Conditional replacements. - if ($line =~ /^( *)namespace asio {/) - { - if ($is_qbk) - { - print_line($output, $1 . "namespace boost { namespace asio {", $from, $lineno); - } - else - { - print_line($output, $1 . "namespace boost {", $from, $lineno); - print_line($output, $line, $from, $lineno); - } - } - elsif ($line =~ /^( *)} \/\/ namespace asio$/) - { - if ($is_qbk) - { - print_line($output, $1 . "} } // namespace boost::asio", $from, $lineno); - } - else - { - print_line($output, $line, $from, $lineno); - print_line($output, $1 . "} // namespace boost", $from, $lineno); - } - } - elsif ($line =~ /^(# *include )[<"](asio\.hpp)[>"]$/) - { - print_line($output, $1 . "<boost/" . $2 . ">", $from, $lineno); - if ($uses_asio_thread) - { - print_line($output, $1 . "<boost/thread/thread.hpp>", $from, $lineno) if (!$is_test); - $uses_asio_thread = 0; - } - } - elsif ($line =~ /^(# *include )[<"]boost\/.*[>"].*$/) - { - if (!$includes_asio && $uses_asio_thread) - { - print_line($output, $1 . "<boost/thread/thread.hpp>", $from, $lineno) if (!$is_test); - $uses_asio_thread = 0; - } - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /^(# *include )[<"]asio\/thread\.hpp[>"]/) - { - if ($is_test) - { - print_line($output, $1 . "<boost/asio/detail/thread.hpp>", $from, $lineno); - } - else - { - # Line is removed. - } - } - elsif ($line =~ /(# *include )[<"]asio\/error_code\.hpp[>"]/) - { - if ($is_asio_hpp) - { - # Line is removed. - } - else - { - print_line($output, $1 . "<boost/cerrno.hpp>", $from, $lineno) if ($is_error_hpp); - print_line($output, $1 . "<boost/system/error_code.hpp>", $from, $lineno); - } - } - elsif ($line =~ /# *include [<"]asio\/impl\/error_code\.[hi]pp[>"]/) - { - # Line is removed. - } - elsif ($line =~ /(# *include )[<"]asio\/system_error\.hpp[>"]/) - { - if ($is_asio_hpp) - { - # Line is removed. - } - else - { - print_line($output, $1 . "<boost/system/system_error.hpp>", $from, $lineno); - } - } - elsif ($line =~ /(^.*# *include )[<"](asio\/[^>"]*)[>"](.*)$/) - { - print_line($output, $1 . "<boost/" . $2 . ">" . $3, $from, $lineno); - } - elsif ($line =~ /#.*defined\(.*ASIO_HAS_STD_SYSTEM_ERROR\)$/) - { - # Line is removed. - } - elsif ($line =~ /asio::thread/) - { - if ($is_test) - { - $line =~ s/asio::thread/asio::detail::thread/g; - } - else - { - $line =~ s/asio::thread/boost::thread/g; - } - if (!($line =~ /boost::asio::/)) - { - $line =~ s/asio::/boost::asio::/g; - } - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /^( *)thread( .*)$/ && !$is_qbk) - { - if ($is_test) - { - print_line($output, $1 . "boost::asio::detail::thread" . $2, $from, $lineno); - } - else - { - print_line($output, $1 . "boost::thread" . $2, $from, $lineno); - } - } - elsif ($line =~ /namespace std {/) - { - print_line($output, "namespace boost {", $from, $lineno); - print_line($output, "namespace system {", $from, $lineno); - } - elsif ($line =~ /std::error_code/) - { - $line =~ s/std::error_code/boost::system::error_code/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /} \/\/ namespace std/) - { - print_line($output, "} // namespace system", $from, $lineno); - print_line($output, "} // namespace boost", $from, $lineno); - } - elsif ($line =~ /asio::/ && !($line =~ /boost::asio::/)) - { - $line =~ s/asio::error_code/boost::system::error_code/g; - $line =~ s/asio::error_category/boost::system::error_category/g; - $line =~ s/asio::system_category/boost::system::system_category/g; - $line =~ s/asio::system_error/boost::system::system_error/g; - $line =~ s/asio::/boost::asio::/g if !$is_xsl; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /using namespace asio/) - { - $line =~ s/using namespace asio/using namespace boost::asio/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /asio_handler_alloc_helpers/) - { - $line =~ s/asio_handler_alloc_helpers/boost_asio_handler_alloc_helpers/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /asio_handler_cont_helpers/) - { - $line =~ s/asio_handler_cont_helpers/boost_asio_handler_cont_helpers/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /asio_handler_invoke_helpers/) - { - $line =~ s/asio_handler_invoke_helpers/boost_asio_handler_invoke_helpers/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /[\\@]ref boost_bind/) - { - $line =~ s/[\\@]ref boost_bind/boost::bind()/g; - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /( *)\[category template\]/) - { - print_line($output, $1 . "[authors [Kohlhoff, Christopher]]", $from, $lineno); - print_line($output, $line, $from, $lineno); - } - elsif ($line =~ /boostify: non-boost docs start here/) - { - while ($line = <$input>) - { - last if $line =~ /boostify: non-boost docs end here/; - } - } - elsif ($line =~ /boostify: non-boost code starts here/) - { - while ($line = <$input>) - { - last if $line =~ /boostify: non-boost code ends here/; - } - } - elsif ($line =~ /^$/ && $needs_doc_link) - { - $needs_doc_link = 0; - print_line($output, "// See www.boost.org/libs/asio for documentation.", $from, $lineno); - print_line($output, "//", $from, $lineno); - print_line($output, $line, $from, $lineno); - } - else - { - print_line($output, $line, $from, $lineno); - } - ++$lineno; - } - - # Ok, we're done. - close($input); - close($output); -} - -sub copy_include_files -{ - my @dirs = ( - "include", - "include/asio", - "include/asio/detail", - "include/asio/detail/impl", - "include/asio/generic", - "include/asio/generic/detail", - "include/asio/generic/detail/impl", - "include/asio/impl", - "include/asio/ip", - "include/asio/ip/impl", - "include/asio/ip/detail", - "include/asio/ip/detail/impl", - "include/asio/local", - "include/asio/local/detail", - "include/asio/local/detail/impl", - "include/asio/posix", - "include/asio/ssl", - "include/asio/ssl/detail", - "include/asio/ssl/detail/impl", - "include/asio/ssl/impl", - "include/asio/ssl/old", - "include/asio/ssl/old/detail", - "include/asio/windows"); - - foreach my $dir (@dirs) - { - our $boost_dir; - my @files = ( glob("$dir/*.hpp"), glob("$dir/*.ipp"), glob("$dir/*cpp") ); - foreach my $file (@files) - { - if ($file ne "include/asio/thread.hpp" - and $file ne "include/asio/error_code.hpp" - and $file ne "include/asio/system_error.hpp" - and $file ne "include/asio/impl/error_code.hpp" - and $file ne "include/asio/impl/error_code.ipp") - { - my $from = $file; - my $to = $file; - $to =~ s/^include\//$boost_dir\/libs\/asio\/include\/boost\//; - copy_source_file($from, $to); - } - } - } -} - -sub create_lib_directory -{ - my @dirs = ( - "doc", - "example", - "test"); - - our $boost_dir; - foreach my $dir (@dirs) - { - mkpath("$boost_dir/libs/asio/$dir"); - } -} - -sub copy_unit_tests -{ - my @dirs = ( - "src/tests/unit", - "src/tests/unit/archetypes", - "src/tests/unit/generic", - "src/tests/unit/ip", - "src/tests/unit/local", - "src/tests/unit/posix", - "src/tests/unit/ssl", - "src/tests/unit/windows"); - - our $boost_dir; - foreach my $dir (@dirs) - { - my @files = ( glob("$dir/*.*pp"), glob("$dir/Jamfile*") ); - foreach my $file (@files) - { - if ($file ne "src/tests/unit/thread.cpp" - and $file ne "src/tests/unit/error_handler.cpp" - and $file ne "src/tests/unit/unit_test.cpp") - { - my $from = $file; - my $to = $file; - $to =~ s/^src\/tests\/unit\//$boost_dir\/libs\/asio\/test\//; - copy_source_file($from, $to); - } - } - } -} - -sub copy_latency_tests -{ - my @dirs = ( - "src/tests/latency"); - - our $boost_dir; - foreach my $dir (@dirs) - { - my @files = ( glob("$dir/*.*pp"), glob("$dir/Jamfile*") ); - foreach my $file (@files) - { - my $from = $file; - my $to = $file; - $to =~ s/^src\/tests\/latency\//$boost_dir\/libs\/asio\/test\/latency\//; - copy_source_file($from, $to); - } - } -} - -sub copy_examples -{ - my @dirs = ( - "src/examples/cpp03/allocation", - "src/examples/cpp03/buffers", - "src/examples/cpp03/chat", - "src/examples/cpp03/echo", - "src/examples/cpp03/fork", - "src/examples/cpp03/http/client", - "src/examples/cpp03/http/doc_root", - "src/examples/cpp03/http/server", - "src/examples/cpp03/http/server2", - "src/examples/cpp03/http/server3", - "src/examples/cpp03/http/server4", - "src/examples/cpp03/icmp", - "src/examples/cpp03/invocation", - "src/examples/cpp03/iostreams", - "src/examples/cpp03/local", - "src/examples/cpp03/multicast", - "src/examples/cpp03/nonblocking", - "src/examples/cpp03/porthopper", - "src/examples/cpp03/serialization", - "src/examples/cpp03/services", - "src/examples/cpp03/socks4", - "src/examples/cpp03/spawn", - "src/examples/cpp03/ssl", - "src/examples/cpp03/timeouts", - "src/examples/cpp03/timers", - "src/examples/cpp03/tutorial", - "src/examples/cpp03/tutorial/daytime1", - "src/examples/cpp03/tutorial/daytime2", - "src/examples/cpp03/tutorial/daytime3", - "src/examples/cpp03/tutorial/daytime4", - "src/examples/cpp03/tutorial/daytime5", - "src/examples/cpp03/tutorial/daytime6", - "src/examples/cpp03/tutorial/daytime7", - "src/examples/cpp03/tutorial/timer1", - "src/examples/cpp03/tutorial/timer2", - "src/examples/cpp03/tutorial/timer3", - "src/examples/cpp03/tutorial/timer4", - "src/examples/cpp03/tutorial/timer5", - "src/examples/cpp03/windows", - "src/examples/cpp11/allocation", - "src/examples/cpp11/buffers", - "src/examples/cpp11/chat", - "src/examples/cpp11/echo", - "src/examples/cpp11/executors", - "src/examples/cpp11/futures", - "src/examples/cpp11/http/server", - "src/examples/cpp11/iostreams", - "src/examples/cpp11/spawn", - "src/examples/cpp14/executors"); - - our $boost_dir; - foreach my $dir (@dirs) - { - my @files = ( - glob("$dir/*.*pp"), - glob("$dir/*.html"), - glob("$dir/Jamfile*"), - glob("$dir/*.pem"), - glob("$dir/README*"), - glob("$dir/*.txt")); - foreach my $file (@files) - { - my $from = $file; - my $to = $file; - $to =~ s/^src\/examples\//$boost_dir\/libs\/asio\/example\//; - copy_source_file($from, $to); - } - } -} - -sub copy_doc -{ - our $boost_dir; - my @files = ( - "src/doc/asio.qbk", - "src/doc/examples.qbk", - "src/doc/reference.xsl", - "src/doc/tutorial.xsl", - glob("src/doc/overview/*.qbk"), - glob("src/doc/requirements/*.qbk")); - foreach my $file (@files) - { - my $from = $file; - my $to = $file; - $to =~ s/^src\/doc\//$boost_dir\/libs\/asio\/doc\//; - copy_source_file($from, $to); - } -} - -sub copy_tools -{ - our $boost_dir; - my @files = ( - glob("src/tools/*.pl")); - foreach my $file (@files) - { - my $from = $file; - my $to = $file; - $to =~ s/^src\/tools\//$boost_dir\/libs\/asio\/tools\//; - copy_source_file($from, $to); - } -} - -copy_include_files(); -create_lib_directory(); -copy_unit_tests(); -copy_latency_tests(); -copy_examples(); -copy_doc(); -copy_tools(); |