123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- import msvcrt
- import os
- #set standard settings (No XP support/64Bit version)
- compileXP = 0 #XP support 0 = off/1 = on
- version = 64 #32 = win32/64 = x64 version
- quit = 0 #Loop variable keep at 0
- #Some standard strings
- location='C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\' #location of Visual Studio 2015 (Community) VC files
- title=' openMSX build menu for Visual Studio 2015'
- menuval = {
- '[1] Update from Repository'
- ,'[2] Get 3rd Party Files\n'
- ,'[3] Compile 3rd-party files'
- ,'[4] Compile openMSX Release'
- ,'[5] Generate Installer and Packages\n'
- ,'[6] Toggle Win32/Win64 Version'
- ,'[7] Toggle Toggle XP Support\n'
- ,'[8] Quit\n'
- }
- def menu():
- os.system('color 9f')
- os.system('mode 80,24')
- os.system('TITLE'+title)
- os.system('cls')
- print('-'*50)
- print(title)
- print('-'*50+'\n')
- for item in sorted(menuval): print(item)
- print('-'*50)
- print(' Resulting Binary settings:')
- if version == 32: print(' - Windows 32bit Version')
- else: print(' - Windows 64bit Version')
- if compileXP == 1:print(' - XP Support ON')
- else: print(' - XP Support Off')
- print('-'*50)
- print()
- if compileXP == 1: print('The DirectX June 2010 SDK is needed for XP support')
- if quit == 1: os.system('cls')
- def execCommand(cmd):
- os.system('cls')
- os.chdir('..\\..\\')
- os.system(cmd)
- os.chdir('build\\package-windows')
- os.system('pause')
- def updateSourceCode():
- execCommand('git pull')
- def update3rdparty():
- execCommand('call "python" build\\thirdparty_download.py windows')
- def compile(whattocompile):
- compiler = 'x86' if version == 32 else 'amd64'
- support = 'v140' if compileXP == 0 else 'v140_xp'
- compilefor = 'Win32' if version == 32 else 'x64'
- compilewhat = 'build\\msvc\\openmsx.sln' if whattocompile == 'OpenMSX' else 'build\\3rdparty\\3rdparty.sln'
- cmd = 'call "'+location+'vcvarsall.bat" '+str(compiler)+'&&'
- cmd += 'set PlatformToolset='+str(support)+'&&'
- cmd += 'msbuild -p:Configuration=Release;Platform='+str(compilefor)+' '+compilewhat+' /m'
- execCommand(cmd)
- def package():
- packagefor = 'Win32' if version == 32 else 'x64'
- execCommand('build\\package-windows\\package.cmd '+packagefor+' release ..\\wxcatapult')
- # Main Loop
- menu()
- while quit == 0:
- x = ord(msvcrt.getch())
- if x == 49: updateSourceCode()
- if x == 50: update3rdparty()
- if x == 51: compile('3rdParty')
- if x == 52: compile('OpenMSX')
- if x == 53: package()
- if x == 54: version = 32 if version == 64 else 64
- if x == 55: compileXP = 0 if compileXP == 1 else 1
- if x == 56: quit = 1
- menu()
|