preliminary win32 support

This commit is contained in:
Kuba Winnicki 2019-06-19 13:50:13 +02:00
parent f660c0d22b
commit 3d6ff40dab

16
houy.py
View File

@ -2,7 +2,7 @@
from subprocess import call from subprocess import call
from sys import argv, platform, exit, stderr from sys import argv, platform, exit, stderr
from os import environ, chdir from os import environ, getenv, chdir
import shlex import shlex
import subprocess import subprocess
@ -11,9 +11,10 @@ if __name__ == '__main__':
setup_path = { setup_path = {
'darwin': '/Applications/Houdini/Houdini17.5.173/Frameworks/Houdini.framework/Versions/Current/Resources', 'darwin': '/Applications/Houdini/Houdini17.5.173/Frameworks/Houdini.framework/Versions/Current/Resources',
'linux': '/opt/hfs17.5.229', 'linux': '/opt/hfs17.5.229',
'win32': 'C:\Program Files\Side Effects Software\Houdini 17.5.173'
} }
if platform not in setup_path: if platform not in setup_path:
print('Platform `{}` not supported... yet.', file=stderr) print('Platform `{}` not supported... yet.'.format(platform), file=stderr)
exit(1) exit(1)
chdir(setup_path[platform]) chdir(setup_path[platform])
if '-rs3' in argv: if '-rs3' in argv:
@ -28,6 +29,17 @@ if __name__ == '__main__':
'HOUDINI_PATH': '{}/redshift4houdini/17.5.173;&'.format(redshift_path), 'HOUDINI_PATH': '{}/redshift4houdini/17.5.173;&'.format(redshift_path),
'REDSHIFT_COREDATAPATH': '{}'.format(redshift_path), 'REDSHIFT_COREDATAPATH': '{}'.format(redshift_path),
}) })
if platform == 'win32':
#call(['runas', '/noprofile', '/user:Administrator', r'"c:\Windows\System32\tscon.exe {} /dest:console"'.format(getenv('SessionName'))], env=environ)
environ.update({
'PATH': "C:/ProgramData/Redshift/bin;$PATH",
'HOUDINI_PATH': "C:/ProgramData/Redshift/Plugins/Houdini/17.5.173;&",
'HOUDINI_OCL_DEVICETYPE': 'GPU',
'HOUDINI_OCL_DEVICENUMBER': '0',
})
# Initialize env vars.
if platform != 'win32':
command = shlex.split("env -i sh -c '. houdini_setup >/dev/null && env'") command = shlex.split("env -i sh -c '. houdini_setup >/dev/null && env'")
proc = subprocess.Popen(command, stdout=subprocess.PIPE, proc = subprocess.Popen(command, stdout=subprocess.PIPE,
universal_newlines=True) universal_newlines=True)