From 58b5941bbed60eaa71f82e1fb4b3ae925676b99a Mon Sep 17 00:00:00 2001 From: Nuno Date: Wed, 6 Jan 2021 19:32:42 +0100 Subject: [PATCH] Flag to use preset folders --- nel/tools/build_gamedata/0_setup.py | 191 ++++++++++++++++------------ 1 file changed, 112 insertions(+), 79 deletions(-) diff --git a/nel/tools/build_gamedata/0_setup.py b/nel/tools/build_gamedata/0_setup.py index de868d8eb..cd1a4dace 100755 --- a/nel/tools/build_gamedata/0_setup.py +++ b/nel/tools/build_gamedata/0_setup.py @@ -30,6 +30,7 @@ sys.path.append("configuration") parser = argparse.ArgumentParser(description='Ryzom Core - Build Gamedata - Setup') parser.add_argument('--noconf', '-nc', action='store_true') parser.add_argument('--noverify', '-nv', action='store_true') +parser.add_argument('--preset', '-p', action='store_true') # parser.add_argument('--haltonerror', '-eh', action='store_true') parser.add_argument('--includeproject', '-ipj', nargs='+') parser.add_argument('--excludeproject', '-epj', nargs='+') @@ -64,127 +65,158 @@ if not args.noconf: except NameError: BuildQuality = 1 try: - ToolDirectories + if not args.preset: + ToolDirectories except NameError: - ToolDirectories = [ 'R:/build/dev/bin/Release', 'R:/external/bin' ] + ToolDirectories = [ 'R:/distribution/nel_tools_win_x64-distribution', 'R:/distribution/ryzom_tools_win_x64-distribution' ] try: ToolSuffix except NameError: ToolSuffix = ".exe" try: - ScriptDirectory + if not args.preset: + ScriptDirectory except NameError: ScriptDirectory = "R:/code/nel/tools/build_gamedata" try: - WorkspaceDirectory + if not args.preset: + WorkspaceDirectory except NameError: WorkspaceDirectory = "R:/leveldesign/workspace" try: - DatabaseDirectory + if not args.preset: + DatabaseDirectory except NameError: DatabaseDirectory = "R:/graphics" try: - SoundDirectory + if not args.preset: + SoundDirectory except NameError: SoundDirectory = "R:/sound" try: - SoundDfnDirectory + if not args.preset: + SoundDfnDirectory except NameError: SoundDfnDirectory = "R:/sound/DFN" try: - ExportBuildDirectory + if not args.preset: + ExportBuildDirectory except NameError: ExportBuildDirectory = "R:/pipeline/export" try: - InstallDirectory + if not args.preset: + InstallDirectory except NameError: InstallDirectory = "R:/pipeline/install" try: - ClientDevDirectory + if not args.preset: + ClientDevDirectory except NameError: ClientDevDirectory = "R:/pipeline/client_dev" try: - ClientPatchDirectory + if not args.preset: + ClientPatchDirectory except NameError: ClientPatchDirectory = "R:/pipeline/client_patch" try: - ClientInstallDirectory + if not args.preset: + ClientInstallDirectory except NameError: ClientInstallDirectory = "R:/pipeline/client_install" try: - ShardInstallDirectory + if not args.preset: + ShardInstallDirectory except NameError: ShardInstallDirectory = "R:/pipeline/shard" try: - WorldEditInstallDirectory + if not args.preset: + WorldEditInstallDirectory except NameError: WorldEditInstallDirectory = "R:/pipeline/worldedit" try: - LeveldesignDirectory + if not args.preset: + WorldEditorFilesDirectory + except NameError: + WorldEditorFilesDirectory = "R:/code/ryzom/common/data_leveldesign/leveldesign/world_editor_files" + try: + if not args.preset: + LeveldesignDirectory except NameError: LeveldesignDirectory = "R:/leveldesign" try: - LeveldesignDfnDirectory + if not args.preset: + LeveldesignDfnDirectory except NameError: LeveldesignDfnDirectory = "R:/leveldesign/DFN" try: - LeveldesignWorldDirectory + if not args.preset: + LeveldesignWorldDirectory except NameError: LeveldesignWorldDirectory = "R:/leveldesign/world" try: - PrimitivesDirectory + if not args.preset: + PrimitivesDirectory except NameError: PrimitivesDirectory = "R:/leveldesign/primitives" try: - GamedevDirectory + if not args.preset: + LeveldesignDataCommonDirectory except NameError: - GamedevDirectory = "R:/code/ryzom/client/data/gamedev" - try: - DataShardDirectory - except NameError: - DataShardDirectory = "R:/code/ryzom/server/data_shard" + LeveldesignDataCommonDirectory = "R:/leveldesign/common" try: - DataCommonDirectory + if not args.preset: + LeveldesignDataShardDirectory except NameError: - DataCommonDirectory = "R:/code/ryzom/common/data_common" + LeveldesignDataShardDirectory = "R:/leveldesign/shard" try: - LeveldesignDataShardDirectory + if not args.preset: + TranslationDirectory except NameError: - LeveldesignDataShardDirectory = "R:/leveldesign/shard" + TranslationDirectory = "R:/leveldesign/translation" try: - LeveldesignDataCommonDirectory + if not args.preset: + GamedevDirectory except NameError: - LeveldesignDataCommonDirectory = "R:/leveldesign/common" + GamedevDirectory = "R:/code/ryzom/client/data/gamedev" try: - TranslationDirectory + if not args.preset: + DataCommonDirectory except NameError: - TranslationDirectory = "R:/leveldesign/translation" + DataCommonDirectory = "R:/code/ryzom/common/data_common" try: - WorldEditorFilesDirectory + if not args.preset: + DataShardDirectory except NameError: - WorldEditorFilesDirectory = "R:/code/ryzom/common/data_leveldesign/leveldesign/world_editor_files" + DataShardDirectory = "R:/code/ryzom/server/data_shard" try: - WindowsExeDllCfgDirectories + if not args.preset: + WindowsExeDllCfgDirectories except NameError: - WindowsExeDllCfgDirectories = [ 'C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/redist/x86', 'R:/external/bin', 'R:/build/dev/bin/Release', 'R:/code/ryzom/client', 'R:/code/nel/lib', 'R:/code/ryzom/bin', 'R:/code/ryzom/tools/client/client_config/bin' ] + # TODO: Separate 64bit and 32bit + WindowsExeDllCfgDirectories = [ '', 'R:/build/fv_x64/bin/Release', 'R:/distribution/external_x64', 'R:/code/ryzom/client', '', '', '' ] try: - LinuxServiceExecutableDirectory + if not args.preset: + LinuxServiceExecutableDirectory except NameError: LinuxServiceExecutableDirectory = "R:/build/gcc_server/bin" try: - LinuxClientExecutableDirectory + if not args.preset: + LinuxClientExecutableDirectory except NameError: LinuxClientExecutableDirectory = "R:/build/gcc_client/bin" try: - PatchmanCfgAdminDirectory + if not args.preset: + PatchmanCfgAdminDirectory except NameError: PatchmanCfgAdminDirectory = "R:/patchman/admin_install" try: - PatchmanCfgDefaultDirectory + if not args.preset: + PatchmanCfgDefaultDirectory except NameError: PatchmanCfgDefaultDirectory = "R:/patchman/default" try: - PatchmanBridgeServerDirectory + if not args.preset: + PatchmanBridgeServerDirectory except NameError: PatchmanBridgeServerDirectory = "R:/pipeline/bridge_server" try: @@ -232,44 +264,45 @@ if not args.noconf: printLog(log, "Use -- if you need to insert an empty value.") printLog(log, "") BuildQuality = int(askVar(log, "Build Quality", str(BuildQuality))) - ToolDirectories[0] = askVar(log, "[IN] Primary Tool Directory", ToolDirectories[0]).replace("\\", "/") - ToolDirectories[1] = askVar(log, "[IN] Secondary Tool Directory", ToolDirectories[1]).replace("\\", "/") - ToolSuffix = askVar(log, "Tool Suffix", ToolSuffix) - ScriptDirectory = askVar(log, "[IN] Script Directory", os.getcwd().replace("\\", "/")).replace("\\", "/") - WorkspaceDirectory = askVar(log, "[IN] Workspace Directory", WorkspaceDirectory).replace("\\", "/") - DatabaseDirectory = askVar(log, "[IN] Database Directory", DatabaseDirectory).replace("\\", "/") - SoundDirectory = askVar(log, "[IN] Sound Directory", SoundDirectory).replace("\\", "/") - SoundDfnDirectory = askVar(log, "[IN] Sound DFN Directory", SoundDfnDirectory).replace("\\", "/") - ExportBuildDirectory = askVar(log, "[OUT] Export Build Directory", ExportBuildDirectory).replace("\\", "/") - InstallDirectory = askVar(log, "[OUT] Install Directory", InstallDirectory).replace("\\", "/") - ClientDevDirectory = askVar(log, "[OUT] Client Dev Directory", ClientDevDirectory).replace("\\", "/") - ClientPatchDirectory = askVar(log, "[OUT] Client Patch Directory", ClientPatchDirectory).replace("\\", "/") - ClientInstallDirectory = askVar(log, "[OUT] Client Install Directory", ClientInstallDirectory).replace("\\", "/") - ShardInstallDirectory = askVar(log, "[OUT] Shard Data Install Directory", ShardInstallDirectory).replace("\\", "/") - WorldEditInstallDirectory = askVar(log, "[OUT] World Edit Data Install Directory", WorldEditInstallDirectory).replace("\\", "/") - LeveldesignDirectory = askVar(log, "[IN] Leveldesign Directory", LeveldesignDirectory).replace("\\", "/") - LeveldesignDfnDirectory = askVar(log, "[IN] Leveldesign DFN Directory", LeveldesignDfnDirectory).replace("\\", "/") - LeveldesignWorldDirectory = askVar(log, "[IN] Leveldesign World Directory", LeveldesignWorldDirectory).replace("\\", "/") - PrimitivesDirectory = askVar(log, "[IN] Primitives Directory", PrimitivesDirectory).replace("\\", "/") - GamedevDirectory = askVar(log, "[IN] Gamedev Directory", GamedevDirectory).replace("\\", "/") - DataShardDirectory = askVar(log, "[IN] Data Shard Directory", DataShardDirectory).replace("\\", "/") - DataCommonDirectory = askVar(log, "[IN] Data Common Directory", DataCommonDirectory).replace("\\", "/") - TranslationDirectory = askVar(log, "[IN] Translation Directory", TranslationDirectory).replace("\\", "/") - LeveldesignDataShardDirectory = askVar(log, "[IN] Leveldesign Data Shard Directory", LeveldesignDataShardDirectory).replace("\\", "/") - LeveldesignDataCommonDirectory = askVar(log, "[IN] Leveldesign Data Common Directory", LeveldesignDataCommonDirectory).replace("\\", "/") - WorldEditorFilesDirectory = askVar(log, "[IN] World Editor Files Directory", WorldEditorFilesDirectory).replace("\\", "/") - WindowsExeDllCfgDirectories[0] = askVar(log, "[IN] Primary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[0]).replace("\\", "/") - WindowsExeDllCfgDirectories[1] = askVar(log, "[IN] Secondary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[1]).replace("\\", "/") - WindowsExeDllCfgDirectories[2] = askVar(log, "[IN] Tertiary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[2]).replace("\\", "/") - WindowsExeDllCfgDirectories[3] = askVar(log, "[IN] Quaternary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[3]).replace("\\", "/") - WindowsExeDllCfgDirectories[4] = askVar(log, "[IN] Quinary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[4]).replace("\\", "/") - WindowsExeDllCfgDirectories[5] = askVar(log, "[IN] Senary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[5]).replace("\\", "/") - WindowsExeDllCfgDirectories[6] = askVar(log, "[IN] Septenary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[6]).replace("\\", "/") - LinuxServiceExecutableDirectory = askVar(log, "[IN] Linux Service Executable Directory", LinuxServiceExecutableDirectory).replace("\\", "/") - LinuxClientExecutableDirectory = askVar(log, "[IN] Linux Client Executable Directory", LinuxClientExecutableDirectory).replace("\\", "/") - PatchmanCfgAdminDirectory = askVar(log, "[IN] Patchman Cfg Admin Directory", PatchmanCfgAdminDirectory).replace("\\", "/") - PatchmanCfgDefaultDirectory = askVar(log, "[IN] Patchman Cfg Default Directory", PatchmanCfgDefaultDirectory).replace("\\", "/") - PatchmanBridgeServerDirectory = askVar(log, "[OUT] Patchman Bridge Server Patch Directory", PatchmanBridgeServerDirectory).replace("\\", "/") + if not args.preset: + ToolDirectories[0] = askVar(log, "[IN] Primary Tool Directory", ToolDirectories[0]).replace("\\", "/") + ToolDirectories[1] = askVar(log, "[IN] Secondary Tool Directory", ToolDirectories[1]).replace("\\", "/") + ToolSuffix = askVar(log, "Tool Suffix", ToolSuffix) + ScriptDirectory = askVar(log, "[IN] Script Directory", os.getcwd().replace("\\", "/")).replace("\\", "/") + WorkspaceDirectory = askVar(log, "[IN] Workspace Directory", WorkspaceDirectory).replace("\\", "/") + DatabaseDirectory = askVar(log, "[IN] Database Directory", DatabaseDirectory).replace("\\", "/") + SoundDirectory = askVar(log, "[IN] Sound Directory", SoundDirectory).replace("\\", "/") + SoundDfnDirectory = askVar(log, "[IN] Sound DFN Directory", SoundDfnDirectory).replace("\\", "/") + ExportBuildDirectory = askVar(log, "[OUT] Export Build Directory", ExportBuildDirectory).replace("\\", "/") + InstallDirectory = askVar(log, "[OUT] Install Directory", InstallDirectory).replace("\\", "/") + ClientDevDirectory = askVar(log, "[OUT] Client Dev Directory", ClientDevDirectory).replace("\\", "/") + ClientPatchDirectory = askVar(log, "[OUT] Client Patch Directory", ClientPatchDirectory).replace("\\", "/") + ClientInstallDirectory = askVar(log, "[OUT] Client Install Directory", ClientInstallDirectory).replace("\\", "/") + ShardInstallDirectory = askVar(log, "[OUT] Shard Data Install Directory", ShardInstallDirectory).replace("\\", "/") + WorldEditInstallDirectory = askVar(log, "[OUT] World Edit Data Install Directory", WorldEditInstallDirectory).replace("\\", "/") + LeveldesignDirectory = askVar(log, "[IN] Leveldesign Directory", LeveldesignDirectory).replace("\\", "/") + LeveldesignDfnDirectory = askVar(log, "[IN] Leveldesign DFN Directory", LeveldesignDfnDirectory).replace("\\", "/") + LeveldesignWorldDirectory = askVar(log, "[IN] Leveldesign World Directory", LeveldesignWorldDirectory).replace("\\", "/") + PrimitivesDirectory = askVar(log, "[IN] Primitives Directory", PrimitivesDirectory).replace("\\", "/") + GamedevDirectory = askVar(log, "[IN] Gamedev Directory", GamedevDirectory).replace("\\", "/") + DataShardDirectory = askVar(log, "[IN] Data Shard Directory", DataShardDirectory).replace("\\", "/") + DataCommonDirectory = askVar(log, "[IN] Data Common Directory", DataCommonDirectory).replace("\\", "/") + TranslationDirectory = askVar(log, "[IN] Translation Directory", TranslationDirectory).replace("\\", "/") + LeveldesignDataShardDirectory = askVar(log, "[IN] Leveldesign Data Shard Directory", LeveldesignDataShardDirectory).replace("\\", "/") + LeveldesignDataCommonDirectory = askVar(log, "[IN] Leveldesign Data Common Directory", LeveldesignDataCommonDirectory).replace("\\", "/") + WorldEditorFilesDirectory = askVar(log, "[IN] World Editor Files Directory", WorldEditorFilesDirectory).replace("\\", "/") + WindowsExeDllCfgDirectories[0] = askVar(log, "[IN] Primary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[0]).replace("\\", "/") + WindowsExeDllCfgDirectories[1] = askVar(log, "[IN] Secondary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[1]).replace("\\", "/") + WindowsExeDllCfgDirectories[2] = askVar(log, "[IN] Tertiary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[2]).replace("\\", "/") + WindowsExeDllCfgDirectories[3] = askVar(log, "[IN] Quaternary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[3]).replace("\\", "/") + WindowsExeDllCfgDirectories[4] = askVar(log, "[IN] Quinary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[4]).replace("\\", "/") + WindowsExeDllCfgDirectories[5] = askVar(log, "[IN] Senary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[5]).replace("\\", "/") + WindowsExeDllCfgDirectories[6] = askVar(log, "[IN] Septenary Windows exe/dll/cfg Directory", WindowsExeDllCfgDirectories[6]).replace("\\", "/") + LinuxServiceExecutableDirectory = askVar(log, "[IN] Linux Service Executable Directory", LinuxServiceExecutableDirectory).replace("\\", "/") + LinuxClientExecutableDirectory = askVar(log, "[IN] Linux Client Executable Directory", LinuxClientExecutableDirectory).replace("\\", "/") + PatchmanCfgAdminDirectory = askVar(log, "[IN] Patchman Cfg Admin Directory", PatchmanCfgAdminDirectory).replace("\\", "/") + PatchmanCfgDefaultDirectory = askVar(log, "[IN] Patchman Cfg Default Directory", PatchmanCfgDefaultDirectory).replace("\\", "/") + PatchmanBridgeServerDirectory = askVar(log, "[OUT] Patchman Bridge Server Patch Directory", PatchmanBridgeServerDirectory).replace("\\", "/") SignToolExecutable = askVar(log, "Sign Tool Executable", SignToolExecutable).replace("\\", "/") SignToolSha1 = askVar(log, "Sign Tool Signature SHA1", SignToolSha1) SignToolTimestamp = askVar(log, "Sign Tool Timestamp Authority", SignToolTimestamp)