Changeset 117 for trunk


Ignore:
Timestamp:
06/12/13 00:53:37 (12 years ago)
Author:
epyon
Message:
  • removed BORLAND from compilers (no compatible version anyway)
  • errors on too low compiler version
  • MSVC has long long
  • added clang to detected compilers
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/nv/common.hh

    r111 r117  
    2222#define NV_MSVC           1
    2323#define NV_GNUC           2
    24 #define NV_BORLAND        3
     24#define NV_CLANG          3
    2525
    2626// Endianess
     
    5151#define NV_COMPILER NV_GNUC
    5252#define NV_COMP_VER (((__GNUC__)*100) + (__GNUC_MINOR__*10) + __GNUC_PATCHLEVEL__)
    53 #elif defined( __BORLANDC__ )
    54 #define NV_COMPILER NV_BORLAND
    55 #define NV_COMP_VER 0
     53#elif defined( __clang__ )
     54#define NV_COMPILER NV_CLANG
     55#define NV_COMP_VER (((__clang_major__)*100) + (__clang_minor__*10) + __clang_patchlevel__)
    5656#else
    57 #define NV_COMPILER 0
    58 #define NV_COMP_VER 0
     57#error "Unknown compiler!"
    5958#endif
    6059
     
    8988#endif
    9089
    91 #if NV_COMPILER == NV_MSVC
    92 #if NV_COMP_VER >= 1600
    93 #define NV_HAS_CPP0X
    94 #elif NV_COMP_VER >= 1200
    95 #define NV_HAS_TR1
    96 #else
    97 #define NV_USE_BOOST
    98 #endif
     90#if NV_COMPILER == NV_MSVC && NV_COMP_VER < 1600
     91#error "MSVC 2012+ required!"
    9992#endif
    10093
    101 #if NV_COMPILER == NV_GNUC
    102 #if NV_COMP_VER >= 460
    103 #define NV_HAS_CPP0X
    104 #elif NV_COMP_VER >= 400
    105 #define NV_HAS_TR1
    106 #else
    107 #define NV_USE_BOOST
    108 #endif
     94#if NV_COMPILER == NV_GNUC && NV_COMP_VER < 460
     95#error "GCC 4.6+ required!"
    10996#endif
    11097
     98#if NV_COMPILER == NV_CLANG && NV_COMP_VER < 320
     99#error "clang 3.2+ required!"
     100#endif
    111101
    112102#if NV_COMPILER == NV_MSVC
     
    126116#if NV_COMPILER == NV_MSVC
    127117#define NV_DEPRECATED(func) __declspec(deprecated) func
    128 #elif NV_COMPILER == NV_GNUC
     118#elif NV_COMPILER == NV_GNUC || NV_COMPILER == NV_CLANG
    129119#define NV_DEPRECATED(func) func __attribute__ ((deprecated))
    130120#else
     
    154144        typedef signed short        sint16;
    155145        typedef signed long         sint32;
    156 #if NV_COMPILER == NV_MSVC
    157         typedef signed __int64      sint64;
    158 #else
    159146        typedef signed long long    sint64;
    160 #endif
    161147
    162148        typedef unsigned char       uint8;
    163149        typedef unsigned short      uint16;
    164150        typedef unsigned long       uint32;
    165 #if NV_COMPILER == NV_MSVC
    166         typedef unsigned __int64    uint64;
    167 #else
    168151        typedef unsigned long long  uint64;
    169 #endif
    170152
    171153        typedef unsigned char       char8;
Note: See TracChangeset for help on using the changeset viewer.