00001 /* $NoKeywords: $ */ 00002 /* 00003 // 00004 // Copyright (c) 1993-2012 Robert McNeel & Associates. All rights reserved. 00005 // OpenNURBS, Rhinoceros, and Rhino3D are registered trademarks of Robert 00006 // McNeel & Associates. 00007 // 00008 // THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. 00009 // ALL IMPLIED WARRANTIES OF FITNESS FOR ANY PARTICULAR PURPOSE AND OF 00010 // MERCHANTABILITY ARE HEREBY DISCLAIMED. 00011 // 00012 // For complete openNURBS copyright information see <http://www.opennurbs.org>. 00013 // 00015 */ 00016 00017 // Delete evertyhing this comment and everything below it except 00018 // the "#include "pcl/surface/3rdparty/opennurbs/opennurbs.h"" for the public version of 00019 // opennurbs source code. 00020 00021 00022 // CHECK SETTINGS BEFORE ANYTHING IS INCLUDED 00023 00024 #if defined(WIN32) && defined(WIN64) 00025 #error WIN32 and WIN64 defined. This is wrong! 00026 #endif 00027 00028 #if defined(WIN64) 00029 00030 #if !defined(_WIN32) 00031 #error Microsoft defines _WIN32 for all Windows builds 00032 #endif 00033 00034 #if defined(_M_IX86) || defined(_M_IA64) 00035 #error Incorrect _M_... setting for x64 build 00036 #endif 00037 00038 #if !defined(_M_X64) 00039 // This should be automatically defined by the compiler 00040 #error _M_X64 should be defined for x64 builds 00041 #endif 00042 00043 // All opennurbs code uses the "offical" _M_X64. Unfortunately, 00044 // some Microsoft VC 2005 header files, like float.h do not. 00045 // The Microsoft compiler should automatically defined both 00046 // _M_X64 and _M_AMD64 for the WIN64 platform. If it doesn't, 00047 // then we have a serious problem because some system header 00048 // files will not be correctly preprocessed. 00049 #if !defined(_M_AMD64) 00050 // This should be automatically defined by the compiler 00051 #error _M_AMD64 should be defined for x64 builds 00052 #endif 00053 00054 #endif 00055 00056 00057 #if defined(WIN32) 00058 00059 #if !defined(_WIN32) 00060 #error Microsoft defines _WIN32 for all Windows builds 00061 #endif 00062 00063 //#if defined(_M_IA64) || defined(_M_X64) || defined(_M_AMD64) 00064 //#error Incorrect _M_... setting for 32 bit Windows build. 00065 //#endif 00066 00067 //#if !defined(_M_IX86) 00068 // This should be automatically defined by the compiler 00069 //#error _M_IX86 should be defined for 32 bit Windows builds. 00070 //#endif 00071 00072 #endif 00073 00074 00075 00076 #include "pcl/surface/3rdparty/opennurbs/opennurbs.h" 00077 00078 00079 00080 // CHECK SETTINGS AFTER EVERTHING IS INCLUDED 00081 00082 //#if defined(WIN32) && defined(WIN64) 00083 //#error WIN32 and WIN64 defined. This is wrong! 00084 //#endif 00085 00086 #if defined(WIN64) 00087 00088 #if !defined(_WIN32) 00089 #error Microsoft defines _WIN32 for all Windows builds 00090 #endif 00091 00092 #if defined(_M_IX86) || defined(_M_IA64) 00093 #error Incorrect _M_... setting for x64 build 00094 #endif 00095 00096 #if !defined(_M_X64) 00097 // This should be automatically defined by the compiler 00098 #error _M_X64 should be defined for x64 builds 00099 #endif 00100 00101 // All opennurbs code uses the "offical" _M_X64. Unfortunately, 00102 // some Microsoft VC 2005 header files, like float.h do not. 00103 // The Microsoft compiler should automatically defined both 00104 // _M_X64 and _M_AMD64 for the WIN64 platform. If it doesn't, 00105 // then we have a serious problem because some system header 00106 // files will not be correctly preprocessed. 00107 #if !defined(_M_AMD64) 00108 // This should be automatically defined by the compiler 00109 #error _M_AMD64 should be defined for x64 builds 00110 #endif 00111 00112 #endif 00113 00114 00115 #if defined(WIN32) 00116 00117 #if !defined(_WIN32) 00118 #error Microsoft defines _WIN32 for all Windows builds 00119 #endif 00120 00121 //#if defined(_M_IA64) || defined(_M_X64) || defined(_M_AMD64) 00122 //#error Incorrect _M_... setting for 32 bit Windows build. 00123 //#endif 00124 00125 //#if !defined(_M_IX86) 00126 // This should be automatically defined by the compiler 00127 //#error _M_IX86 should be defined for 32 bit Windows builds. 00128 //#endif 00129 00130 #endif 00131