mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-24 00:47:57 -05:00
Because having it as a compiler flag means that when compiling a dependant application we need to have extra knowledge of this setting at compile time of the dependant application. If this is not guaranteed (and the dependant application is compiled without QGISDEBUG while libqgis_core.so is compiled with QGISDEBUG) will result in different class definitions being found in header and library. For example for the optional QgsCoordinateTransform::mHasContext member. This in turn leads to crashes with funky traces and no chance to find out what's going on.
69 lines
2.0 KiB
C
69 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
|
|
|
|
#cmakedefine QGISDEBUG
|
|
|
|
#endif
|
|
|