From 262a0eb7e9f8c0661c3e3463357af38233d65242 Mon Sep 17 00:00:00 2001 From: Simon Praetorius <simon.praetorius@tu-dresden.de> Date: Sun, 30 Oct 2016 20:43:20 +0100 Subject: [PATCH] workaround for windows macro definitions --- AMDiS/cmake/muparser.cmake | 2 +- AMDiS/cmake3/muparser.cmake | 2 +- AMDiS/lib/muparser_v134/include/muParserBase.h | 2 +- AMDiS/lib/muparser_v134/include/muParserToken.h | 2 +- AMDiS/lib/muparser_v134/src/muParserTest.cpp | 2 +- AMDiS/lib/muparser_v134/src/muParserTokenReader.cpp | 2 +- AMDiS/src/config/Config_msc.h | 8 ++++++++ AMDiS/src/io/detail/Arh3Writer.cc | 12 ++++++------ AMDiS/src/io/detail/Arh3Writer.h | 2 +- 9 files changed, 21 insertions(+), 13 deletions(-) diff --git a/AMDiS/cmake/muparser.cmake b/AMDiS/cmake/muparser.cmake index bb161dae..36aacc92 100644 --- a/AMDiS/cmake/muparser.cmake +++ b/AMDiS/cmake/muparser.cmake @@ -18,7 +18,7 @@ include_directories(${MUPARSER_INCLUDE_DIR}) if (ENABLE_CXX11) - add_definitions(-DMUPARSER_HAS_CXX11=1) + add_definitions(-DAMDIS_HAS_CXX11=1) endif (ENABLE_CXX11) # specify how to install this target: diff --git a/AMDiS/cmake3/muparser.cmake b/AMDiS/cmake3/muparser.cmake index 448bd8f2..22427c2b 100644 --- a/AMDiS/cmake3/muparser.cmake +++ b/AMDiS/cmake3/muparser.cmake @@ -18,7 +18,7 @@ target_include_directories(muparser PUBLIC ${MUPARSER_INCLUDE_DIR}) if (ENABLE_CXX11) target_enable_cxx11(MUPARSER_ENABLE_CXX11 muparser PRIVATE) - target_compile_definitions(muparser PRIVATE MUPARSER_HAS_CXX11=1) + target_compile_definitions(muparser PRIVATE AMDIS_HAS_CXX11=1) endif (ENABLE_CXX11) # specify how to install this target: diff --git a/AMDiS/lib/muparser_v134/include/muParserBase.h b/AMDiS/lib/muparser_v134/include/muParserBase.h index be7f02c0..f15eb2d2 100644 --- a/AMDiS/lib/muparser_v134/include/muParserBase.h +++ b/AMDiS/lib/muparser_v134/include/muParserBase.h @@ -262,7 +262,7 @@ private: mutable stringbuf_type m_vStringBuf; ///< String buffer, used for storing string function arguments stringbuf_type m_vStringVarBuf; -#if MUPARSER_HAS_CXX11 +#if AMDIS_HAS_CXX11 std::unique_ptr<token_reader_type> m_pTokenReader; ///< Managed pointer to the token reader object. #else std::auto_ptr<token_reader_type> m_pTokenReader; ///< Managed pointer to the token reader object. diff --git a/AMDiS/lib/muparser_v134/include/muParserToken.h b/AMDiS/lib/muparser_v134/include/muParserToken.h index e2ea7f5e..512f6d6c 100644 --- a/AMDiS/lib/muparser_v134/include/muParserToken.h +++ b/AMDiS/lib/muparser_v134/include/muParserToken.h @@ -78,7 +78,7 @@ namespace mu TString m_strTok; ///< Token string TString m_strVal; ///< Value for string variables value_type m_fVal; -#if MUPARSER_HAS_CXX11 +#if AMDIS_HAS_CXX11 std::unique_ptr<ParserCallback> m_pCallback; #else std::auto_ptr<ParserCallback> m_pCallback; diff --git a/AMDiS/lib/muparser_v134/src/muParserTest.cpp b/AMDiS/lib/muparser_v134/src/muParserTest.cpp index cd61092f..3b2b8560 100644 --- a/AMDiS/lib/muparser_v134/src/muParserTest.cpp +++ b/AMDiS/lib/muparser_v134/src/muParserTest.cpp @@ -1040,7 +1040,7 @@ namespace mu try { -#if MUPARSER_HAS_CXX11 +#if AMDIS_HAS_CXX11 std::unique_ptr<Parser> p1; #else std::auto_ptr<Parser> p1; diff --git a/AMDiS/lib/muparser_v134/src/muParserTokenReader.cpp b/AMDiS/lib/muparser_v134/src/muParserTokenReader.cpp index 02dd026b..b39cd524 100644 --- a/AMDiS/lib/muparser_v134/src/muParserTokenReader.cpp +++ b/AMDiS/lib/muparser_v134/src/muParserTokenReader.cpp @@ -145,7 +145,7 @@ namespace mu */ ParserTokenReader* ParserTokenReader::Clone(ParserBase *a_pParent) const { -#if MUPARSER_HAS_CXX11 +#if AMDIS_HAS_CXX11 std::unique_ptr<ParserTokenReader> ptr(new ParserTokenReader(*this)); #else std::auto_ptr<ParserTokenReader> ptr(new ParserTokenReader(*this)); diff --git a/AMDiS/src/config/Config_msc.h b/AMDiS/src/config/Config_msc.h index e08c4288..fbc74b16 100644 --- a/AMDiS/src/config/Config_msc.h +++ b/AMDiS/src/config/Config_msc.h @@ -57,6 +57,14 @@ typedef __declspec(align(CACHE_LINE)) size_t aligned_size_t; #undef min #endif +#ifdef NONE +#undef NONE +#endif + +#ifdef THIS +#undef THIS +#endif + #if MSC_VERSION >= 1800 && !defined(HAS_VARIADIC_TEMPLATES) #define HAS_VARIADIC_TEMPLATES 1 #endif diff --git a/AMDiS/src/io/detail/Arh3Writer.cc b/AMDiS/src/io/detail/Arh3Writer.cc index 2af797c7..c2f90774 100644 --- a/AMDiS/src/io/detail/Arh3Writer.cc +++ b/AMDiS/src/io/detail/Arh3Writer.cc @@ -140,7 +140,7 @@ namespace AMDiS { namespace io { macroFilename + ';' + perFilename; macroFile_nl = macroFile.length(); - } else if (writeMacro == Macroformat::THIS) { + } else if (writeMacro == Macroformat::SELF) { macroFile_nl = 13; readFileToString(macroFilename, macroData); @@ -163,7 +163,7 @@ namespace AMDiS { namespace io { } // write macro and periodic file - if (writeMacro == Macroformat::THIS && macroFilename.length()) { + if (writeMacro == Macroformat::SELF && macroFilename.length()) { file.seekp(0, ios_base::end); long macroPos = file.tellp(), perPos = 0; file.write(macroData.c_str(), macroData.length()); @@ -354,7 +354,7 @@ namespace AMDiS { namespace io { macroFilename + ';' + perFilename; macroFile_nl = macroFile.length(); - } else if (writeMacro == Macroformat::THIS) { + } else if (writeMacro == Macroformat::SELF) { macroFile_nl = perFilename.length() ? 27 : 13; macroFile.resize(macroFile_nl, ' '); } @@ -604,7 +604,7 @@ namespace AMDiS { namespace io { //reset the macro positions in file setMacrosPos(file, headerLen, macroSize); - if (writeMacro == Macroformat::THIS) + if (writeMacro == Macroformat::SELF) setMacroFile(file, headerLen, mesh, writeMacro); file.close(); @@ -634,8 +634,8 @@ namespace AMDiS { namespace io { { FUNCNAME("setMacroFile()"); - TEST_EXIT(writeMacro == Macroformat::THIS) - ("This function should only be called under Macroformat::THIS.\n"); + TEST_EXIT(writeMacro == Macroformat::SELF) + ("This function should only be called under Macroformat::SELF.\n"); string macroFilename = "", perFilename = ""; string macroData = "", periodicData = ""; diff --git a/AMDiS/src/io/detail/Arh3Writer.h b/AMDiS/src/io/detail/Arh3Writer.h index 6e9ac97a..61986009 100644 --- a/AMDiS/src/io/detail/Arh3Writer.h +++ b/AMDiS/src/io/detail/Arh3Writer.h @@ -27,7 +27,7 @@ namespace AMDiS { namespace io { typedef enum{ NONE = 0, // no macro PT_MACROFILE = 1, // pointer to macro file - THIS = 2 // pointer to this file, at the end of this file + SELF = 2 // pointer to this file, at the end of this file } Value; }; -- GitLab