Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[C++] Build fails after release 1.11.2 #560

Closed
mo2menelzeiny opened this issue Oct 8, 2018 · 10 comments
Closed

[C++] Build fails after release 1.11.2 #560

mo2menelzeiny opened this issue Oct 8, 2018 · 10 comments

Comments

@mo2menelzeiny
Copy link

mo2menelzeiny commented Oct 8, 2018

Migrating from 1.11.1 to 1.11.2 produced a failed build, my guess it's related to the relative path feature merged in #555.

I'm installing the library to /usr/local/, does that miss-configure the relative path substitution? https://github.com/real-logic/aeron/blob/44e7e43e820fb34accbc73e7d5b67cd952798a8b/CMakeLists.txt#L59

Build script:

wget https://github.com/real-logic/aeron/archive/1.11.2.tar.gz
tar zvxf 1.11.2.tar.gz
rm 1.11.2.tar.gz
cd aeron-1.11.2
mkdir -p cppbuild/Debug
cd cppbuild/Debug
cmake -DBUILD_AERON_DRIVER=ON ../..
make -j 4
make -j 4 install PREFIX=/usr/local

Build error log:

In file included from /usr/local/include/concurrent/AtomicBuffer.h:25:0,
                 from /usr/local/include/concurrent/logbuffer/TermReader.h:22,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/util/StringUtil.h: In function ‘valueType aeron::util::parse(const string&)’:
/usr/local/include/util/StringUtil.h:63:29: error: expected primary-expression before ‘(’ token
         throw ParseException(std::string("Failed to parse: ") + input, SOURCEINFO);
                             ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/util/StringUtil.h:63:72: error: expected ‘)’ before ‘__FILENAME__’
         throw ParseException(std::string("Failed to parse: ") + input, SOURCEINFO);
                                                                        ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:22:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h: In constructor ‘aeron::concurrent::AtomicBuffer::AtomicBuffer(uint8_t*, size_t)’:
/usr/local/include/concurrent/AtomicBuffer.h:49:52: error: expected primary-expression before ‘(’ token
             throw aeron::util::OutOfBoundsException(
                                                    ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h:51:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:22:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h: In constructor ‘aeron::concurrent::AtomicBuffer::AtomicBuffer(uint8_t*, size_t, uint8_t)’:
/usr/local/include/concurrent/AtomicBuffer.h:62:52: error: expected primary-expression before ‘(’ token
             throw aeron::util::OutOfBoundsException(
                                                    ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h:64:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:22:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h: In member function ‘void aeron::concurrent::AtomicBuffer::wrap(uint8_t*, size_t)’:
/usr/local/include/concurrent/AtomicBuffer.h:101:52: error: expected primary-expression before ‘(’ token
             throw aeron::util::OutOfBoundsException(
                                                    ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h:103:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:22:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h: In member function ‘void aeron::concurrent::AtomicBuffer::capacity(size_t)’:
/usr/local/include/concurrent/AtomicBuffer.h:135:52: error: expected primary-expression before ‘(’ token
             throw aeron::util::OutOfBoundsException(
                                                    ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h:137:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:22:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h: In member function ‘void aeron::concurrent::AtomicBuffer::boundsCheck(aeron::util::index_t, uint64_t) const’:
/usr/local/include/concurrent/AtomicBuffer.h:388:52: error: expected primary-expression before ‘(’ token
             throw aeron::util::OutOfBoundsException(
                                                    ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/AtomicBuffer.h:390:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:25:0,
                 from /usr/local/include/concurrent/logbuffer/TermReader.h:23,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h: In function ‘void aeron::concurrent::logbuffer::FrameDescriptor::checkHeaderLength(aeron::util::index_t)’:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h:77:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h:78:109: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Frame header length %d must be equal to %d", length, DataFrameHeader::LENGTH), SOURCEINFO);
                                                                                                             ^
In file included from /usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:25:0,
                 from /usr/local/include/concurrent/logbuffer/TermReader.h:23,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h: In function ‘void aeron::concurrent::logbuffer::FrameDescriptor::checkMaxFrameLength(aeron::util::index_t)’:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h:86:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/FrameDescriptor.h:87:111: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Max frame length must be a multiple of %d, length=%d", FRAME_ALIGNMENT, length), SOURCEINFO);
                                                                                                               ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h: In function ‘void aeron::concurrent::logbuffer::LogBufferDescriptor::checkTermLength(int32_t)’:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:153:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:155:47: error: expected ‘)’ before ‘__FILENAME__’
                 TERM_MIN_LENGTH, termLength), SOURCEINFO);
                                               ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:160:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:162:47: error: expected ‘)’ before ‘__FILENAME__’
                 TERM_MAX_LENGTH, termLength), SOURCEINFO);
                                               ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:167:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:168:85: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Term length not a power of 2, length=%d", termLength), SOURCEINFO);
                                                                                     ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h: In function ‘void aeron::concurrent::logbuffer::LogBufferDescriptor::checkPageSize(int32_t)’:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:176:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:178:43: error: expected ‘)’ before ‘__FILENAME__’
                 PAGE_MIN_SIZE, pageSize), SOURCEINFO);
                                           ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:183:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:185:43: error: expected ‘)’ before ‘__FILENAME__’
                 PAGE_MAX_SIZE, pageSize), SOURCEINFO);
                                           ^
