parameters: (engine_path)
docstring: Opens the configurations selection UI, and generates the engine
      solution with the selected configuration.
docstring_summary: Opens the configurations selection UI, and generates the engine
      solution with the selected configuration.
docstring_tokens: Opens the configurations selection UI and generates the engine solution with the selected configuration .
function: def generate_engine_solution(engine_path):
      """
      Opens the configurations selection UI, and generates the engine
      solution with the selected configuration.
      """
      if not HAS_WIN_MODULES:
          error_winreg_not_available()
  
      configs = [
          # Visual Studio 14 2015 Express
          {
              'title': 'Visual Studio 2015 Express Win64',
              'cmake_toolchain': 'toolchain/windows/WindowsPC-MSVC.cmake',
              'cmake_generator': 'Visual Studio 14 2015 Win64',
              'cmake_builddir': 'solutions/win64',
              'compiler': {'reg_key': winreg.HKEY_CLASSES_ROOT,
                           'key_path': r'\WDExpress.DTE.14.0'}
          },
  
          # Visual Studio 14 2015
          {
              'title': 'Visual Studio 2015 Win64',
              'cmake_toolchain': 'toolchain/windows/WindowsPC-MSVC.cmake',
              'cmake_generator': 'Visual Studio 14 2015 Win64',
              'cmake_builddir': 'solutions/win64',
              'compiler': {
                  'reg_key': winreg.HKEY_CLASSES_ROOT,
                  'key_path': r'\VisualStudio.DTE.14.0'
              }
          },
  
          # Visual Studio 15 2017
          {
              'title': 'Visual Studio 2017 Win64',
              'cmake_toolchain': 'toolchain/windows/WindowsPC-MSVC.cmake',
              'cmake_generator': 'Visual Studio 15 2017 Win64',
              'cmake_builddir': 'solutions/win64',
              'compiler': {
                  'reg_key': winreg.HKEY_CLASSES_ROOT,
                  'key_path': r'\VisualStudio.DTE.15.0'
              }
          },
  
          # Visual Studio 16 2019
          {
              'title': 'Visual Studio 2019 Win64',
              'cmake_toolchain': 'toolchain/windows/WindowsPC-MSVC.cmake',
              'cmake_generator': 'Visual Studio 16 2019',
              'cmake_builddir': 'solutions/win64',
              'compiler': {
                  'reg_key': winreg.HKEY_CLASSES_ROOT,
                  'key_path': r'\VisualStudio.DTE.16.0'
              }
          },
      ]
  
      # Run the GUI to select a config for CMake.
      config = cryrun_gui.select_config(configs)
  
      # No config means the user canceled while selecting the config,
      # so we can safely exit.
      if not config:
          sys.exit(0)
  
      generate_solution(engine_path, engine_path, config, True)
function_tokens: def generate_engine_solution ( engine_path ) : if not HAS_WIN_MODULES : error_winreg_not_available ( ) configs = [ # Visual Studio 14 2015 Express { 'title' : 'Visual Studio 2015 Express Win64' , 'cmake_toolchain' : 'toolchain/windows/WindowsPC-MSVC.cmake' , 'cmake_generator' : 'Visual Studio 14 2015 Win64' , 'cmake_builddir' : 'solutions/win64' , 'compiler' : { 'reg_key' : winreg . HKEY_CLASSES_ROOT , 'key_path' : r'\WDExpress.DTE.14.0' } } , # Visual Studio 14 2015 { 'title' : 'Visual Studio 2015 Win64' , 'cmake_toolchain' : 'toolchain/windows/WindowsPC-MSVC.cmake' , 'cmake_generator' : 'Visual Studio 14 2015 Win64' , 'cmake_builddir' : 'solutions/win64' , 'compiler' : { 'reg_key' : winreg . HKEY_CLASSES_ROOT , 'key_path' : r'\VisualStudio.DTE.14.0' } } , # Visual Studio 15 2017 { 'title' : 'Visual Studio 2017 Win64' , 'cmake_toolchain' : 'toolchain/windows/WindowsPC-MSVC.cmake' , 'cmake_generator' : 'Visual Studio 15 2017 Win64' , 'cmake_builddir' : 'solutions/win64' , 'compiler' : { 'reg_key' : winreg . HKEY_CLASSES_ROOT , 'key_path' : r'\VisualStudio.DTE.15.0' } } , # Visual Studio 16 2019 { 'title' : 'Visual Studio 2019 Win64' , 'cmake_toolchain' : 'toolchain/windows/WindowsPC-MSVC.cmake' , 'cmake_generator' : 'Visual Studio 16 2019' , 'cmake_builddir' : 'solutions/win64' , 'compiler' : { 'reg_key' : winreg . HKEY_CLASSES_ROOT , 'key_path' : r'\VisualStudio.DTE.16.0' } } , ] # Run the GUI to select a config for CMake. config = cryrun_gui . select_config ( configs ) # No config means the user canceled while selecting the config, # so we can safely exit. if not config : sys . exit ( 0 ) generate_solution ( engine_path , engine_path , config , True )