summaryrefslogtreecommitdiffstats
path: root/Source/kwsys/Base64.h.in
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-04-14 13:35:56 (GMT)
committerBrad King <brad.king@kitware.com>2009-04-14 13:35:56 (GMT)
commit19d11e2a1f483736f9f35990dd0db339a44ad146 (patch)
treeb166227a82ba41bdb135f3007740fda5082fe375 /Source/kwsys/Base64.h.in
parent63a1e45076c83fadc16c24d1dd8d53987be12ce8 (diff)
downloadCMake-19d11e2a1f483736f9f35990dd0db339a44ad146.zip
CMake-19d11e2a1f483736f9f35990dd0db339a44ad146.tar.gz
CMake-19d11e2a1f483736f9f35990dd0db339a44ad146.tar.bz2
ENH: Skip KWSys name maros in case of identity
All KWSys C symbol names begin with the KWSYS_NAMESPACE defined at configuration time. For ease of editing we write canonical names with the prefix 'kwsys' and use macros to map them to the configured prefix at preprocessing time. In the case of standalone KWSys, the prefix is 'kwsys', so the macros were previously defined to their own names. We now skip defining the macros in the identity case so that the final symbol names are never themselves macros. This will allow the symbols to be further transformed behind the scenes to help linkers in special cases on some platforms.
Diffstat (limited to 'Source/kwsys/Base64.h.in')
-rw-r--r--Source/kwsys/Base64.h.in32
1 files changed, 18 insertions, 14 deletions
diff --git a/Source/kwsys/Base64.h.in b/Source/kwsys/Base64.h.in
index 45221f6..5f48916 100644
--- a/Source/kwsys/Base64.h.in
+++ b/Source/kwsys/Base64.h.in
@@ -24,13 +24,15 @@
# define kwsys_ns(x) @KWSYS_NAMESPACE@##x
# define kwsysEXPORT @KWSYS_NAMESPACE@_EXPORT
#endif
-#define kwsysBase64 kwsys_ns(Base64)
-#define kwsysBase64_Decode kwsys_ns(Base64_Decode)
-#define kwsysBase64_Decode3 kwsys_ns(Base64_Decode3)
-#define kwsysBase64_Encode kwsys_ns(Base64_Encode)
-#define kwsysBase64_Encode1 kwsys_ns(Base64_Encode1)
-#define kwsysBase64_Encode2 kwsys_ns(Base64_Encode2)
-#define kwsysBase64_Encode3 kwsys_ns(Base64_Encode3)
+#if !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
+# define kwsysBase64 kwsys_ns(Base64)
+# define kwsysBase64_Decode kwsys_ns(Base64_Decode)
+# define kwsysBase64_Decode3 kwsys_ns(Base64_Decode3)
+# define kwsysBase64_Encode kwsys_ns(Base64_Encode)
+# define kwsysBase64_Encode1 kwsys_ns(Base64_Encode1)
+# define kwsysBase64_Encode2 kwsys_ns(Base64_Encode2)
+# define kwsysBase64_Encode3 kwsys_ns(Base64_Encode3)
+#endif
#if defined(__cplusplus)
extern "C"
@@ -106,13 +108,15 @@ kwsysEXPORT unsigned long kwsysBase64_Decode(const unsigned char *input,
#if !defined(KWSYS_NAMESPACE)
# undef kwsys_ns
# undef kwsysEXPORT
-# undef kwsysBase64
-# undef kwsysBase64_Decode
-# undef kwsysBase64_Decode3
-# undef kwsysBase64_Encode
-# undef kwsysBase64_Encode1
-# undef kwsysBase64_Encode2
-# undef kwsysBase64_Encode3
+# if !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
+# undef kwsysBase64
+# undef kwsysBase64_Decode
+# undef kwsysBase64_Decode3
+# undef kwsysBase64_Encode
+# undef kwsysBase64_Encode1
+# undef kwsysBase64_Encode2
+# undef kwsysBase64_Encode3
+# endif
#endif
#endif