Came across this name clash with an Apple defined macro:
So the static QSslCertificate::verify function definition is clashing with the Apple verify macro. However I do note that in the AssertMacros.h file it says just before the block of macro defs that define the verify macro:FAILED: src/webkit/CMakeFiles/CsWebKit.dir/__/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ @src/webkit/CMakeFiles/CsWebKit.dir/__/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp.o.rsp -MD -MT src/webkit/CMakeFiles/CsWebKit.dir/__/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp.o -MF src/webkit/CMakeFiles/CsWebKit.dir/__/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp.o.d -o src/webkit/CMakeFiles/CsWebKit.dir/__/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp.o -c /Users/ct/Projects/copperspice/src/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp
In file included from /Users/ct/Projects/copperspice/src/3rdparty/webkit/Source/WebCore/platform/network/qt/ResourceHandleQt.cpp:40:
In file included from /Users/ct/Projects/copperspice/src/3rdparty/webkit/Source/WebCore/platform/network/qt/QNetworkReplyHandler.h:24:
In file included from include/QtNetwork/QNetworkAccessManager:1:
In file included from include/QtNetwork/qnetworkaccessmanager.h:32:
In file included from include/QtNetwork/QSslConfiguration:1:
In file included from include/QtNetwork/qsslconfiguration.h:28:
In file included from include/QtNetwork/qsslsocket.h:33:
In file included from include/QtNetwork/qsslerror.h:28:
include/QtNetwork/qsslcertificate.h:122:83: error: too many arguments provided to function-like macro invocation
static QList<QSslError> verify(const QList<QSslCertificate> &certificateChain, const QString &hostName = QString());
^
/usr/include/AssertMacros.h11: note: macro 'verify' defined here
#define verify(assertion) __Verify(assertion)
^
1 error generated.
So am just wondering if this __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES needs setting to zero on OS/X 10.12 ?* Prior to Mac OS X 10.6 the macro names used in this file conflicted with some
* user code, including libraries in boost and the proposed C++ standards efforts,
* and there was no way for a client of this header to resolve this conflict. Because
* of this, most of the macros have been changed so that they are prefixed with
* __ and contain at least one capital letter, which should alleviate the current
* and future conflicts. However, to allow current sources to continue to compile,
* compatibility macros are defined at the end with the old names. A tops script
* at the end of this file will convert all of the old macro names used in a directory
* to the new names. Clients are recommended to migrate over to these new macros as
* they update their sources because a future release of Mac OS X will remove the
* old macro definitions ( without the double-underscore prefix ). Clients who
* want to compile without the old macro definitions can define the macro
* __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES to 0 before this file is
* included.
...
#ifndef __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES
/* If we haven't set this yet, it defaults to on. In the next release, this will default to off. */
#define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 1
#endif
Has anyone else hit this. I suppose I could use the binary distribution.
I did the simple cmake initial command:
Thanks.cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../cs_lib ../copperspice
EDIT: Ah. Have realised I have not installed Homebrew or MacPorts. Do I assume I need to do this?