Several fixes to make FDB compile with clang-cl
This commit is contained in:
parent
579444419a
commit
0e1f9efb85
|
@ -24,3 +24,10 @@ else()
|
|||
add_dependencies(boost_target boostProject)
|
||||
target_include_directories(boost_target INTERFACE ${BOOST_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
target_compile_definitions(boost_target INTERFACE BOOST_ALL_NO_LIB)
|
||||
if(WIN32)
|
||||
target_compile_definitions(boost_target INTERFACE BOOST_USE_WINDOWS_H BOOST_ALL_NO_LIB NOMINMAX WIN32_LEAN_AND_MEAN)
|
||||
endif()
|
||||
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" AND "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC")
|
||||
endif()
|
||||
|
|
|
@ -91,8 +91,8 @@ if(WIN32)
|
|||
# TODO: This doesn't seem to be good style, but I couldn't find a better way so far
|
||||
string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||
endif()
|
||||
add_compile_options(/W0 /EHsc /bigobj $<$<CONFIG:Release>:/Zi> /MP /FC /Gm-)
|
||||
add_compile_definitions(_WIN32_WINNT=${WINDOWS_TARGET} WINVER=${WINDOWS_TARGET} NTDDI_VERSION=0x05020000 BOOST_ALL_NO_LIB)
|
||||
add_compile_options(/W0 /EHsc /bigobj $<$<CONFIG:Release>:/Zi> /FC /Gm-)
|
||||
add_compile_definitions(_WIN32_WINNT=${WINDOWS_TARGET} WINVER=${WINDOWS_TARGET} NTDDI_VERSION=0x05020000)
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
|
||||
else()
|
||||
|
|
|
@ -26,8 +26,6 @@
|
|||
|
||||
#ifdef _WIN32
|
||||
#include <windows.h>
|
||||
#undef max
|
||||
#undef min
|
||||
#include <io.h>
|
||||
#include <psapi.h>
|
||||
#include <stdio.h>
|
||||
|
|
|
@ -154,7 +154,7 @@ struct InitializeBackupReply {
|
|||
LogEpoch backupEpoch;
|
||||
|
||||
InitializeBackupReply() = default;
|
||||
InitializeBackupReply(BackupInterface interface, LogEpoch e) : interf(interface), backupEpoch(e) {}
|
||||
InitializeBackupReply(BackupInterface interf, LogEpoch e) : interf(interf), backupEpoch(e) {}
|
||||
|
||||
template <class Ar>
|
||||
void serialize(Ar& ar) {
|
||||
|
|
|
@ -413,11 +413,11 @@ protected:
|
|||
char confFileDirectory[2048];
|
||||
char *fileNameStart;
|
||||
if( !GetFullPathName( confFile.c_str(), 2048, confFileDirectory, &fileNameStart ) ) {
|
||||
errorExit( format( "get path of conf file (%s)", confFile ).c_str() );
|
||||
errorExit( format( "get path of conf file (%s)", confFile.c_str() ).c_str() );
|
||||
}
|
||||
|
||||
if( !fileNameStart ) {
|
||||
errorExit( format( "file name not present (%s)", confFile ).c_str() );
|
||||
errorExit( format( "file name not present (%s)", confFile.c_str() ).c_str() );
|
||||
}
|
||||
|
||||
// Test file existence
|
||||
|
@ -840,7 +840,7 @@ void print_usage(const char *name) {
|
|||
" -h, --help Display this help and exit.\n", name);
|
||||
}
|
||||
|
||||
int main(DWORD argc, LPCSTR *argv) {
|
||||
int main(int argc, LPCSTR *argv) {
|
||||
_set_FMA3_enable(0); // Workaround for VS 2013 code generation bug. See https://connect.microsoft.com/VisualStudio/feedback/details/811093/visual-studio-2013-rtm-c-x64-code-generation-bug-for-avx2-instructions
|
||||
|
||||
int status = 0;
|
||||
|
|
|
@ -118,9 +118,9 @@ CServiceBase::CServiceBase(char *serviceName,
|
|||
bool fCanPauseContinue)
|
||||
{
|
||||
// Service name must be a valid string and cannot be NULL.
|
||||
m_name = (serviceName == NULL) ? "" : serviceName;
|
||||
m_name = (serviceName == nullptr) ? const_cast<char*>("") : serviceName;
|
||||
|
||||
m_statusHandle = NULL;
|
||||
m_statusHandle = nullptr;
|
||||
|
||||
// The service runs in its own process.
|
||||
m_status.dwServiceType = SERVICE_WIN32_OWN_PROCESS;
|
||||
|
|
Loading…
Reference in New Issue