| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- add_library(rmlui_lua
- Colourb.cpp
- Colourb.h
- Colourf.cpp
- Colourf.h
- Context.cpp
- Context.h
- ContextDocumentsProxy.cpp
- ContextDocumentsProxy.h
- Document.cpp
- Document.h
- Element.cpp
- Element.h
- ElementAttributesProxy.cpp
- ElementAttributesProxy.h
- ElementChildNodesProxy.cpp
- ElementChildNodesProxy.h
- ElementInstancer.cpp
- ElementInstancer.h
- ElementStyleProxy.cpp
- ElementStyleProxy.h
- ElementText.cpp
- ElementText.h
- Event.cpp
- Event.h
- EventParametersProxy.cpp
- EventParametersProxy.h
- GlobalLuaFunctions.cpp
- GlobalLuaFunctions.h
- Interpreter.cpp
- Log.cpp
- Log.h
- Lua.cpp
- LuaDataModel.cpp
- LuaDataModel.h
- LuaDocument.cpp
- LuaDocument.h
- LuaDocumentElementInstancer.cpp
- LuaDocumentElementInstancer.h
- LuaElementInstancer.cpp
- LuaElementInstancer.h
- LuaEventListener.cpp
- LuaEventListener.h
- LuaEventListenerInstancer.cpp
- LuaEventListenerInstancer.h
- LuaPlugin.cpp
- LuaPlugin.h
- LuaType.cpp
- Pairs.h
- RmlUi.cpp
- RmlUi.h
- RmlUiContextsProxy.cpp
- RmlUiContextsProxy.h
- Utilities.cpp
- Vector2f.cpp
- Vector2f.h
- Vector2i.cpp
- Vector2i.h
- )
- target_sources(rmlui_lua PRIVATE
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Header.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/IncludeLua.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Interpreter.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Lua.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/LuaType.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/LuaType.inl"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua/Utilities.h"
- "${PROJECT_SOURCE_DIR}/Include/RmlUi/Lua.h"
- )
- set_common_target_options(rmlui_lua)
- target_include_directories(rmlui_lua PRIVATE "${PROJECT_SOURCE_DIR}/Include")
- target_include_directories(rmlui_lua INTERFACE
- "$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/Include>"
- "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
- )
- add_library(RmlUi::Lua ALIAS rmlui_lua)
- target_link_libraries(rmlui_lua PUBLIC rmlui_core)
- # Use public linking, as some of our public headers require Lua. However, in principle the Lua bindings can be used
- # without the Lua header files, in particular `RmlUi/Lua/Lua.h` does not require Lua.
- target_link_libraries(rmlui_lua PUBLIC RmlUi::External::Lua)
- # Set up the necessary compile definition if Lua is compiled as C++.
- if(RMLUI_LUA_BINDINGS_LIBRARY STREQUAL "lua_as_cxx")
- target_compile_definitions(rmlui_lua PUBLIC "RMLUI_LUA_AS_CXX")
- endif()
- # Set up definitions to export functions and classes as appropriate
- get_target_property(rmlui_lua_TYPE rmlui_lua "TYPE")
- if(rmlui_lua_TYPE STREQUAL "SHARED_LIBRARY")
- # If RmlUi lua is being compiled as a shared library, notify code to export functions using __dllspec()
- # For applications consuming the library, the headers will automatically use dllimport
- # Platform and compiler handling is already done by code via pre-processor macros
- target_compile_definitions(rmlui_lua PRIVATE "RMLUI_LUA_EXPORTS")
- endif()
- # Set additional target properties
- set_target_properties(rmlui_lua PROPERTIES
- # Add export name so that it can be exported with a namespaced name instead
- # of using the name we actually used to declare the target
- EXPORT_NAME "Lua"
- )
- add_subdirectory("Elements")
- install(TARGETS rmlui_lua
- EXPORT RmlUiTargets
- ${RMLUI_RUNTIME_DEPENDENCY_SET_ARG}
- RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- )
- install_target_pdb(rmlui_lua)
|