In file included from /usr/local/include/concurrent/logbuffer/TermReader.h:23:0,
                 from /usr/local/include/concurrent/AgentRunner.h:24,
                 from /usr/local/include/Context.h:22,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:190:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/LogBufferDescriptor.h:191:79: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Page size not a power of 2, size=%d", pageSize), SOURCEINFO);
                                                                               ^
In file included from /usr/local/include/concurrent/ringbuffer/ManyToOneRingBuffer.h:27:0,
                 from /usr/local/include/Context.h:23,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/RingBufferDescriptor.h: In function ‘void aeron::concurrent::ringbuffer::RingBufferDescriptor::checkCapacity(aeron::util::index_t)’:
/usr/local/include/concurrent/ringbuffer/RingBufferDescriptor.h:48:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/RingBufferDescriptor.h:49:116: error: expected ‘)’ before ‘__FILENAME__’
                 util::strPrintf("Capacity must be a positive power of 2 + TRAILER_LENGTH: capacity=%d", capacity), SOURCEINFO);
                                                                                                                    ^
In file included from /usr/local/include/concurrent/ringbuffer/ManyToOneRingBuffer.h:28:0,
                 from /usr/local/include/Context.h:23,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/RecordDescriptor.h: In function ‘void aeron::concurrent::ringbuffer::RecordDescriptor::checkMsgTypeId(int32_t)’:
/usr/local/include/concurrent/ringbuffer/RecordDescriptor.h:83:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/RecordDescriptor.h:84:104: error: expected ‘)’ before ‘__FILENAME__’
                 util::strPrintf("Message type id must be greater than zero, msgTypeId=%d", msgTypeId), SOURCEINFO);
                                                                                                        ^
In file included from /usr/local/include/Context.h:23:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/ManyToOneRingBuffer.h: In member function ‘void aeron::concurrent::ringbuffer::ManyToOneRingBuffer::checkMsgLength(aeron::util::index_t) const’:
/usr/local/include/concurrent/ringbuffer/ManyToOneRingBuffer.h:302:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/ringbuffer/ManyToOneRingBuffer.h:303:115: error: expected ‘)’ before ‘__FILENAME__’
                 util::strPrintf("encoded message exceeds maxMsgLength of %d, length=%d", m_maxMsgLength, length), SOURCEINFO);
                                                                                                                   ^
In file included from /usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:24:0,
                 from /usr/local/include/Context.h:24,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/BroadcastBufferDescriptor.h: In function ‘void aeron::concurrent::broadcast::BroadcastBufferDescriptor::checkCapacity(aeron::util::index_t)’:
