From 56876b0ec80371dbbc3817c36d9e9bbfa396814d Mon Sep 17 00:00:00 2001
From: Josh Blum <josh@joshknows.com>
Date: Wed, 17 Nov 2010 10:30:51 -0800
Subject: uhd: tweaking the export template instance macro

---
 host/include/uhd/config.hpp       | 9 ++++++---
 host/include/uhd/types/ranges.hpp | 4 ++--
 2 files changed, 8 insertions(+), 5 deletions(-)

(limited to 'host/include')

diff --git a/host/include/uhd/config.hpp b/host/include/uhd/config.hpp
index 043e8d884..316d60c2b 100644
--- a/host/include/uhd/config.hpp
+++ b/host/include/uhd/config.hpp
@@ -56,14 +56,17 @@
     #define UHD_HELPER_DLL_IMPORT __declspec(dllimport)
     #define UHD_HELPER_DLL_EXPORT __declspec(dllexport)
     #define UHD_HELPER_DLL_LOCAL
+    #define UHD_HELPER_EXIMP_TMPL
 #elif defined(__GNUG__) && __GNUG__ >= 4
     #define UHD_HELPER_DLL_IMPORT __attribute__ ((visibility("default")))
     #define UHD_HELPER_DLL_EXPORT __attribute__ ((visibility("default")))
     #define UHD_HELPER_DLL_LOCAL  __attribute__ ((visibility("hidden")))
+    #define UHD_HELPER_EXIMP_TMPL extern
 #else
     #define UHD_HELPER_DLL_IMPORT
     #define UHD_HELPER_DLL_EXPORT
     #define UHD_HELPER_DLL_LOCAL
+    #define UHD_HELPER_EXIMP_TMPL extern
 #endif
 
 // Now we use the generic helper definitions above to define UHD_API and UHD_LOCAL.
@@ -75,16 +78,16 @@
 #ifdef UHD_DLL // defined if UHD is compiled as a DLL
     #ifdef UHD_DLL_EXPORTS // defined if we are building the UHD DLL (instead of using it)
         #define UHD_API UHD_HELPER_DLL_EXPORT
-        #define EXIMP_TEMPLATE extern
+        #define UHD_EXIMP_TMPL UHD_HELPER_EXIMP_TMPL
     #else
         #define UHD_API UHD_HELPER_DLL_IMPORT
-        #define EXIMP_TEMPLATE
+        #define UHD_EXIMP_TMPL
     #endif // UHD_DLL_EXPORTS
     #define UHD_LOCAL UHD_HELPER_DLL_LOCAL
 #else // UHD_DLL is not defined: this means UHD is a static lib.
     #define UHD_API
     #define UHD_LOCAL
-    #define EXIMP_TEMPLATE
+    #define UHD_EXIMP_TMPL
 #endif // UHD_DLL
 
 // Define force inline macro
diff --git a/host/include/uhd/types/ranges.hpp b/host/include/uhd/types/ranges.hpp
index 8a7ca0310..1bd87b468 100644
--- a/host/include/uhd/types/ranges.hpp
+++ b/host/include/uhd/types/ranges.hpp
@@ -112,11 +112,11 @@ namespace uhd{
     };
 
     //! export a symbol for the gain range type
-    EXIMP_TEMPLATE template struct UHD_API meta_range_t<float>;
+    UHD_EXIMP_TMPL template struct UHD_API meta_range_t<float>;
     typedef meta_range_t<float> gain_range_t;
 
     //! export a symbol for the freq range type
-    EXIMP_TEMPLATE template struct UHD_API meta_range_t<double>;
+    UHD_EXIMP_TMPL template struct UHD_API meta_range_t<double>;
     typedef meta_range_t<double> freq_range_t;
 
 
-- 
cgit v1.2.3