summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/function_types/build
diff options
context:
space:
mode:
Diffstat (limited to 'src/boost/libs/function_types/build')
-rw-r--r--src/boost/libs/function_types/build/Jamfile30
-rw-r--r--src/boost/libs/function_types/build/preprocess_arity_loops.cpp88
-rw-r--r--src/boost/libs/function_types/build/preprocess_cc_names.cpp27
-rw-r--r--src/boost/libs/function_types/build/preprocess_encoding.cpp45
-rw-r--r--src/boost/libs/function_types/build/timestamps/arity_loops1
-rw-r--r--src/boost/libs/function_types/build/timestamps/cc_names1
-rw-r--r--src/boost/libs/function_types/build/timestamps/encoding1
7 files changed, 193 insertions, 0 deletions
diff --git a/src/boost/libs/function_types/build/Jamfile b/src/boost/libs/function_types/build/Jamfile
new file mode 100644
index 000000000..38b185a22
--- /dev/null
+++ b/src/boost/libs/function_types/build/Jamfile
@@ -0,0 +1,30 @@
+
+# (C) Copyright Tobias Schwinger
+#
+# Use modification and distribution are subject to the boost Software License,
+# Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
+
+# Generates preprocessed files with wave.
+
+actions wave
+{
+ $(>[1]) -S../../.. $(>[2]) -o $(<)
+}
+
+W = ../../../tools/wave/build//wave ;
+
+make arity_loops
+ : preprocess_arity_loops.cpp $(W) : wave : <location>build/timestamps
+ ;
+
+make encoding
+ : preprocess_encoding.cpp $(W) : wave : <location>build/timestamps
+ ;
+
+
+make cc_names
+ : preprocess_cc_names.cpp $(W) : wave : <location>build/timestamps
+ ;
+
+explicit arity_loops encoding cc_names ;
+
diff --git a/src/boost/libs/function_types/build/preprocess_arity_loops.cpp b/src/boost/libs/function_types/build/preprocess_arity_loops.cpp
new file mode 100644
index 000000000..d39b65cf6
--- /dev/null
+++ b/src/boost/libs/function_types/build/preprocess_arity_loops.cpp
@@ -0,0 +1,88 @@
+
+// (C) Copyright Tobias Schwinger
+//
+// Use modification and distribution are subject to the boost Software License,
+// Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
+
+//------------------------------------------------------------------------------
+
+#if !defined(BOOST_FT_PREPROCESSING_MODE)
+
+# ifndef __WAVE__
+# error "Boost.Wave preprocessor required"
+# endif
+
+# include <boost/preprocessor/seq/cat.hpp>
+# include <boost/preprocessor/stringize.hpp>
+
+# if BOOST_PP_NIL // enable dependency scanning for dynamically included files
+# include <boost/function_types/detail/encoding/def.hpp>
+# include <boost/function_types/detail/components_impl/master.hpp>
+# include <boost/function_types/detail/synthesize_impl/master.hpp>
+# include <boost/function_types/detail/classifier_impl/master.hpp>
+# endif
+
+# pragma wave option(line: 0, preserve: 2)
+timestamp file
+# pragma wave option(output: null)
+
+# define BOOST_FT_PREPROCESSING_MODE
+
+# define BOOST_FT_HEADER \
+ BOOST_PP_SEQ_CAT((arity)(BOOST_FT_MAX_ARITY)(_)(BOOST_FT_mfp)).hpp
+ #define BOOST_FT_OUT_FILE \
+ BOOST_PP_STRINGIZE(../../../BOOST_FT_al_path/BOOST_FT_HEADER)
+
+# define BOOST_FT_al_path boost/function_types/detail/components_impl
+# include __FILE__
+# undef BOOST_FT_al_path
+
+# define BOOST_FT_al_path boost/function_types/detail/synthesize_impl
+# include __FILE__
+# undef BOOST_FT_al_path
+
+# define BOOST_FT_al_path boost/function_types/detail/classifier_impl
+# include __FILE__
+# undef BOOST_FT_al_path
+
+#elif !defined(BOOST_FT_mfp)
+
+# define BOOST_FT_mfp 0
+# include __FILE__
+# undef BOOST_FT_mfp
+
+# define BOOST_FT_mfp 1
+# include __FILE__
+# undef BOOST_FT_mfp
+
+#elif !defined(BOOST_FT_MAX_ARITY)
+
+# define BOOST_FT_FROM_ARITY 0
+# define BOOST_FT_MAX_ARITY 10
+# include __FILE__
+
+# define BOOST_FT_FROM_ARITY 10
+# define BOOST_FT_MAX_ARITY 20
+# include __FILE__
+
+# define BOOST_FT_FROM_ARITY 20
+# define BOOST_FT_MAX_ARITY 30
+# include __FILE__
+
+# define BOOST_FT_FROM_ARITY 30
+# define BOOST_FT_MAX_ARITY 40
+# include __FILE__
+
+# define BOOST_FT_FROM_ARITY 40
+# define BOOST_FT_MAX_ARITY 50
+# include __FILE__
+
+#else
+
+# pragma message(generating BOOST_FT_OUT_FILE)
+# pragma wave option(preserve: 2, output: BOOST_FT_OUT_FILE)
+# include <boost/function_types/detail/pp_arity_loop.hpp>
+# undef BOOST_FT_MAX_ARITY
+
+#endif
+
diff --git a/src/boost/libs/function_types/build/preprocess_cc_names.cpp b/src/boost/libs/function_types/build/preprocess_cc_names.cpp
new file mode 100644
index 000000000..803667c55
--- /dev/null
+++ b/src/boost/libs/function_types/build/preprocess_cc_names.cpp
@@ -0,0 +1,27 @@
+
+// (C) Copyright Tobias Schwinger
+//
+// Use modification and distribution are subject to the boost Software License,
+// Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
+
+//------------------------------------------------------------------------------
+
+#ifndef __WAVE__
+# error "Boost.Wave preprocessor required"
+#endif
+
+#pragma wave option(line: 0, preserve: 2)
+timestamp file
+#pragma wave option(output: null)
+
+#define BOOST_FT_PREPROCESSING_MODE
+
+
+#define BOOST_FT_OUT_FILE \
+ "../../../boost/function_types/detail/pp_cc_loop/preprocessed.hpp"
+#pragma message(generating BOOST_FT_OUT_FILE)
+#pragma wave option(output: BOOST_FT_OUT_FILE, preserve: 2)
+#include <boost/function_types/detail/pp_cc_loop/master.hpp>
+#pragma wave option(output: null)
+#undef BOOST_FT_OUT_FILE
+
diff --git a/src/boost/libs/function_types/build/preprocess_encoding.cpp b/src/boost/libs/function_types/build/preprocess_encoding.cpp
new file mode 100644
index 000000000..886bec33b
--- /dev/null
+++ b/src/boost/libs/function_types/build/preprocess_encoding.cpp
@@ -0,0 +1,45 @@
+
+// (C) Copyright Tobias Schwinger
+//
+// Use modification and distribution are subject to the boost Software License,
+// Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
+
+//------------------------------------------------------------------------------
+
+#ifndef __WAVE__
+# error "Boost.Wave preprocessor required"
+#endif
+
+#pragma wave option(line: 0, preserve: 2)
+timestamp file
+#pragma wave option(output: null)
+
+#define BOOST_FT_PREPROCESSING_MODE
+
+
+#define BOOST_FT_OUT_FILE \
+ "../../../boost/function_types/detail/pp_tags/preprocessed.hpp"
+#pragma message(generating BOOST_FT_OUT_FILE)
+#pragma wave option(output: BOOST_FT_OUT_FILE, preserve: 2)
+#include <boost/function_types/detail/pp_tags/master.hpp>
+#pragma wave option(output: null)
+#undef BOOST_FT_OUT_FILE
+
+#define BOOST_FT_OUT_FILE \
+ "../../../boost/function_types/detail/pp_variate_loop/preprocessed.hpp"
+#pragma message(generating BOOST_FT_OUT_FILE)
+#pragma wave option(output: BOOST_FT_OUT_FILE, preserve: 2)
+#include <boost/function_types/detail/pp_variate_loop/master.hpp>
+#pragma wave option(output: null)
+#undef BOOST_FT_OUT_FILE
+
+#define BOOST_FT_OUT_FILE \
+ "../../../boost/function_types/detail/pp_retag_default_cc/preprocessed.hpp"
+#pragma message(generating BOOST_FT_OUT_FILE)
+#pragma wave option(output: BOOST_FT_OUT_FILE, preserve: 2)
+#include <boost/function_types/detail/pp_retag_default_cc/master.hpp>
+#pragma wave option(output: null)
+
+#undef BOOST_FT_OUT_FILE
+
+
diff --git a/src/boost/libs/function_types/build/timestamps/arity_loops b/src/boost/libs/function_types/build/timestamps/arity_loops
new file mode 100644
index 000000000..f91091c8d
--- /dev/null
+++ b/src/boost/libs/function_types/build/timestamps/arity_loops
@@ -0,0 +1 @@
+timestamp file
diff --git a/src/boost/libs/function_types/build/timestamps/cc_names b/src/boost/libs/function_types/build/timestamps/cc_names
new file mode 100644
index 000000000..f91091c8d
--- /dev/null
+++ b/src/boost/libs/function_types/build/timestamps/cc_names
@@ -0,0 +1 @@
+timestamp file
diff --git a/src/boost/libs/function_types/build/timestamps/encoding b/src/boost/libs/function_types/build/timestamps/encoding
new file mode 100644
index 000000000..f91091c8d
--- /dev/null
+++ b/src/boost/libs/function_types/build/timestamps/encoding
@@ -0,0 +1 @@
+timestamp file