diff --git a/CMakeLists.txt b/CMakeLists.txt
index 195f865f9510b138c14b1533a80d58399c8fd6e0..4b8c4c43ca981e2c7a65d0ca00124764ac2b59b0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -30,18 +30,14 @@ add_library(usgscsm SHARED
 set_target_properties(usgscsm PROPERTIES
     VERSION ${PROJECT_VERSION}
     SOVERSION 1
-    UsgsAstroFramePlugin.h
-    UsgsAstroFrameSensorModel.h
-    UsgsAstroLsISD.h
-    UsgsAstroLsPlugin.h
-    UsgsAstroLsSensorModel.h
-    UsgsAstroLsStateData.h
 )
 
+set(USGSCSM_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/include/usgscsm"
+                         "${CMAKE_CURRENT_SOURCE_DIR}/include/json")
+
 target_include_directories(usgscsm
                            PUBLIC
-                           include/usgscsm
-                           include/
+                           ${USGSCSM_INCLUDE_DIRS}
                            ${CSM_INCLUDE_DIR}
 )
 
@@ -55,12 +51,12 @@ target_link_libraries(usgscsm
 
 if(WIN32)
   install(TARGETS usgscsm
-    RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR}
-    PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+    RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR})
+    install(DIRECTORY ${USGSCSM_INCLUDE_DIRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/usgscsm)
 else()
   install(TARGETS usgscsm
-    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-    PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
+    install(DIRECTORY ${USGSCSM_INCLUDE_DIRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/usgscsm)
 endif()
 
 
diff --git a/src/UsgsAstroFramePlugin.cpp b/src/UsgsAstroFramePlugin.cpp
index 4edd9814cb15fb5d1fe6647b05e6c1c14c21b7f0..4641cd22a2e2c6f013eeb5c2a3bfa06ae211aae2 100644
--- a/src/UsgsAstroFramePlugin.cpp
+++ b/src/UsgsAstroFramePlugin.cpp
@@ -10,7 +10,7 @@
 #include <Warning.h>
 #include <Version.h>
 
-#include <json/json.hpp>
+#include <json.hpp>
 
 
 using json = nlohmann::json;
diff --git a/src/UsgsAstroFrameSensorModel.cpp b/src/UsgsAstroFrameSensorModel.cpp
index 45421c8c1e274038925a9a12ab2d9283b5ac4e33..bb93473a7e523a595fe8dcb60bba562eabab21d8 100644
--- a/src/UsgsAstroFrameSensorModel.cpp
+++ b/src/UsgsAstroFrameSensorModel.cpp
@@ -4,7 +4,7 @@
 #include <iostream>
 #include <sstream>
 
-#include <json/json.hpp>
+#include <json.hpp>
 
 #include <Error.h>
 #include <Version.h>
diff --git a/src/UsgsAstroLsPlugin.cpp b/src/UsgsAstroLsPlugin.cpp
index 7343b091c329096726428671a410a7110251a1c3..f275a0c81c9eb133e5ba98c8742ee05fdf34fb8e 100644
--- a/src/UsgsAstroLsPlugin.cpp
+++ b/src/UsgsAstroLsPlugin.cpp
@@ -39,7 +39,7 @@
 #include <fstream>
 #include <stdlib.h>
 #include <math.h>
-#include <json/json.hpp>
+#include <json.hpp>
 
 
 using json = nlohmann::json;
diff --git a/src/UsgsAstroLsStateData.cpp b/src/UsgsAstroLsStateData.cpp
index 2e33bed9d511f217e48fe8da67db29ef035ee797..9b1fba866ce877c857ed7c7b4258e02e399096cd 100644
--- a/src/UsgsAstroLsStateData.cpp
+++ b/src/UsgsAstroLsStateData.cpp
@@ -33,7 +33,7 @@
 #include <UsgsAstroLsPlugin.h>
 #include <sstream>
 #include <Error.h>
-#include <json/json.hpp>
+#include <json.hpp>
 using json = nlohmann::json;
 
 const std::string  UsgsAstroLsStateData::SENSOR_MODEL_NAME
diff --git a/tests/TestyMcTestFace.cpp b/tests/TestyMcTestFace.cpp
index 29558227ed4e2723747f34504edae5c9eee97d51..20c569e0c2720b4c462c32ce233ab67e3f3c671f 100644
--- a/tests/TestyMcTestFace.cpp
+++ b/tests/TestyMcTestFace.cpp
@@ -1,7 +1,7 @@
 #include "UsgsAstroFramePlugin.h"
 #include "UsgsAstroFrameSensorModel.h"
 
-#include <json/json.hpp>
+#include <json.hpp>
 
 #include <sstream>
 #include <fstream>