Leonard Ritter avatar Leonard Ritter committed 30c5599

mksdl: checkout and auto-build SDL on windows

Comments (0)

Files changed (1)

     if not clone_repo():
         return
     builddir = os.path.join(targetdir, 'VisualC', 'SDL', 'Release')
-    if not os.path.isdir(builddir):
-        print("You must build the visual studio solution file in release mode first.")
+    slnfile = os.path.join(targetdir, 'VisualC', 'SDL_VS2008.sln')
+    
+    DXSDK_DIR = os.environ['DXSDK_DIR']
+    
+    os.environ['INCLUDE'] = os.path.join(DXSDK_DIR, 'Include') + os.pathsep + os.environ.get('INCLUDE', '')
+    os.environ['LIB'] = os.path.join(DXSDK_DIR, 'Lib', 'x86') + os.pathsep + os.environ.get('LIB', '')
+    
+    cmd = 'msbuild {} /nologo /v:minimal /p:"VCBuildAdditionalOptions= /useenv" /p:Configuration=Release'.format(slnfile)
+    print(cmd)
+    if os.system(cmd):
+        print("build failed")
         return
+    assert os.path.isdir(builddir)
     if os.path.isdir(bindir):
         print("Removing stale {0}...".format(bindir))
         shutil.rmtree(bindir)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.