cmake_modules/FindLua.cmake
author koda
Tue, 20 Nov 2012 17:50:17 +0100
changeset 8072 c803d89ae74d
parent 7233 225179f64fd8
child 8075 0ccb218127c3
permissions -rw-r--r--
use lua headers correctly
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2924
908851e59958 Engine:
smxx
parents:
diff changeset
     1
# Find the Lua library
7031
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     2
# --------------------
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     3
# On Android/Windows/OSX this just defines the name of the library that
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     4
#  will be compiled from our bundled sources
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     5
# On Linux it will try to load the system library and fallback to compiling
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     6
#  the bundled one when nothing is found
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 6814
diff changeset
     7
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
     8
set(LUA_FOUND false)
8072
c803d89ae74d use lua headers correctly
koda
parents: 7233
diff changeset
     9
set(LUA_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/misc/liblua)
2924
908851e59958 Engine:
smxx
parents:
diff changeset
    10
6813
48c3462ddce9 ANDROID and WIN32 can both be set to 1, so have ANDROID take preference
Xeli
parents: 6812
diff changeset
    11
if (ANDROID)
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    12
    SET(LUA_DEFAULT "liblua5.1.so")
6813
48c3462ddce9 ANDROID and WIN32 can both be set to 1, so have ANDROID take preference
Xeli
parents: 6812
diff changeset
    13
else (ANDROID)
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    14
    IF(WIN32)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    15
        SET(LUA_DEFAULT lua.dll)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    16
    ELSE(WIN32)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    17
        IF(APPLE)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    18
            SET(LUA_DEFAULT lua)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    19
        ELSE(APPLE)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    20
            #locate the system's lua library
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    21
            FIND_LIBRARY(LUA_DEFAULT NAMES lua51 lua5.1 lua-5.1 lua PATHS /lib /usr/lib /usr/local/lib /usr/pkg/lib)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    22
            IF(${LUA_DEFAULT} MATCHES "LUA_DEFAULT-NOTFOUND")
8072
c803d89ae74d use lua headers correctly
koda
parents: 7233
diff changeset
    23
                set(LUA_DEFAULT lua)
c803d89ae74d use lua headers correctly
koda
parents: 7233
diff changeset
    24
                set(LUA_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/misc/liblua)
7233
225179f64fd8 LUA_FOUND should surely be set only if the system lua was found.
nemo
parents: 7050
diff changeset
    25
            ELSE()
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    26
                set(LUA_FOUND true)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    27
                message(STATUS "LibLua 5.1 found at ${LUA_DEFAULT}")
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    28
                #remove the path (fpc doesn't like it - why?)
8072
c803d89ae74d use lua headers correctly
koda
parents: 7233
diff changeset
    29
                GET_FILENAME_COMPONENT(LUA_INCLUDE_DIR ${LUA_DEFAULT} PATH)
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    30
                GET_FILENAME_COMPONENT(LUA_DEFAULT ${LUA_DEFAULT} NAME)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    31
            ENDIF()
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    32
        ENDIF(APPLE)
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    33
    ENDIF(WIN32)
6813
48c3462ddce9 ANDROID and WIN32 can both be set to 1, so have ANDROID take preference
Xeli
parents: 6812
diff changeset
    34
ENDIF(ANDROID)
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    35
3134
smxx
parents: 3128
diff changeset
    36
SET(LUA_LIBRARY ${LUA_DEFAULT} CACHE STRING "Lua library to link to; file name without path only!")
7050
91199321e916 fix building with lua (i think)
koda
parents: 7031
diff changeset
    37
8072
c803d89ae74d use lua headers correctly
koda
parents: 7233
diff changeset
    38