Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Nov 12, 2008, 4:08:51 PM (16 years ago)
Author:
adrfried
Message:

FindOGRE cleaned up

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/buildsystem/cmake/FindOGRE.cmake

    r1872 r2198  
    33# This module defines
    44#  OGRE_INCLUDE_DIR
    5 #  OGRE_LIBRARIES, the libraries to link against to use OGRE.
    6 #  OGRE_LIB_DIR, the location of the libraries
     5#  OGRE_LIBRARY, the library to link against to use OGRE.
    76#  OGRE_FOUND, If false, do not try to use OGRE
    87#
     
    1312#
    1413# Several changes and additions by Fabian 'x3n' Landau
     14# Lots of simplifications by Adrian Friedli
    1515#                 > www.orxonox.net <
    1616
    17 IF (OGRE_LIBRARIES AND OGRE_INCLUDE_DIR AND OGRE_LIB_DIR)
    18     SET (OGRE_FIND_QUIETLY TRUE) # Already in cache, be silent
    19 ENDIF (OGRE_LIBRARIES AND OGRE_INCLUDE_DIR AND OGRE_LIB_DIR)
     17FIND_PATH(OGRE_INCLUDE_DIR Ogre.h
     18    PATHS
     19    $ENV{OGREDIR}
     20    /usr/local
     21    /usr
     22    PATH_SUFFIXES include include/OGRE
     23)
    2024
    21 IF (WIN32) #Windows
    22     FIND_PATH(OGRE_INCLUDE_DIR Ogre.h
    23         ../libs/ogre/OgreMain/include
    24         ${DEPENDENCY_DIR}/ogre-1.4.9/include
    25     )
     25#SET(OGRE_LIBRARIES debug OgreMain_d optimized OgreMain)
     26FIND_LIBRARY(OGRE_LIBRARY
     27    NAMES OgreMain
     28    PATHS
     29    $ENV{OGREDIR}
     30    /usr/local
     31    /usr
     32    PATH_SUFFIXES lib
     33)
    2634
    27     SET(OGRE_LIBRARIES debug OgreMain_d optimized OgreMain)
    28     FIND_LIBRARY(OGRE_LIBDIR NAMES ${OGRE_LIBRARIES} PATHS
    29         ../libs/ogre/Samples/Common/bin/Release
    30         ${DEPENDENCY_DIR}/ogre-1.4.9/lib
    31     )
     35INCLUDE(FindPackageHandleStandardArgs)
     36FIND_PACKAGE_HANDLE_STANDARD_ARGS(OGRE DEFAULT_MSG
     37    OGRE_LIBRARY
     38    OGRE_INCLUDE_DIR
     39)
    3240
    33     # Strip the filename from the path
    34     IF (OGRE_LIBDIR)
    35         GET_FILENAME_COMPONENT(OGRE_LIBDIR ${OGRE_LIBDIR} PATH)
    36         SET (OGRE_LIB_DIR ${OGRE_LIBDIR} CACHE FILEPATH "")
    37     ENDIF (OGRE_LIBDIR)
    38 ELSE (WIN32) #Unix
    39     FIND_PACKAGE(PkgConfig)
    40     PKG_SEARCH_MODULE(OGRE OGRE /usr/pack/ogre-1.4.5-sd/i686-debian-linux3.1/lib/pkgconfig/OGRE.pc) # tardis specific hack
    41     SET(OGRE_INCLUDE_DIR ${OGRE_INCLUDE_DIRS})
    42     SET(OGRE_LIB_DIR ${OGRE_LIBDIR})
    43     SET(OGRE_LIBRARIES ${OGRE_LIBRARIES})
    44 ENDIF (WIN32)
    45 
    46 #Do some preparation
    47 SEPARATE_ARGUMENTS(OGRE_INCLUDE_DIR)
    48 SEPARATE_ARGUMENTS(OGRE_LIBRARIES)
    49 
    50 SET (OGRE_INCLUDE_DIR ${OGRE_INCLUDE_DIR} CACHE PATH "")
    51 SET (OGRE_LIBRARIES ${OGRE_LIBRARIES} CACHE STRING "")
    52 SET (OGRE_LIB_DIR ${OGRE_LIB_DIR} CACHE PATH "")
    53 
    54 IF (OGRE_INCLUDE_DIR AND OGRE_LIBRARIES AND OGRE_LIB_DIR)
    55     SET(OGRE_FOUND TRUE)
    56 ENDIF (OGRE_INCLUDE_DIR AND OGRE_LIBRARIES AND OGRE_LIB_DIR)
    57 
    58 IF (OGRE_FOUND)
    59     IF (NOT OGRE_FIND_QUIETLY)
    60         MESSAGE(STATUS "Ogre was found.")
    61         IF (VERBOSE_FIND)
    62             MESSAGE (STATUS "  include path: ${OGRE_INCLUDE_DIR}")
    63             MESSAGE (STATUS "  library path: ${OGRE_LIB_DIR}")
    64             MESSAGE (STATUS "  libraries:    ${OGRE_LIBRARIES}")
    65         ENDIF (VERBOSE_FIND)
    66     ENDIF (NOT OGRE_FIND_QUIETLY)
    67 ELSE (OGRE_FOUND)
    68     IF (NOT OGRE_INCLUDE_DIR)
    69         MESSAGE(SEND_ERROR "Ogre include path was not found.")
    70     ENDIF (NOT OGRE_INCLUDE_DIR)
    71     IF (NOT OGRE_LIB_DIR)
    72         MESSAGE(SEND_ERROR "Ogre library was not found.")
    73     ENDIF (NOT OGRE_LIB_DIR)
    74     IF (NOT OGRE_LIBRARIES)
    75         MESSAGE(SEND_ERROR "Ogre libraries not known.")
    76     ENDIF (NOT OGRE_LIBRARIES)
    77 ENDIF (OGRE_FOUND)
     41MARK_AS_ADVANCED(
     42    OGRE_LIBRARY
     43    OGRE_INCLUDE_DIR
     44)
Note: See TracChangeset for help on using the changeset viewer.