summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2012-06-20 17:16:48 (GMT)
committerBrad King <brad.king@kitware.com>2012-06-21 12:03:47 (GMT)
commit6dc053114b8fe213e7d1b41f99d1ec4ab436d29a (patch)
tree342f12b6635af940d0e510e8696a6cc133b63ea1
parent539064d4f73269a887ea032cac431f84fea594e7 (diff)
downloadCMake-6dc053114b8fe213e7d1b41f99d1ec4ab436d29a.zip
CMake-6dc053114b8fe213e7d1b41f99d1ec4ab436d29a.tar.gz
CMake-6dc053114b8fe213e7d1b41f99d1ec4ab436d29a.tar.bz2
KWIML: Teach ABI.h about 'long long' and 'char' on old HP
The "HP92453-01 A.11.01.20 HP C Compiler" does not define any identifying macros except for platform __hpux. If we see that platform with no other compiler identification then assume this compiler. It has 'long long' and its 'char' is signed unless the +uc option is added.
-rw-r--r--ABI.h.in4
1 files changed, 4 insertions, 0 deletions
diff --git a/ABI.h.in b/ABI.h.in
index e85a1c5..060a520 100644
--- a/ABI.h.in
+++ b/ABI.h.in
@@ -156,6 +156,8 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined.
# define @KWIML@_ABI_CHAR_IS_UNSIGNED 1
# elif defined(__BORLANDC__) /* Borland default */
# define @KWIML@_ABI_CHAR_IS_SIGNED 1
+# elif defined(__hpux) /* Old HP: no __HP_cc/__HP_aCC/__GNUC__ above */
+# define @KWIML@_ABI_CHAR_IS_SIGNED 1 /* (unless +uc) */
# endif
#endif
#if !defined(@KWIML@_ABI_CHAR_IS_UNSIGNED) && !defined(@KWIML@_ABI_CHAR_IS_SIGNED) \
@@ -251,6 +253,8 @@ suppression macro @KWIML@_ABI_NO_VERIFY was defined.
# else
# define @KWIML@_ABI_SIZEOF_LONG_LONG 0
# endif
+# elif defined(__hpux) && !defined(__GNUC__) /* Old HP: no __HP_cc/__HP_aCC above */
+# define @KWIML@_ABI_SIZEOF_LONG_LONG 8
# endif
#endif
#if !defined(@KWIML@_ABI_SIZEOF_LONG_LONG) && !defined(@KWIML@_ABI_NO_ERROR_LONG_LONG)