/usr/local/include/concurrent/broadcast/BroadcastBufferDescriptor.h:37:42: error: expected primary-expression before ‘(’ token
         throw util::IllegalStateException(
                                          ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/BroadcastBufferDescriptor.h:38:112: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Capacity must be a positive power of 2 + TRAILER_LENGTH: capacity=%d", capacity), SOURCEINFO);
                                                                                                                ^
In file included from /usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:25:0,
                 from /usr/local/include/Context.h:24,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/RecordDescriptor.h: In function ‘void aeron::concurrent::broadcast::RecordDescriptor::checkMsgTypeId(int32_t)’:
/usr/local/include/concurrent/broadcast/RecordDescriptor.h:73:45: error: expected primary-expression before ‘(’ token
         throw util::IllegalArgumentException(
                                             ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/RecordDescriptor.h:74:100: error: expected ‘)’ before ‘__FILENAME__’
             util::strPrintf("Message type id must be greater than zero, msgTypeId=%d", msgTypeId), SOURCEINFO);
                                                                                                    ^
In file included from /usr/local/include/Context.h:24:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h: In member function ‘int aeron::concurrent::broadcast::CopyBroadcastReceiver::receive(const handler_t&)’:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:56:53: error: expected primary-expression before ‘(’ token
                 throw util::IllegalArgumentException("Unable to keep up with broadcast buffer", SOURCEINFO);
                                                     ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:56:97: error: expected ‘)’ before ‘__FILENAME__’
                 throw util::IllegalArgumentException("Unable to keep up with broadcast buffer", SOURCEINFO);
                                                                                                 ^
In file included from /usr/local/include/Context.h:24:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:62:50: error: expected primary-expression before ‘(’ token
                 throw util::IllegalStateException(
                                                  ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:63:117: error: expected ‘)’ before ‘__FILENAME__’
                     util::strPrintf("Buffer required size %d but only has %d", length, m_scratchBuffer.capacity()), SOURCEINFO);
                                                                                                                     ^
In file included from /usr/local/include/Context.h:24:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:71:50: error: expected primary-expression before ‘(’ token
                 throw util::IllegalStateException("Unable to keep up with broadcast buffer", SOURCEINFO);
                                                  ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/broadcast/CopyBroadcastReceiver.h:71:94: error: expected ‘)’ before ‘__FILENAME__’
                 throw util::IllegalStateException("Unable to keep up with broadcast buffer", SOURCEINFO);
                                                                                              ^
In file included from /usr/local/include/Context.h:25:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersReader.h: In member function ‘void aeron::concurrent::CountersReader::validateCounterId(int32_t) const’:
/usr/local/include/concurrent/CountersReader.h:216:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersReader.h:218:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/concurrent/status/UnsafeBufferPosition.h:21:0,
                 from /usr/local/include/ClientConductor.h:23,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h: In member function ‘int32_t aeron::concurrent::CountersManager::allocate(const string&, int32_t, F&&)’:
/usr/local/include/concurrent/CountersManager.h:67:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException("Label too long", SOURCEINFO);
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h:67:68: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalArgumentException("Label too long", SOURCEINFO);
                                                                    ^
In file included from /usr/local/include/concurrent/status/UnsafeBufferPosition.h:21:0,
                 from /usr/local/include/ClientConductor.h:23,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h: In member function ‘int32_t aeron::concurrent::CountersManager::allocate(int32_t, const uint8_t*, size_t, const string&)’:
/usr/local/include/concurrent/CountersManager.h:101:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException("Label too long", SOURCEINFO);
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h:101:68: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalArgumentException("Label too long", SOURCEINFO);
                                                                    ^
In file included from /usr/local/include/concurrent/status/UnsafeBufferPosition.h:21:0,
                 from /usr/local/include/ClientConductor.h:23,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h: In member function ‘void aeron::concurrent::CountersManager::checkCountersCapacity(int32_t)’:
/usr/local/include/concurrent/CountersManager.h:183:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException("Unable to allocated counter, values buffer is full", SOURCEINFO);
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h:183:104: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalArgumentException("Unable to allocated counter, values buffer is full", SOURCEINFO);
                                                                                                        ^
In file included from /usr/local/include/concurrent/status/UnsafeBufferPosition.h:21:0,
                 from /usr/local/include/ClientConductor.h:23,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h: In member function ‘void aeron::concurrent::CountersManager::checkMetaDataCapacity(aeron::util::index_t)’:
/usr/local/include/concurrent/CountersManager.h:191:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException("Unable to allocate counter, metadata buffer is full", SOURCEINFO);
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/CountersManager.h:191:105: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalArgumentException("Unable to allocate counter, metadata buffer is full", SOURCEINFO);
                                                                                                         ^
In file included from /usr/local/include/Publication.h:25:0,
                 from /usr/local/include/ClientConductor.h:25,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/TermAppender.h: In static member function ‘static void aeron::concurrent::logbuffer::TermAppender::checkTerm(int32_t, int32_t)’:
/usr/local/include/concurrent/logbuffer/TermAppender.h:355:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException(
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/concurrent/logbuffer/TermAppender.h:357:46: error: expected ‘)’ before ‘__FILENAME__’
                     expectedTermId, termId), SOURCEINFO);
                                              ^
