From 2686d9339bc059c1637fb443307ad39b4d7b3a27 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 22 Jun 2007 13:58:05 +0000 Subject: [PATCH] fix __SUNCC__ definition; added wxCHECK_SUNCC_VERSION git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/cppconst.tex | 2 +- docs/latex/wx/function.tex | 10 ++++++++++ include/wx/platform.h | 24 +++++++++++++++++------- 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/docs/latex/wx/cppconst.tex b/docs/latex/wx/cppconst.tex index a2f2ab848a..cf8528f203 100644 --- a/docs/latex/wx/cppconst.tex +++ b/docs/latex/wx/cppconst.tex @@ -144,7 +144,7 @@ to the compiler version: $500$ is $5.0$.} \helpref{wxCHECK\_W32API\_VERSION}{wxcheckw32apiversion}} \twocolitem{\_\_MINGW32\_\_}{MinGW} \twocolitem{\_\_MWERKS\_\_}{CodeWarrior MetroWerks compiler} -\twocolitem{\_\_SUNCC\_\_}{Sun CC} +\twocolitem{\_\_SUNCC\_\_}{Sun CC, see also \helpref{wxCHECK\_SUNCC\_VERSION}{wxchecksunccversion}} \twocolitem{\_\_SYMANTECC\_\_}{Symantec C++} \twocolitem{\_\_VISAGECPP\_\_}{IBM Visual Age (OS/2)} \twocolitem{\_\_VISUALC\_\_}{Microsoft Visual C++. The value of this macro diff --git a/docs/latex/wx/function.tex b/docs/latex/wx/function.tex index b8e866eb9f..1e8528186b 100644 --- a/docs/latex/wx/function.tex +++ b/docs/latex/wx/function.tex @@ -45,6 +45,7 @@ the corresponding topic. \helpref{wxCHECK\_GCC\_VERSION}{wxcheckgccversion}\\ \helpref{wxCHECK\_MSG}{wxcheckmsg}\\ \helpref{wxCHECK\_RET}{wxcheckret}\\ +\helpref{wxCHECK\_SUNCC\_VERSION}{wxchecksunccversion}\\ \helpref{wxCHECK\_VERSION}{wxcheckversion}\\ \helpref{wxCHECK\_VERSION\_FULL}{wxcheckversionfull}\\ \helpref{wxCHECK\_W32API\_VERSION}{wxcheckw32apiversion}\\ @@ -317,6 +318,15 @@ compiler (g++) version major.minor or greater. Otherwise, and also if the compiler is not GNU C++ at all, returns $0$. +\membersection{wxCHECK\_SUNCC\_VERSION}\label{wxchecksunccversion} + +\func{bool}{wxCHECK\_SUNCC\_VERSION}{\param{}{major, minor}} + +Returns $1$ if the compiler being used to compile the code is Sun CC Pro +compiler and its version is at least \texttt{major.minor}. Otherwise returns +$0$. + + \membersection{wxCHECK\_VERSION}\label{wxcheckversion} \func{bool}{wxCHECK\_VERSION}{\param{}{major, minor, release}} diff --git a/include/wx/platform.h b/include/wx/platform.h index faeaf6fd20..8de9c98979 100644 --- a/include/wx/platform.h +++ b/include/wx/platform.h @@ -357,13 +357,11 @@ # endif # endif /* SGI */ -# if defined(sun) || defined(__SUN__) -# ifndef __GNUG__ -# ifndef __SUNCC__ -# define __SUNCC__ -# endif /* Sun CC */ -# endif -# endif /* Sun */ +# if defined(__SUNPRO_CC) +# ifndef __SUNCC__ +# define __SUNCC__ __SUNPRO_CC +# endif /* Sun CC */ +# endif /* Sun CC */ # ifdef __EMX__ # define OS2EMX_PLAIN_CHAR @@ -558,6 +556,18 @@ # define wxCHECK_W32API_VERSION(maj, min) (0) #endif +/** + This is similar to wxCHECK_GCC_VERSION but for Sun CC compiler. + */ +#ifdef __SUNCC__ + /* + __SUNCC__ is 0xVRP where V is major version, R release and P patch level + */ + #define wxCHECK_SUNCC_VERSION(maj, min) (__SUNCC__ >= (((maj)<<8) | ((min)<<4))) +#else + #define wxCHECK_SUNCC_VERSION(maj, min) (0) +#endif + #if defined (__WXMSW__) # if !defined(__WATCOMC__) # define wxHAVE_RAW_BITMAP -- 2.45.2