summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xindra/newview/viewer_manifest.py119
1 files changed, 44 insertions, 75 deletions
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index 57539077fa..8048f4eb2f 100755
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -308,6 +308,8 @@ class WindowsManifest(ViewerManifest):
# This is used to test a dll manifest.
# It is used as a temporary override during the construct method
from test_win32_manifest import test_assembly_binding
+ # TODO: This is redundant with LLManifest.copy_action(). Why aren't we
+ # calling copy_action() in conjunction with test_assembly_binding()?
if src and (os.path.exists(src) or os.path.islink(src)):
# ensure that destination path exists
self.cmakedirs(os.path.dirname(dst))
@@ -328,6 +330,8 @@ class WindowsManifest(ViewerManifest):
# It is used as a temporary override during the construct method
from test_win32_manifest import test_assembly_binding
from test_win32_manifest import NoManifestException, NoMatchingAssemblyException
+ # TODO: This is redundant with LLManifest.copy_action(). Why aren't we
+ # calling copy_action() in conjunction with test_assembly_binding()?
if src and (os.path.exists(src) or os.path.islink(src)):
# ensure that destination path exists
self.cmakedirs(os.path.dirname(dst))
@@ -356,18 +360,16 @@ class WindowsManifest(ViewerManifest):
pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
relpkgdir = os.path.join(pkgdir, "lib", "release")
debpkgdir = os.path.join(pkgdir, "lib", "debug")
- vmpdir = os.path.join(pkgdir, "VMP")
- llbasedir = os.path.join(pkgdir, "lib", "python", "llbase")
if self.is_packaging_viewer():
# Find secondlife-bin.exe in the 'configuration' dir, then rename it to the result of final_exe.
self.path(src='%s/secondlife-bin.exe' % self.args['configuration'], dst=self.final_exe())
- # include the compiled launcher scripts so that it gets included in the file_list
- self.path(src='%s/SL_Launcher.exe' % vmpdir, dst="SL_Launcher.exe")
-
- #IUM is not normally executed directly, just imported. No exe needed.
- self.path2basename(vmpdir,"InstallerUserMessage.py")
+ with self.prefix(src=os.path.join(pkgdir, "VMP"), dst=""):
+ # include the compiled launcher scripts so that it gets included in the file_list
+ self.path('SL_Launcher.exe')
+ #IUM is not normally executed directly, just imported. No exe needed.
+ self.path("InstallerUserMessage.py")
with self.prefix(src=self.icon_path(), dst="vmp_icons"):
self.path("secondlife.ico")
@@ -378,12 +380,9 @@ class WindowsManifest(ViewerManifest):
self.path("*.gif")
#before, we only needed llbase at build time. With VMP, we need it at run time.
- llbase_path = os.path.join(self.get_dst_prefix(),'llbase')
- if not os.path.exists(llbase_path):
- os.makedirs(llbase_path)
- with self.prefix(dst="llbase"):
- self.path2basename(llbasedir,"*.py")
- self.path2basename(llbasedir,"_cllsd.so")
+ with self.prefix(src=os.path.join(pkgdir, "lib", "python", "llbase"), dst="llbase"):
+ self.path("*.py")
+ self.path("_cllsd.so")
# Plugin host application
self.path2basename(os.path.join(os.pardir,
@@ -771,59 +770,31 @@ class DarwinManifest(ViewerManifest):
pkgdir = os.path.join(self.args['build'], os.pardir, 'packages')
relpkgdir = os.path.join(pkgdir, "lib", "release")
debpkgdir = os.path.join(pkgdir, "lib", "debug")
- vmpdir = os.path.join(pkgdir, "VMP")
- llbasedir = os.path.join(pkgdir, "lib", "python", "llbase")
- requestsdir = os.path.join(pkgdir, "lib", "python", "requests")
- urllib3dir = os.path.join(pkgdir, "lib", "python", "urllib3")
- chardetdir = os.path.join(pkgdir, "lib", "python", "chardet")
- idnadir = os.path.join(pkgdir, "lib", "python", "idna")
with self.prefix(src="", dst="Contents"): # everything goes in Contents
- self.path("Info.plist", dst="Info.plist")
+ self.path("Info.plist")
- # copy additional libs in <bundle>/Contents/MacOS/
- self.path(os.path.join(relpkgdir, "libndofdev.dylib"), dst="Resources/libndofdev.dylib")
- self.path(os.path.join(relpkgdir, "libhunspell-1.3.0.dylib"), dst="Resources/libhunspell-1.3.0.dylib")
+ with self.prefix(src=relpkgdir, dst="Resources"):
+ self.path("libndofdev.dylib")
+ self.path("libhunspell-1.3.0.dylib")
+ # copy additional libs in <bundle>/Contents/MacOS/
with self.prefix(dst="MacOS"):
#this copies over the python wrapper script, associated utilities and required libraries, see SL-321, SL-322, SL-323
- self.path2basename(vmpdir,"SL_Launcher")
- self.path2basename(vmpdir,"*.py")
- # certifi will be imported by requests; this is our custom version to get our ca-bundle.crt
- certifi_path = os.path.join(self.get_dst_prefix(),'certifi')
- if not os.path.exists(certifi_path):
- os.makedirs(certifi_path)
- with self.prefix(dst="certifi"):
- self.path2basename(os.path.join(vmpdir,"certifi"),"*")
- # llbase provides our llrest service layer and llsd decoding
- llbase_path = os.path.join(self.get_dst_prefix(),'llbase')
- if not os.path.exists(llbase_path):
- os.makedirs(llbase_path)
- with self.prefix(dst="llbase"):
- self.path2basename(llbasedir,"*.py")
- self.path2basename(llbasedir,"_cllsd.so")
- #requests module needed by llbase/llrest.py
- #this is only needed on POSIX, because in Windows we compile it into the EXE
- requests_path = os.path.join(self.get_dst_prefix(),'requests')
- if not os.path.exists(requests_path):
- os.makedirs(requests_path)
- with self.prefix(dst="requests"):
- self.path2basename(requestsdir,"*")
- urllib3_path = os.path.join(self.get_dst_prefix(),'urllib3')
- if not os.path.exists(urllib3_path):
- os.makedirs(urllib3_path)
- with self.prefix(dst="urllib3"):
- self.path2basename(urllib3dir,"*")
- chardet_path = os.path.join(self.get_dst_prefix(),'chardet')
- if not os.path.exists(chardet_path):
- os.makedirs(chardet_path)
- with self.prefix(dst="chardet"):
- self.path2basename(chardetdir,"*")
- idna_path = os.path.join(self.get_dst_prefix(),'idna')
- if not os.path.exists(idna_path):
- os.makedirs(idna_path)
- with self.prefix(dst="idna"):
- self.path2basename(idnadir,"*")
+ with self.prefix(src=os.path.join(pkgdir, "VMP"), dst=""):
+ self.path("SL_Launcher")
+ self.path("*.py")
+ # certifi will be imported by requests; this is our custom version to get our ca-bundle.crt
+ self.path("certifi")
+ with self.prefix(src=os.path.join(pkgdir, "lib", "python"), dst=""):
+ # llbase provides our llrest service layer and llsd decoding
+ with self.prefix("llbase"):
+ self.path("*.py")
+ self.path("_cllsd.so")
+ #requests module needed by llbase/llrest.py
+ #this is only needed on POSIX, because in Windows we compile it into the EXE
+ for pypkg in "chardet", "idna", "requests", "urllib3":
+ self.path(pypkg)
# most everything goes in the Resources directory
with self.prefix(src="", dst="Resources"):
@@ -1273,18 +1244,15 @@ class LinuxManifest(ViewerManifest):
self.path("../linux_crash_logger/linux-crash-logger","linux-crash-logger.bin")
self.path2basename("../llplugin/slplugin", "SLPlugin")
#this copies over the python wrapper script, associated utilities and required libraries, see SL-321, SL-322 and SL-323
- self.path2basename("../viewer_components/manager","SL_Launcher")
- self.path2basename("../viewer_components/manager","*.py")
- llbase_path = os.path.join(self.get_dst_prefix(),'llbase')
- if not os.path.exists(llbase_path):
- os.makedirs(llbase_path)
- with self.prefix(dst="llbase"):
- self.path2basename("../packages/lib/python/llbase","*.py")
- self.path2basename("../packages/lib/python/llbase","_cllsd.so")
-
- with self.prefix("res-sdl"):
- self.path("*")
- # recurse
+ with self.prefix(src="../viewer_components/manager", dst=""):
+ self.path("SL_Launcher")
+ self.path("*.py")
+ with self.prefix(src=os.path.join("lib", "python", "llbase"), dst="llbase"):
+ self.path("*.py")
+ self.path("_cllsd.so")
+
+ # recurses, packaged again
+ self.path("res-sdl")
# Get the icons based on the channel type
icon_path = self.icon_path()
@@ -1295,9 +1263,10 @@ class LinuxManifest(ViewerManifest):
self.path("secondlife_256.BMP","ll_icon.BMP")
# plugins
- with self.prefix(src="", dst="bin/llplugin"):
- self.path("../media_plugins/gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so")
- self.path("../media_plugins/libvlc/libmedia_plugin_libvlc.so", "libmedia_plugin_libvlc.so")
+ with self.prefix(src="../media_plugins", dst="bin/llplugin"):
+ self.path("gstreamer010/libmedia_plugin_gstreamer010.so",
+ "libmedia_plugin_gstreamer.so")
+ self.path2basename("libvlc", "libmedia_plugin_libvlc.so")
with self.prefix(src=os.path.join(os.pardir, 'packages', 'lib', 'vlc', 'plugins'), dst="bin/llplugin/vlc/plugins"):
self.path( "plugins.dat" )