In file included from /usr/local/include/ClientConductor.h:25:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h: In member function ‘int64_t aeron::Publication::offer(BufferIterator, BufferIterator, const on_reserved_value_supplier_t&)’:
/usr/local/include/Publication.h:364:57: error: expected primary-expression before ‘(’ token
                 throw aeron::util::IllegalStateException(
                                                         ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h:369:21: error: expected ‘)’ before ‘__FILENAME__’
                     SOURCEINFO);
                     ^
In file included from /usr/local/include/ClientConductor.h:25:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h: In member function ‘void aeron::Publication::checkForMaxMessageLength(aeron::util::index_t) const’:
/usr/local/include/Publication.h:614:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException(
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h:616:50: error: expected ‘)’ before ‘__FILENAME__’
                     m_maxMessageLength, length), SOURCEINFO);
                                                  ^
In file included from /usr/local/include/ClientConductor.h:25:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h: In member function ‘void aeron::Publication::checkForMaxPayloadLength(aeron::util::index_t) const’:
/usr/local/include/Publication.h:624:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException(
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Publication.h:626:50: error: expected ‘)’ before ‘__FILENAME__’
                     m_maxPayloadLength, length), SOURCEINFO);
                                                  ^
In file included from /usr/local/include/ClientConductor.h:26:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h: In member function ‘int64_t aeron::ExclusivePublication::offer(BufferIterator, BufferIterator, const on_reserved_value_supplier_t&)’:
/usr/local/include/ExclusivePublication.h:361:57: error: expected primary-expression before ‘(’ token
                 throw aeron::util::IllegalStateException(
                                                         ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h:366:21: error: expected ‘)’ before ‘__FILENAME__’
                     SOURCEINFO);
                     ^
In file included from /usr/local/include/ClientConductor.h:26:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h: In member function ‘void aeron::ExclusivePublication::checkForMaxMessageLength(aeron::util::index_t) const’:
/usr/local/include/ExclusivePublication.h:613:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException(
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h:615:50: error: expected ‘)’ before ‘__FILENAME__’
                     m_maxMessageLength, length), SOURCEINFO);
                                                  ^
In file included from /usr/local/include/ClientConductor.h:26:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h: In member function ‘void aeron::ExclusivePublication::checkForMaxPayloadLength(aeron::util::index_t) const’:
/usr/local/include/ExclusivePublication.h:623:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException(
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ExclusivePublication.h:625:50: error: expected ‘)’ before ‘__FILENAME__’
                     m_maxPayloadLength, length), SOURCEINFO);
                                                  ^
