LunaHook-mirror/build.py

58 lines
2.1 KiB
Python
Raw Normal View History

2024-04-26 16:45:45 +08:00
import os, sys
2024-04-26 11:13:32 +08:00
import subprocess
rootDir = os.path.dirname(__file__)
2024-04-26 19:20:31 +08:00
vcltlFile = "https://github.com/Chuyu-Team/VC-LTL5/releases/download/v5.0.9/VC-LTL-5.0.9-Binary.7z"
vcltlFileName = "VC-LTL-5.0.9-Binary.7z"
2024-04-26 19:06:02 +08:00
2024-04-26 19:20:31 +08:00
def installVCLTL():
os.chdir(rootDir)
if os.path.exists("temp"):
return # already installed
os.makedirs(rootDir + "\\temp", exist_ok=True)
subprocess.run(f"curl -Lo temp\\{vcltlFileName} {vcltlFile}")
subprocess.run(f"7z x temp\\{vcltlFileName} -otemp\\VC-LTL5")
subprocess.run("cmd /c temp\\VC-LTL5\\Install.cmd")
2024-04-26 19:06:02 +08:00
2024-06-22 23:00:29 +08:00
def build_langx(lang):
os.system(rf'''
cmake -DBUILD_PLUGIN=OFF -DLANGUAGE={lang} ../CMakeLists.txt -G "Visual Studio 17 2022" -A win32 -T host=x86 -B ../build/x86_{lang}
cmake --build ../build/x86_{lang} --config Release --target ALL_BUILD -j 14
2024-04-26 19:06:02 +08:00
2024-06-22 23:00:29 +08:00
cmake -DBUILD_PLUGIN=OFF -DLANGUAGE={lang} ../CMakeLists.txt -G "Visual Studio 17 2022" -A x64 -T host=x64 -B ../build/x64_{lang}
cmake --build ../build/x64_{lang} --config Release --target ALL_BUILD -j 14
''')
def build_langx_xp(lang):
os.system(rf'''
cmake -DBUILD_PLUGIN=OFF -DWINXP=1 -DLANGUAGE={lang} ../CMakeLists.txt -G "Visual Studio 16 2019" -A win32 -T v141_xp -B ../build/x86_{lang}_xp
cmake --build ../build/x86_{lang}_xp --config Release --target ALL_BUILD -j 14
call dobuildxp.bat
''')
2024-04-26 19:20:31 +08:00
if sys.argv[1]=='pack':
2024-04-26 19:06:02 +08:00
os.chdir(os.path.join(rootDir, "scripts"))
os.system(f"python pack.py pack")
2024-04-26 19:20:31 +08:00
else:
installVCLTL()
2024-04-26 19:06:02 +08:00
os.chdir(os.path.join(rootDir, "scripts"))
2024-04-26 19:20:31 +08:00
if sys.argv[1]=='plg32':
os.system(f"cmd /c buildplugin32.bat")
elif sys.argv[1]=='plg64':
os.system(f"cmd /c buildplugin64.bat")
2024-06-22 23:00:29 +08:00
elif sys.argv[1]=='Release_English':
build_langx('English')
elif sys.argv[1]=='Release_Chinese':
build_langx('Chinese')
elif sys.argv[1]=='Release_Russian':
build_langx('Russian')
2024-04-26 19:34:44 +08:00
elif sys.argv[1]=='Release_English_winxp':
2024-06-22 23:00:29 +08:00
build_langx_xp('English')
2024-04-26 19:34:44 +08:00
elif sys.argv[1]=='Release_Chinese_winxp':
2024-06-22 23:00:29 +08:00
build_langx_xp('Chinese')
elif sys.argv[1]=='Release_Russian_winxp':
build_langx_xp('Russian')