cotire and BOOST_PP error

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

cotire and BOOST_PP error

Olaf Peter
Hello,

to reduce my compile time I try to start with cotire (compile time
reducer) from https://github.com/sakra/cotire and run into problems
which I wasn't able to reduce yet. I'm using boost spirit and
boost.test. The error rises:

[ 62%] Building CXX precompiled header
sources/...._parser_CXX_prefix.hxx.gch
In file included from /tmp/build/sources/..._parser_CXX_prefix.cxx:38:0,
                  from /tmp/build/sources/..._parser_CXX_prefix.hxx:4:
/usr/include/boost/preprocessor/iteration/detail/local.hpp:13:6: Fehler:
#error BOOST_PP_ERROR: local iteration boundaries are not defined
  #    error BOOST_PP_ERROR:  local iteration boundaries are not defined
       ^~~~~
/usr/include/boost/preprocessor/iteration/detail/local.hpp:34:29:
Fehler: expected constructor, destructor, or type conversion before »(«
token
          BOOST_PP_LOCAL_MACRO(0)
                              ^
CMake Error at /tmp/ibis/cmake/cotire.cmake:1848 (message):
   cotire: error 1 precompiling
   /tmp/build/sources/..._parser_CXX_prefix.hxx.
Call Stack (most recent call first):
   /tmp/ibis/cmake/cotire.cmake:3521 (cotire_precompile_prefix_header)


The calc9 example from boost.spirit.x3 compiles with cotire and an intro
example from boost.test also, but failed here. Maybe helpful:

$ cat /tmp/build/sources/..._parser_CXX_prefix.hxx
/* cotire.cmake 1.7.9 generated file */
/* /tmp/build/sources/..._parser_CXX_prefix.hxx */
#ifdef __cplusplus
#include "/tmp/build/sources/..._parser_CXX_prefix.cxx"
#endif

$ cat /tmp/build/...parser_CXX_prefix.cxx
/* cotire.cmake 1.7.9 generated file */
/* /tmp/build/sources/...parser_CXX_prefix.cxx */
#pragma GCC system_header
#ifdef __cplusplus
#include "/usr/include/boost/test/unit_test.hpp"
#include "/usr/include/boost/test/data/test_case.hpp"
#include "/usr/include/boost/filesystem.hpp"
#include "/usr/local/gcc-7.1.0/include/c++/7.1.0/iostream"
#include "/usr/include/boost/core/ignore_unused.hpp"
#include "/usr/include/boost/range.hpp"
#include "/usr/include/boost/variant.hpp"
#include "/usr/include/boost/fusion/include/adapt_struct.hpp"
#include "/usr/include/boost/fusion/support/pair.hpp"
#include "/usr/include/boost/fusion/include/deque.hpp"
#include "/usr/include/boost/tti/has_type.hpp"
#include "/usr/include/boost/tti/has_member_function.hpp"
#include "/usr/include/boost/fusion/include/copy.hpp"
#include "/usr/include/boost/fusion/include/is_sequence.hpp"
#include "/usr/include/boost/fusion/include/size.hpp"
#include "/usr/include/boost/fusion/include/map.hpp"
#include "/usr/include/boost/fusion/include/value_at_key.hpp"
#include "/usr/include/boost/fusion/adapted/mpl.hpp"
#include "/usr/include/boost/mpl/placeholders.hpp"
#include "/usr/include/boost/mpl/filter_view.hpp"
#include "/usr/include/boost/mpl/count_if.hpp"
#include "/usr/include/boost/fusion/include/front.hpp"
#include "/usr/include/boost/fusion/include/move.hpp"
#include "/usr/include/boost/fusion/include/back.hpp"
#include "/usr/include/boost/type_traits/extent.hpp"
#include "/usr/include/boost/cstdint.hpp"
#include "/usr/include/boost/regex/pending/unicode_iterator.hpp"
#include "/usr/local/gcc-7.1.0/include/c++/7.1.0/bitset"
#include "/usr/local/gcc-7.1.0/include/c++/7.1.0/climits"
#include "/usr/local/gcc-7.1.0/include/c++/7.1.0/cctype"
#include "/usr/local/gcc-7.1.0/include/c++/7.1.0/cwctype"
#include "/usr/include/boost/function_types/function_type.hpp"
#include "/usr/include/boost/preprocessor/iteration/local.hpp"
#include "/usr/include/boost/preprocessor/iteration/detail/local.hpp"
#include "/usr/include/boost/config/no_tr1/cmath.hpp"
#include "/usr/include/boost/math/special_functions/fpclassify.hpp"
#include "/usr/include/boost/math/special_functions/sign.hpp"
#include "/usr/include/boost/fusion/include/begin.hpp"
#include "/usr/include/boost/fusion/include/end.hpp"
#include "/usr/include/boost/fusion/include/advance.hpp"
#include "/usr/include/boost/fusion/include/empty.hpp"
#include "/usr/include/boost/fusion/include/iterator_range.hpp"
#include "/usr/include/boost/fusion/include/as_deque.hpp"
#include "/usr/include/boost/fusion/include/mpl.hpp"
#include "/usr/include/boost/mpl/copy_if.hpp"
#include "/usr/include/boost/fusion/include/at.hpp"
#include "/usr/include/boost/locale/encoding_utf.hpp"
#include "/usr/include/boost/test/output_test_stream.hpp"
#include "/usr/include/boost/test/included/unit_test.hpp"
#endif

Maybe here are some with experience with it since without cotire I
didn't face such problem.


Thanks,

Olaf

--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake
Loading...