QGIS/cmake_templates/qgsconfig.h.in
2021-02-25 11:08:56 +10:00

98 lines
2.9 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.
// TODO QGIS 4: remove in favor of _QGIS_VERSION
#define VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}-${RELEASE_NAME}"
#define _QGIS_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}
// TODO QGIS 4: Remove in favor of _QGIS_VERSION_INT
#define VERSION_INT ${QGIS_VERSION_INT}
#define _QGIS_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 QGIS_QML_SUBDIR "${QGIS_QML_SUBDIR}"
#define CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}"
#define CMAKE_SOURCE_DIR "${CMAKE_SOURCE_DIR}"
#define QGIS_SERVER_MODULE_SUBDIR "${QGIS_SERVER_MODULE_SUBDIR}"
#if !defined(QSCINTILLA_VERSION_STR)
#define QSCINTILLA_VERSION_STR "${QSCINTILLA_VERSION_STR}"
#endif
#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}"
#cmakedefine USING_NMAKE
#cmakedefine USING_NINJA
#cmakedefine HAVE_GUI
#cmakedefine HAVE_POSTGRESQL
#cmakedefine HAVE_ORACLE
#cmakedefine HAVE_HANA
#cmakedefine SERVER_SKIP_ECW
#cmakedefine HAVE_SERVER_PYTHON_PLUGINS
#cmakedefine HAVE_OPENCL
#cmakedefine ENABLE_MODELTEST
#cmakedefine HAVE_3D
#cmakedefine HAVE_GEOREFERENCER
#cmakedefine USE_THREAD_LOCAL
#cmakedefine QGISDEBUG
#cmakedefine HAVE_QUICK
#cmakedefine HAVE_QT5SERIALPORT
#cmakedefine HAVE_STATIC_PROVIDERS
#cmakedefine HAVE_EPT
#cmakedefine HAVE_PDAL
#define PDAL_VERSION "${PDAL_VERSION}"
#define PDAL_VERSION_MAJOR_INT ${PDAL_VERSION_MAJOR}
#define PDAL_VERSION_MINOR_INT ${PDAL_VERSION_MINOR}
#define PDAL_VERSION_MAJOR "${PDAL_VERSION_MAJOR}"
#define PDAL_VERSION_MINOR "${PDAL_VERSION_MINOR}"
#define PDAL_VERSION_MICRO "${PDAL_VERSION_MICRO}"
// Needed because sip uses deprecated throw(...) annotations to raise the correct Python exception
#define throw(...)
#endif