Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/libraries/src/SpecialConfig.h.in @ 5647

Last change on this file since 5647 was 5626, checked in by landauf, 15 years ago

Added a dynamic library loader (more or less a copy of Ogre::DynLibManager but with some adjustments for Orxonox). This allows us to load plugins at runtime. Plugin-libraries must be declared with the "PLUGIN" switch in ORXONOX_ADD_LIBRARY in CMake.

  • Property svn:eol-style set to native
File size: 3.9 KB
Line 
1/*
2 *   ORXONOX - the hottest 3D action shooter ever to exist
3 *                    > www.orxonox.net <
4 *
5 *
6 *   License notice:
7 *
8 *   This program is free software; you can redistribute it and/or
9 *   modify it under the terms of the GNU General Public License
10 *   as published by the Free Software Foundation; either version 2
11 *   of the License, or (at your option) any later version.
12 *
13 *   This program is distributed in the hope that it will be useful,
14 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *   GNU General Public License for more details.
17 *
18 *   You should have received a copy of the GNU General Public License
19 *   along with this program; if not, write to the Free Software
20 *   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 *
22 *   Author:
23 *      Reto Grieder
24 *   Co-authors:
25 *      ...
26 *
27 */
28
29/**
30@file
31@brief
32    Various constants and options that only affect very little code.
33@note
34    This is merely to avoid recompiling everything when only a path changes.
35@remarks
36    @GENERATED_FILE_COMMENT@
37*/
38
39#ifndef _SpecialConfig_H__
40#define _SpecialConfig_H__
41
42#include "OrxonoxConfig.h"
43#include <boost/preprocessor/stringize.hpp>
44
45/**
46@def CEGUILUA_USE_INTERNAL_LIBRARY
47    Set whether we must suffix "ceguilua/" for the CEGUILua.h include
48*/
49#cmakedefine CEGUILUA_USE_INTERNAL_LIBRARY
50
51/**
52@def DEPENDENCY_PACKAGE_ENABLE
53    Defined if a precompiled depdency package was used. We then copy all libraries
54    too when installing.
55*/
56#cmakedefine DEPENDENCY_PACKAGE_ENABLE
57
58/**
59@def INSTALL_COPYABLE
60    Orxonox either gets installed to the system or just into a folder.
61    The latter uses relative paths.
62*/
63#cmakedefine INSTALL_COPYABLE
64
65/**
66@def CMAKE_CONFIGURATION_TYPES
67    Using MSVC or XCode IDE
68*/
69#cmakedefine CMAKE_CONFIGURATION_TYPES
70
71// Handle default ConfigValues
72namespace orxonox
73{
74    // INSTALLATION PATHS
75    const char ORXONOX_RUNTIME_INSTALL_PATH[] = "@ORXONOX_RUNTIME_INSTALL_PATH@";
76    const char ORXONOX_PLUGIN_INSTALL_PATH[]  = "@ORXONOX_PLUGIN_INSTALL_PATH@";
77    const char ORXONOX_MEDIA_INSTALL_PATH[]   = "@ORXONOX_MEDIA_INSTALL_PATH@";
78    /* Config and Log path might be relative because they could be user and therefore runtime dependent */
79    const char ORXONOX_CONFIG_INSTALL_PATH[]  = "@ORXONOX_CONFIG_INSTALL_PATH@";
80    const char ORXONOX_LOG_INSTALL_PATH[]     = "@ORXONOX_LOG_INSTALL_PATH@";
81
82    // DEVELOPMENT RUN PATHS
83    const char ORXONOX_MEDIA_DEV_PATH[]       = "@CMAKE_MEDIA_OUTPUT_DIRECTORY@";
84#ifdef CMAKE_CONFIGURATION_TYPES
85    const char ORXONOX_PLUGIN_DEV_PATH[]      = "@CMAKE_PLUGIN_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
86    const char ORXONOX_CONFIG_DEV_PATH[]      = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
87    const char ORXONOX_LOG_DEV_PATH[]         = "@CMAKE_LOG_OUTPUT_DIRECTORY@/"    BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
88#else
89    const char ORXONOX_PLUGIN_DEV_PATH[]      = "@CMAKE_PLUGIN_OUTPUT_DIRECTORY@";
90    const char ORXONOX_CONFIG_DEV_PATH[]      = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@";
91    const char ORXONOX_LOG_DEV_PATH[]         = "@CMAKE_LOG_OUTPUT_DIRECTORY@";
92#endif
93#ifdef DEPENDENCY_PACKAGE_ENABLE
94    const char ORXONOX_DEP_LIB_PATH[]         = "@DEP_LIBRARY_DIR@";
95#endif
96
97    // OGRE PLUGINS
98#ifdef NDEBUG
99    const char ORXONOX_OGRE_PLUGINS[] = "@OGRE_PLUGINS_RELEASE@";
100#  ifdef DEPENDENCY_PACKAGE_ENABLE
101    const char ORXONOX_OGRE_PLUGINS_FOLDER[] = ".";
102#  else
103    const char ORXONOX_OGRE_PLUGINS_FOLDER[] = "@OGRE_PLUGINS_FOLDER_RELEASE@";
104#  endif
105#else
106    const char ORXONOX_OGRE_PLUGINS[] = "@OGRE_PLUGINS_DEBUG@";
107#  ifdef DEPENDENCY_PACKAGE_ENABLE
108    const char ORXONOX_OGRE_PLUGINS_FOLDER[] = ".";
109#  else
110    const char ORXONOX_OGRE_PLUGINS_FOLDER[] = "@OGRE_PLUGINS_FOLDER_DEBUG@";
111#  endif
112#endif
113}
114
115/**
116@def ORXONOX_USE_WINMAIN
117    Use main() or WinMain()?
118*/
119#cmakedefine ORXONOX_USE_WINMAIN
120
121#endif /* _SpecialConfig_H__ */
Note: See TracBrowser for help on using the repository browser.