[MacPorts] #58091: weird boost/mysql issue preventing snort upgrade after selfupdate
MacPorts
noreply at macports.org
Mon Feb 18 20:34:42 UTC 2019
#58091: weird boost/mysql issue preventing snort upgrade after selfupdate
------------------------------+--------------------
Reporter: TheLastLovemark | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.5.4
Resolution: | Keywords:
Port: mysql57 boost |
------------------------------+--------------------
Comment (by michaelld):
OK that's what I thought. Took me a bit to track that down & install it
for testing.
So there are a few issues here:
(1) mysql57 is opportunistically finding and using protobuf3-cpp . I think
this feature can be disabled via the cmake commandline, and really it
should be a variant / optional.
(2) protobuf3-cpp API (header) require C++11 for building, but mysql57
when building the plugin that uses protobuf3-cpp isn't using C++11 ...
it's not specifying any C++ standard, which with most compilers means
C++03 or earlier ... certainly not C++11 yet. Without C++11, this plugin
won't build. You can see the errors in the build log associated with this
issue:
{{{
:info:build In file included from
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_databases_mysql57/mysql57/work/mysql-5.7.25/rapid/plugin/x/ngs/include/ngs_common/protocol_protobuf.h:25:
:info:build In file included from
/opt/local/include/google/protobuf/message.h:118:
:info:build In file included from
/opt/local/include/google/protobuf/arena.h:51:
:info:build /opt/local/include/google/protobuf/arena_impl.h:249:15: error:
no type named 'atomic' in namespace 'std'
:info:build static std::atomic<int64> lifecycle_id_generator_;
...
:info:build /opt/local/include/google/protobuf/arena_impl.h:303:22:
warning: rvalue references are a C++11 extension [-Wc++11-extensions]
:info:build ArenaImpl(ArenaImpl&&) = delete;
:info:build ^
:info:build /opt/local/include/google/protobuf/arena_impl.h:303:28:
warning: deleted function definitions are a C++11 extension
[-Wc++11-extensions]
:info:build ArenaImpl(ArenaImpl&&) = delete;
:info:build ^
}}}
And then see also < https://en.cppreference.com/w/cpp/atomic/atomic >
where it should be noted that `std::atomic` requires C++11.
--
Ticket URL: <https://trac.macports.org/ticket/58091#comment:11>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list