Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Sep 13, 2008, 9:32:44 PM (16 years ago)
Author:
landauf
Message:

Many changes in almost all FindXYZ.cmake files. They now throw errors if something wasn't found.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/trunk/cmake/FindCEGUI.cmake

    r1755 r1776  
    1515#
    1616# Redistribution and use is allowed according to the terms of the BSD license.
     17#
     18# Several changes and additions by Fabian 'x3n' Landau
     19#                 > www.orxonox.net <
    1720
    18 IF (CEGUI_LIBRARIES AND CEGUI_INCLUDE_DIR)
     21IF (CEGUI_LIBRARIES AND CEGUI_INCLUDE_DIR AND CEGUI_LIB_DIR AND CEGUI_SCRIPT_LIBRARIES)
    1922    SET(CEGUI_FIND_QUIETLY TRUE) # Already in cache, be silent
    20 ENDIF (CEGUI_LIBRARIES AND CEGUI_INCLUDE_DIR)
     23ENDIF (CEGUI_LIBRARIES AND CEGUI_INCLUDE_DIR AND CEGUI_LIB_DIR AND CEGUI_SCRIPT_LIBRARIES)
    2124
    2225IF (WIN32) #Windows
    23     MESSAGE(STATUS "Looking for CEGUI")
    24     SET(CEGUI_INCLUDE_DIR ../libs/ogre/Dependencies/include/CEGUI)
    25     SET(CEGUI_LIB_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../libs/ogre/Samples/Common/bin/Release/lib)
     26    FIND_PATH(CEGUI_INCLUDE_DIR CEGUI.h
     27        ../libs/cegui-0.6.1/include
     28    )
     29
    2630    SET(CEGUI_LIBRARIES debug CEGUIBase_d optimized CEGUIBase)
     31    FIND_LIBRARY(CEGUI_LIBDIR NAMES ${CEGUI_LIBRARIES} PATHS
     32        ../libs/cegui-0.6.1/bin
     33    )
     34
     35    # Strip the filename from the path
     36    IF (CEGUI_LIBDIR)
     37        GET_FILENAME_COMPONENT(CEGUI_LIBDIR ${CEGUI_LIBDIR} PATH)
     38        SET (CEGUI_LIB_DIR ${CEGUI_LIBDIR} CACHE FILEPATH "")
     39    ENDIF (CEGUI_LIBDIR)
     40
     41    IF (NOT CEGUI_SCRIPT_LIBDIR)
     42        # Search Lua script module
     43        SET(CEGUI_SCRIPT_LIBRARIES "CEGUILuaScriptModule")
     44        FIND_LIBRARY(CEGUI_SCRIPT_LIBDIR NAMES ${CEGUI_SCRIPT_LIBRARIES} PATHS
     45            ../libs/cegui-0.6.1/bin
     46        )
     47        IF (NOT CEGUI_SCRIPT_LIBDIR)
     48            SET(CEGUI_SCRIPT_LIBRARIES "CEGUILua")
     49            FIND_LIBRARY(CEGUI_SCRIPT_LIBDIR NAMES ${CEGUI_SCRIPT_LIBRARIES} PATHS
     50                ../libs/cegui-0.6.1/bin
     51            )
     52            IF (NOT CEGUI_SCRIPT_LIBDIR)
     53                SET(CEGUI_SCRIPT_LIBRARIES)
     54            ENDIF (NOT CEGUI_SCRIPT_LIBDIR)
     55        ENDIF (NOT CEGUI_SCRIPT_LIBDIR)
     56    ENDIF (NOT CEGUI_SCRIPT_LIBDIR)
     57
     58    # Strip the filename from the path
     59    IF (CEGUI_SCRIPT_LIBDIR)
     60        GET_FILENAME_COMPONENT(CEGUI_SCRIPT_LIBDIR ${CEGUI_SCRIPT_LIBDIR} PATH)
     61        SET (CEGUI_SCRIPT_LIB_DIR ${CEGUI_SCRIPT_LIBDIR} CACHE FILEPATH "")
     62    ENDIF (CEGUI_SCRIPT_LIBDIR)
     63
    2764ELSE (WIN32) #Unix
    2865    FIND_PACKAGE(PkgConfig)
     
    3168    SET(CEGUI_LIB_DIR ${CEGUI_LIBDIR})
    3269    SET(CEGUI_LIBRARIES ${CEGUI_LIBRARIES} CACHE STRING "")
     70    SET(CEGUI_SCRIPT_LIBRARIES "CEGUILuaScriptModule")
     71    SET(CEGUI_SCRIPT_LIB_DIR)
    3372ENDIF (WIN32)
    3473
    35 #Do some preparation
    36 SEPARATE_ARGUMENTS(CEGUI_INCLUDE_DIR)
    37 SEPARATE_ARGUMENTS(CEGUI_LIBRARIES)
     74IF (CEGUI_INCLUDE_DIR AND CEGUI_LIBRARIES AND CEGUI_LIB_DIR AND CEGUI_SCRIPT_LIBRARIES)
     75    SET(CEGUI_FOUND TRUE)
    3876
    39 SET(CEGUI_INCLUDE_DIR ${CEGUI_INCLUDE_DIR} CACHE PATH "")
    40 SET(CEGUI_LIBRARIES ${CEGUI_LIBRARIES} CACHE STRING "")
    41 SET(CEGUI_SCRIPT_LIBRARIES "CEGUILuaScriptModule" CACHE STRING "")
    42 SET(CEGUI_LIB_DIR ${CEGUI_LIB_DIR} CACHE PATH "")
     77    #Do some preparation
     78    SEPARATE_ARGUMENTS(CEGUI_INCLUDE_DIR)
     79    SEPARATE_ARGUMENTS(CEGUI_LIBRARIES)
    4380
    44 IF (CEGUI_INCLUDE_DIR AND CEGUI_LIBRARIES)
    45     SET(CEGUI_FOUND TRUE)
    46 ENDIF (CEGUI_INCLUDE_DIR AND CEGUI_LIBRARIES)
     81    SET(CEGUI_INCLUDE_DIR ${CEGUI_INCLUDE_DIR} CACHE PATH "")
     82    SET(CEGUI_LIBRARIES ${CEGUI_LIBRARIES} CACHE STRING "")
     83    SET(CEGUI_LIB_DIR ${CEGUI_LIB_DIR} CACHE PATH "")
     84    SET(CEGUI_SCRIPT_LIBRARIES ${CEGUI_SCRIPT_LIBRARIES} CACHE PATH "")
     85ENDIF (CEGUI_INCLUDE_DIR AND CEGUI_LIBRARIES AND CEGUI_LIB_DIR AND CEGUI_SCRIPT_LIBRARIES)
    4786
    4887IF (CEGUI_FOUND)
    4988    IF (NOT CEGUI_FIND_QUIETLY)
    50         MESSAGE(STATUS "  libraries : ${CEGUI_LIBRARIES} from ${CEGUI_LIB_DIR}")
    51         MESSAGE(STATUS "  includes  : ${CEGUI_INCLUDE_DIR}")
     89        MESSAGE(STATUS "CEGUI was found.")
     90        IF (VERBOSE_FIND)
     91            MESSAGE (STATUS "  include path: ${CEGUI_INCLUDE_DIR}")
     92            MESSAGE (STATUS "  library path: ${CEGUI_LIB_DIR}")
     93            MESSAGE (STATUS "  libraries:    ${CEGUI_LIBRARIES}")
     94            MESSAGE (STATUS "           :    ${CEGUI_SCRIPT_LIBRARIES}")
     95        ENDIF (VERBOSE_FIND)
    5296    ENDIF (NOT CEGUI_FIND_QUIETLY)
    5397ELSE (CEGUI_FOUND)
    54     IF (CEGUI_FIND_REQUIRED)
    55         MESSAGE(FATAL_ERROR "Could not find CEGUI")
    56     ENDIF (CEGUI_FIND_REQUIRED)
     98    IF (NOT CEGUI_INCLUDE_DIR)
     99        MESSAGE(SEND_ERROR "CEGUI include path was not found.")
     100    ENDIF (NOT CEGUI_INCLUDE_DIR)
     101    IF (NOT CEGUI_LIB_DIR)
     102        MESSAGE(SEND_ERROR "CEGUI library was not found.")
     103    ENDIF (NOT CEGUI_LIB_DIR)
     104    IF (NOT CEGUI_LIBRARIES)
     105        MESSAGE(SEND_ERROR "CEGUI libraries not known.")
     106    ENDIF (NOT CEGUI_LIBRARIES)
     107    IF (NOT CEGUI_SCRIPT_LIBRARIES)
     108        MESSAGE(SEND_ERROR "CEGUI Lua script module was not found.")
     109    ENDIF (NOT CEGUI_SCRIPT_LIBRARIES)
    57110ENDIF (CEGUI_FOUND)
     111
Note: See TracChangeset for help on using the changeset viewer.