diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7ecc993..793ec34 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -63,8 +63,8 @@ endif()
 #==================================================================================================
 
 find_package(LAPACK REQUIRED)
-target_link_libraries(blaze INTERFACE ${LAPACK_LIBRARIES})
-target_compile_options(blaze INTERFACE ${LAPACK_LINKER_FLAGS})
+target_link_libraries(blaze INTERFACE $<BUILD_INTERFACE:${LAPACK_LIBRARIES}>)
+target_compile_options(blaze INTERFACE $<BUILD_INTERFACE:${LAPACK_LINKER_FLAGS}>)
 
 
 #==================================================================================================
@@ -72,7 +72,7 @@ target_compile_options(blaze INTERFACE ${LAPACK_LINKER_FLAGS})
 #==================================================================================================
 
 find_package(Boost 1.54.0 REQUIRED)
-target_include_directories(blaze INTERFACE ${Boost_INCLUDE_DIRS})
+target_include_directories(blaze INTERFACE $<BUILD_INTERFACE:${Boost_INCLUDE_DIRS}>)
 
 
 #==================================================================================================
@@ -163,7 +163,7 @@ endif ()
 set(BLAZE_CACHE_SIZE ${BLAZE_CACHE_SIZE} CACHE STRING "Cache size of the CPU in bytes." FORCE)
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/CacheSize.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/CacheSize.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/CacheSize.h")
 
 
 #==================================================================================================
@@ -216,7 +216,7 @@ else ()
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/BLAS.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/BLAS.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/BLAS.h")
 
 
 #==================================================================================================
@@ -227,7 +227,7 @@ set(BLAZE_TRANSPOSE_FLAG "columnVector" CACHE STRING "Specify the default transp
 set_property(CACHE BLAZE_TRANSPOSE_FLAG PROPERTY STRINGS "columnVector;rowVector")
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/TransposeFlag.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/TransposeFlag.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/TransposeFlag.h")
 
 
 #==================================================================================================
@@ -238,7 +238,7 @@ set(BLAZE_STORAGE_ORDER "rowMajor" CACHE STRING "Specify the default storage ord
 set_property(CACHE BLAZE_STORAGE_ORDER PROPERTY STRINGS "rowMajor;columnMajor")
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/StorageOrder.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/StorageOrder.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/StorageOrder.h")
 
 
 #==================================================================================================
@@ -254,7 +254,7 @@ else ()
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/Vectorization.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/Vectorization.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/Vectorization.h")
 
 
 #==================================================================================================
@@ -300,7 +300,7 @@ elseif (BLAZE_SMP_THREADS STREQUAL "HPX")
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/SMP.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/SMP.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/SMP.h")
 
 
 #==================================================================================================
@@ -316,7 +316,7 @@ else ()
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/Restrict.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/Restrict.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/Restrict.h")
 
 
 #==================================================================================================
@@ -346,7 +346,7 @@ else ()
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/Optimizations.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/Optimizations.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/Optimizations.h")
 
 
 #==================================================================================================
@@ -364,7 +364,7 @@ else ()
 endif ()
 
 configure_file ("${CMAKE_CURRENT_LIST_DIR}/cmake/Inline.h.in"
-                "${CMAKE_CURRENT_LIST_DIR}/blaze/config/Inline.h")
+                "${CMAKE_CURRENT_BINARY_DIR}/blaze/config/Inline.h")
 
 
 #==================================================================================================
@@ -379,6 +379,7 @@ write_basic_package_version_file(
    COMPATIBILITY SameMajorVersion
    )
 
+install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/blaze DESTINATION include)
 install(DIRECTORY blaze DESTINATION include)
 install(TARGETS blaze EXPORT blazeTargets)
 
