From 2a1a515748e5f70bc67129d0956906436577c69b Mon Sep 17 00:00:00 2001 From: actboy168 Date: Thu, 11 Apr 2024 14:10:22 +0800 Subject: [PATCH] fixes bug --- 3rd/lua/utf8_crt.h | 8 ++++++++ 3rd/lua/utf8_lua.c | 3 ++- 3rd/lua/utf8_luac.c | 3 ++- 3rd/lua/utf8_prefix.h | 9 +-------- bootstrap/main.cpp | 2 -- compile/lua.lua | 2 ++ 6 files changed, 15 insertions(+), 12 deletions(-) diff --git a/3rd/lua/utf8_crt.h b/3rd/lua/utf8_crt.h index c0cae9e7..aba41eae 100644 --- a/3rd/lua/utf8_crt.h +++ b/3rd/lua/utf8_crt.h @@ -3,6 +3,10 @@ #if defined(_WIN32) +#if defined(__cplusplus) +extern "C" { +#endif + # include # include @@ -34,4 +38,8 @@ void utf8_free_args(int argc, char** argv); #endif +#if defined(__cplusplus) +} +#endif + #endif diff --git a/3rd/lua/utf8_lua.c b/3rd/lua/utf8_lua.c index b83babb7..a2023c7b 100644 --- a/3rd/lua/utf8_lua.c +++ b/3rd/lua/utf8_lua.c @@ -7,9 +7,10 @@ # define main(a, b) utf8_main(a, b) # include "lua.c" # undef main - # include +# include "utf8_crt.h" + static void enable_vtmode(HANDLE h) { if (h == INVALID_HANDLE_VALUE) { return; diff --git a/3rd/lua/utf8_luac.c b/3rd/lua/utf8_luac.c index 741122ac..c01a6ce7 100644 --- a/3rd/lua/utf8_luac.c +++ b/3rd/lua/utf8_luac.c @@ -7,9 +7,10 @@ # define main(a, b) utf8_main(a, b) # include "luac.c" # undef main - # include +# include "utf8_crt.h" + int wmain(int argc, wchar_t **wargv) { char **argv = utf8_create_args(argc, wargv); if (!argv) { diff --git a/3rd/lua/utf8_prefix.h b/3rd/lua/utf8_prefix.h index 051a8ee5..e4573bb7 100644 --- a/3rd/lua/utf8_prefix.h +++ b/3rd/lua/utf8_prefix.h @@ -1,16 +1,9 @@ #ifndef _LUAUTF8_PREFIX_H_ #define _LUAUTF8_PREFIX_H_ -#if defined(__cplusplus) -extern "C" { -#endif #include "utf8_crt.h" -#if defined(__cplusplus) -} -#endif -#if defined(lua_c) || defined(luac_c) -#else +#if !defined(lua_c) && !defined(luac_c) # if defined fopen # undef fopen # endif diff --git a/bootstrap/main.cpp b/bootstrap/main.cpp index ef6a619f..36213fb7 100644 --- a/bootstrap/main.cpp +++ b/bootstrap/main.cpp @@ -4,9 +4,7 @@ #if defined(_WIN32) # include -extern "C" { # include <3rd/lua/utf8_crt.h> -} #endif #include diff --git a/compile/lua.lua b/compile/lua.lua index 94b35f04..2f1bb3c7 100644 --- a/compile/lua.lua +++ b/compile/lua.lua @@ -32,12 +32,14 @@ if lm.os == "windows" then } lm:executable "lua" { deps = "lua54", + includes = ".", sources = { "3rd/lua/utf8_lua.c", "3rd/lua/utf8_crt.c", } } lm:executable "luac" { + includes = ".", sources = { "3rd/lua/onelua.c", "3rd/lua/utf8_crt.c",