add_library(pm3rrg_rdv4_lua STATIC liblua/lapi.c liblua/lcode.c liblua/lctype.c liblua/ldebug.c liblua/ldo.c liblua/ldump.c liblua/lfunc.c liblua/lgc.c liblua/llex.c liblua/lmem.c liblua/lobject.c liblua/lopcodes.c liblua/lparser.c liblua/lstate.c liblua/lstring.c liblua/ltable.c liblua/ltm.c liblua/lundump.c liblua/lvm.c liblua/lzio.c liblua/lauxlib.c liblua/lbaselib.c liblua/lbitlib.c liblua/lcorolib.c liblua/ldblib.c liblua/liolib.c liblua/lmathlib.c liblua/loslib.c liblua/lstrlib.c liblua/ltablib.c liblua/loadlib.c liblua/linit.c ) target_compile_definitions(pm3rrg_rdv4_lua PRIVATE LUA_COMPAT_ALL) if (NOT MINGW) if (APPLE) target_compile_definitions(pm3rrg_rdv4_lua PRIVATE LUA_USE_MACOSX) elseif (ANDROID) # Required: add_definitions(-D"getlocaledecpoint\(\)='.'") # Same as for LUA_USE_LINUX except LUA_USE_POSIX and client-specific LUA_USE_READLINE target_compile_definitions(pm3rrg_rdv4_lua PRIVATE LUA_USE_DLOPEN LUA_USE_STRTODHEX LUA_USE_AFORMAT LUA_USE_LONGLONG) # Same as for LUA_USE_POSIX except client-specific LUA_USE_ISATTY. LUA_USE_MKSTEMP is needed. target_compile_definitions(pm3rrg_rdv4_lua PRIVATE LUA_USE_MKSTEMP LUA_USE_POPEN LUA_USE_ULONGJMP LUA_USE_GMTIME_R) else (APPLE) target_compile_definitions(pm3rrg_rdv4_lua PRIVATE LUA_USE_LINUX) target_link_libraries(pm3rrg_rdv4_lua INTERFACE dl) endif (APPLE) endif (NOT MINGW) target_include_directories(pm3rrg_rdv4_lua INTERFACE liblua) target_compile_options(pm3rrg_rdv4_lua PRIVATE -Wall -Werror -O3) set_property(TARGET pm3rrg_rdv4_lua PROPERTY POSITION_INDEPENDENT_CODE ON)