// Copyright (C) 2002-2012 Nikolaus Gebhardt // This file is part of the "Irrlicht Engine". // For conditions of distribution and use, see copyright notice in irrlicht.h #ifndef __IRR_COMPILE_CONFIG_H_INCLUDED__ #define __IRR_COMPILE_CONFIG_H_INCLUDED__ //! Identifies the IrrlichtMt fork customized for the Minetest engine #define IRRLICHT_VERSION_MT_REVISION 9 #define IRRLICHT_VERSION_MT "mt9" //! Irrlicht SDK Version #define IRRLICHT_VERSION_MAJOR 1 #define IRRLICHT_VERSION_MINOR 9 #define IRRLICHT_VERSION_REVISION 0 // This flag will be defined only in SVN, the official release code will have // it undefined #define IRRLICHT_VERSION_SVN alpha #define IRRLICHT_SDK_VERSION "1.9.0" IRRLICHT_VERSION_MT #include // TODO: Although included elsewhere this is required at least for mingw //! Maximum number of texture an SMaterial can have, up to 8 are supported by Irrlicht. #define _IRR_MATERIAL_MAX_TEXTURES_ 4 #ifdef _IRR_WINDOWS_API_ // To build Irrlicht as a static library, you must define _IRR_STATIC_LIB_ in both the // Irrlicht build, *and* in the user application, before #including #ifndef _IRR_STATIC_LIB_ #ifdef IRRLICHT_EXPORTS #define IRRLICHT_API __declspec(dllexport) #else #define IRRLICHT_API __declspec(dllimport) #endif // IRRLICHT_EXPORT #else #define IRRLICHT_API #endif // _IRR_STATIC_LIB_ // Declare the calling convention. #if defined(_STDCALL_SUPPORTED) #define IRRCALLCONV __stdcall #else #define IRRCALLCONV __cdecl #endif // STDCALL_SUPPORTED #else // _IRR_WINDOWS_API_ // Force symbol export in shared libraries built with gcc. #if defined(__GNUC__) && !defined(_IRR_STATIC_LIB_) && defined(IRRLICHT_EXPORTS) #define IRRLICHT_API __attribute__ ((visibility("default"))) #else #define IRRLICHT_API #endif #define IRRCALLCONV #endif // _IRR_WINDOWS_API_ #define _IRR_COMPILE_WITH_GUI_ #define _IRR_COMPILE_WITH_LIBJPEG_ #define _IRR_COMPILE_WITH_LIBPNG_ #define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_ #define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_ #define _IRR_COMPILE_WITH_B3D_LOADER_ #define _IRR_COMPILE_WITH_X_LOADER_ #define _IRR_COMPILE_WITH_OBJ_LOADER_ #define _IRR_COMPILE_WITH_BMP_LOADER_ #define _IRR_COMPILE_WITH_JPG_LOADER_ #define _IRR_COMPILE_WITH_PNG_LOADER_ #define _IRR_COMPILE_WITH_TGA_LOADER_ #define _IRR_COMPILE_WITH_JPG_WRITER_ #define _IRR_COMPILE_WITH_PNG_WRITER_ #define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_ #define _IRR_COMPILE_WITH_ZLIB_ #define __IRR_HAS_S64 #ifdef _DEBUG //! A few attributes are written in CSceneManager when _IRR_SCENEMANAGER_DEBUG is enabled // NOTE: Those attributes were used always until 1.8.0 and became a global define for 1.8.1 // which is only enabled in debug because it had a large (sometimes >5%) impact on speed. // A better solution in the long run is to break the interface and remove _all_ attribute // access in functions like CSceneManager::drawAll and instead put that information in some // own struct/class or in CSceneManager. // See http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=48211 for the discussion. #define _IRR_SCENEMANAGER_DEBUG #ifdef NO_IRR_SCENEMANAGER_DEBUG #undef _IRR_SCENEMANAGER_DEBUG #endif #endif #endif // __IRR_COMPILE_CONFIG_H_INCLUDED__