QGIS/cmake_templates/qgsconfig.h.in
Nyall Dawson 265be41d7c Don't use thread_local on mingw or OpenBSD builds
MingW has broken support for thread_local, so force disabling it
see
https://sourceforge.net/p/mingw-w64/bugs/445/
https://sourceforge.net/p/mingw-w64/bugs/527/
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80816

also OpenBSD has no thread_local support, see https://issues.qgis.org/issues/17351

So on these platforms we fall back to using QThreadStorage.

Fixes #17351
2017-11-06 09:20:12 +10:00

67 lines
2.0 KiB
C

// QGSCONFIG.H
#ifndef QGSCONFIG_H
#define QGSCONFIG_H
// Version must be specified according to
// <int>.<int>.<int>-<any text>.
// or else upgrading old project file will not work
// reliably.
#define VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}-${RELEASE_NAME}"
//used in vim src/core/qgis.cpp
//The way below should work but it resolves to a number like 0110 which the compiler treats as octal I think
//because debuggin it out shows the decimal number 72 which results in incorrect version status.
//As a short term fix I (Tim) am defining the version in top level cmake. It would be good to
//reinstate this more generic approach below at some point though
//#define VERSION_INT ${CPACK_PACKAGE_VERSION_MAJOR}${CPACK_PACKAGE_VERSION_MINOR}${CPACK_PACKAGE_VERSION_PATCH}
#define VERSION_INT ${QGIS_VERSION_INT}
#define ABISYM(x) x ## ${QGIS_VERSION_INT}
//used in main.cpp and anywhere else where the release name is needed
#define RELEASE_NAME "${RELEASE_NAME}"
#define QGIS_PLUGIN_SUBDIR "${QGIS_PLUGIN_SUBDIR}"
#define QGIS_DATA_SUBDIR "${QGIS_DATA_SUBDIR}"
#define QGIS_LIBEXEC_SUBDIR "${QGIS_LIBEXEC_SUBDIR}"
#define QGIS_LIB_SUBDIR "${QGIS_LIB_SUBDIR}"
#define CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}"
#define CMAKE_SOURCE_DIR "${CMAKE_SOURCE_DIR}"
#define QGIS_SERVER_MODULE_SUBDIR "${QGIS_SERVER_MODULE_SUBDIR}"
#define QSCINTILLA_VERSION_STR "${QSCINTILLA_VERSION_STR}"
#if defined( __APPLE__ )
//used by Mac to find system or bundle resources relative to amount of bundling
#define QGIS_MACAPP_BUNDLE ${QGIS_MACAPP_BUNDLE}
#endif
#define QT_PLUGINS_DIR "${QT_PLUGINS_DIR}"
#define OSG_PLUGINS_PATH "${OSG_PLUGINS_PATH}"
#cmakedefine USING_NMAKE
#cmakedefine USING_NINJA
#cmakedefine HAVE_GUI
#cmakedefine HAVE_POSTGRESQL
#cmakedefine HAVE_ORACLE
#cmakedefine HAVE_OSGEARTHQT
#cmakedefine SERVER_SKIP_ECW
#cmakedefine HAVE_SERVER_PYTHON_PLUGINS
#cmakedefine ENABLE_MODELTEST
#cmakedefine HAVE_3D
#cmakedefine USE_THREAD_LOCAL
#endif