aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/viewer_manifest.py
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xlinden/indra/newview/viewer_manifest.py114
1 files changed, 68 insertions, 46 deletions
diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py
index 429e564..d97befb 100755
--- a/linden/indra/newview/viewer_manifest.py
+++ b/linden/indra/newview/viewer_manifest.py
@@ -51,7 +51,6 @@ class ViewerManifest(LLManifest):
51 self.path("*.pem") 51 self.path("*.pem")
52 self.path("*.ini") 52 self.path("*.ini")
53 self.path("*.xml") 53 self.path("*.xml")
54 self.path("*.vp")
55 self.path("*.db2") 54 self.path("*.db2")
56 55
57 # include the entire shaders directory recursively 56 # include the entire shaders directory recursively
@@ -66,35 +65,35 @@ class ViewerManifest(LLManifest):
66 self.path("*.tga") 65 self.path("*.tga")
67 self.end_prefix("character") 66 self.end_prefix("character")
68 67
69
70 # Include our fonts 68 # Include our fonts
71 if self.prefix(src="fonts"): 69 if self.prefix(src="fonts"):
72 self.path("*.ttf") 70 self.path("*.ttf")
73 self.path("*.txt") 71 self.path("*.txt")
74 self.end_prefix("fonts") 72 self.end_prefix("fonts")
75 73
76 # skins 74 # skins
77 if self.prefix(src="skins"): 75 if self.prefix(src="skins"):
78 self.path("paths.xml") 76 self.path("paths.xml")
79 # include the entire textures directory recursively 77 # include the entire textures directory recursively
80 if self.prefix(src="*/textures"): 78 if self.prefix(src="*/textures"):
81 self.path("*.tga") 79 self.path("*.tga")
82 self.path("*.j2c") 80 self.path("*.j2c")
83 self.path("*.jpg") 81 self.path("*.jpg")
84 self.path("*.png") 82 self.path("*.png")
85 self.path("textures.xml") 83 self.path("textures.xml")
86 self.end_prefix("*/textures") 84 self.end_prefix("*/textures")
87 self.path("*/xui/*/*.xml") 85 self.path("*/xui/*/*.xml")
88 self.path("*/*.xml") 86 self.path("*/*.xml")
89 87
90 # Local HTML files (e.g. loading screen) 88 # Local HTML files (e.g. loading screen)
91 if self.prefix(src="*/html"): 89 if self.prefix(src="*/html"):
92 self.path("*.png") 90 self.path("*.png")
93 self.path("*/*/*.html") 91 self.path("*/*/*.html")
94 self.path("*/*/*.gif") 92 self.path("*/*/*.gif")
95 self.end_prefix("*/html") 93 self.end_prefix("*/html")
96 self.end_prefix("skins") 94 self.end_prefix("skins")
97 self.path("lsl_guide.html") 95
96 # Files in the newview/ directory
98 self.path("gpu_table.txt") 97 self.path("gpu_table.txt")
99 98
100 def login_channel(self): 99 def login_channel(self):
@@ -105,6 +104,8 @@ class ViewerManifest(LLManifest):
105 # whether or not this is present 104 # whether or not this is present
106 return self.args.get('login_channel') 105 return self.args.get('login_channel')
107 106
107 def grid(self):
108 return self.args['grid']
108 def channel(self): 109 def channel(self):
109 return self.args['channel'] 110 return self.args['channel']
110 def channel_unique(self): 111 def channel_unique(self):
@@ -117,22 +118,33 @@ class ViewerManifest(LLManifest):
117 def flags_list(self): 118 def flags_list(self):
118 """ Convenience function that returns the command-line flags 119 """ Convenience function that returns the command-line flags
119 for the grid""" 120 for the grid"""
120 channel_flags = '' 121
122 # Set command line flags relating to the target grid
121 grid_flags = '' 123 grid_flags = ''
122 if not self.default_grid(): 124 if not self.default_grid():
123 if self.default_channel(): 125 grid_flags = "--grid %(grid)s "\
124 # beta grid viewer 126 "--helperuri http://preview-%(grid)s.secondlife.com/helpers/" %\
125 channel_flags = '--settings settings_beta.xml' 127 {'grid':self.grid()}
126 grid_flags = "--grid %(grid)s --helperuri http://preview-%(grid)s.secondlife.com/helpers/" % {'grid':self.args['grid']}
127 128
128 if not self.default_channel(): 129 # set command line flags for channel
129 # some channel on some grid 130 channel_flags = ''
130 channel_flags = '--settings settings_%s.xml --channel "%s"' % (self.channel_lowerword(), self.channel()) 131 if self.login_channel() and self.login_channel() != self.channel():
131 elif self.login_channel():
132 # Report a special channel during login, but use default 132 # Report a special channel during login, but use default
133 channel_flags = '--channel "%s"' % (self.login_channel()) 133 channel_flags = '--channel "%s"' % (self.login_channel())
134 134 elif not self.default_channel():
135 return " ".join((channel_flags, grid_flags)).strip() 135 channel_flags = '--channel "%s"' % self.channel()
136
137 # Deal with settings
138 setting_flags = ''
139 if not self.default_channel() or not self.default_grid():
140 if self.default_grid():
141 setting_flags = '--settings settings_%s.xml'\
142 % self.channel_lowerword()
143 else:
144 setting_flags = '--settings settings_%s_%s.xml'\
145 % (self.grid(), self.channel_lowerword())
146
147 return " ".join((channel_flags, grid_flags, setting_flags)).strip()
136 148
137 149
138class WindowsManifest(ViewerManifest): 150class WindowsManifest(ViewerManifest):
@@ -153,10 +165,7 @@ class WindowsManifest(ViewerManifest):
153 self.path(self.find_existing_file('debug/secondlife-bin.exe', 'release/secondlife-bin.exe', 'relwithdebinfo/secondlife-bin.exe'), dst=self.final_exe()) 165 self.path(self.find_existing_file('debug/secondlife-bin.exe', 'release/secondlife-bin.exe', 'relwithdebinfo/secondlife-bin.exe'), dst=self.final_exe())
154 # need to get the kdu dll from any of the build directories as well 166 # need to get the kdu dll from any of the build directories as well
155 self.path(self.find_existing_file( 167 self.path(self.find_existing_file(
156 # *FIX:Mani we need to add support for packaging specific targets. 168 '../llkdu/%s/llkdu.dll' % self.args['configuration'],
157 #'../llkdu/debug/llkdu.dll',
158 '../llkdu/release/llkdu.dll',
159 '../llkdu/relwithdebinfo/llkdu.dll',
160 '../../libraries/i686-win32/lib/release/llkdu.dll'), 169 '../../libraries/i686-win32/lib/release/llkdu.dll'),
161 dst='llkdu.dll') 170 dst='llkdu.dll')
162 self.path(src="licenses-win32.txt", dst="licenses.txt") 171 self.path(src="licenses-win32.txt", dst="licenses.txt")
@@ -174,9 +183,19 @@ class WindowsManifest(ViewerManifest):
174 self.path("openjpeg.dll") 183 self.path("openjpeg.dll")
175 self.end_prefix() 184 self.end_prefix()
176 185
177 # Mozilla appears to force a dependency on these files so we need to ship it (CP) 186 # Mozilla appears to force a dependency on these files so we need to ship it (CP) - updated to vc8 versions (nyx)
178 self.path("msvcr71.dll") 187 # These need to be installed as a SxS assembly, currently a 'private' assembly.
179 self.path("msvcp71.dll") 188 # See http://msdn.microsoft.com/en-us/library/ms235291(VS.80).aspx
189 if self.prefix(src=self.args['configuration'], dst=""):
190 if self.args['configuration'] == 'Debug':
191 self.path("msvcr80d.dll")
192 self.path("msvcp80d.dll")
193 self.path("Microsoft.VC80.DebugCRT.manifest")
194 else:
195 self.path("msvcr80.dll")
196 self.path("msvcp80.dll")
197 self.path("Microsoft.VC80.CRT.manifest")
198 self.end_prefix()
180 199
181 # Mozilla runtime DLLs (CP) 200 # Mozilla runtime DLLs (CP)
182 if self.prefix(src="../../libraries/i686-win32/lib/release", dst=""): 201 if self.prefix(src="../../libraries/i686-win32/lib/release", dst=""):
@@ -205,6 +224,11 @@ class WindowsManifest(ViewerManifest):
205 self.path("res/*/*") 224 self.path("res/*/*")
206 self.end_prefix() 225 self.end_prefix()
207 226
227 # Mozilla hack to get it to accept newer versions of msvc*80.dll than are listed in manifest
228 # necessary as llmozlib2-vc80.lib refers to an old version of msvc*80.dll - can be removed when new version of llmozlib is built - Nyx
229 # The config file name needs to match the exe's name.
230 self.path("SecondLife.exe.config", dst=self.final_exe() + ".config")
231
208 # Vivox runtimes 232 # Vivox runtimes
209 if self.prefix(src="vivox-runtime/i686-win32", dst=""): 233 if self.prefix(src="vivox-runtime/i686-win32", dst=""):
210 self.path("SLVoice.exe") 234 self.path("SLVoice.exe")
@@ -348,7 +372,7 @@ class WindowsManifest(ViewerManifest):
348 "%%INSTALL_FILES%%":self.nsi_file_commands(True), 372 "%%INSTALL_FILES%%":self.nsi_file_commands(True),
349 "%%DELETE_FILES%%":self.nsi_file_commands(False)}) 373 "%%DELETE_FILES%%":self.nsi_file_commands(False)})
350 374
351 NSIS_path = 'C:\\Program Files\\NSIS\\makensis.exe' 375 NSIS_path = 'C:\\Program Files\\NSIS\\Unicode\\makensis.exe'
352 self.run_command('"' + proper_windows_path(NSIS_path) + '" ' + self.dst_path_of(tempfile)) 376 self.run_command('"' + proper_windows_path(NSIS_path) + '" ' + self.dst_path_of(tempfile))
353 # self.remove(self.dst_path_of(tempfile)) 377 # self.remove(self.dst_path_of(tempfile))
354 self.created_path(self.dst_path_of(installer_file)) 378 self.created_path(self.dst_path_of(installer_file))
@@ -394,6 +418,7 @@ class DarwinManifest(ViewerManifest):
394 self.path("secondlife.icns") 418 self.path("secondlife.icns")
395 else: 419 else:
396 self.path("secondlife_firstlook.icns", "secondlife.icns") 420 self.path("secondlife_firstlook.icns", "secondlife.icns")
421 self.path("SecondLife.nib")
397 422
398 # Translations 423 # Translations
399 self.path("English.lproj") 424 self.path("English.lproj")
@@ -492,9 +517,6 @@ class DarwinManifest(ViewerManifest):
492 if not os.path.exists (self.src_path_of(dmg_template)): 517 if not os.path.exists (self.src_path_of(dmg_template)):
493 dmg_template = os.path.join ('installers', 'darwin', 'release-dmg') 518 dmg_template = os.path.join ('installers', 'darwin', 'release-dmg')
494 519
495 # To reinstate the linden scripting guide, add this to the list below:
496 # "lsl_guide.html":"Linden Scripting Language Guide.html",
497
498 for s,d in {self.get_dst_prefix():app_name + ".app", 520 for s,d in {self.get_dst_prefix():app_name + ".app",
499 os.path.join(dmg_template, "_VolumeIcon.icns"): ".VolumeIcon.icns", 521 os.path.join(dmg_template, "_VolumeIcon.icns"): ".VolumeIcon.icns",
500 os.path.join(dmg_template, "background.jpg"): "background.jpg", 522 os.path.join(dmg_template, "background.jpg"): "background.jpg",