Make our build and packaging shine again

This commit is contained in:
Siana Gearz
2011-05-09 13:35:51 +02:00
parent 2ca4d1bf64
commit 8227efcaf1
3 changed files with 28 additions and 29 deletions

View File

@@ -43,9 +43,9 @@ else (USE_GOOGLE_PERFTOOLS)
set(TCMALLOC_FLAG -ULL_USE_TCMALLOC)
endif (USE_GOOGLE_PERFTOOLS)
if (NOT(DISABLE_TCMALLOC OR NOT USE_GOOGLE_PERFTOOLS))
if (NOT(DISABLE_TCMALLOC OR USE_GOOGLE_PERFTOOLS OR STANDALONE))
message(STATUS "Building with Google TCMalloc")
set(TCMALLOC_FLAG -DLL_USE_TCMALLOC=1_)
set(TCMALLOC_FLAG -DLL_USE_TCMALLOC=1)
include_directories(${GOOGLE_PERFTOOLS_INCLUDE_DIR})
set(GOOGLE_PERFTOOLS_LIBRARIES ${TCMALLOC_LIBRARIES})
set(GOOGLE_PERFTOOLS_LINKER_FLAGS ${TCMALLOC_LINKER_FLAGS})

View File

@@ -119,7 +119,6 @@ ARGUMENTS=[
Example use: %(name)s --arch=i686
On Linux this would try to use Linux_i686Manifest.""",
default=""),
dict(name='artwork', description='Artwork directory.', default=DEFAULT_SRCTREE),
dict(name='build', description='Build directory.', default=DEFAULT_SRCTREE),
dict(name='buildtype', description="""The build type used. ('Debug', 'Release', 'ReleaseSSE2' or 'RelWithDebInfo')
Default is Release """,
@@ -127,9 +126,6 @@ ARGUMENTS=[
dict(name='branding_id', description="""Identifier for the branding set to
use. Currently, 'secondlife' or 'snowglobe')""",
default='secondlife'),
dict(name='channel',
description="""The channel to use for updates, packaging, settings name, etc.""",
default=get_channel),
dict(name='configuration',
description="""The build configuration used. Only used on OS X for
now, but it could be used for other platforms as well.""",
@@ -140,13 +136,16 @@ ARGUMENTS=[
though it's not strictly a grid, 'firstlook' is also an acceptable
value for this parameter.""",
default=""),
dict(name='channel',
description="""The channel to use for updates, packaging, settings name, etc.""",
default=get_channel),
dict(name='login_channel',
description="""The channel to use for login handshake/updates only.""",
default=None),
dict(name='installer_name',
description=""" The name of the file that the installer should be
packaged up into. Only used on Linux at the moment.""",
default=None),
dict(name='login_channel',
description="""The channel to use for login handshake/updates only.""",
default=None),
dict(name='login_url',
description="""The url that the login screen displays in the client.""",
default=None),
@@ -160,6 +159,7 @@ ARGUMENTS=[
dict(name='standalone',
description='Set to ON if this is a standalone build.',
default="OFF"),
dict(name='artwork', description='Artwork directory.', default=DEFAULT_SRCTREE),
dict(name='touch',
description="""File to touch when action is finished. Touch file will
contain the name of the final package in a form suitable
@@ -637,9 +637,9 @@ class LLManifest(object):
is_glob = False
# look under each prefix for matching paths
paths = [os.path.join(self.get_src_prefix(), src),
paths = set([os.path.join(self.get_src_prefix(), src),
os.path.join(self.get_artwork_prefix(), src),
os.path.join(self.get_build_prefix(), src)]
os.path.join(self.get_build_prefix(), src)])
for path in paths:
if self.wildcard_pattern.search(path):
is_glob = True

View File

@@ -263,19 +263,21 @@ class WindowsManifest(ViewerManifest):
self.path("skins/default/xui/en-us/mime_types_windows.xml", "skins/default/xui/en-us/mime_types.xml")
# Get llcommon and deps. If missing assume static linkage and continue.
#~ if self.prefix(src="../../libraries/i686-win32/lib/release", dst=""):
#~ try:
#~ self.path('llcommon.dll')
#~ except RuntimeError, err:
#~ print err.message
#~ print "Skipping llcommon.dll (assuming llcommon was linked statically)"
#~ try:
#~ self.path('libapr-1.dll')
#~ self.path('libaprutil-1.dll')
#~ self.path('libapriconv-1.dll')
#~ except RuntimeError, err:
#~ pass
#~ self.end_prefix()
if self.prefix(src=self.args['configuration'], dst=""):
try:
self.path('llcommon.dll')
except RuntimeError, err:
print err.message
print "Skipping llcommon.dll (assuming llcommon was linked statically)"
self.end_prefix()
if self.prefix(src="../../libraries/i686-win32/lib/release", dst=""):
try:
self.path('libapr-1.dll')
self.path('libaprutil-1.dll')
self.path('libapriconv-1.dll')
except RuntimeError, err:
pass
self.end_prefix()
# For google-perftools tcmalloc allocator.
self.path("../../libraries/i686-win32/lib/release/libtcmalloc_minimal.dll", dst="libtcmalloc_minimal.dll")
@@ -454,9 +456,6 @@ class DarwinManifest(ViewerManifest):
self.path("../../libraries/universal-darwin/lib_release/libvorbis.0.dylib", dst="MacOS/libvorbis.0.dylib")
self.path("../../libraries/universal-darwin/lib_release/libogg.0.dylib", dst="MacOS/libogg.0.dylib")
# hunspell library
#self.path("../../libraries/universal-darwin/lib_release/libhunspell-1.2.dylib", "MacOS/libhunspell-1.2.dylib");
# most everything goes in the Resources directory
if self.prefix(src="", dst="Resources"):
super(DarwinManifest, self).construct()
@@ -518,7 +517,8 @@ class DarwinManifest(ViewerManifest):
# dependencies on shared libs
mac_crash_logger_res_path = self.dst_path_of("mac-crash-logger.app/Contents/Resources")
slplugin_res_path = self.dst_path_of("SLPlugin.app/Contents/Resources")
for libfile in ("libapr-1.0.3.7.dylib",
for libfile in ("libllcommon.dylib",
"libapr-1.0.3.7.dylib",
"libaprutil-1.0.3.8.dylib",
"libexpat.0.5.0.dylib"):
target_lib = os.path.join('../../..', libfile)
@@ -793,7 +793,6 @@ class Linux_i686Manifest(LinuxManifest):
self.path("libalut.so")
self.path("libopenal.so", "libopenal.so.1")
self.path("libtcmalloc_minimal.so.0")
#self.path("libhunspell-1.2.so.0.0.0", "libhunspell-1.2.so.0")
self.path("libtcmalloc_minimal.so.0.0.0")
self.end_prefix("lib")