2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 <2017> 2018 2019 2020 2021 2022 2023 2024 | Index | 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 <2017> 2018 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: EPICS 7.0.1-pre1 (epicsException.h) |
From: | Dirk Zimoch <[email protected]> |
To: | <[email protected]> |
Date: | Tue, 28 Nov 2017 17:56:04 +0100 |
I think the attached patch file solves it. On 28.11.2017 17:53, Dirk Zimoch wrote:
I am trying to get it done right now. But unfortunately after updating core/master, it does not compile any more for my host architecture. And the day end in 7 minutes. I probably send you a patch file instead of what I thinks should work. On 28.11.2017 17:49, Andrew Johnson wrote:Hi Dirk, Michael and I need to know exactly what changes you still need to be committed for the VxWorks 6.3 and/or 6.7 builds that are not already in our repositories. Posting the output from 'git diff' rather than just a description like this is much better, it ensures we don't miss anything. If you can do that TODAY we'd appreciate it, we're wanting to tag the -rc1 release, and we'd prefer to have your changes included if possible. Thanks, - Andrew On 11/28/2017 09:39 AM, Dirk Zimoch wrote:The __GNUC__ version of the macro SHOW_EXCEPTION from modules/pvData/src/misc/pv/epicsException.h crashes g++ version 3.4.4 /afs/psi.ch/project/vxworks/WindRiverGPP3.3/gnu/3.4.4-vxworks-6.3/x86-linux2/bin/../lib/gcc/powerpc-wrs-vxworks/3.4.4/../../../../include/c++/3.4.4/xstring: In function `void testLogicException()': /afs/psi.ch/project/vxworks/WindRiverGPP3.3/gnu/3.4.4-vxworks-6.3/x86-linux2/bin/../lib/gcc/powerpc-wrs-vxworks/3.4.4/../../../../include/c++/3.4.4/xstring:78: internal compiler error: in expand_expr_real, at expr.c:8417 Please submit a full bug report, with preprocessed source if appropriate. Contact [email protected] for instructions. This can be fixed by using the non-__GNUC__ version for __GNUC__ < 4 #if !defined __GNUC__ || __GNUC__ < 4 # define SHOW_EXCEPTION(EI) ::epics::pvData::detail::showException(EI) With that change, I could finally build EPICS 7 for vxWorks 6.3. (Thus the boost header spinlock_pt.hpp is not obsolete.)
diff -x 'O.*' -x '.*' -r ../base-7.0.1-pre1/modules/pvAccess/src/client/pv/pvAccess.h ./modules/pvAccess/src/client/pv/pvAccess.h 1447d1446 < virtual ~ChannelProviderRegistry() {} diff -x 'O.*' -x '.*' -r ../base-7.0.1-pre1/modules/pvAccess/src/client/pva/client.h ./modules/pvAccess/src/client/pva/client.h 195,197d194 < #if defined __GNUC__ && __GNUC__*100+__GNUC_MINOR__ < 305 < public: < #endif 199d195 < private: diff -x 'O.*' -x '.*' -r ../base-7.0.1-pre1/modules/pvData/src/misc/pv/epicsException.h ./modules/pvData/src/misc/pv/epicsException.h 184c184 < #if !defined __GNUC__ || __GNUC__ < 4 --- > #ifndef __GNUC__ diff -x 'O.*' -x '.*' -r ../base-7.0.1-pre1/modules/pvData/src/misc/pv/reftrack.h ./modules/pvData/src/misc/pv/reftrack.h 113c113 < virtual ~RefMonitor(); --- > ~RefMonitor(); diff -x 'O.*' -x '.*' -r ../base-7.0.1-pre1/modules/pvData/src/misc/pv/typeCast.h ./modules/pvData/src/misc/pv/typeCast.h 168c168 < static inline TO castUnsafe(const FROM& from) --- > static FORCE_INLINE TO castUnsafe(const FROM& from)