FindLua51¶
Note
This module is specifically for Lua version branch 5.1, which is obsolete and
not maintained anymore. In new code use the latest supported Lua version and
the version-agnostic module FindLua
instead.
Finds the Lua library. Lua is a embeddable scripting language.
When working with Lua, its library headers are intended to be included in project source code as:
#include <lua.h>
and not:
#include <lua/lua.h>
This is because, the location of Lua headers may differ across platforms and may
exist in locations other than lua/
.
Result Variables¶
This module defines the following variables:
Lua51_FOUND
Boolean indicating whether Lua is found. For backward compatibility, the
LUA51_FOUND
variable is also set to the same value.LUA_VERSION_STRING
The version of Lua found.
Cache Variables¶
The following cache variables may also be set:
LUA_INCLUDE_DIR
The directory containing the Lua header files, such as
lua.h
,lualib.h
, andlauxlib.h
, needed to use Lua.LUA_LIBRARIES
Libraries needed to link against to use Lua.
Examples¶
Finding the Lua 5.1 library and creating an interface imported target that encapsulates its usage requirements for linking to a project target:
find_package(Lua51)
if(Lua51_FOUND AND NOT TARGET Lua51::Lua51)
add_library(Lua51::Lua51 INTERFACE IMPORTED)
set_target_properties(
Lua51::Lua51
PROPERTIES
INTERFACE_INCLUDE_DIRECTORIES "${LUA_INCLUDE_DIR}"
INTERFACE_LINK_LIBRARIES "${LUA_LIBRARIES}"
)
endif()
target_link_libraries(project_target PRIVATE Lua51::Lua51)
See Also¶
The
FindLua
module to find Lua in version-agnostic way.