fix debian build failure; refs #12
This commit is contained in:
@@ -14,19 +14,21 @@
|
||||
# if __cplusplus < 201103L
|
||||
# if __cplusplus==1
|
||||
# if __APPLE__
|
||||
/// Code is compiled with old non C++11 standard compliant compiler
|
||||
/** There are workarounds for old non C++11 compatible
|
||||
compilers. These workarounds are deprecated, but will
|
||||
remain until most compilers fully support C++11. So
|
||||
this workaround will be removed in future releases,
|
||||
when support for C++11 is more common. Only rely on
|
||||
this workaround, if you really have to.
|
||||
Mac gcc is even worse than on other systems. */
|
||||
# define MRW__OLD_PRE11_COMPILER
|
||||
# warning you need a C++11 compliant compiler, on gcc: add -std=c++11
|
||||
# warning emulating C++11 - this changes the way you use the library
|
||||
# warning this is deprecated and will be removed in future releases
|
||||
# warning refere to the library documentation for more details
|
||||
# if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_9
|
||||
/// Code is compiled with old non C++11 standard compliant compiler
|
||||
/** There are workarounds for old non C++11 compatible
|
||||
compilers. These workarounds are deprecated, but will
|
||||
remain until most compilers fully support C++11. So
|
||||
this workaround will be removed in future releases,
|
||||
when support for C++11 is more common. Only rely on
|
||||
this workaround, if you really have to. Mac gcc is
|
||||
even worse than on other systems. */
|
||||
# define MRW__OLD_PRE11_COMPILER
|
||||
# warning you need a C++11 compliant compiler, on gcc: add -std=c++11
|
||||
# warning emulating C++11 - this changes the way you use the library
|
||||
# warning this is deprecated and will be removed in future releases
|
||||
# warning refere to the library documentation for more details
|
||||
# endif
|
||||
# else
|
||||
// __cplusplus==1 is a known bug in gcc 4.6.3
|
||||
# warning your compiler has a know bug, please upgrade to gcc >= 4.7
|
||||
@@ -69,33 +71,35 @@ namespace std {
|
||||
};
|
||||
# else
|
||||
# warning trying standard C++11 support
|
||||
# include <memory>
|
||||
# endif
|
||||
# elif __APPLE__
|
||||
# if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_9
|
||||
/// Code is compiled with an old non C++11 standard compliant compiler
|
||||
/** There are workarounds for old non C++11 compatible
|
||||
compilers. These workarounds are deprecated, but will
|
||||
remain until most compilers fully support C++11. So this
|
||||
workaround will be removed in future releases, when support
|
||||
for C++11 is more common. Only rely on this workaround, if
|
||||
you really have to. */
|
||||
# define MRW__OLD_PRE11_COMPILER
|
||||
# warning you need a C++11 compliant compiler, on gcc: add -std=c++11
|
||||
# warning emulating C++11 - this changes the way you use the library
|
||||
# warning this is deprecated and will be removed in future releases
|
||||
# warning refere to the library documentation for more details
|
||||
# warning special workaround for apple
|
||||
# include <tr1/memory>
|
||||
namespace std {
|
||||
// there is no std::shared_ptr in apple, but
|
||||
// std::tr1::shared_ptr in <tr1/memory>
|
||||
template <typename T> class shared_ptr: public tr1::shared_ptr<T> {
|
||||
public:
|
||||
explicit shared_ptr(): tr1::shared_ptr<T>() {}
|
||||
explicit shared_ptr(T* p): tr1::shared_ptr<T>(p) {}
|
||||
};
|
||||
}
|
||||
# elif __APPLE__ && MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_9
|
||||
/// Code is compiled with an old non C++11 standard compliant compiler
|
||||
/** There are workarounds for old non C++11 compatible
|
||||
compilers. These workarounds are deprecated, but will remain
|
||||
until most compilers fully support C++11. So this workaround
|
||||
will be removed in future releases, when support for C++11 is
|
||||
more common. Only rely on this workaround, if you really have
|
||||
to. */
|
||||
# define MRW__OLD_PRE11_COMPILER
|
||||
# warning you need a C++11 compliant compiler, on gcc: add -std=c++11
|
||||
# warning emulating C++11 - this changes the way you use the library
|
||||
# warning this is deprecated and will be removed in future releases
|
||||
# warning refere to the library documentation for more details
|
||||
# warning special workaround for apple
|
||||
# include <tr1/memory>
|
||||
namespace std {
|
||||
// there is no std::shared_ptr in apple, but
|
||||
// std::tr1::shared_ptr in <tr1/memory>
|
||||
template <typename T> class shared_ptr: public tr1::shared_ptr<T> {
|
||||
public:
|
||||
explicit shared_ptr(): tr1::shared_ptr<T>() {}
|
||||
explicit shared_ptr(T* p): tr1::shared_ptr<T>(p) {}
|
||||
};
|
||||
}
|
||||
# endif
|
||||
# else
|
||||
# include <memory>
|
||||
# endif
|
||||
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user