From 8aae5a105b2e0f221ee074e30008f56697981665 Mon Sep 17 00:00:00 2001
From: Aimee Linden <aimee@lindenlab.com>
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

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 <aimee@lindenlab.com>
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

---
 doc/contributions.txt         | 1 +
 indra/llcommon/lleventtimer.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index c8125c675f..38c34bb863 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -518,6 +518,7 @@ Robin Cornelius
 	SNOW-108
 	SNOW-204
 	SNOW-484
+	SNOW-506
 	VWR-2488
 	VWR-9557
 	VWR-11128
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<LLEventTimer>
+class LL_COMMON_API LLEventTimer : public LLInstanceTracker<LLEventTimer>
 {
 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 <aimee@lindenlab.com>
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

---
 doc/contributions.txt          | 1 +
 indra/newview/llnamelistctrl.h | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index 38c34bb863..852c1c5f92 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -519,6 +519,7 @@ Robin Cornelius
 	SNOW-204
 	SNOW-484
 	SNOW-506
+	SNOW-514
 	VWR-2488
 	VWR-9557
 	VWR-11128
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<LLNameListCtrl>
+:	public LLScrollListCtrl, public LLInstanceTracker<LLNameListCtrl>
 {
 public:
 	typedef enum e_name_type
-- 
cgit v1.2.3


From 3b59f688c14d36d2b5126fe19a01882edee6c4b9 Mon Sep 17 00:00:00 2001
From: Aimee Linden <aimee@lindenlab.com>
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

---
 doc/contributions.txt             | 1 +
 indra/newview/llviewermessage.cpp | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index 852c1c5f92..fd43155523 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -618,6 +618,7 @@ Tharax Ferraris
 	VWR-605
 Thickbrick Sleaford
 	SNOW-207
+	SNOW-743
 	VWR-7109
 	VWR-9287
 	VWR-13483
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 <aimee@lindenlab.com>
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.
---
 doc/contributions.txt            |  1 +
 indra/newview/viewer_manifest.py | 16 +++++++++++-----
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index fd43155523..f7dada053b 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -520,6 +520,7 @@ Robin Cornelius
 	SNOW-484
 	SNOW-506
 	SNOW-514
+	SNOW-585
 	VWR-2488
 	VWR-9557
 	VWR-11128
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 84e3e7ccb451f294901102473d8c274ef619595f Mon Sep 17 00:00:00 2001
From: Oz Linden <oz@lindenlab.com>
Date: Tue, 17 Aug 2010 14:43:13 -0400
Subject: replace universal email notice setting with a comment on how to
 produce a specific one

---
 BuildParams | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/BuildParams b/BuildParams
index 900bbc0510..058205ad98 100644
--- a/BuildParams
+++ b/BuildParams
@@ -161,8 +161,8 @@ viewer-development.login_channel = "Second Life Beta Development"
 viewer-development.viewer_grid = agni
 viewer-development.build_viewer_update_version_manager = false
 
-# Notifications
-viewer-development.email = oz@lindenlab.com
+# Notifications - to configure email notices, add a setting like this:
+# <username>_<reponame>.email = <email-address>
 
 # =======================================
 # brad
-- 
cgit v1.2.3


From fcb240792f0229edd6444e5b152f2022da649c2d Mon Sep 17 00:00:00 2001
From: Aimee Linden <aimee@lindenlab.com>
Date: Wed, 18 Aug 2010 11:58:24 +0100
Subject: VWR-20747 (SNOW-527) FIXED Don't import deprecated python module sets

---
 doc/contributions.txt                   | 1 +
 indra/lib/python/indra/ipc/llmessage.py | 6 ++----
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index f7dada053b..b49a3649d5 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -150,6 +150,7 @@ blino Nakamura
 	VWR-17
 Boroondas Gupte
 	SNOW-278
+	SNOW-527
 	VWR-233
 	WEB-262
 Bulli Schumann
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 <aimee@lindenlab.com>
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

---
 doc/contributions.txt |  1 +
 indra/develop.py      | 51 +++++++++++++++++++++++++++++++++++++++++++++++----
 2 files changed, 48 insertions(+), 4 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index b49a3649d5..f2f1d5af3f 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -521,6 +521,7 @@ Robin Cornelius
 	SNOW-484
 	SNOW-506
 	SNOW-514
+	SNOW-520
 	SNOW-585
 	VWR-2488
 	VWR-9557
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 <aimee@lindenlab.com>
Date: Wed, 18 Aug 2010 13:01:56 +0100
Subject: VWR-20749 (SNOW-624) FIXED Fix compiling the viewer with Boost 1.42

---
 doc/contributions.txt                 | 1 +
 indra/newview/llcommandlineparser.cpp | 9 +++++++--
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index f2f1d5af3f..9267d7ab08 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -151,6 +151,7 @@ blino Nakamura
 Boroondas Gupte
 	SNOW-278
 	SNOW-527
+	SNOW-624
 	VWR-233
 	WEB-262
 Bulli Schumann
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 <aimee@lindenlab.com>
Date: Wed, 18 Aug 2010 17:41:36 +0100
Subject: VWR-20768 (SNOW-507) FIXED Missing LL_TEST conditions in cmake files

---
 doc/contributions.txt            |  1 +
 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 ++++++++++++++++++---------------
 7 files changed, 71 insertions(+), 60 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index 9267d7ab08..612041ecc5 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -523,6 +523,7 @@ Robin Cornelius
 	SNOW-506
 	SNOW-514
 	SNOW-520
+	SNOW-507
 	SNOW-585
 	VWR-2488
 	VWR-9557
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 <aimee@lindenlab.com>
Date: Wed, 18 Aug 2010 17:56:58 +0100
Subject: VWR-20770 (SNOW-649) FIXED Missing LL_TESTS condition around llplugin
 unit test

---
 doc/contributions.txt         |  1 +
 indra/llplugin/CMakeLists.txt | 29 ++++++++++++++++-------------
 2 files changed, 17 insertions(+), 13 deletions(-)

diff --git a/doc/contributions.txt b/doc/contributions.txt
index 612041ecc5..e124a68df4 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -616,6 +616,7 @@ Teardrops Fall
 	VWR-5366
 Techwolf Lupindo
 	SNOW-92
+	SNOW-649
 	VWR-12385
 tenebrous pau
 	VWR-247
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