Prevent extern "C" propagation

`extern "C"` is C++ specific and if we enable it our consumers are likely not C++
This commit is contained in:
Jan200101 2023-05-19 20:00:04 +02:00
parent da0458bf6e
commit f32126bfc0
No known key found for this signature in database
GPG key ID: 5B71B1D78B882E05

View file

@ -137,14 +137,14 @@ if(LUAU_EXTERN_C)
# enable extern "C" for VM (lua.h, lualib.h) and Compiler (luacode.h) to make Luau friendlier to use from non-C++ languages # enable extern "C" for VM (lua.h, lualib.h) and Compiler (luacode.h) to make Luau friendlier to use from non-C++ languages
# note that we enable LUA_USE_LONGJMP=1 as well; otherwise functions like luaL_error will throw C++ exceptions, which can't be done from extern "C" functions # note that we enable LUA_USE_LONGJMP=1 as well; otherwise functions like luaL_error will throw C++ exceptions, which can't be done from extern "C" functions
target_compile_definitions(Luau.VM PUBLIC LUA_USE_LONGJMP=1) target_compile_definitions(Luau.VM PUBLIC LUA_USE_LONGJMP=1)
target_compile_definitions(Luau.VM PUBLIC LUA_API=extern\"C\") target_compile_definitions(Luau.VM PRIVATE LUA_API=extern\"C\")
target_compile_definitions(Luau.Compiler PUBLIC LUACODE_API=extern\"C\") target_compile_definitions(Luau.Compiler PRIVATE LUACODE_API=extern\"C\")
endif() endif()
if(LUAU_NATIVE) if(LUAU_NATIVE)
target_compile_definitions(Luau.VM PUBLIC LUA_CUSTOM_EXECUTION=1) target_compile_definitions(Luau.VM PUBLIC LUA_CUSTOM_EXECUTION=1)
if(LUAU_EXTERN_C) if(LUAU_EXTERN_C)
target_compile_definitions(Luau.CodeGen PUBLIC LUACODEGEN_API=extern\"C\") target_compile_definitions(Luau.CodeGen PRIVATE LUACODEGEN_API=extern\"C\")
endif() endif()
endif() endif()