diff --git a/packages/y/yy-thunks/rules/link.lua b/packages/y/yy-thunks/rules/link.lua index 2d4be0012..a276a612f 100644 --- a/packages/y/yy-thunks/rules/link.lua +++ b/packages/y/yy-thunks/rules/link.lua @@ -4,7 +4,10 @@ rule("xp") local thunks = target:pkg("yy-thunks") if thunks then local installdir = thunks:installdir() - table.insert(target:objectfiles(), path.join(installdir, "lib", objectfile)) + table.insert(target:objectfiles(), 1, path.join(installdir, "lib", objectfile)) + if target:is_shared() then + target:add("shflags", "/entry:DllMainCRTStartupForYY_Thunks", {tools = "link", force = true}) + end end end) @@ -21,7 +24,7 @@ rule("vista") rule("2k") on_config(function (target) if not target:is_arch("x86") then - raise("Win2K only supports x86 architecture") + wprint("Win2K only supports x86 architecture") end local objectfile = "YY_Thunks_for_Win2K.obj" diff --git a/packages/y/yy-thunks/xmake.lua b/packages/y/yy-thunks/xmake.lua index 3111c6989..da515c0e5 100644 --- a/packages/y/yy-thunks/xmake.lua +++ b/packages/y/yy-thunks/xmake.lua @@ -3,15 +3,17 @@ package("yy-thunks") set_description("Fix DecodePointer, EncodePointer,RegDeleteKeyEx etc. APIs not found in Windows XP RTM.") set_license("MIT") + add_urls("https://github.com/Chuyu-Team/YY-Thunks/releases/download/v$(version)/YY-Thunks-$(version)-Objs.zip") add_urls("https://github.com/Chuyu-Team/YY-Thunks/releases/download/v$(version)/YY-Thunks-$(version)-Binary.zip") + + add_versions("1.1.4", "f9850a35d1f2b0cae15e64da516de0ec5e798c060b320e91788aa33b853e85ba") + add_versions("1.1.1", "fe79e309aa42a58794609e06382632a0b768a1193a6bb5aad0bddd4264712aba") add_versions("1.0.9", "216b88757f28075d3d8c0363139e870d49ba84458fc10a0f094f264ebf0a302c") add_versions("1.0.7", "3607a79ac37f141cbcbf00aaea8d82a4c2628d81d8dad9e2a4dce4c8c17a025b") - on_install("windows|x64", "windows|x86", function (package) - import("core.tool.toolchain") - + on_install("windows|x64", "windows|x86", "mingw", "msys", function (package) -- check vs version - local vs = toolchain.load("msvc"):config("vs") + local vs = package:toolchain("msvc"):config("vs") if vs and tonumber(vs) < 2005 then raise("YY-Thunks only supports VS2008 or later versions") end @@ -23,6 +25,7 @@ package("yy-thunks") else raise("Unsupported architecture!") end + os.trycp("YY.Depends.Analyzer.exe", package:installdir("bin")) end) on_test(function (package)