From 9cd1efca176ebf9e2f5d5d5c1dae90d8ee017dad Mon Sep 17 00:00:00 2001
From: James Cook <james@lindenlab.com>
Date: Thu, 10 Sep 2009 21:15:41 +0000
Subject: [PATCH] Header file corrections to let us build without precompiled
 headers from llprimitive and llvfs.  Allows better dependency analysis.

---
 indra/newview/llappviewer.cpp              | 6 ++++--
 indra/newview/llavataractions.cpp          | 1 +
 indra/newview/llfloaterimagepreview.h      | 2 ++
 indra/newview/llfolderviewitem.h           | 1 +
 indra/newview/llpanelobject.cpp            | 2 ++
 indra/newview/lltoolplacer.cpp             | 1 +
 indra/newview/llviewerinventory.h          | 2 ++
 indra/newview/llviewerprecompiledheaders.h | 2 ++
 indra/newview/llviewerwindow.h             | 3 +++
 9 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 9fe02a8ead2..19e1273dc67 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -34,8 +34,7 @@
 
 #include "llappviewer.h"
 
-#include "llprimitive.h"
-
+// Viewer includes
 #include "llversionviewer.h"
 #include "llfeaturemanager.h"
 #include "lluictrlfactory.h"
@@ -80,7 +79,10 @@
 
 // Linden library includes
 #include "llmemory.h"
+#include "llprimitive.h"
 #include "llurlaction.h"
+#include "llvfsthread.h"
+#include "llvolumemgr.h"
 
 // Third party library includes
 #include <boost/bind.hpp>
diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp
index 5f71b6e3f61..4819703e728 100644
--- a/indra/newview/llavataractions.cpp
+++ b/indra/newview/llavataractions.cpp
@@ -41,6 +41,7 @@
 
 #include "llagent.h"
 #include "llappviewer.h"		// for gLastVersionChannel
+#include "llcachename.h"
 #include "llcallingcard.h"		// for LLAvatarTracker
 #include "llinventorymodel.h"	// for gInventory.findCategoryUUIDForType
 #include "llimview.h"			// for gIMMgr
diff --git a/indra/newview/llfloaterimagepreview.h b/indra/newview/llfloaterimagepreview.h
index f007697e882..4a12543650f 100644
--- a/indra/newview/llfloaterimagepreview.h
+++ b/indra/newview/llfloaterimagepreview.h
@@ -35,6 +35,7 @@
 
 #include "llfloaternamedesc.h"
 #include "lldynamictexture.h"
+#include "llpointer.h"
 #include "llquaternion.h"
 
 class LLComboBox;
@@ -43,6 +44,7 @@ class LLViewerJointMesh;
 class LLVOAvatar;
 class LLTextBox;
 class LLVertexBuffer;
+class LLVolume;
 
 class LLImagePreviewSculpted : public LLViewerDynamicTexture
 {
diff --git a/indra/newview/llfolderviewitem.h b/indra/newview/llfolderviewitem.h
index 31866c83c8b..eec885fd291 100644
--- a/indra/newview/llfolderviewitem.h
+++ b/indra/newview/llfolderviewitem.h
@@ -33,6 +33,7 @@
 #define LLFOLDERVIEWITEM_H
 
 #include "llview.h"
+#include "lldarray.h"  // *TODO: Eliminate, forward declare
 
 class LLFontGL;
 class LLFolderView;
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index 9ec98743844..6a61e0f02fe 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -39,9 +39,11 @@
 #include "lleconomy.h"
 #include "llerror.h"
 #include "llfontgl.h"
+#include "llmaterialtable.h"
 #include "llpermissionsflags.h"
 #include "llstring.h"
 #include "llvolume.h"
+#include "material_codes.h"
 #include "m3math.h"
 
 // project includes
diff --git a/indra/newview/lltoolplacer.cpp b/indra/newview/lltoolplacer.cpp
index de68dd61536..a7f4cb558e8 100644
--- a/indra/newview/lltoolplacer.cpp
+++ b/indra/newview/lltoolplacer.cpp
@@ -65,6 +65,7 @@
 // linden library headers
 #include "llprimitive.h"
 #include "llwindow.h"			// incBusyCount()
+#include "material_codes.h"
 
 const LLVector3 DEFAULT_OBJECT_SCALE(0.5f, 0.5f, 0.5f);
 
diff --git a/indra/newview/llviewerinventory.h b/indra/newview/llviewerinventory.h
index 631f9ac48b9..d5b99ac160f 100644
--- a/indra/newview/llviewerinventory.h
+++ b/indra/newview/llviewerinventory.h
@@ -37,6 +37,8 @@
 #include "llframetimer.h"
 #include "llwearable.h"
 
+#include <boost/signals2.hpp>	// boost::signals2::trackable
+
 class LLFolderView;
 class LLFolderBridge;
 class LLViewerInventoryCategory;
diff --git a/indra/newview/llviewerprecompiledheaders.h b/indra/newview/llviewerprecompiledheaders.h
index 8bf73647145..21d4c724287 100644
--- a/indra/newview/llviewerprecompiledheaders.h
+++ b/indra/newview/llviewerprecompiledheaders.h
@@ -207,6 +207,8 @@
 #include "patch_dct.h"
 #include "sound_ids.h"
 
+// Builds work with all headers below commented out as of 2009-09-10 JC
+
 // Library includes from llprimitive
 #include "imageids.h"
 #include "legacy_object_types.h"
diff --git a/indra/newview/llviewerwindow.h b/indra/newview/llviewerwindow.h
index c3c9d7021e9..e4f6240fc75 100644
--- a/indra/newview/llviewerwindow.h
+++ b/indra/newview/llviewerwindow.h
@@ -51,6 +51,9 @@
 #include "llcursortypes.h"
 #include "llhandle.h"
 
+#include <boost/function.hpp>
+#include <boost/signals2.hpp>
+
 class LLView;
 class LLViewerObject;
 class LLUUID;
-- 
GitLab