QxConfig.h 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. /****************************************************************************
  2. **
  3. ** https://www.qxorm.com/
  4. ** Copyright (C) 2013 Lionel Marty (contact@qxorm.com)
  5. **
  6. ** This file is part of the QxOrm library
  7. **
  8. ** This software is provided 'as-is', without any express or implied
  9. ** warranty. In no event will the authors be held liable for any
  10. ** damages arising from the use of this software
  11. **
  12. ** Commercial Usage
  13. ** Licensees holding valid commercial QxOrm licenses may use this file in
  14. ** accordance with the commercial license agreement provided with the
  15. ** Software or, alternatively, in accordance with the terms contained in
  16. ** a written agreement between you and Lionel Marty
  17. **
  18. ** GNU General Public License Usage
  19. ** Alternatively, this file may be used under the terms of the GNU
  20. ** General Public License version 3.0 as published by the Free Software
  21. ** Foundation and appearing in the file 'license.gpl3.txt' included in the
  22. ** packaging of this file. Please review the following information to
  23. ** ensure the GNU General Public License version 3.0 requirements will be
  24. ** met : http://www.gnu.org/copyleft/gpl.html
  25. **
  26. ** If you are unsure which license is appropriate for your use, or
  27. ** if you have questions regarding the use of this file, please contact :
  28. ** contact@qxorm.com
  29. **
  30. ****************************************************************************/
  31. #ifndef _QX_CONFIG_H_
  32. #define _QX_CONFIG_H_
  33. #ifdef _MSC_VER
  34. #pragma once
  35. #endif
  36. /*!
  37. * \file QxConfig.h
  38. * \author Lionel Marty
  39. * \ingroup QxCommon
  40. * \brief List of parameters to compile and build QxOrm library
  41. */
  42. #define QX_VERSION 0x010408
  43. #define QX_VERSION_STR "1.4.8"
  44. #ifndef _QX_MODE_DEBUG
  45. #ifndef _QX_MODE_RELEASE
  46. #ifdef QT_NO_DEBUG
  47. #define _QX_MODE_RELEASE
  48. #else // QT_NO_DEBUG
  49. #define _QX_MODE_DEBUG
  50. #endif // QT_NO_DEBUG
  51. #endif // _QX_MODE_RELEASE
  52. #endif // _QX_MODE_DEBUG
  53. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  54. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_XML
  55. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  56. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  57. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  58. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  59. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  60. #ifndef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  61. #define _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  62. #define _QX_ENABLE_BOOST_SERIALIZATION_XML
  63. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  64. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  65. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  66. #endif // _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  67. #endif // _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  68. #endif // _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  69. #endif // _QX_ENABLE_BOOST_SERIALIZATION_XML
  70. #endif // _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  71. #ifndef _QX_ENABLE_BOOST_SERIALIZATION
  72. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  73. #undef _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  74. #endif // _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  75. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_XML
  76. #undef _QX_ENABLE_BOOST_SERIALIZATION_XML
  77. #endif // _QX_ENABLE_BOOST_SERIALIZATION_XML
  78. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  79. #undef _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  80. #endif // _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  81. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  82. #undef _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  83. #endif // _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  84. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  85. #undef _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  86. #endif // _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  87. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  88. #undef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  89. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  90. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  91. #undef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  92. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  93. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  94. #undef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  95. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  96. #endif // _QX_ENABLE_BOOST_SERIALIZATION
  97. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  98. #define _QX_SERIALIZE_POLYMORPHIC 1
  99. #else // _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  100. #define _QX_SERIALIZE_POLYMORPHIC 0
  101. #endif // _QX_ENABLE_BOOST_SERIALIZATION_POLYMORPHIC
  102. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  103. #define _QX_SERIALIZE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 1)
  104. #else // _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  105. #define _QX_SERIALIZE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 0)
  106. #endif // _QX_ENABLE_BOOST_SERIALIZATION_BINARY
  107. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  108. #define _QX_SERIALIZE_TEXT (! _QX_SERIALIZE_POLYMORPHIC && 1)
  109. #else // _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  110. #define _QX_SERIALIZE_TEXT (! _QX_SERIALIZE_POLYMORPHIC && 0)
  111. #endif // _QX_ENABLE_BOOST_SERIALIZATION_TEXT
  112. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_XML
  113. #define _QX_SERIALIZE_XML (! _QX_SERIALIZE_POLYMORPHIC && 1)
  114. #else // _QX_ENABLE_BOOST_SERIALIZATION_XML
  115. #define _QX_SERIALIZE_XML (! _QX_SERIALIZE_POLYMORPHIC && 0)
  116. #endif // _QX_ENABLE_BOOST_SERIALIZATION_XML
  117. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  118. #define _QX_SERIALIZE_PORTABLE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 1)
  119. #else // _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  120. #define _QX_SERIALIZE_PORTABLE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 0)
  121. #endif // _QX_ENABLE_BOOST_SERIALIZATION_PORTABLE_BINARY
  122. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  123. #define _QX_SERIALIZE_WIDE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 1)
  124. #else // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  125. #define _QX_SERIALIZE_WIDE_BINARY (! _QX_SERIALIZE_POLYMORPHIC && 0)
  126. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_BINARY
  127. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  128. #define _QX_SERIALIZE_WIDE_TEXT (! _QX_SERIALIZE_POLYMORPHIC && 1)
  129. #else // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  130. #define _QX_SERIALIZE_WIDE_TEXT (! _QX_SERIALIZE_POLYMORPHIC && 0)
  131. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_TEXT
  132. #ifdef _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  133. #define _QX_SERIALIZE_WIDE_XML (! _QX_SERIALIZE_POLYMORPHIC && 1)
  134. #else // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  135. #define _QX_SERIALIZE_WIDE_XML (! _QX_SERIALIZE_POLYMORPHIC && 0)
  136. #endif // _QX_ENABLE_BOOST_SERIALIZATION_WIDE_XML
  137. #define _QX_AUTO_REGISTER_REPOSITORY 0
  138. #define _QX_USE_MEM_LEAK_DETECTION 0
  139. #define _QX_USE_EXPORT_DLL_BOOST_SERIALIZATION_SINGLETON 1
  140. #define _QX_USE_BOOST_SERIALIZE_REGISTER_HELPER 0
  141. #define _QX_USE_MODIFY_BOOST_SERIALIZATION_EXPORT_HPP 0
  142. #define _QX_WRITE_BOOST_CLASS_EXPORT_IN_HPP_FILE 0
  143. #define _QX_WRITE_BOOST_CLASS_EXPORT_IN_CPP_FILE 1
  144. #define _QX_INCLUDE_BOOST_SERIALIZE_EXPORT_HPP_INTO_QX_MEM_LEAK_HPP 1
  145. #define _QX_INCLUDE_BOOST_SERIALIZE_ARCHIVE_IMPL_IPP 0
  146. #define _QX_MEM_LEAK_ONLY_KNOWN_SRC_FILE 1
  147. #define _QX_SUPPORT_BOOST_SERIALIZE_SHARED_PTR_132 0
  148. #define _QX_USE_QX_CONVERT_EXPORT 0
  149. #define _QX_USE_GCC_EXPORT_ALL_SYMBOLS 0
  150. #define _QX_USE_GCC_VISIBILITY 0
  151. #define _QX_USE_ASSERT 1
  152. #define _QX_SUPPORT_COVARIANT_RETURN_TYPE 1
  153. #define _QX_USE_QX_SINGLETON_X 1
  154. #ifdef _MSC_VER
  155. /* -- Link error with VC++ 9.0 => Qt uses "-Zc:wchar_t-" option to compile and boost serialization library is compiled without this option -- */
  156. #define _QX_USE_SERIALIZE_POLYMORPHIC_PATCH (_QX_SERIALIZE_POLYMORPHIC && 1)
  157. #else // _MSC_VER
  158. #define _QX_USE_SERIALIZE_POLYMORPHIC_PATCH 0
  159. #endif // _MSC_VER
  160. #if (QT_VERSION < 0x050000)
  161. #ifndef _QX_NO_JSON
  162. #define _QX_NO_JSON
  163. #endif // _QX_NO_JSON
  164. #endif // (QT_VERSION < 0x050000)
  165. #endif // _QX_CONFIG_H_