In file included from /usr/local/include/Subscription.h:25:0,
                 from /usr/local/include/ClientConductor.h:27,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h: In member function ‘void aeron::Image::position(int64_t)’:
/usr/local/include/Image.h:305:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException("Image is closed", SOURCEINFO);
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h:305:66: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalStateException("Image is closed", SOURCEINFO);
                                                                  ^
In file included from /usr/local/include/Subscription.h:25:0,
                 from /usr/local/include/ClientConductor.h:27,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h: In member function ‘void aeron::Image::validatePosition(int64_t)’:
/usr/local/include/Image.h:735:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h:737:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/Subscription.h:25:0,
                 from /usr/local/include/ClientConductor.h:27,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h:742:49: error: expected primary-expression before ‘(’ token
             throw util::IllegalArgumentException(
                                                 ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/Image.h:744:17: error: expected ‘)’ before ‘__FILENAME__’
                 SOURCEINFO);
                 ^
In file included from /usr/local/include/ClientConductor.h:29:0,
                 from /usr/local/include/Aeron.h:27,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/DriverProxy.h: In member function ‘void aeron::DriverProxy::writeCommandToDriver(Filler&&)’:
/usr/local/include/DriverProxy.h:290:46: error: expected primary-expression before ‘(’ token
             throw util::IllegalStateException("couldn't write command to driver", SOURCEINFO);
                                              ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/DriverProxy.h:290:83: error: expected ‘)’ before ‘__FILENAME__’
             throw util::IllegalStateException("couldn't write command to driver", SOURCEINFO);
                                                                                   ^
/usr/local/include/ClientConductor.h: In member function ‘int aeron::ClientConductor::onHeartbeatCheckTimeouts()’:
/usr/local/include/ClientConductor.h:378:97: error: expected ‘)’ before ‘__FILENAME__’
                 strPrintf("Timeout between service calls over %d ms", m_interServiceTimeoutMs), SOURCEINFO);
                                                                                                 ^
/usr/local/include/ClientConductor.h:393:94: error: expected ‘)’ before ‘__FILENAME__’
                     strPrintf("Driver has been inactive for over %d ms", m_driverTimeoutMs), SOURCEINFO);
                                                                                              ^
In file included from /usr/local/include/Aeron.h:27:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:7,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ClientConductor.h: In member function ‘void aeron::ClientConductor::verifyDriverIsActive()’:
/usr/local/include/ClientConductor.h:415:41: error: expected primary-expression before ‘(’ token
             throw DriverTimeoutException("Driver is inactive", SOURCEINFO);
                                         ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/ClientConductor.h:415:64: error: expected ‘)’ before ‘__FILENAME__’
             throw DriverTimeoutException("Driver is inactive", SOURCEINFO);
                                                                ^
/usr/local/include/ClientConductor.h: In member function ‘void aeron::ClientConductor::verifyDriverIsActiveViaErrorHandler()’:
/usr/local/include/ClientConductor.h:423:68: error: expected ‘)’ before ‘__FILENAME__’
             DriverTimeoutException exception("Driver is inactive", SOURCEINFO);
                                                                    ^
In file included from /usr/local/include/FragmentAssembler.h:22:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:9,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/BufferBuilder.h: In member function ‘void aeron::BufferBuilder::limit(uint32_t)’:
/usr/local/include/BufferBuilder.h:61:43: error: expected primary-expression before ‘(’ token
             throw IllegalArgumentException(
                                           ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/BufferBuilder.h:62:92: error: expected ‘)’ before ‘__FILENAME__’
                 strPrintf("Limit outside range: capacity=%d limit=%d", m_capacity, limit), SOURCEINFO);
                                                                                            ^
