summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAimee Linden <aimee@lindenlab.com>2010-08-20 14:06:32 +0100
committerAimee Linden <aimee@lindenlab.com>2010-08-20 14:06:32 +0100
commitaabf1b4fa24ea8ce86e11d80f58f79a058237ff4 (patch)
tree9453ad84a6b9b870c0a4d20c8b12112317ab5cfd
parent29512788adbf08bc1d000a3682dd4efa3cab61db (diff)
VWR-20847 (SNOW-543/SNOW-517) FIXED Linux packaging fixes.
-rw-r--r--doc/contributions.txt3
-rw-r--r--indra/newview/CMakeLists.txt4
-rw-r--r--indra/newview/viewer_manifest.py66
3 files changed, 37 insertions, 36 deletions
diff --git a/doc/contributions.txt b/doc/contributions.txt
index 3855cb5c29..eea73ee767 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -606,6 +606,8 @@ Strife Onizuka
VWR-2265
VWR-4111
Tayra Dagostino
+ SNOW-517
+ SNOW-543
VWR-13947
TBBle Kurosawa
VWR-938
@@ -613,6 +615,7 @@ TBBle Kurosawa
VWR-942
VWR-944
VWR-945
+ SNOW-543
VWR-1891
VWR-1892
Teardrops Fall
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 65502209f7..1ee7586d5f 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -1704,12 +1704,12 @@ if (LINUX)
add_dependencies(${VIEWER_BINARY_NAME} SLPlugin media_plugin_gstreamer010 media_plugin_webkit)
- if (NOT INSTALL)
+ if (PACKAGE)
add_custom_target(package ALL DEPENDS ${product}.tar.bz2)
add_dependencies(package linux-crash-logger-target)
add_dependencies(package linux-updater-target)
check_message_template(package)
- endif (NOT INSTALL)
+ endif (PACKAGE)
add_custom_command(
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/.${product}.copy_touched
diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py
index 9885d1aa0d..0eda4007e3 100644
--- a/indra/newview/viewer_manifest.py
+++ b/indra/newview/viewer_manifest.py
@@ -833,6 +833,28 @@ class LinuxManifest(ViewerManifest):
# Create an appropriate gridargs.dat for this package, denoting required grid.
self.put_in_file(self.flags_list(), 'etc/gridargs.dat')
+ self.path("secondlife-bin","bin/do-not-directly-run-secondlife-bin")
+ self.path("../linux_crash_logger/linux-crash-logger","bin/linux-crash-logger.bin")
+ self.path("../linux_updater/linux-updater", "bin/linux-updater.bin")
+ self.path("../llplugin/slplugin/SLPlugin", "bin/SLPlugin")
+
+ if self.prefix("res-sdl"):
+ self.path("*")
+ # recurse
+ self.end_prefix("res-sdl")
+
+ # plugins
+ if self.prefix(src="", dst="bin/llplugin"):
+ self.path("../media_plugins/webkit/libmedia_plugin_webkit.so", "libmedia_plugin_webkit.so")
+ self.path("../media_plugins/gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so")
+ self.end_prefix("bin/llplugin")
+
+ try:
+ self.path("../llcommon/libllcommon.so", "lib/libllcommon.so")
+ except:
+ print "Skipping llcommon.so (assuming llcommon was linked statically)"
+
+ self.path("featuretable_linux.txt")
def package_finish(self):
if 'installer_name' in self.args:
@@ -847,6 +869,10 @@ class LinuxManifest(ViewerManifest):
else:
installer_name += '_' + self.channel_oneword().upper()
+ if self.args['buildtype'].lower() == 'release' and self.is_packaging_viewer():
+ print "* Going strip-crazy on the packaged binaries, since this is a RELEASE build"
+ self.run_command("find %(d)r/bin %(d)r/lib -type f | xargs --no-run-if-empty strip -S" % {'d': self.get_dst_prefix()} ) # makes some small assumptions about our packaged dir structure
+
# Fix access permissions
self.run_command("""
find %(dst)s -type d | xargs --no-run-if-empty chmod 755;
@@ -883,36 +909,12 @@ class Linux_i686Manifest(LinuxManifest):
# install either the libllkdu we just built, or a prebuilt one, in
# decreasing order of preference. for linux package, this goes to bin/
- for lib, destdir in ("llkdu", "bin"), ("llcommon", "lib"):
- libfile = "lib%s.so" % lib
- try:
- self.path(self.find_existing_file(os.path.join(os.pardir, lib, libfile),
- '../../libraries/i686-linux/lib_release_client/%s' % libfile),
- dst=os.path.join(destdir, libfile))
- # keep this one to preserve syntax, open source mangling removes previous lines
- pass
- except RuntimeError:
- print "Skipping %s - not found" % libfile
- pass
-
- self.path("secondlife-bin","bin/do-not-directly-run-secondlife-bin")
-
- self.path("../linux_crash_logger/linux-crash-logger","bin/linux-crash-logger.bin")
- self.path("../linux_updater/linux-updater", "bin/linux-updater.bin")
- self.path("../llplugin/slplugin/SLPlugin", "bin/SLPlugin")
- if self.prefix("res-sdl"):
- self.path("*")
- # recurse
- self.end_prefix("res-sdl")
-
- # plugins
- if self.prefix(src="", dst="bin/llplugin"):
- self.path("../media_plugins/webkit/libmedia_plugin_webkit.so", "libmedia_plugin_webkit.so")
- self.path("../media_plugins/gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so")
- self.end_prefix("bin/llplugin")
-
- self.path("featuretable_linux.txt")
- #self.path("secondlife-i686.supp")
+ try:
+ self.path(self.find_existing_file('../llkdu/libllkdu.so',
+ '../../libraries/i686-linux/lib_release_client/libllkdu.so'),
+ dst='bin/libllkdu.so')
+ except:
+ print "Skipping libllkdu.so - not found"
if self.prefix("../../libraries/i686-linux/lib_release_client", dst="lib"):
self.path("libapr-1.so.0")
@@ -955,10 +957,6 @@ class Linux_i686Manifest(LinuxManifest):
self.path("libvivoxplatform.so")
self.end_prefix("lib")
- if self.args['buildtype'].lower() == 'release' and self.is_packaging_viewer():
- print "* Going strip-crazy on the packaged binaries, since this is a RELEASE build"
- self.run_command("find %(d)r/bin %(d)r/lib -type f | xargs --no-run-if-empty strip -S" % {'d': self.get_dst_prefix()} ) # makes some small assumptions about our packaged dir structure
-
################################################################
if __name__ == "__main__":