From 8aae5a105b2e0f221ee074e30008f56697981665 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Mon, 16 Aug 2010 13:58:33 +0100 Subject: Fix executable perms on develop.py which seem to have got lost somewhere in the move. --- indra/develop.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 indra/develop.py (limited to 'indra') diff --git a/indra/develop.py b/indra/develop.py old mode 100644 new mode 100755 -- cgit v1.2.3 From e9f14e3001afa624e9634b55ae9c687b3cca5351 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Mon, 16 Aug 2010 16:39:12 +0100 Subject: VWR-20670 (SNOW-506) FIXED Protection on LLInstanceTracker base in LLEventTimer needs to be public for gcc >4.1 --- indra/llcommon/lleventtimer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra') diff --git a/indra/llcommon/lleventtimer.h b/indra/llcommon/lleventtimer.h index 62586dd92f..7f42623d01 100644 --- a/indra/llcommon/lleventtimer.h +++ b/indra/llcommon/lleventtimer.h @@ -33,7 +33,7 @@ #include "lltimer.h" // class for scheduling a function to be called at a given frequency (approximate, inprecise) -class LL_COMMON_API LLEventTimer : protected LLInstanceTracker +class LL_COMMON_API LLEventTimer : public LLInstanceTracker { public: LLEventTimer(F32 period); // period is the amount of time between each call to tick() in seconds -- cgit v1.2.3 From 6981353b1a24d07512ca7aca74fadf50dbaf6732 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Mon, 16 Aug 2010 16:40:13 +0100 Subject: VWR-20671 (SNOW-514) FIXED Protection on LLInstanceTracker base in LLNameListCtrl needs to be public for gcc >4.1 --- indra/newview/llnamelistctrl.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra') diff --git a/indra/newview/llnamelistctrl.h b/indra/newview/llnamelistctrl.h index 268d16976f..981e3df16b 100644 --- a/indra/newview/llnamelistctrl.h +++ b/indra/newview/llnamelistctrl.h @@ -33,7 +33,7 @@ class LLNameListCtrl -: public LLScrollListCtrl, protected LLInstanceTracker +: public LLScrollListCtrl, public LLInstanceTracker { public: typedef enum e_name_type -- cgit v1.2.3 From 3b59f688c14d36d2b5126fe19a01882edee6c4b9 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Mon, 16 Aug 2010 17:03:23 +0100 Subject: VWR-20673 (SNOW-743) FIXED Compiler warning: 'region_access' may be used uninitialized in this function --- indra/newview/llviewermessage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'indra') diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index e1855a554b..2a6b272741 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -2651,7 +2651,7 @@ void process_improved_im(LLMessageSystem *msg, void **user_data) { LLVector3 pos, look_at; U64 region_handle; - U8 region_access; + U8 region_access = SIM_ACCESS_MIN; std::string region_info = ll_safe_string((char*)binary_bucket, binary_bucket_size); std::string region_access_str = LLStringUtil::null; std::string region_access_icn = LLStringUtil::null; -- cgit v1.2.3 From b53ac25d5c9e04e8e1cabaa4fdf817248431fc72 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Tue, 17 Aug 2010 03:38:45 +0100 Subject: SNOW-585 (VWR-20679) FIXED Build failure when the FMOD lib is not present. Also added Mac version of the same fix, and corrected the warning message in the Linux version that was already there. --- indra/newview/viewer_manifest.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'indra') diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index ecca003996..9885d1aa0d 100644 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -316,8 +316,11 @@ class WindowsManifest(ViewerManifest): # For use in crash reporting (generates minidumps) self.path("dbghelp.dll") - # For using FMOD for sound... DJS - self.path("fmod.dll") + try: + # FMOD for sound + self.path("fmod.dll") + except: + print "Skipping FMOD - not found" self.enable_no_crt_manifest_check() @@ -643,8 +646,11 @@ class DarwinManifest(ViewerManifest): ): self.path(os.path.join(libdir, libfile), libfile) - #libfmodwrapper.dylib - self.path(self.args['configuration'] + "/libfmodwrapper.dylib", "libfmodwrapper.dylib") + try: + # FMOD for sound + self.path(self.args['configuration'] + "/libfmodwrapper.dylib", "libfmodwrapper.dylib") + except: + print "Skipping FMOD - not found" # our apps self.path("../mac_crash_logger/" + self.args['configuration'] + "/mac-crash-logger.app", "mac-crash-logger.app") @@ -933,7 +939,7 @@ class Linux_i686Manifest(LinuxManifest): self.path("libfmod-3.75.so") pass except: - print "Skipping libkdu_v42R.so - not found" + print "Skipping libfmod-3.75.so - not found" pass self.end_prefix("lib") -- cgit v1.2.3 From fcb240792f0229edd6444e5b152f2022da649c2d Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Wed, 18 Aug 2010 11:58:24 +0100 Subject: VWR-20747 (SNOW-527) FIXED Don't import deprecated python module sets --- indra/lib/python/indra/ipc/llmessage.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'indra') diff --git a/indra/lib/python/indra/ipc/llmessage.py b/indra/lib/python/indra/ipc/llmessage.py index 6161badc70..91fb36b72c 100644 --- a/indra/lib/python/indra/ipc/llmessage.py +++ b/indra/lib/python/indra/ipc/llmessage.py @@ -26,8 +26,6 @@ THE SOFTWARE. $/LicenseInfo$ """ -from sets import Set, ImmutableSet - from compatibility import Incompatible, Older, Newer, Same from tokenstream import TokenStream @@ -44,8 +42,8 @@ class Template: def compatibleWithBase(self, base): messagenames = ( - ImmutableSet(self.messages.keys()) - | ImmutableSet(base.messages.keys()) + frozenset(self.messages.keys()) + | frozenset(base.messages.keys()) ) compatibility = Same() -- cgit v1.2.3 From 6baedc137079752318ab9ea7af6a69be589d9c5a Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Wed, 18 Aug 2010 12:30:26 +0100 Subject: VWR-20748 (SNOW-520) FIXED Make develop.py play nicely with express editions of Visual Studio --- indra/develop.py | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 47 insertions(+), 4 deletions(-) (limited to 'indra') diff --git a/indra/develop.py b/indra/develop.py index 63df0e983a..3c88bb8a01 100755 --- a/indra/develop.py +++ b/indra/develop.py @@ -76,6 +76,7 @@ class PlatformSetup(object): distcc = True cmake_opts = [] word_size = 32 + using_express = False def __init__(self): self.script_dir = os.path.realpath( @@ -497,9 +498,17 @@ class WindowsSetup(PlatformSetup): self._generator = version print 'Building with ', self.gens[version]['gen'] break - else: - print >> sys.stderr, 'Cannot find a Visual Studio installation!' - sys.exit(1) + else: + print >> sys.stderr, 'Cannot find a Visual Studio installation, testing for express editions' + for version in 'vc80 vc90 vc71'.split(): + if self.find_visual_studio_express(version): + self._generator = version + self.using_express = True + print 'Building with ', self.gens[version]['gen'] , "Express edition" + break + else: + print >> sys.stderr, 'Cannot find any Visual Studio installation' + sys.exit(1) return self._generator def _set_generator(self, gen): @@ -562,6 +571,28 @@ class WindowsSetup(PlatformSetup): return '' + def find_visual_studio_express(self, gen=None): + if gen is None: + gen = self._generator + gen = gen.lower() + try: + import _winreg + key_str = (r'SOFTWARE\Microsoft\VCEXpress\%s\Setup\VC' % + self.gens[gen]['ver']) + value_str = (r'ProductDir') + print ('Reading VS environment from HKEY_LOCAL_MACHINE\%s\%s' % + (key_str, value_str)) + print key_str + + reg = _winreg.ConnectRegistry(None, _winreg.HKEY_LOCAL_MACHINE) + key = _winreg.OpenKey(reg, key_str) + value = _winreg.QueryValueEx(key, value_str)[0]+"IDE" + print 'Found: %s' % value + return value + except WindowsError, err: + print >> sys.stderr, "Didn't find ", self.gens[gen]['gen'] + return '' + def get_build_cmd(self): if self.incredibuild: config = self.build_type @@ -572,6 +603,17 @@ class WindowsSetup(PlatformSetup): cmd = "%(bin)s %(prj)s.sln /build /cfg=%(cfg)s" % {'prj': self.project_name, 'cfg': config, 'bin': executable} return (executable, cmd) + environment = self.find_visual_studio() + if environment == '': + environment = self.find_visual_studio_express() + if environment == '': + print >> sys.stderr, "Something went very wrong during build stage, could not find a Visual Studio installation." + else: + build_dirs=self.build_dirs(); + print >> sys.stderr, "\nSolution generation complete, it can can now be found in:", build_dirs[0] + print >> sys.stderr, "\nPlease see https://wiki.secondlife.com/wiki/Microsoft_Visual_Studio#Extra_steps_for_Visual_Studio_Express_editions for express specific information" + exit(0) + # devenv.com is CLI friendly, devenv.exe... not so much. executable = '%sdevenv.com' % (self.find_visual_studio(),) cmd = ('"%s" %s.sln /build %s' % @@ -603,7 +645,8 @@ class WindowsSetup(PlatformSetup): '''Override to add the vstool.exe call after running cmake.''' PlatformSetup.run_cmake(self, args) if self.unattended == 'OFF': - self.run_vstool() + if self.using_express == False: + self.run_vstool() def run_vstool(self): for build_dir in self.build_dirs(): -- cgit v1.2.3 From 5bb7cbc663f77f6e75b8acac7ac4ec1fb346737d Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Wed, 18 Aug 2010 13:01:56 +0100 Subject: VWR-20749 (SNOW-624) FIXED Fix compiling the viewer with Boost 1.42 --- indra/newview/llcommandlineparser.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'indra') diff --git a/indra/newview/llcommandlineparser.cpp b/indra/newview/llcommandlineparser.cpp index 3f9e25518a..ee8646aad0 100644 --- a/indra/newview/llcommandlineparser.cpp +++ b/indra/newview/llcommandlineparser.cpp @@ -53,7 +53,7 @@ namespace po = boost::program_options; -// *NTOE:MEP - Currently the boost object reside in file scope. +// *NOTE:MEP - Currently the boost object reside in file scope. // This has a couple of negatives, they are always around and // there can be only one instance of each. // The plus is that the boost-ly-ness of this implementation is @@ -156,6 +156,12 @@ public: return mIsComposing; } + // Needed for boost 1.42 + virtual bool is_required() const + { + return false; // All our command line options are optional. + } + virtual bool apply_default(boost::any& value_store) const { return false; // No defaults. @@ -169,7 +175,6 @@ public: { mNotifyCallback(*value); } - } protected: -- cgit v1.2.3 From 855192a83b908bb2812a6faeeec11da1dcb95cd7 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Wed, 18 Aug 2010 17:41:36 +0100 Subject: VWR-20768 (SNOW-507) FIXED Missing LL_TEST conditions in cmake files --- indra/llcharacter/CMakeLists.txt | 17 +++++++++-------- indra/llinventory/CMakeLists.txt | 24 ++++++++++++------------ indra/llprimitive/CMakeLists.txt | 14 ++++++++------ indra/llui/CMakeLists.txt | 16 +++++++++------- indra/llvfs/CMakeLists.txt | 26 ++++++++++++++------------ indra/llxml/CMakeLists.txt | 33 ++++++++++++++++++--------------- 6 files changed, 70 insertions(+), 60 deletions(-) (limited to 'indra') diff --git a/indra/llcharacter/CMakeLists.txt b/indra/llcharacter/CMakeLists.txt index 85e3f97092..14841b5d3d 100644 --- a/indra/llcharacter/CMakeLists.txt +++ b/indra/llcharacter/CMakeLists.txt @@ -77,11 +77,12 @@ list(APPEND llcharacter_SOURCE_FILES ${llcharacter_HEADER_FILES}) add_library (llcharacter ${llcharacter_SOURCE_FILES}) -# Add tests -include(LLAddBuildTest) -# UNIT TESTS -SET(llcharacter_TEST_SOURCE_FILES - lljoint.cpp - ) -LL_ADD_PROJECT_UNIT_TESTS(llcharacter "${llcharacter_TEST_SOURCE_FILES}") - +if(LL_TESTS) + # Add tests + include(LLAddBuildTest) + # UNIT TESTS + SET(llcharacter_TEST_SOURCE_FILES + lljoint.cpp + ) + LL_ADD_PROJECT_UNIT_TESTS(llcharacter "${llcharacter_TEST_SOURCE_FILES}") +endif(LL_TESTS) diff --git a/indra/llinventory/CMakeLists.txt b/indra/llinventory/CMakeLists.txt index a563db901a..6b2b61f883 100644 --- a/indra/llinventory/CMakeLists.txt +++ b/indra/llinventory/CMakeLists.txt @@ -59,16 +59,16 @@ list(APPEND llinventory_SOURCE_FILES ${llinventory_HEADER_FILES}) add_library (llinventory ${llinventory_SOURCE_FILES}) +if(LL_TESTS) + #add unit tests + INCLUDE(LLAddBuildTest) + SET(llinventory_TEST_SOURCE_FILES + # no real unit tests yet! + ) + LL_ADD_PROJECT_UNIT_TESTS(llinventory "${llinventory_TEST_SOURCE_FILES}") -#add unit tests -INCLUDE(LLAddBuildTest) -SET(llinventory_TEST_SOURCE_FILES - # no real unit tests yet! - ) -LL_ADD_PROJECT_UNIT_TESTS(llinventory "${llinventory_TEST_SOURCE_FILES}") - -#set(TEST_DEBUG on) -set(test_libs llinventory ${LLMESSAGE_LIBRARIES} ${LLVFS_LIBRARIES} ${LLMATH_LIBRARIES} ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES}) -LL_ADD_INTEGRATION_TEST(inventorymisc "" "${test_libs}") -LL_ADD_INTEGRATION_TEST(llparcel "" "${test_libs}") - + #set(TEST_DEBUG on) + set(test_libs llinventory ${LLMESSAGE_LIBRARIES} ${LLVFS_LIBRARIES} ${LLMATH_LIBRARIES} ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES}) + LL_ADD_INTEGRATION_TEST(inventorymisc "" "${test_libs}") + LL_ADD_INTEGRATION_TEST(llparcel "" "${test_libs}") +endif(LL_TESTS) diff --git a/indra/llprimitive/CMakeLists.txt b/indra/llprimitive/CMakeLists.txt index 68a3d54597..f4d21308b3 100644 --- a/indra/llprimitive/CMakeLists.txt +++ b/indra/llprimitive/CMakeLists.txt @@ -53,9 +53,11 @@ list(APPEND llprimitive_SOURCE_FILES ${llprimitive_HEADER_FILES}) add_library (llprimitive ${llprimitive_SOURCE_FILES}) -#add unit tests -INCLUDE(LLAddBuildTest) -SET(llprimitive_TEST_SOURCE_FILES - llmediaentry.cpp - ) -LL_ADD_PROJECT_UNIT_TESTS(llprimitive "${llprimitive_TEST_SOURCE_FILES}") +if(LL_TESTS) + #add unit tests + INCLUDE(LLAddBuildTest) + SET(llprimitive_TEST_SOURCE_FILES + llmediaentry.cpp + ) + LL_ADD_PROJECT_UNIT_TESTS(llprimitive "${llprimitive_TEST_SOURCE_FILES}") +endif(LL_TESTS) diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index 12df9ccae4..8e78a5fefd 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -240,10 +240,12 @@ target_link_libraries(llui ${LLCOMMON_LIBRARIES} # must be after llimage, llwindow, llrender ) -# Add tests -include(LLAddBuildTest) -SET(llui_TEST_SOURCE_FILES - llurlmatch.cpp - llurlentry.cpp - ) -LL_ADD_PROJECT_UNIT_TESTS(llui "${llui_TEST_SOURCE_FILES}") +if(LL_TESTS) + # Add tests + include(LLAddBuildTest) + SET(llui_TEST_SOURCE_FILES + llurlmatch.cpp + llurlentry.cpp + ) + LL_ADD_PROJECT_UNIT_TESTS(llui "${llui_TEST_SOURCE_FILES}") +endif(LL_TESTS) diff --git a/indra/llvfs/CMakeLists.txt b/indra/llvfs/CMakeLists.txt index 05c7c7860c..722f4e2bfd 100644 --- a/indra/llvfs/CMakeLists.txt +++ b/indra/llvfs/CMakeLists.txt @@ -67,15 +67,17 @@ if (DARWIN) endif (DARWIN) -# Add tests -include(LLAddBuildTest) -# UNIT TESTS -SET(llvfs_TEST_SOURCE_FILES - # none so far - ) -LL_ADD_PROJECT_UNIT_TESTS(llvfs "${llvfs_TEST_SOURCE_FILES}") - -# INTEGRATION TESTS -set(test_libs llmath llcommon llvfs ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES}) -# TODO: Some of these need refactoring to be proper Unit tests rather than Integration tests. -LL_ADD_INTEGRATION_TEST(lldir "" "${test_libs}") +if(LL_TESTS) + # Add tests + include(LLAddBuildTest) + # UNIT TESTS + SET(llvfs_TEST_SOURCE_FILES + # none so far + ) + LL_ADD_PROJECT_UNIT_TESTS(llvfs "${llvfs_TEST_SOURCE_FILES}") + + # INTEGRATION TESTS + set(test_libs llmath llcommon llvfs ${LLCOMMON_LIBRARIES} ${WINDOWS_LIBRARIES}) + # TODO: Some of these need refactoring to be proper Unit tests rather than Integration tests. + LL_ADD_INTEGRATION_TEST(lldir "" "${test_libs}") +endif(LL_TESTS) diff --git a/indra/llxml/CMakeLists.txt b/indra/llxml/CMakeLists.txt index fbcfade383..eb5166ee71 100644 --- a/indra/llxml/CMakeLists.txt +++ b/indra/llxml/CMakeLists.txt @@ -45,24 +45,27 @@ target_link_libraries( llxml ${EXPAT_LIBRARIES} ) -# tests -# unit tests +if(LL_TESTS) + # tests -SET(llxml_TEST_SOURCE_FILES - # none yet! - ) -LL_ADD_PROJECT_UNIT_TESTS(llxml "${llxml_TEST_SOURCE_FILES}") + # unit tests -# integration tests + SET(llxml_TEST_SOURCE_FILES + # none yet! + ) + LL_ADD_PROJECT_UNIT_TESTS(llxml "${llxml_TEST_SOURCE_FILES}") -# set(TEST_DEBUG on) -set(test_libs - ${LLXML_LIBRARIES} - ${WINDOWS_LIBRARIES} - ${LLMATH_LIBRARIES} - ${LLCOMMON_LIBRARIES} - ) + # integration tests -LL_ADD_INTEGRATION_TEST(llcontrol "" "${test_libs}") + # set(TEST_DEBUG on) + set(test_libs + ${LLXML_LIBRARIES} + ${WINDOWS_LIBRARIES} + ${LLMATH_LIBRARIES} + ${LLCOMMON_LIBRARIES} + ) + LL_ADD_INTEGRATION_TEST(llcontrol "" "${test_libs}") + +endif(LL_TESTS) -- cgit v1.2.3 From 2977cbb741e2d3ae78034e73a5257cf6cf1792c6 Mon Sep 17 00:00:00 2001 From: Aimee Linden Date: Wed, 18 Aug 2010 17:56:58 +0100 Subject: VWR-20770 (SNOW-649) FIXED Missing LL_TESTS condition around llplugin unit test --- indra/llplugin/CMakeLists.txt | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'indra') diff --git a/indra/llplugin/CMakeLists.txt b/indra/llplugin/CMakeLists.txt index 441becbae0..fdd510b389 100644 --- a/indra/llplugin/CMakeLists.txt +++ b/indra/llplugin/CMakeLists.txt @@ -57,18 +57,21 @@ add_library (llplugin ${llplugin_SOURCE_FILES}) add_subdirectory(slplugin) -# Add tests -include(LLAddBuildTest) -# UNIT TESTS -SET(llplugin_TEST_SOURCE_FILES - llplugincookiestore.cpp - ) +if (LL_TESTS) + # Add tests + include(LLAddBuildTest) -# llplugincookiestore has a dependency on curl, so we need to link the curl library into the test. -set_source_files_properties( - llplugincookiestore.cpp - PROPERTIES - LL_TEST_ADDITIONAL_LIBRARIES "${CURL_LIBRARIES}" - ) + # UNIT TESTS + SET(llplugin_TEST_SOURCE_FILES + llplugincookiestore.cpp + ) -LL_ADD_PROJECT_UNIT_TESTS(llplugin "${llplugin_TEST_SOURCE_FILES}") + # llplugincookiestore has a dependency on curl, so we need to link the curl library into the test. + set_source_files_properties( + llplugincookiestore.cpp + PROPERTIES + LL_TEST_ADDITIONAL_LIBRARIES "${CURL_LIBRARIES}" + ) + + LL_ADD_PROJECT_UNIT_TESTS(llplugin "${llplugin_TEST_SOURCE_FILES}") +endif (LL_TESTS) -- cgit v1.2.3