In file included from /usr/local/include/FragmentAssembler.h:22:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:9,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/BufferBuilder.h: In static member function ‘static uint32_t aeron::BufferBuilder::findSuitableCapacity(uint32_t, uint32_t)’:
/usr/local/include/BufferBuilder.h:100:54: error: expected primary-expression before ‘(’ token
                     throw util::IllegalStateException(
                                                      ^
In file included from /usr/local/include/Context.h:21:0,
                 from /home/mo2menelzeiny/Projects/arbito/include/Messenger.h:6,
                 from /home/mo2menelzeiny/Projects/arbito/src/Messenger.cpp:2:
/usr/local/include/BufferBuilder.h:101:99: error: expected ‘)’ before ‘__FILENAME__’
                         util::strPrintf("Max capacity reached: %d", BUFFER_BUILDER_MAX_CAPACITY), SOURCEINFO);
@mo2menelzeiny mo2menelzeiny changed the title C++ build failed after release 1.11.2 [C++] Build failed after release 1.11.2 Oct 8, 2018
@mo2menelzeiny mo2menelzeiny changed the title [C++] Build failed after release 1.11.2 [C++] Build fails after release 1.11.2 Oct 8, 2018
@lukepalmer
Copy link
Contributor

I agree that it's very likely a combination of #555, which was mine, and the prefix arg. I can take a look (probably) tonight.

@denizevrenci
Copy link
Contributor

Another related problem with the change in #555 is that it breaks build using Ninja as subst and abspath and GNU Make functions not available in other build tools.

Also, unlike __FILE__, __FILENAME__ only refers to the cpp file for that particular translation unit. So if the exception is thrown from a header file, the source info does not point to the header file, instead, it points to the source file that included that header. I think that this is a regression of usability.

I suggest passing ${CMAKE_SOURCE_DIR} as a macro definition and doing the substring operation as a macro that subtracts SOURCE_DIR from __FILE__. It also needs to check whether __FILE__ expands to an absolute path or relative path. With my configuration (GCC 8.2), I get relative paths from __FILE__.

@lukepalmer
Copy link
Contributor

I'm not able to reproduce the reported issue. What platform are you on? Somewhat related: do you possibly want DESTDIR instead of PREFIX?

@denizevrenci that's a good suggestion, thank you

@mo2menelzeiny
Copy link
Author

mo2menelzeiny commented Oct 9, 2018

@lukepalmer I'm using Ubuntu 16.4 LTS, why are you suggesting that I'd use DESTDIR rather than PREFIX and how would that impact the issue?

I don't know if it's worth mentioning but I'm using cmake to build the my project so it finds the library and link to my executable using:

find_library(AERON_CLIENT_LIB aeron_client)
find_library(AERON_DRIVER_LIB aeron_driver)
find_library(AERON_AGENT_LIB aeron_driver_agent)

and of course target_link_libraries to link them

@mo2menelzeiny
Copy link
Author

@lukepalmer any updates on this?

@khvorov
Copy link

khvorov commented Oct 16, 2018

@mo2menelzeiny I've had a similar issue with my own project & 1.11.2. As a workaround you could try to add the following code to the top-level CMakeLists.txt of your project:

# relative file paths for use in exceptions
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D__FILENAME__='\"$(subst ${CMAKE_SOURCE_DIR}/,,$(abspath $<))\"'")

@mjpt777
Copy link
Contributor

mjpt777 commented Oct 16, 2018

@lukepalmer do you plan to address this?

@lukepalmer
Copy link
Contributor

lukepalmer commented Oct 16, 2018 via email

@mjpt777
Copy link
Contributor

mjpt777 commented Oct 26, 2018

Closing after revert until another approach is proposed.

@mjpt777 mjpt777 closed this as completed Oct 26, 2018
@lukepalmer
Copy link
Contributor

I've redone this change as #588. Previously, I also added a travis build matrix to try and catch builds that may be broken for other people.

If folks who had trouble previously would like to give it a try before it's merged, that'd be fantastic. Please comment on the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants