Bug 1302924 - Csound FTBFS in rawhide
Summary: Csound FTBFS in rawhide
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: csound
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Peter Robinson
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-01-29 01:18 UTC by Jonathan Wakely
Modified: 2016-02-16 10:52 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-02-16 10:52:40 UTC
Type: Bug


Attachments (Terms of Use)

Description Jonathan Wakely 2016-01-29 01:18:53 UTC
Using the new Boost 1.60.0 Csound fails to build, because it defines a macro "CB" which conflicts with tokens in boost headers:

In file included from /usr/include/boost/type_traits/detail/common_type_impl.hpp:14:0,
                 from /usr/include/boost/type_traits/common_type.hpp:17,
                 from /usr/include/boost/type_traits.hpp:22,
                 from /usr/include/boost/numeric/ublas/traits.hpp:27,
                 from /usr/include/boost/numeric/ublas/storage.hpp:26,
                 from /usr/include/boost/numeric/ublas/vector.hpp:21,
                 from /builddir/build/BUILD/Csound6.03.2/Opcodes/chua/ChuaOscillator.cpp:121:
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:89:25: error: expected identifier before '(' token
 template<class CT, class CB>
                         ^
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:89:26: error: expected ')' before numeric constant
 template<class CT, class CB>
                          ^
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:89:26: error: expected '>' before numeric constant
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:89:32: error: expected unqualified-id before ')' token
In file included from /usr/include/boost/type_traits/detail/common_type_impl.hpp:14:0,
                 from /usr/include/boost/type_traits/common_type.hpp:17,
                 from /usr/include/boost/type_traits.hpp:22,
                 from /usr/include/boost/numeric/ublas/traits.hpp:27,
                 from /usr/include/boost/numeric/ublas/storage.hpp:26,
                 from /usr/include/boost/numeric/ublas/vector.hpp:21,
                 from /builddir/build/BUILD/Csound6.03.2/Opcodes/chua/ChuaOscillator.cpp:121:
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:102:56: error: expected unqualified-id before numeric constant
     typedef typename common_member_class<C1, C2>::type CB;
                                                        ^
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:102:56: error: expected ')' before numeric constant
In file included from /usr/include/boost/type_traits/detail/common_type_impl.hpp:14:0,
                 from /usr/include/boost/type_traits/common_type.hpp:17,
                 from /usr/include/boost/type_traits.hpp:22,
                 from /usr/include/boost/numeric/ublas/traits.hpp:27,
                 from /usr/include/boost/numeric/ublas/storage.hpp:26,
                 from /usr/include/boost/numeric/ublas/vector.hpp:21,
                 from /builddir/build/BUILD/Csound6.03.2/Opcodes/chua/ChuaOscillator.cpp:121:
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:106:22: error: expected nested-name-specifier before 'common_member_class_pointer_to_member'
     typedef typename common_member_class_pointer_to_member<CT, CB>::type type;
                      ^
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:106:22: error: expected ';' at end of member declaration
/usr/include/boost/type_traits/detail/composite_member_pointer_type.hpp:106:59: error: expected unqualified-id before '<' token
     typedef typename common_member_class_pointer_to_member<CT, CB>::type type;
                                                           ^
/builddir/build/BUILD/Csound6.03.2/Opcodes/chua/ChuaOscillator.cpp: In member function 'int ChuasOscillatorCubic::kontrol(CSOUND*)':
/builddir/build/BUILD/Csound6.03.2/Opcodes/chua/ChuaOscillator.cpp:242:14: warning: unused variable 'n' [-Wunused-variable]
     uint32_t n, nsmps = CS_KSMPS;
              ^
Opcodes/CMakeFiles/chua.dir/build.make:65: recipe for target 'Opcodes/CMakeFiles/chua.dir/chua/ChuaOscillator.cpp.o' failed


CB is used as a template parameter and typedef name in Boost, but is defined as a macro in csound:

/builddir/build/BUILD/Csound6.03.2/./include/interlocks.h:40:12: error: expected identifier before '(' token
 #define CB (0x0060)
            ^

Comment 1 Peter Robinson 2016-02-16 10:52:40 UTC
built fine in the mass rebuild 

http://koji.fedoraproject.org/koji/buildinfo?buildID=717347


Note You need to log in before you can comment on or make changes to this bug.