diff --git a/include/ndnboost/exception/detail/attribute_noreturn.hpp b/include/ndnboost/exception/detail/attribute_noreturn.hpp
index ae9f031..abf526f 100644
--- a/include/ndnboost/exception/detail/attribute_noreturn.hpp
+++ b/include/ndnboost/exception/detail/attribute_noreturn.hpp
@@ -7,11 +7,11 @@
 #define UUID_61531AB0680611DEADD5846855D89593
 
 #if defined(_MSC_VER)
-#define BOOST_ATTRIBUTE_NORETURN __declspec(noreturn)
+#define NDNBOOST_ATTRIBUTE_NORETURN __declspec(noreturn)
 #elif defined(__GNUC__)
-#define BOOST_ATTRIBUTE_NORETURN __attribute__((__noreturn__))
+#define NDNBOOST_ATTRIBUTE_NORETURN __attribute__((__noreturn__))
 #else
-#define BOOST_ATTRIBUTE_NORETURN
+#define NDNBOOST_ATTRIBUTE_NORETURN
 #endif
 
 #endif
diff --git a/include/ndnboost/exception/detail/error_info_impl.hpp b/include/ndnboost/exception/detail/error_info_impl.hpp
index 9847814..3127f2a 100644
--- a/include/ndnboost/exception/detail/error_info_impl.hpp
+++ b/include/ndnboost/exception/detail/error_info_impl.hpp
@@ -5,10 +5,10 @@
 
 #ifndef UUID_CE6983AC753411DDA764247956D89593
 #define UUID_CE6983AC753411DDA764247956D89593
-#if (__GNUC__*100+__GNUC_MINOR__>301) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if (__GNUC__*100+__GNUC_MINOR__>301) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma GCC system_header
 #endif
-#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if defined(_MSC_VER) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma warning(push,1)
 #endif
 
@@ -68,7 +68,7 @@
         };
     }
 
-#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if defined(_MSC_VER) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma warning(pop)
 #endif
 #endif
diff --git a/include/ndnboost/exception/detail/type_info.hpp b/include/ndnboost/exception/detail/type_info.hpp
index d1c671f..4c9eb47 100644
--- a/include/ndnboost/exception/detail/type_info.hpp
+++ b/include/ndnboost/exception/detail/type_info.hpp
@@ -5,17 +5,17 @@
 
 #ifndef UUID_C3E1741C754311DDB2834CCA55D89593
 #define UUID_C3E1741C754311DDB2834CCA55D89593
-#if (__GNUC__*100+__GNUC_MINOR__>301) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if (__GNUC__*100+__GNUC_MINOR__>301) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma GCC system_header
 #endif
-#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if defined(_MSC_VER) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma warning(push,1)
 #endif
 
 #include <ndnboost/detail/sp_typeinfo.hpp>
 #include <ndnboost/current_function.hpp>
 #include <ndnboost/config.hpp>
-#ifndef BOOST_NO_TYPEID
+#ifndef NDNBOOST_NO_TYPEID
 #include <ndnboost/units/detail/utility.hpp>
 #endif
 #include <string>
@@ -28,8 +28,8 @@
     std::string
     tag_type_name()
         {
-#ifdef BOOST_NO_TYPEID
-        return BOOST_CURRENT_FUNCTION;
+#ifdef NDNBOOST_NO_TYPEID
+        return NDNBOOST_CURRENT_FUNCTION;
 #else
         return units::detail::demangle(typeid(T*).name());
 #endif
@@ -40,8 +40,8 @@
     std::string
     type_name()
         {
-#ifdef BOOST_NO_TYPEID
-        return BOOST_CURRENT_FUNCTION;
+#ifdef NDNBOOST_NO_TYPEID
+        return NDNBOOST_CURRENT_FUNCTION;
 #else
         return units::detail::demangle(typeid(T).name());
 #endif
@@ -71,13 +71,13 @@
         }
     }
 
-#define BOOST_EXCEPTION_STATIC_TYPEID(T) ::ndnboost::exception_detail::type_info_(BOOST_SP_TYPEID(T))
+#define NDNBOOST_EXCEPTION_STATIC_TYPEID(T) ::ndnboost::exception_detail::type_info_(NDNBOOST_SP_TYPEID(T))
 
-#ifndef BOOST_NO_RTTI
-#define BOOST_EXCEPTION_DYNAMIC_TYPEID(x) ::ndnboost::exception_detail::type_info_(typeid(x))
+#ifndef NDNBOOST_NO_RTTI
+#define NDNBOOST_EXCEPTION_DYNAMIC_TYPEID(x) ::ndnboost::exception_detail::type_info_(typeid(x))
 #endif
 
-#if defined(_MSC_VER) && !defined(BOOST_EXCEPTION_ENABLE_WARNINGS)
+#if defined(_MSC_VER) && !defined(NDNBOOST_EXCEPTION_ENABLE_WARNINGS)
 #pragma warning(pop)
 #endif
 #endif
