Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/gui/cmake/FindCEGUI.cmake @ 3011

Last change on this file since 3011 was 2710, checked in by rgrieder, 16 years ago

Merged buildsystem3 containing buildsystem2 containing Adi's buildsystem branch back to the trunk.
Please update the media directory if you were not using buildsystem3 before.

  • Property svn:eol-style set to native
File size: 3.1 KB
Line 
1# Find CEGUI includes and library
2#
3# This module defines
4#  CEGUI_INCLUDE_DIR
5#  CEGUI_LIBRARY, the library to link against to use CEGUI.
6#  CEGUI_FOUND, If false, do not try to use CEGUI
7#  CEGUI_VERSION, the version as string "x.y.z"
8#  CEGUILUA_LIBRARY, Script module library
9#  CEGUILUA_USE_INTERNAL_LIBRARY, True if CEGUILUA_LIBRARY was not defined here
10#
11# Input:
12#  ENV{CEGUIDIR}, CEGUI path, optional
13#  FIND CEGUILUA_INTERNAL_SUPPORT, List of all CEGUILua version supported
14#                                  in the source repository
15#  CEGUILUA_USE_EXTERNAL_LIBRARY, Force finding of CEGUILua
16#
17# Created by Matt Williams to find OGRE libraries
18# Copyright © 2007, Matt Williams
19#
20# Modified by Nicolas Schlumberger to find CEGUI libraries
21# and make it run on the Tardis-Infrastucture of the ETH Zurich
22# Copyright 2007, Nicolas Schlumberger
23#
24# Redistribution and use is allowed according to the terms of the BSD license.
25#
26# Several changes and additions by Fabian 'x3n' Landau
27# Lots of simplifications by Adrian Friedli and Reto Grieder
28# Version checking and CEGUILua finding by Reto Grieder
29#                 > www.orxonox.net <
30
31INCLUDE(DetermineVersion)
32INCLUDE(FindPackageHandleAdvancedArgs)
33INCLUDE(HandleLibraryTypes)
34
35FIND_PATH(CEGUI_INCLUDE_DIR CEGUI.h
36  PATHS $ENV{CEGUIDIR}
37  PATH_SUFFIXES include include/CEGUI CEGUI.framework/Headers
38)
39FIND_LIBRARY(CEGUI_LIBRARY_OPTIMIZED
40  NAMES CEGUIBase CEGUI
41  PATHS $ENV{CEGUIDIR}
42  PATH_SUFFIXES lib bin
43)
44FIND_LIBRARY(CEGUI_LIBRARY_DEBUG
45  NAMES
46    CEGUIBased CEGUIBase_d CEGUIBaseD CEGUIBase_D
47    CEGUId CEGUI_d CEGUID CEGUI_D
48  PATHS $ENV{CEGUIDIR}
49  PATH_SUFFIXES lib bin
50)
51
52# Inspect CEGUIVersion.h for the version number
53DETERMINE_VERSION(CEGUI ${CEGUI_INCLUDE_DIR}/CEGUIVersion.h)
54
55# Handle the REQUIRED argument and set CEGUI_FOUND
56# Also checks the version requirements if given
57FIND_PACKAGE_HANDLE_ADVANCED_ARGS(CEGUI DEFAULT_MSG "${CEGUI_VERSION}"
58  CEGUI_LIBRARY_OPTIMIZED
59  CEGUI_INCLUDE_DIR
60)
61
62# Collect optimized and debug libraries
63HANDLE_LIBRARY_TYPES(CEGUI)
64
65MARK_AS_ADVANCED(
66  CEGUI_INCLUDE_DIR
67  CEGUI_LIBRARY_OPTIMIZED
68  CEGUI_LIBRARY_DEBUG
69)
70
71LIST(FIND CEGUILUA_INTERNAL_SUPPORT "${CEGUI_VERSION}" _find_result)
72IF(CEGUILUA_USE_EXTERNAL_LIBRARY OR _find_result EQUAL -1)
73  # Also try to find the CEGUILua libraries.
74  # There would already be libraries in src/ for versions 0.5 and 0.6
75  FIND_LIBRARY(CEGUILUA_LIBRARY_OPTIMIZED
76    NAMES CEGUILua
77    PATHS $ENV{CEGUIDIR}
78    PATH_SUFFIXES lib bin
79  )
80  FIND_LIBRARY(CEGUILUA_LIBRARY_DEBUG
81    NAMES CEGUILuad CEGUILua_d
82    PATHS $ENV{CEGUIDIR}
83    PATH_SUFFIXES lib bin
84  )
85
86  SET(CEGUILua_FIND_REQUIRED ${CEGUI_FIND_REQUIRED})
87  # Handle the REQUIRED argument and set CEGUILUA_FOUND
88  FIND_PACKAGE_HANDLE_STANDARD_ARGS(CEGUILua DEFAULT_MSG
89    CEGUILUA_LIBRARY_OPTIMIZED
90  )
91
92  # Collect optimized and debug libraries
93  HANDLE_LIBRARY_TYPES(CEGUILUA)
94
95  MARK_AS_ADVANCED(
96    CEGUILUA_LIBRARY_OPTIMIZED
97    CEGUILUA_LIBRARY_DEBUG
98  )
99
100ELSE(CEGUILUA_USE_EXTERNAL_LIBRARY OR _find_result EQUAL -1)
101  SET(CEGUILUA_USE_INTERNAL_LIBRARY TRUE)
102ENDIF(CEGUILUA_USE_EXTERNAL_LIBRARY OR _find_result EQUAL -1)
103
Note: See TracBrowser for help on using the repository browser.