cmake_modules/FindLua.cmake
author nemo
Sun, 03 Jun 2012 23:04:21 -0400
changeset 7174 80480d21e6ed
parent 7050 91199321e916
child 7233 225179f64fd8
permissions -rw-r--r--
Workaround for bug #144. This workaround had occurred to me a while ago, but wasn't sure if placing them unfairly was better than not placing them at all. Argument for not placing at all is people should probably abort the game when they notice it. Argument for placing unfairly is people can still abort, and if we really wanted them to abort, we should probably just have halted launch if all hogs failed to spawn. This way at least play can continue.

# Find the Lua library
# --------------------
# On Android/Windows/OSX this just defines the name of the library that
#  will be compiled from our bundled sources
# On Linux it will try to load the system library and fallback to compiling
#  the bundled one when nothing is found

set(LUA_FOUND false)

if (ANDROID)
    SET(LUA_DEFAULT "liblua5.1.so")
else (ANDROID)
    IF(WIN32)
        SET(LUA_DEFAULT lua.dll)
    ELSE(WIN32)
        IF(APPLE)
            SET(LUA_DEFAULT lua)
        ELSE(APPLE)
            #locate the system's lua library
            FIND_LIBRARY(LUA_DEFAULT NAMES lua51 lua5.1 lua-5.1 lua PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib)
            IF(${LUA_DEFAULT} MATCHES "LUA_DEFAULT-NOTFOUND")
	        set(LUA_DEFAULT lua)
                set(LUA_FOUND true)
            ELSE()
                message(STATUS "LibLua 5.1 found at ${LUA_DEFAULT}")
                #remove the path (fpc doesn't like it - why?)
                GET_FILENAME_COMPONENT(LUA_DEFAULT ${LUA_DEFAULT} NAME)
            ENDIF()
        ENDIF(APPLE)
    ENDIF(WIN32)
ENDIF(ANDROID)

SET(LUA_LIBRARY ${LUA_DEFAULT} CACHE STRING "Lua library to link to; file name without path only!")