diff --git a/indra/cmake/DragDrop.cmake b/indra/cmake/DragDrop.cmake
index 739d011813a84c693a92c446b5e6e8fd07e6c469..e56264f18750e6b9c93371ca00627611757e28f6 100644
--- a/indra/cmake/DragDrop.cmake
+++ b/indra/cmake/DragDrop.cmake
@@ -2,9 +2,7 @@
 
 if (VIEWER)
 
-  OPTION (OS_DRAG_DROP
-  "Build the viewer with OS level drag and drop turned on or off"
-  ON)
+  set(OS_DRAG_DROP ON CACHE BOOL "Build the viewer with OS level drag and drop turned on or off")
 
   if (OS_DRAG_DROP)
 
@@ -13,7 +11,7 @@ if (VIEWER)
     endif (WINDOWS)
 
     if (DARWIN)
-      add_definitions(-DLL_OS_DRAGDROP_ENABLED=0)
+      add_definitions(-DLL_OS_DRAGDROP_ENABLED=1)
     endif (DARWIN)
 
     if (LINUX)
diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp
index ffc44a1e84c1719af1ce9709c45f170dee6ba252..dc5a98756a3738b7d68d833ab9513aff844f8d6e 100644
--- a/indra/llwindow/llwindowmacosx.cpp
+++ b/indra/llwindow/llwindowmacosx.cpp
@@ -500,8 +500,10 @@ BOOL LLWindowMacOSX::createContext(int x, int y, int width, int height, int bits
 		// Set up window event handlers (some window-related events ONLY go to window handlers.)
 		InstallStandardEventHandler(GetWindowEventTarget(mWindow));
 		InstallWindowEventHandler(mWindow, mEventHandlerUPP, GetEventTypeCount (WindowHandlerEventList), WindowHandlerEventList, (void*)this, &mWindowHandlerRef); // add event handler
+#if LL_OS_DRAGDROP_ENABLED
 		InstallTrackingHandler( dragTrackingHandler, mWindow, (void*)this );		
 		InstallReceiveHandler( dragReceiveHandler, mWindow, (void*)this );
+#endif // LL_OS_DRAGDROP_ENABLED
 	}
 
 	{
@@ -3387,6 +3389,8 @@ MASK LLWindowMacOSX::modifiersToMask(SInt16 modifiers)
 	return mask;
 }	
 
+#if LL_OS_DRAGDROP_ENABLED
+
 OSErr LLWindowMacOSX::dragTrackingHandler(DragTrackingMessage message, WindowRef theWindow,
 						  void * handlerRefCon, DragRef drag)
 {
@@ -3507,3 +3511,4 @@ OSErr LLWindowMacOSX::handleDragNDrop(DragRef drag, LLWindowCallbacks::DragNDrop
 	return result;
 }
 
+#endif // LL_OS_DRAGDROP_ENABLED
diff --git a/indra/llwindow/llwindowmacosx.h b/indra/llwindow/llwindowmacosx.h
index bd3e46ebb495d90fb6dcce24036acf91a2ef95f7..09b8891db096ca5ea0f91b91af8840bb30d3643b 100644
--- a/indra/llwindow/llwindowmacosx.h
+++ b/indra/llwindow/llwindowmacosx.h
@@ -161,10 +161,13 @@ class LLWindowMacOSX : public LLWindow
 	void fixWindowSize(void);
 	void stopDockTileBounce();
 	static MASK modifiersToMask(SInt16 modifiers);
+	
+#if LL_OS_DRAGDROP_ENABLED
 	static OSErr dragTrackingHandler(DragTrackingMessage message, WindowRef theWindow,
 									 void * handlerRefCon, DragRef theDrag);
 	static OSErr dragReceiveHandler(WindowRef theWindow, void * handlerRefCon,	DragRef theDrag);
 	OSErr handleDragNDrop(DragRef theDrag, LLWindowCallbacks::DragNDropAction action);
+#endif // LL_OS_DRAGDROP_ENABLED
 	
 	//
 	// Platform specific variables