• R/O
  • SSH
  • HTTPS

iris-fmw: Commit


Commit MetaInfo

Revision280 (tree)
Time2012-07-10 18:41:50
Authorshirayanagi

Log Message

バグ修正

Change Summary

Incremental Difference

--- trunk/external/windows/setup/clang/buildllvm.bat (revision 279)
+++ trunk/external/windows/setup/clang/buildllvm.bat (revision 280)
@@ -7,11 +7,21 @@
77 cd build
88 if not exist clang mkdir clang
99 cd clang
10+if exist llvm rmdir /S /Q llvm
1011 if not exist llvm mkdir llvm
1112 cd llvm
13+if errorlevel 1 goto error
1214
13-bash ../../../llvm/configure
15+bash -c "../../../llvm/configure"
16+if errorlevel 1 goto error
1417
15-make
18+bash -c make
19+if errorlevel 1 goto error
1620
21+goto end
22+
23+:error
24+pause
25+
26+:end
1727 popd
--- trunk/external/windows/setup/clang/vcbuild2008.bat (revision 279)
+++ trunk/external/windows/setup/clang/vcbuild2008.bat (revision 280)
@@ -8,13 +8,21 @@
88 cd build
99 if not exist clang mkdir clang
1010 cd clang
11+if exist vs%VSVERSION% rmdir /S /Q vs%VSVERSION%
1112 if not exist vs%VSVERSION% mkdir vs%VSVERSION%
1213 cd vs%VSVERSION%
1314
1415 cmake -G "Visual Studio 9 2008" ../../../llvm
16+if errorlevel 1 goto error
1517
1618 msbuild /p:Configuration=Release /p:Platform=Win32 /t:Clean;Build %TEMPDIR%\build\clang\vs%VSVERSION%\LLVM.sln
19+if errorlevel 1 goto error
1720
1821 filesync.bat
1922
23+goto end
24+
25+:error
26+pause
27+
2028 :end
--- trunk/framework/sample/Windows/unittest/src/nacl_test/nacl_test.bat (revision 279)
+++ trunk/framework/sample/Windows/unittest/src/nacl_test/nacl_test.bat (revision 280)
@@ -11,7 +11,11 @@
1111 SET PYTHON=python
1212 %PYTHON% -h > NUL
1313 if errorlevel 1 (
14- goto py_err
14+ bash -c "%PYTHON% -h" > NUL
15+ if errorlevel 1 (
16+ goto py_err
17+ )
18+ SET CYGPYTHON=yes
1519 )
1620
1721 rem SET CHROME_OPTION=--enable-nacl --new-window
@@ -38,7 +42,11 @@
3842 goto end
3943
4044 :http_only
41-%PYTHON% -m SimpleHTTPServer %PORT%
45+if "%CYGPYTHON%" == "yes" (
46+ bash -c "%PYTHON% -m SimpleHTTPServer %PORT%"
47+) else (
48+ %PYTHON% -m SimpleHTTPServer %PORT%
49+)
4250
4351 goto end
4452
--- trunk/framework/sample/Windows/unittest/src/nacl_test/httpd.bat (revision 279)
+++ trunk/framework/sample/Windows/unittest/src/nacl_test/httpd.bat (revision 280)
@@ -3,13 +3,28 @@
33 SET NPORT=%1
44 if "x%~1" == "x" SET NPORT=5103
55
6+rem python があるかどうか
67 SET PYTHON=python
8+%PYTHON% -h > NUL
9+if errorlevel 1 (
10+ bash -c "%PYTHON% -h" > NUL
11+ if errorlevel 1 (
12+ goto py_err
13+ )
14+ SET CYGPYTHON=yes
15+)
716
817 @echo root:%CD%
918 SET HTTPSERVER_NAME=LocalServer %NPORT%
1019 title %HTTPSERVER_NAME%
11-%PYTHON% httpd.py %NPORT%
12-rem %PYTHON% -m SimpleHTTPServer %NPORT%
20+
21+if %CYGPYTHON%" == "yes" (
22+ bash -c "%PYTHON% httpd.py %NPORT%"
23+ pause
24+) else (
25+ %PYTHON% httpd.py %NPORT%
26+ rem %PYTHON% -m SimpleHTTPServer %NPORT%
27+)
1328 if errorlevel 1 goto error
1429
1530 goto end
--- trunk/framework/sample/Windows/unittest/src/nacl_test/scons.bat (revision 279)
+++ trunk/framework/sample/Windows/unittest/src/nacl_test/scons.bat (revision 280)
@@ -12,13 +12,16 @@
1212
1313 SET CYGWIN=nodosfilewarning
1414 SET CYGPATH=C:\cygwin\bin\cygpath.exe
15+SET WINPYTHON=yes
1516 pushd "%~dp0"
1617 if exist "c:\cygwin\bin\python.exe" (
1718 call :cygset
19+ SET WINPYTHON=
1820 goto build
1921 )
2022 if exist "c:\cygwin\bin\python" (
2123 call :cygset
24+ SET WINPYTHON=
2225 goto build
2326 )
2427
@@ -33,16 +36,15 @@
3336 SET PYTHONPATH=%NACL_SDK_PLATFORM_DIR%/third_party/scons-2.0.1/engine
3437
3538 SET PYTHON=python
36-%PYTHON% -O -OO "%NACL_SDK_PLATFORM_DIR%/third_party/scons-2.0.1/script/scons" ^
37---warn no-visual-c-missing ^
38---file=build.scons ^
39---site-dir="%NACL_SDK_PLATFORM_DIR%/build_tools/nacl_sdk_scons" %*
39+if "%WINPYTHON%" == "yes" (
40+ %PYTHON% -O -OO "%NACL_SDK_PLATFORM_DIR%/third_party/scons-2.0.1/script/scons" ^
41+ --warn no-visual-c-missing ^
42+ --file=build.scons ^
43+ --site-dir="%NACL_SDK_PLATFORM_DIR%/build_tools/nacl_sdk_scons" %*
44+) else (
45+ bash -c "python -O -OO \"%NACL_SDK_PLATFORM_DIR%/third_party/scons-2.0.1/script/scons\" --warn no-visual-c-missing --file=build.scons --site-dir=\"%NACL_SDK_PLATFORM_DIR%/build_tools/nacl_sdk_scons\" %*"
46+)
4047
41-rem bash -c "python -O -OO \"%NACL_SDK_PLATFORM_DIR%/third_party/scons-2.0.1/script/scons\" ^
42-rem --warn no-visual-c-missing ^
43-rem --file=build.scons ^
44-rem --site-dir=\"%NACL_SDK_PLATFORM_DIR%/build_tools/nacl_sdk_scons\" %*"
45-
4648 if errorlevel 1 goto error
4749
4850 goto end
--- trunk/framework/src/c++0x/cpp0x_static_assert.h (revision 279)
+++ trunk/framework/src/c++0x/cpp0x_static_assert.h (revision 280)
@@ -69,6 +69,6 @@
6969 # define static_assert( B, msg ) typedef char IRIS_PP_CAT(iris_static_assert_typedef_, __LINE__)[(BOOL)( B ) ? 1 : -1]
7070 #endif
7171
72-#define STATIC_ASSERT( B ) static_assert( B, #B )
72+#define STATIC_ASSERT( ... ) static_assert( __VA_ARGS__, #__VA_ARGS__ )
7373
7474 #endif
--- trunk/framework/src/platform/windows/win/drive/WXDrive.cpp (revision 279)
+++ trunk/framework/src/platform/windows/win/drive/WXDrive.cpp (revision 280)
@@ -27,6 +27,7 @@
2727 #include "ntddcdrm.h"
2828 EXTERN_C_END
2929
30+
3031 namespace iris {
3132 namespace wx
3233 {
--- trunk/framework/src/misc/iris_allegrex.h (revision 279)
+++ trunk/framework/src/misc/iris_allegrex.h (revision 280)
@@ -280,7 +280,7 @@
280280 */
281281 STATICINLINE IrisBool iris_allegrex_ispow2(IrisArgU32 val)
282282 {
283- return (val & (val - 1)) != 0 ? IRIS_TRUE : IRIS_FALSE;
283+ return (val & (val - 1)) == 0 ? IRIS_TRUE : IRIS_FALSE;
284284 }
285285
286286 /**
--- trunk/framework/src/fnd/format/FndIEEE.h (revision 279)
+++ trunk/framework/src/fnd/format/FndIEEE.h (revision 280)
@@ -29,7 +29,7 @@
2929
3030 //======================================================================
3131 // declare
32-template<typename ttTN, int tiSIGN, int tiEXP, int tiFUNC, int tiBIAS>class CIEEE754;
32+template<typename ttTN, int tiSIGN, int tiEXP, int tiFRAC, int tiBIAS>class CIEEE754;
3333
3434 //======================================================================
3535 // typedef
@@ -44,14 +44,14 @@
4444 * @tparam ttTN = 格納する整数型
4545 * @tparam tiSIGN = 符号部のビット数(0 or 1)
4646 * @tparam tiEXP = 指数部
47- * @tparam tiFUNC = 仮数部
47+ * @tparam tiFRAC = 仮数部
4848 * @tparam tiBIAS = 指数部のバイアス
4949 */
50-template<typename ttTN, int tiSIGN, int tiEXP, int tiFUNC, int tiBIAS = ::iml::static_pow<2, tiEXP-1>::value-1 >
50+template<typename ttTN, int tiSIGN, int tiEXP, int tiFRAC, int tiBIAS = ::iml::static_pow<2, tiEXP-1>::value-1 >
5151 class CIEEE754 : public IIrisObject
5252 {
5353 typedef ttTN value_type;
54- typedef CIEEE754<ttTN, tiSIGN, tiEXP, tiFUNC, tiBIAS> _Myt;
54+ typedef CIEEE754<ttTN, tiSIGN, tiEXP, tiFRAC, tiBIAS> _Myt;
5555 typedef CIEEEBinary32 floatType;
5656 typedef CIEEEBinary64 doubleType;
5757
@@ -59,18 +59,18 @@
5959 public:
6060 static const int SIGN = tiSIGN; //!< 符号部のビット数
6161 static const int EXP = tiEXP; //!< 指数部のビット数
62- static const int FUNC = tiFUNC; //!< 仮数部のビット数
62+ static const int FRAC = tiFRAC; //!< 仮数部のビット数
6363 static const int BIAS = tiBIAS; //!< 指数部のバイアス値
64- static const size_t BITSIZE = SIGN + EXP + FUNC;
64+ static const size_t BITSIZE = SIGN + EXP + FRAC;
6565 IRIS_STATIC_ASSERT( BITSIZE <= (sizeof(value_type)*8) );
6666
6767 public:
68- static const value_type PINF = static_cast<value_type>(iml::static_mask<EXP , FUNC >::value); //!< + 無限大
69- static const value_type NINF = static_cast<value_type>(iml::static_mask<EXP+SIGN , FUNC >::value); //!< - 無限大
70- static const value_type PNAN = static_cast<value_type>(iml::static_mask<EXP , FUNC>::value | 0x1); //!< + NAN
71- static const value_type NNAN = static_cast<value_type>(iml::static_mask<EXP+SIGN , FUNC>::value | 0x1); //!< - NAN
72- static const value_type PQNAN = static_cast<value_type>(iml::static_mask<EXP+1 , FUNC-1>::value); //!< + QNAN
73- static const value_type NQNAN = static_cast<value_type>(iml::static_mask<EXP+SIGN+1 , FUNC-1>::value); //!< - QNAN
68+ static const value_type PINF = static_cast<value_type>(iml::static_mask<EXP , FRAC >::value); //!< + 無限大
69+ static const value_type NINF = static_cast<value_type>(iml::static_mask<EXP+SIGN , FRAC >::value); //!< - 無限大
70+ static const value_type PNAN = static_cast<value_type>(iml::static_mask<EXP , FRAC>::value | 0x1); //!< + NAN
71+ static const value_type NNAN = static_cast<value_type>(iml::static_mask<EXP+SIGN , FRAC>::value | 0x1); //!< - NAN
72+ static const value_type PQNAN = static_cast<value_type>(iml::static_mask<EXP+1 , FRAC-1>::value); //!< + QNAN
73+ static const value_type NQNAN = static_cast<value_type>(iml::static_mask<EXP+SIGN+1 , FRAC-1>::value); //!< - QNAN
7474
7575 private:
7676 value_type m_value; //!< 値
@@ -83,8 +83,8 @@
8383 CIEEE754(void) : m_value(0) {}
8484 CIEEE754(float f) : m_value(0) { cast_from_float(f); }
8585 CIEEE754(const _Myt& rhs) : m_value(rhs.m_value) {}
86- template<typename ttXTN, int tiXSIGN, int tiXEXP, int tiXFUNC, int tiXBIAS>
87- CIEEE754(const CIEEE754<ttXTN, tiXSIGN, tiXEXP, tiXFUNC, tiXBIAS>& ieee) : m_value(0) { cast_from_ieee(ieee); }
86+ template<typename ttXTN, int tiXSIGN, int tiXEXP, int tiXFRAC, int tiXBIAS>
87+ CIEEE754(const CIEEE754<ttXTN, tiXSIGN, tiXEXP, tiXFRAC, tiXBIAS>& ieee) : m_value(0) { cast_from_ieee(ieee); }
8888 /**
8989 * @}
9090 */
@@ -94,8 +94,8 @@
9494 * @{
9595 */
9696 _Myt& operator = (float rhs) { cast_from_float(rhs); return *this; }
97- template<typename _XTN, int _XSIGN, int _XEXP, int _XFUNC, int _XBIAS>
98- _Myt& operator = (const CIEEE754<_XTN, _XSIGN, _XEXP, _XFUNC, _XBIAS>& ieee) { cast_from_ieee(ieee); return *this; }
97+ template<typename _XTN, int _XSIGN, int _XEXP, int _XFRAC, int _XBIAS>
98+ _Myt& operator = (const CIEEE754<_XTN, _XSIGN, _XEXP, _XFRAC, _XBIAS>& ieee) { cast_from_ieee(ieee); return *this; }
9999
100100 operator float (void) const { return cast_to_float(); }
101101 operator double (void) const { return cast_to_double(); }
@@ -114,7 +114,7 @@
114114 {
115115 IrisFInt fi = f;
116116
117- value_type exp = (fi.iv >> floatType::FUNC) & iml::static_mask<floatType::EXP>::value;
117+ value_type exp = (fi.iv >> floatType::FRAC) & iml::static_mask<floatType::EXP>::value;
118118 if( exp == iml::static_mask<floatType::EXP>::value )
119119 {
120120 exp = iml::static_mask<EXP>::value;
@@ -126,19 +126,19 @@
126126 {
127127 // INF
128128 m_value = (((exp>>(sizeof(exp)-1))&0x1)<<EXP) | iml::static_mask<EXP>::value;
129- m_value <<= FUNC;
129+ m_value <<= FRAC;
130130 return;
131131 }
132132 }
133- m_value = (value_type)(iml::signed_rshift<(floatType::FUNC+floatType::EXP)-(FUNC+EXP)>::shift(fi.iv) & iml::static_mask<1, EXP+FUNC>::value);
134- m_value |= exp << FUNC;
135- m_value |= iml::signed_rshift<floatType::FUNC-FUNC>::shift( static_cast<IrisU32>(fi.iv & iml::static_mask<floatType::FUNC>::value) );
133+ m_value = (value_type)(iml::signed_rshift<(floatType::FRAC+floatType::EXP)-(FRAC+EXP)>::shift(fi.iv) & iml::static_mask<1, EXP+FRAC>::value);
134+ m_value |= exp << FRAC;
135+ m_value |= iml::signed_rshift<floatType::FRAC-FRAC>::shift( static_cast<IrisU32>(fi.iv & iml::static_mask<floatType::FRAC>::value) );
136136 }
137- template<typename XTN_, int XSIGN_, int XEXP_, int XFUNC_, int XBIAS_>
138- void cast_from_ieee(const CIEEE754<XTN_, XSIGN_, XEXP_, XFUNC_, XBIAS_>& ieee)
137+ template<typename XTN_, int XSIGN_, int XEXP_, int XFRAC_, int XBIAS_>
138+ void cast_from_ieee(const CIEEE754<XTN_, XSIGN_, XEXP_, XFRAC_, XBIAS_>& ieee)
139139 {
140140 XTN_ value = ieee.value();
141- value_type exp = static_cast<value_type>((value >> XFUNC_) & iml::static_mask<XEXP_>::value);
141+ value_type exp = static_cast<value_type>((value >> XFRAC_) & iml::static_mask<XEXP_>::value);
142142 if( exp == iml::static_mask<XEXP_>::value )
143143 {
144144 exp = iml::static_mask<EXP>::value;
@@ -150,13 +150,13 @@
150150 {
151151 // INF
152152 m_value = (((exp>>(sizeof(exp)-1))&0x1)<<EXP) | iml::static_mask<EXP>::value;
153- m_value <<= FUNC;
153+ m_value <<= FRAC;
154154 return;
155155 }
156156 }
157- m_value = static_cast<value_type>(iml::signed_rshift<(XFUNC_+XEXP_)-(FUNC+EXP)>::shift(static_cast<value_type>(value)) & iml::static_mask<1, EXP+FUNC>::value);
158- m_value |= exp << FUNC;
159- m_value |= iml::signed_rshift<XFUNC_-FUNC>::shift( static_cast<value_type>(value & iml::static_mask<XFUNC_>::value) );
157+ m_value = static_cast<value_type>(iml::signed_rshift<(XFRAC_+XEXP_)-(FRAC+EXP)>::shift(static_cast<value_type>(value)) & iml::static_mask<1, EXP+FRAC>::value);
158+ m_value |= exp << FRAC;
159+ m_value |= iml::signed_rshift<XFRAC_-FRAC>::shift( static_cast<value_type>(value & iml::static_mask<XFRAC_>::value) );
160160 }
161161
162162 float cast_to_float(void) const
@@ -172,18 +172,18 @@
172172 return fi.fv;
173173 }
174174
175-private:
175+public:
176176 // 符号部
177- value_type sign(void) { return (m_value >> (EXP+FUNC)) & iml::static_mask<SIGN>::value; }
178- void sign(value_type s) { m_value &= (((value_type)1) << (EXP+FUNC)); m_value |= ((s&1) << (EXP+FUNC)); }
177+ value_type sign(void) { return (m_value >> (EXP+FRAC)) & iml::static_mask<SIGN>::value; }
178+ void sign(value_type s) { m_value &= iml::static_mask<EXP+FRAC>::value; m_value |= ((s&1) << (EXP+FRAC)); }
179179
180180 // 指数部
181- value_type exp(void) { return (m_value >> FUNC) & iml::static_mask<EXP>::value; }
182- void exp(value_type e) { m_value &= iml::static_mask<EXP, FUNC>::value; m_value |= (e&iml::static_mask<EXP>::value) << FUNC; }
181+ value_type exp(void) { return (m_value >> FRAC) & iml::static_mask<EXP>::value; }
182+ void exp(value_type e) { m_value &= ~iml::static_mask<EXP, FRAC>::value; m_value |= (e&iml::static_mask<EXP>::value) << FRAC; }
183183
184184 // 仮数部
185- value_type func(void) { return m_value & iml::static_mask<FUNC>::value; }
186- void func(value_type f) { m_value &= iml::static_mask<FUNC>::value; m_value |= f&iml::static_mask<FUNC>::value; }
185+ value_type frac(void) { return m_value & iml::static_mask<FRAC>::value; }
186+ void frac(value_type f) { m_value &= ~iml::static_mask<FRAC>::value; m_value |= f&iml::static_mask<FRAC>::value; }
187187 };
188188
189189 } // end of namespace fnd
--- trunk/framework/src/fnd/format/FndIEEE80.h (revision 279)
+++ trunk/framework/src/fnd/format/FndIEEE80.h (revision 280)
@@ -60,28 +60,68 @@
6060 const u8* GetBuffer(void) const { return m_buf; }
6161
6262 public:
63- float cast_to_float(void) const
63+ // 符号部
64+ u32 sign(void) const { return (m_buf[0]>>7) & 1; }
65+ // 指数部
66+ u32 exp(void) const { return (static_cast<u32>(m_buf[0]&0x7F) << 8) | (static_cast<u32>(m_buf[1]) << 0); }
67+ // 仮数部
68+ u64 frac(void) const
6469 {
65- u32 func = (static_cast<u32>(m_buf[2]) << 16) | (static_cast<u32>(m_buf[3]) << 8) | (static_cast<u32>(m_buf[4]));
66- u32 exp = (static_cast<u32>(m_buf[0]) << 24) | (static_cast<u32>(m_buf[1]) << 16);
67- CIEEE754<u32, 1, 15, 16> v;
68- IRIS_ASSERT( func & 0x00800000 );
69- v.value() = exp | ((func >> 7) & 0xFFFF); // 暗黙の 1bit を捨てる。
70- return v;
70+ return (static_cast<u64>(m_buf[2]) << 56) | (static_cast<u64>(m_buf[3]) << 48) | (static_cast<u64>(m_buf[4]) << 40)
71+ | (static_cast<u64>(m_buf[5]) << 32) | (static_cast<u64>(m_buf[6]) << 24) | (static_cast<u64>(m_buf[7]) << 16)
72+ | (static_cast<u64>(m_buf[8]) << 8) | (static_cast<u64>(m_buf[9]));
7173 }
72-
73- double cast_to_double(void) const
74+private:
75+ float cast_to_float(void) const
7476 {
75- u64 func = (static_cast<u64>(m_buf[2]) << 48) | (static_cast<u64>(m_buf[3]) << 40) | (static_cast<u64>(m_buf[4]) << 32)
76- | (static_cast<u64>(m_buf[5]) << 24) | (static_cast<u64>(m_buf[6]) << 16) | (static_cast<u64>(m_buf[7]) << 8)
77- | (static_cast<u64>(m_buf[8]));
78- u64 exp = (static_cast<u64>(m_buf[0]) << 56) | (static_cast<u64>(m_buf[1]) << 48);
79- CIEEE754<u64, 1, 15, 48> v;
80- IRIS_ASSERT( func & 0x0080000000000000 );
81- v.value() = exp | ((func >> 7) & 0xFFFFFFFFFFFF); // 暗黙の 1bit を捨てる。
82- return v;
77+ CIEEEBinary32 ieee;
78+ u32 exp_ = exp();
79+ if( exp_ == (1<<15)-1 )
80+ {
81+ exp_ = (1<<8)-1;
82+ }
83+ else if( exp_ != 0 )
84+ {
85+ exp_ -= (1<<14)-1;
86+ exp_ += (1<<7)-1;
87+ if( exp_ & ~0xFF )
88+ {
89+ // INF
90+ ieee.value() = 0x7F800000;
91+ ieee.sign(sign());
92+ return ieee;
93+ }
94+ }
95+ ieee.sign(sign());
96+ ieee.exp(exp_);
97+ ieee.frac((frac()>>40)&0x7FFFFF); // 暗黙の1bitを捨てる
98+ return ieee;
8399 }
84-
100+ double cast_to_double(void) const
101+ {
102+ CIEEEBinary64 ieee;
103+ u32 exp_ = exp();
104+ if( exp_ == (1<<15)-1 )
105+ {
106+ exp_ = (1<<11)-1;
107+ }
108+ else if( exp_ != 0 )
109+ {
110+ exp_ -= (1<<14)-1;
111+ exp_ += (1<<10)-1;
112+ if( exp_ & ~0x7FF )
113+ {
114+ // INF
115+ ieee.value() = 0x7FF0000000000000;
116+ ieee.sign(sign());
117+ return ieee;
118+ }
119+ }
120+ ieee.sign(sign());
121+ ieee.exp(exp_);
122+ ieee.frac((frac()>>11)&0xFFFFFFFFFFFFF); // 暗黙の1bitを捨てる
123+ return ieee;
124+ }
85125 };
86126
87127 } // end of namespace fnd
--- trunk/framework/testsuite/cppcheck/check.bat (revision 279)
+++ trunk/framework/testsuite/cppcheck/check.bat (revision 280)
@@ -4,11 +4,12 @@
44 SET TARGETPATH=%~dp0/../../src
55
66 SET VCINSTALLDIR=%ProgramFiles(x86)%\Microsoft Visual Studio 9.0\VC
7-rem SET INC=-I "%VCINSTALLDIR%\include" -I "%ProgramFiles(x86)%\Microsoft SDKs\Windows\v5.0\include"
87
8+call :set_inc
9+
910 SET INC=-I %~dp0/../../src %INC%
10-rem SET EXCLUDE=-i"%VCINSTALLDIR%\include" -i"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v5.0\include"
11-rem SET DEFS=-D__cplusplus
11+SET DEFS=-D__cplusplus -DWIN32 -D_WIN32 -D_NDEBUG -D_WINDOWS -D_MSC_VER=1500 -DUCHAR_MAX=0xFF -DUSHRT_MAX=0xFFFF
12+SET DEFS=%DEFS% -DULONG_MAX=0xFFFFFFFF
1213 rem SET UNDEFS=-U_IRIS_DEBUGTEST_ENABLE -U_IRIS_MULTI_UNITTEST -U_IRIS_SUPPORT_MULTI_UNITTEST_GUI -U_IRIS_FPU_INLINE
1314 rem SET UNDEFS=%UNDEFS% -U_IRIS_XFPU_INLINE -U_IRIS_DX_RIGHTHAND -U_IRIS_SUPPORT_SAFE_ISTREAM -U_IRIS_SUPPORT_DCAST_DYNAMIC
1415 rem SET UNDEFS=%UNDEFS% -U_IRIS_SUPPORT_OPENAL -U_IRIS_SUPPORT_OGGVORBIS -U_IRIS_SUPPORT_GLUT -U_IRIS_SUPPORT_GLEW
@@ -18,7 +19,7 @@
1819 SET SUPPRESS=--inline-suppr
1920 rem SET CHECKCONFING=--check-config
2021 SET BUILDOPTIONS=%DEFS% %UNDEFS% %CHECKCONFING% --platform=win32A %INC% %EXCLUDE%
21-SET OPTIONS=--template vs -f --enable=all %SUPPRESS% %BUILDOPTIONS%
22+SET OPTIONS=--template vs -f --std=c99 --enable=style %SUPPRESS% %BUILDOPTIONS%
2223 rem SET OPTIONS=--template vs --enable=all
2324 rem SET OPTIONS=
2425
@@ -50,3 +51,18 @@
5051 popd
5152 exit /b 0
5253
54+
55+:set_inc
56+for /f "delims=;" %%a in ("%INCLUDE%") do call :add_inc "%%a"
57+goto :EOF
58+
59+:add_inc
60+SET ARG=%~1
61+if "%ARG:~-1%" == "\" (
62+ SET INC=%INC% -I "%ARG:~0,-1%"
63+ SET EXCLUDE=%EXCLUDE% -i"%ARG:~0,-1%"
64+) else (
65+ SET INC=%INC% -I "%ARG%"
66+ SET EXCLUDE=%EXCLUDE% -i"%ARG%"
67+)
68+goto :EOF
Show on old repository browser