--- CMakeLists.txt.orig
+++ CMakeLists.txt
@@ -14,18 +14,22 @@
 	set(CMAKE_INSTALL_PREFIX "/usr" CACHE PATH "default install path" FORCE)
 endif()
 
-set(CMAKE_INSTALL_DOCDIR "" CACHE PATH "documentation root (DATAROOTDIR/doc/${PROJECT_NAME}${LIBIIO_VERSION_MAJOR}-doc)")
 include(GNUInstallDirs)
 if(ENABLE_SHARED AND ${CMAKE_SYSTEM_NAME} MATCHES "Linux")
 	set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
 	set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
 endif()
-set(CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${PROJECT_NAME}${LIBIIO_VERSION_MAJOR}-doc")
+
+# Set the default install DOCDIR if not provided
+if (NOT CMAKE_INSTALL_DOCDIR)
+	set (CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${PROJECT_NAME}${LIBIIO_VERSION_MAJOR}-doc")
+endif ()
 
 set(INSTALL_PKGCONFIG_DIR "${CMAKE_INSTALL_LIBDIR}/pkgconfig"
 	CACHE PATH "Installation directory for pkgconfig (.pc) files")
 mark_as_advanced(INSTALL_PKGCONFIG_DIR)
 
+# Set the default build type if not provided
 if (NOT CMAKE_BUILD_TYPE)
 	set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
 		"Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel."
@@ -35,16 +39,23 @@
 
 set(BUILD_SHARED_LIBS ON CACHE BOOL "Build shared libraries")
 
+# Darwin-specific settings
 if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
 	option(OSX_PACKAGE "Create a OSX package" ON)
 
-	set(OSX_INSTALL_FRAMEWORKSDIR "/Library/Frameworks" CACHE STRING "Installation directory for frameworks")
+        # Set the default install location if not provided
+        if (NOT OSX_INSTALL_FRAMEWORKSDIR)
+		set (OSX_INSTALL_FRAMEWORKSDIR "/Library/Frameworks" CACHE STRING "Installation directory for frameworks")
+        endif ()
 	get_filename_component(OSX_INSTALL_FRAMEWORKSDIR "${OSX_INSTALL_FRAMEWORKSDIR}" REALPATH BASE_DIR "${CMAKE_BINARY_DIR}")
 
 	set(CMAKE_MACOSX_RPATH ON)
 	set(SKIP_INSTALL_ALL ${OSX_PACKAGE})
 endif()
 
+# set these before any external include directories
+include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
+
 option(WITH_NETWORK_BACKEND "Enable the network backend" ON)
 option(WITH_TESTS "Build the test programs" ON)
 option(WITH_EXAMPLES "Build examples" OFF)
@@ -265,8 +276,6 @@
 	message(STATUS "Looking for libserialport : Failed; building without serial")
 endif()
 
-include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
-
 if(WITH_NETWORK_BACKEND)
 	message(STATUS "Building with Network back end support")
 	if (WIN32)
