SL-702: refactor to make the viewer-manager easier for TPVs to integrate
parent
79c6b5f53e
commit
e044902aaf
|
|
@ -3072,9 +3072,9 @@
|
||||||
<key>archive</key>
|
<key>archive</key>
|
||||||
<map>
|
<map>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<string>0d00f5e1bc993eefb61ef18c0142b178</string>
|
<string>57668d6519adf7a7bbdbed98240e7470</string>
|
||||||
<key>url</key>
|
<key>url</key>
|
||||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/5470/18542/viewer_manager-1.0.505459-darwin64-505459.tar.bz2</string>
|
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/5525/18802/viewer_manager-1.0.505514-darwin64-505514.tar.bz2</string>
|
||||||
</map>
|
</map>
|
||||||
<key>name</key>
|
<key>name</key>
|
||||||
<string>darwin64</string>
|
<string>darwin64</string>
|
||||||
|
|
@ -3096,9 +3096,9 @@
|
||||||
<key>archive</key>
|
<key>archive</key>
|
||||||
<map>
|
<map>
|
||||||
<key>hash</key>
|
<key>hash</key>
|
||||||
<string>cd6e91143eff8f24029d79aa08fd8395</string>
|
<string>818860f12da07d1451ef4870f2143e9b</string>
|
||||||
<key>url</key>
|
<key>url</key>
|
||||||
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/5471/18548/viewer_manager-1.0.505459-windows-505459.tar.bz2</string>
|
<string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/5526/18808/viewer_manager-1.0.505514-windows-505514.tar.bz2</string>
|
||||||
</map>
|
</map>
|
||||||
<key>name</key>
|
<key>name</key>
|
||||||
<string>windows</string>
|
<string>windows</string>
|
||||||
|
|
@ -3109,7 +3109,7 @@
|
||||||
<key>source_type</key>
|
<key>source_type</key>
|
||||||
<string>hg</string>
|
<string>hg</string>
|
||||||
<key>version</key>
|
<key>version</key>
|
||||||
<string>1.0.505459</string>
|
<string>1.0.505514</string>
|
||||||
</map>
|
</map>
|
||||||
<key>vlc-bin</key>
|
<key>vlc-bin</key>
|
||||||
<map>
|
<map>
|
||||||
|
|
|
||||||
|
|
@ -143,6 +143,9 @@ ARGUMENTS=[
|
||||||
default=None),
|
default=None),
|
||||||
dict(name='versionfile',
|
dict(name='versionfile',
|
||||||
description="""The name of a file containing the full version number."""),
|
description="""The name of a file containing the full version number."""),
|
||||||
|
dict(name='bundleid',
|
||||||
|
description="""The Mac OS X Bundle identifier.""",
|
||||||
|
default="com.secondlife.indra.viewer"),
|
||||||
dict(name='signature',
|
dict(name='signature',
|
||||||
description="""This specifies an identity to sign the viewer with, if any.
|
description="""This specifies an identity to sign the viewer with, if any.
|
||||||
If no value is supplied, the default signature will be used, if any. Currently
|
If no value is supplied, the default signature will be used, if any. Currently
|
||||||
|
|
|
||||||
|
|
@ -1331,7 +1331,7 @@ set(viewer_HEADER_FILES
|
||||||
|
|
||||||
source_group("CMake Rules" FILES ViewerInstall.cmake)
|
source_group("CMake Rules" FILES ViewerInstall.cmake)
|
||||||
|
|
||||||
#summary.json creation moved to viewer_manifest.py MAINT-6413
|
#build_data.json creation moved to viewer_manifest.py MAINT-6413
|
||||||
# the viewer_version.txt file created here is for passing to viewer_manifest and autobuild
|
# the viewer_version.txt file created here is for passing to viewer_manifest and autobuild
|
||||||
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt"
|
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt"
|
||||||
"${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}\n")
|
"${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}\n")
|
||||||
|
|
@ -2073,6 +2073,7 @@ if (DARWIN)
|
||||||
--grid=${GRID}
|
--grid=${GRID}
|
||||||
"--channel=${VIEWER_CHANNEL}"
|
"--channel=${VIEWER_CHANNEL}"
|
||||||
--versionfile=${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt
|
--versionfile=${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt
|
||||||
|
--bundleid=${MACOSX_BUNDLE_GUI_IDENTIFIER}
|
||||||
--source=${CMAKE_CURRENT_SOURCE_DIR}
|
--source=${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
DEPENDS
|
DEPENDS
|
||||||
${VIEWER_BINARY_NAME}
|
${VIEWER_BINARY_NAME}
|
||||||
|
|
|
||||||
|
|
@ -123,20 +123,20 @@ class ViewerManifest(LLManifest):
|
||||||
|
|
||||||
#do not need to test for existence. If no platform is passed, llmanifest computes a default in get_default_platform
|
#do not need to test for existence. If no platform is passed, llmanifest computes a default in get_default_platform
|
||||||
#the choice of value names (lnx, mac, win32, win) is dictated by the VMM API
|
#the choice of value names (lnx, mac, win32, win) is dictated by the VMM API
|
||||||
summary_json_platform = ""
|
build_data_json_platform = ""
|
||||||
if 'linux' in self.args['platform']:
|
if 'linux' in self.args['platform']:
|
||||||
summary_json_platform = 'lnx'
|
build_data_json_platform = 'lnx'
|
||||||
elif 'darwin' in self.args['platform']:
|
elif 'darwin' in self.args['platform']:
|
||||||
summary_json_platform = 'mac'
|
build_data_json_platform = 'mac'
|
||||||
elif 'windows' in self.args['platform']:
|
elif 'windows' in self.args['platform']:
|
||||||
#default case
|
#default case
|
||||||
summary_json_platform = 'win'
|
build_data_json_platform = 'win'
|
||||||
if 'arch' in self.args and self.args['arch']:
|
if 'arch' in self.args and self.args['arch']:
|
||||||
if 'i686' in self.args['arch']:
|
if 'i686' in self.args['arch']:
|
||||||
summary_json_platform = 'win32'
|
build_data_json_platform = 'win32'
|
||||||
#we really shouldn't be here, something is very wrong at this point
|
#we really shouldn't be here, something is very wrong at this point
|
||||||
else:
|
else:
|
||||||
summary_json_platform = 'None'
|
build_data_json_platform = 'None'
|
||||||
|
|
||||||
|
|
||||||
# put_in_file(src=) need not be an actual pathname; it
|
# put_in_file(src=) need not be an actual pathname; it
|
||||||
|
|
@ -201,21 +201,26 @@ class ViewerManifest(LLManifest):
|
||||||
# File in the newview/ directory
|
# File in the newview/ directory
|
||||||
self.path("gpu_table.txt")
|
self.path("gpu_table.txt")
|
||||||
|
|
||||||
#summary.json. Standard with exception handling is fine. If we can't open a new file for writing, we have worse problems
|
#build_data.json. Standard with exception handling is fine. If we can't open a new file for writing, we have worse problems
|
||||||
#platform is computed above with other arg parsing
|
#platform is computed above with other arg parsing
|
||||||
summary_dict = {"Type":"viewer","Version":'.'.join(self.args['version']),
|
build_data_dict = {"Type":"viewer","Version":'.'.join(self.args['version']),
|
||||||
|
"Channel Base": CHANNEL_VENDOR_BASE,
|
||||||
"Channel":self.channel_with_pkg_suffix(),
|
"Channel":self.channel_with_pkg_suffix(),
|
||||||
"Platform":summary_json_platform}
|
"Platform":build_data_json_platform,
|
||||||
|
"Update Service":"https://update.secondlife.com/update/",
|
||||||
|
}
|
||||||
#MAINT-7294: Windows exe names depend on channel name, so write that in also
|
#MAINT-7294: Windows exe names depend on channel name, so write that in also
|
||||||
if summary_json_platform.startswith('win'):
|
if build_data_json_platform.startswith('win'):
|
||||||
summary_dict.update({'Executable':self.final_exe()})
|
build_data_dict.update({'Executable':self.final_exe()})
|
||||||
with open(os.path.join(os.pardir,'summary.json'), 'w') as summary_handle:
|
if build_data_json_platform.startswith('mac'):
|
||||||
json.dump(summary_dict,summary_handle)
|
build_data_dict.update({'Bundle Id':self.args['bundleid']})
|
||||||
|
with open(os.path.join(os.pardir,'build_data.json'), 'w') as build_data_handle:
|
||||||
|
json.dump(build_data_dict,build_data_handle)
|
||||||
|
|
||||||
#we likely no longer need the test, since we will throw an exception above, but belt and suspenders and we get the
|
#we likely no longer need the test, since we will throw an exception above, but belt and suspenders and we get the
|
||||||
#return code for free.
|
#return code for free.
|
||||||
if not self.path2basename(os.pardir, "summary.json"):
|
if not self.path2basename(os.pardir, "build_data.json"):
|
||||||
print "No summary.json file"
|
print "No build_data.json file"
|
||||||
|
|
||||||
def grid(self):
|
def grid(self):
|
||||||
return self.args['grid']
|
return self.args['grid']
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
This directory only exists as a place for the summary.json file to exist when the unit tests are run on a Mac, where the file goes to a sibling directory of the scripts dir. In Linux and Windows, the JSON file goes into the same directory as the script.
|
This directory only exists as a place for the build_data.json file to exist when the unit tests are run on a Mac, where the file goes to a sibling directory of the scripts dir. In Linux and Windows, the JSON file goes into the same directory as the script.
|
||||||
|
|
||||||
See:
|
See:
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue