Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/trunk/data/CMakeLists.txt @ 7125

Last change on this file since 7125 was 5794, checked in by rgrieder, 15 years ago

Small stuff and added support for Boost 1.40

  • Property svn:eol-style set to native
File size: 2.8 KB
Line 
1 #
2 #             ORXONOX - the hottest 3D action shooter ever to exist
3 #                             > www.orxonox.net <
4 #
5 #        This program is free software; you can redistribute it and/or
6 #         modify it under the terms of the GNU General Public License
7 #        as published by the Free Software Foundation; either version 2
8 #            of the License, or (at your option) any later version.
9 #
10 #       This program is distributed in the hope that it will be useful,
11 #        but WITHOUT ANY WARRANTY; without even the implied warranty of
12 #        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 #                 GNU General Public License for more details.
14 #
15 #   You should have received a copy of the GNU General Public License along
16 #      with this program; if not, write to the Free Software Foundation,
17 #     Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
18 #
19 #
20 #  Author:
21 #    Reto Grieder
22 #  Description:
23 #    Finds the external data directory and configures the data installation.
24 #    Default search paths are: ../../data and ../data_extern
25 #
26
27# For dev runs we've got two data directories. The one from the other repository root folder
28# is called EXTERNAL_DATA
29SET(DATA_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
30SET(DATA_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PARENT_SCOPE)
31
32# Specify data directory
33GET_FILENAME_COMPONENT(_search_path_1 ${CMAKE_SOURCE_DIR}/../data_extern ABSOLUTE)
34FIND_PATH(EXTERNAL_DATA_DIRECTORY resources.oxr
35  PATHS
36    ${CMAKE_SOURCE_DIR}/data_extern
37    ${_search_path_1}
38  NO_CMAKE_PATH NO_CMAKE_ENVIRONMENT_PATH NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH
39)
40
41IF(NOT EXTERNAL_DATA_DIRECTORY)
42  MESSAGE(STATUS "Warning: External data directory not found. If you want to compile while downloading the data files, you will have to recompile about four files afterwards and relink everything.")
43  MESSAGE(STATUS "You can specify your own folder with the EXTERNAL_DATA_DIRECTORY variable. Default location for the path is orxonox_root/data_extern")
44  # Temporary override to the default location.
45  SET(EXTERNAL_DATA_DIRECTORY ${CMAKE_SOURCE_DIR}/data_extern)
46ENDIF()
47
48
49################ Installation #################
50
51# Internal directory
52INSTALL(
53  DIRECTORY ${DATA_DIRECTORY}/
54  DESTINATION ${DATA_INSTALL_DIRECTORY}
55  REGEX "\\.svn$|_svn$|CMakeLists.txt|InstallScript.cmake" EXCLUDE
56)
57# External directory
58INSTALL(
59  DIRECTORY ${EXTERNAL_DATA_DIRECTORY}/
60  DESTINATION ${DATA_INSTALL_DIRECTORY}
61  REGEX "\\.svn$|_svn$|resources\\.oxr" EXCLUDE
62)
63# Configure the install scripts (variables not available during installation)
64CONFIGURE_FILE(DataInstallScript.cmake ${CMAKE_CURRENT_BINARY_DIR}/DataInstallScript.cmake @ONLY)
65# Join both resources.oxr files
66INSTALL(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/DataInstallScript.cmake)
Note: See TracBrowser for help on using the repository browser.