Cleanup: pass tools list into write_installer().
authorCarl Hetherington <cth@carlh.net>
Mon, 15 May 2023 21:02:20 +0000 (23:02 +0200)
committerCarl Hetherington <cth@carlh.net>
Tue, 16 May 2023 21:30:10 +0000 (23:30 +0200)
platform/windows/wscript

index 450e4f60cc459144f6af32a8d489fe8b12383c6c..007381bef067fff3f968abe5d5ca8a3f8589dd59 100644 (file)
@@ -1,21 +1,7 @@
 from __future__ import print_function
 import os
 
-def write_installer(bits, dcpomatic_version, debug):
-
-    tools = [
-        ('batch', 'Batch Converter'),
-        ('kdm', 'KDM Creator'),
-        ('kdm_cli', 'KDM Creator CLI'),
-        ('player', 'Player'),
-        ('cli', 'CLI'),
-        ('create', 'Creator'),
-        ('playlist', 'Playlist Editor'),
-        ('combiner', 'Combiner'),
-        ('editor', 'Editor'),
-        ('map', 'Map'),
-        ('disk', 'Disk Writer')
-    ]
+def write_installer(tools, bits, dcpomatic_version, debug):
 
     # It would be nice to use exist_ok here but it requires quite a new python
     try:
@@ -370,8 +356,11 @@ SectionEnd
     for s, l in tools:
         print('File "%%binaries%%/src/tools/dcpomatic2_%s.exe"' % s, file=f)
 
-    print("File \"%binaries%/src/tools/dcpomatic2_disk_writer.exe\"", file=f)
-    print("File \"%resources%/dcpomatic2_disk_writer.exe.manifest\"", file=f)
+    if [t for t in tools if t[0] == 'disk']:
+        print("""
+File "%binaries%/src/tools/dcpomatic2_disk_writer.exe"
+File "%resources%/dcpomatic2_disk_writer.exe.manifest"
+        """, file=f)
 
     if debug:
         print('CreateShortCut "$SMPROGRAMS\\DCP-o-matic 2 debug\\DCP-o-matic 2 debug.lnk" "$INSTDIR\\bin\\dcpomatic2_debug.bat"', file=f)
@@ -483,5 +472,19 @@ DeleteRegKey HKEY_LOCAL_MACHINE "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\U
 
 
 def build(bld):
-    write_installer(32, bld.env.VERSION, bld.env.DEBUG)
-    write_installer(64, bld.env.VERSION, bld.env.DEBUG)
+    all_tools = [
+        ('batch', 'Batch Converter'),
+        ('kdm', 'KDM Creator'),
+        ('kdm_cli', 'KDM Creator CLI'),
+        ('player', 'Player'),
+        ('cli', 'CLI'),
+        ('create', 'Creator'),
+        ('playlist', 'Playlist Editor'),
+        ('combiner', 'Combiner'),
+        ('editor', 'Editor'),
+        ('map', 'Map'),
+        ('disk', 'Disk Writer'),
+    ]
+
+    write_installer(all_tools, 32, bld.env.VERSION, bld.env.DEBUG)
+    write_installer(all_tools, 64, bld.env.VERSION, bld.env.DEBUG)