Can you add the PCH back to ntos please?

On 2009-12-12, at 10:41 AM, [email protected] wrote:

> Author: sserapion
> Date: Sat Dec 12 16:41:43 2009
> New Revision: 44550
> 
> URL: http://svn.reactos.org/svn/reactos?rev=44550&view=rev
> Log:
> -Remove hacks for older gcc versions.
> -Black list gcc below 4.4.2
> -Black list ld below 20091119.
> -99.99% Based on bug 4810
> -Speeds up my build by 3 minutes
> 
> Modified:
>    branches/ros-amd64-bringup/reactos/ReactOS-generic.rbuild
>    
> branches/ros-amd64-bringup/reactos/base/applications/games/solitaire/solitaire.cpp
>    
> branches/ros-amd64-bringup/reactos/base/applications/games/spider/spider.cpp
>    branches/ros-amd64-bringup/reactos/dll/directx/ddraw/ddraw.rbuild
>    branches/ros-amd64-bringup/reactos/dll/directx/wine/ddraw/ddraw.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/actxprxy/actxprxy.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/advapi32/advapi32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/crypt32/crypt32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/gdi32/gdi32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/ole32/ole32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/psapi/psapi.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/rpcrt4/rpcrt4.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/setupapi/setupapi.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/syssetup/syssetup.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/user32/user32.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/winmm/mci.c
>    branches/ros-amd64-bringup/reactos/dll/win32/wintrust/wintrust.rbuild
>    branches/ros-amd64-bringup/reactos/dll/win32/wlanapi/wlanapi.rbuild
>    branches/ros-amd64-bringup/reactos/drivers/input/kbdclass/kbdclass.rbuild
>    branches/ros-amd64-bringup/reactos/drivers/input/mouclass/mouclass.rbuild
>    branches/ros-amd64-bringup/reactos/drivers/network/afd/afd.rbuild
>    branches/ros-amd64-bringup/reactos/drivers/network/tcpip/tcpip.rbuild
>    branches/ros-amd64-bringup/reactos/drivers/video/miniport/vbe/vbemp.c
>    branches/ros-amd64-bringup/reactos/hal/halx86/mp/apic.c
>    branches/ros-amd64-bringup/reactos/lib/nls/idna/idna.cpp
>    branches/ros-amd64-bringup/reactos/lib/nls/idna/nameprep.cpp
>    branches/ros-amd64-bringup/reactos/lib/rtl/rtl.rbuild
>    branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/contmem.c
>    branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl-generic.rbuild
>    branches/ros-amd64-bringup/reactos/ntoskrnl/ps/job.c
>    branches/ros-amd64-bringup/reactos/ntoskrnl/ps/process.c
>    branches/ros-amd64-bringup/reactos/ntoskrnl/ps/query.c
>    branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/objects/gdiobj.c
>    branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/win32k.rbuild
>    
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/linkers/ld.mak
>    branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/mingw.cpp
>    
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
>    branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak
>    branches/ros-amd64-bringup/reactos/tools/rbuild/project.cpp
> 
> Modified: branches/ros-amd64-bringup/reactos/ReactOS-generic.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ReactOS-generic.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ReactOS-generic.rbuild [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/ReactOS-generic.rbuild [iso-8859-1] 
> Sat Dec 12 16:41:43 2009
> @@ -120,11 +120,7 @@
>               <compilerflag>-Wno-strict-aliasing</compilerflag>
>               <compilerflag>-Wpointer-arith</compilerflag>
>               <compilerflag>-Wno-multichar</compilerflag>
> -             <!--
> -             <compilerflag>-Wno-error=uninitialized</compilerflag>
> -             <compilerflag>-Wno-error=unused-function</compilerflag>
> -             <compilerflag>-Wno-error=write-strings</compilerflag>
> -             -->
> +
>               <!-- compilerflag>-H</compilerflag>    enable this for header 
> traces -->
>       </group>
> 
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/base/applications/games/solitaire/solitaire.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/base/applications/games/solitaire/solitaire.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- 
> branches/ros-amd64-bringup/reactos/base/applications/games/solitaire/solitaire.cpp
>  [iso-8859-1] (original)
> +++ 
> branches/ros-amd64-bringup/reactos/base/applications/games/solitaire/solitaire.cpp
>  [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -196,8 +196,6 @@
> 
>     SaveSettings();
> 
> -    try { throw 0; } catch (int i) { } /* HACK */
> -
>     return msg.wParam;
> }
> 
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/base/applications/games/spider/spider.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/base/applications/games/spider/spider.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- 
> branches/ros-amd64-bringup/reactos/base/applications/games/spider/spider.cpp 
> [iso-8859-1] (original)
> +++ 
> branches/ros-amd64-bringup/reactos/base/applications/games/spider/spider.cpp 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -154,9 +154,6 @@
>             DispatchMessage(&msg);
>         }
>     }
> -
> -    try { throw 0; } catch (int i) { } /* HACK */
> -
>     return msg.wParam;
> }
> 
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/directx/ddraw/ddraw.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/directx/ddraw/ddraw.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/directx/ddraw/ddraw.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/directx/ddraw/ddraw.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -69,6 +69,4 @@
>               <file>DirectD3D3_Vtable.c</file>
>               <file>DirectD3D7_Vtable.c</file>
>       </directory>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/directx/wine/ddraw/ddraw.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/directx/wine/ddraw/ddraw.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/directx/wine/ddraw/ddraw.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/directx/wine/ddraw/ddraw.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -42,7 +42,4 @@
>       <file>viewport.c</file>
> 
>       <dependency>wineheaders</dependency>
> -
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/actxprxy/actxprxy.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/actxprxy/actxprxy.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/actxprxy/actxprxy.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/actxprxy/actxprxy.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -15,7 +15,6 @@
>       <library>rpcrt4</library>
>       <library>pseh</library>
>       <file>usrmarshal.c</file>
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> <module name="actxprxy_interface" type="idlinterface">
>       <file>actxprxy_servprov.idl</file>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/advapi32/advapi32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/advapi32/advapi32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/advapi32/advapi32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/advapi32/advapi32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -59,5 +59,4 @@
>                       <file>token.c</file>
>       </directory>
>       <file>advapi32.rc</file>
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/crypt32/crypt32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/crypt32/crypt32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/crypt32/crypt32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/crypt32/crypt32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -42,6 +42,4 @@
>       <file>message.c</file>
>       <file>crypt32.rc</file>
>       <file>version.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/gdi32/gdi32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/gdi32/gdi32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/gdi32/gdi32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/gdi32/gdi32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -8,11 +8,9 @@
>       <library>pseh</library>
>       <library>dxguid</library>
>       <library>ntdll</library>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <directory name="include">
>               <pch>precomp.h</pch>
>       </directory>
> -     -->
>       <directory name="main">
>               <file>dllmain.c</file>
>       </directory>
> @@ -49,6 +47,4 @@
>               <file>path.c</file>
>       </directory>
>       <file>gdi32.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/kernel32/kernel32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -13,12 +13,8 @@
>       <define name="_KERNEL32_" />
>       <redefine name="_WIN32_WINNT">0x0600</redefine>
>       <dependency>errcodes</dependency>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <pch>k32.h</pch>
> -     -->
>       <group compilerset="gcc">
> -             <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 
> -->
> -             <compilerflag>-fno-unit-at-a-time</compilerflag>
>               <compilerflag compiler="cxx">-fno-exceptions</compilerflag>
>               <compilerflag compiler="cxx">-fno-rtti</compilerflag>
>       </group>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/ole32/ole32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/ole32/ole32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/ole32/ole32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/ole32/ole32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -63,8 +63,6 @@
>       <file>dcom.idl</file>
>       <file>irot.idl</file>
>       <include base="ole32" root="intermediate">.</include>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> <module name="ole32_irot_server" type="rpcserver">
>       <file>irot.idl</file>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/psapi/psapi.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/psapi/psapi.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/psapi/psapi.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/psapi/psapi.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -5,12 +5,9 @@
>       <library>epsapi</library>
>       <library>pseh</library>
>       <library>ntdll</library>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <pch>precomp.h</pch>
> -     -->
> +
>       <file>malloc.c</file>
>       <file>psapi.c</file>
>       <file>psapi.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -15,7 +15,6 @@
>       <library>rpcrt4</library>
>       <library>pseh</library>
>       <file>version.rc</file> <!-- we need at least one file in the module -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> <module name="qmgrprxy_interface" type="idlinterface">
>       <file>qmgrprxy.idl</file>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/rpcrt4/rpcrt4.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/rpcrt4/rpcrt4.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/rpcrt4/rpcrt4.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/rpcrt4/rpcrt4.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -39,8 +39,6 @@
>       <file>rpcrt4.rc</file>
>       <file>epm.idl</file>
>       <include base="rpcrt4" root="intermediate">.</include>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> <module name="rpcrt4_epm_client" type="rpcclient">
>       <file>epm.idl</file>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/setupapi/setupapi.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/setupapi/setupapi.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/setupapi/setupapi.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/setupapi/setupapi.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -39,6 +39,4 @@
>       <file>stubs.c</file>
>       <file>rpc.c</file>
>       <file>setupapi.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/syssetup/syssetup.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/syssetup/syssetup.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/syssetup/syssetup.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/syssetup/syssetup.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -20,6 +20,4 @@
>       <file>logfile.c</file>
>       <file>wizard.c</file>
>       <file>syssetup.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/user32/user32.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/user32/user32.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/user32/user32.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/user32/user32.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -11,11 +11,9 @@
>       <library>pseh</library>
>       <library>ntdll</library>
>       <compilerflag compilerset="gcc">-fms-extensions</compilerflag>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <directory name="include">
>               <pch>user32.h</pch>
>       </directory>
> -     -->
>       <directory name="controls">
>               <file>button.c</file>
>               <file>combo.c</file>
> @@ -76,6 +74,4 @@
>               <file>winpos.c</file>
>       </directory>
>       <file>user32.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/winmm/mci.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/winmm/mci.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/winmm/mci.c [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/winmm/mci.c [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -1459,7 +1459,7 @@
> BOOL WINAPI mciExecute(LPCSTR lpstrCommand)
> {
>     char      strRet[256];
> -    DWORD    ret;
> +    int      ret;
> 
>     TRACE("(%s)!\n", lpstrCommand);
> 
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/dll/win32/wintrust/wintrust.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/wintrust/wintrust.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/wintrust/wintrust.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/wintrust/wintrust.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -18,6 +18,4 @@
>       <file>asn.c</file>
>       <file>softpub.c</file>
>       <file>version.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/dll/win32/wlanapi/wlanapi.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/dll/win32/wlanapi/wlanapi.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/dll/win32/wlanapi/wlanapi.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/dll/win32/wlanapi/wlanapi.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -8,6 +8,4 @@
>       <library>pseh</library>
>       <library>ntdll</library>
>       <file>main.c</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/drivers/input/kbdclass/kbdclass.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/drivers/input/kbdclass/kbdclass.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/drivers/input/kbdclass/kbdclass.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/drivers/input/kbdclass/kbdclass.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -9,6 +9,4 @@
>       <file>misc.c</file>
>       <file>setup.c</file>
>       <file>kbdclass.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/drivers/input/mouclass/mouclass.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/drivers/input/mouclass/mouclass.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/drivers/input/mouclass/mouclass.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/drivers/input/mouclass/mouclass.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -8,6 +8,4 @@
>       <file>misc.c</file>
>       <file>mouclass.c</file>
>       <file>mouclass.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/drivers/network/afd/afd.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/drivers/network/afd/afd.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/drivers/network/afd/afd.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/drivers/network/afd/afd.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -8,9 +8,7 @@
>       <library>ntoskrnl</library>
>       <library>hal</library>
>       <directory name="include">
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <pch>afd.h</pch>
> -     -->
>       </directory>
>       <directory name="afd">
>               <file>bind.c</file>
> @@ -27,6 +25,4 @@
>               <file>write.c</file>
>       </directory>
>       <file>afd.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/drivers/network/tcpip/tcpip.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/drivers/network/tcpip/tcpip.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/drivers/network/tcpip/tcpip.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/drivers/network/tcpip/tcpip.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -13,11 +13,9 @@
>       <library>chew</library>
>       <library>ntoskrnl</library>
>       <library>hal</library>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <directory name="include">
>               <pch>precomp.h</pch>
>       </directory>
> -     -->
>       <directory name="datalink">
>               <file>lan.c</file>
>       </directory>
> @@ -40,6 +38,4 @@
>               <file>wait.c</file>
>       </directory>
>       <file>tcpip.rc</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/drivers/video/miniport/vbe/vbemp.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/drivers/video/miniport/vbe/vbemp.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/drivers/video/miniport/vbe/vbemp.c 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/drivers/video/miniport/vbe/vbemp.c 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -781,6 +781,8 @@
>       MapInformation->VideoRamBase = 
> RequestedAddress->RequestedVirtualAddress;
>       MapInformation->VideoRamLength = 0x10000;
>    }
> +#else
> +   FrameBuffer.QuadPart = 0;
> #endif
> 
>    VideoPortMapMemory(DeviceExtension, FrameBuffer,
> 
> Modified: branches/ros-amd64-bringup/reactos/hal/halx86/mp/apic.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/hal/halx86/mp/apic.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/hal/halx86/mp/apic.c [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/hal/halx86/mp/apic.c [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -798,6 +798,8 @@
>    LONG tt1, tt2;
>    BOOLEAN TSCPresent;
> 
> +   t1.QuadPart = 0;
> +
>    DPRINT("Calibrating APIC timer for CPU %d\n", CPU);
> 
>    APICSetupLVTT(1000000000);
> 
> Modified: branches/ros-amd64-bringup/reactos/lib/nls/idna/idna.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/nls/idna/idna.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/lib/nls/idna/idna.cpp [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/lib/nls/idna/idna.cpp [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -38,6 +38,9 @@
> 
> #include <unicode/uidna.h>
> 
> +C_ASSERT(IDN_ALLOW_UNASSIGNED == UIDNA_ALLOW_UNASSIGNED);
> +C_ASSERT(IDN_USE_STD3_ASCII_RULES == UIDNA_USE_STD3_RULES);
> +
> static
> int32_t
> IDNA_FlagsToICU
> @@ -45,8 +48,6 @@
>       DWORD dwFlags
> )
> {
> -     C_ASSERT(IDN_ALLOW_UNASSIGNED == UIDNA_ALLOW_UNASSIGNED);
> -     C_ASSERT(IDN_USE_STD3_ASCII_RULES == UIDNA_USE_STD3_RULES);
>       return dwFlags;
> }
> 
> 
> Modified: branches/ros-amd64-bringup/reactos/lib/nls/idna/nameprep.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/nls/idna/nameprep.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/lib/nls/idna/nameprep.cpp [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/lib/nls/idna/nameprep.cpp [iso-8859-1] 
> Sat Dec 12 16:41:43 2009
> @@ -38,6 +38,8 @@
> 
> #include <unicode/usprep.h>
> 
> +C_ASSERT(IDN_ALLOW_UNASSIGNED == USPREP_ALLOW_UNASSIGNED);
> +
> static
> int32_t
> NAMEPREP_FlagsToICU
> @@ -45,7 +47,6 @@
>       DWORD dwFlags
> )
> {
> -     C_ASSERT(IDN_ALLOW_UNASSIGNED == USPREP_ALLOW_UNASSIGNED);
>       return dwFlags;
> }
> 
> 
> Modified: branches/ros-amd64-bringup/reactos/lib/rtl/rtl.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/lib/rtl/rtl.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/lib/rtl/rtl.rbuild [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/lib/rtl/rtl.rbuild [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -107,9 +107,5 @@
>       <file>version.c</file>
>       <file>wait.c</file>
>       <file>workitem.c</file>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <pch>rtl.h</pch>
> -     -->
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> 
> Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/contmem.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/contmem.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/contmem.c 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/ntoskrnl/mm/ARM3/contmem.c 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -246,7 +246,6 @@
> NTAPI
> MiFreeContiguousMemory(IN PVOID BaseAddress)
> {
> -    KIRQL OldIrql;
>     PFN_NUMBER PageFrameIndex, LastPage, PageCount;
>     PMMPFN Pfn1, StartPfn;
>     PAGED_CODE();
> 
> Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl-generic.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl-generic.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl-generic.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ntoskrnl-generic.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -30,11 +30,9 @@
>       <library>bootvid</library>
>       <library>wdmguid</library>
>       <dependency>bugcodes</dependency>
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <directory name="include">
>               <pch>precomp.h</pch>
>       </directory>
> -     -->
>       <directory name="ke">
>               <if property="ARCH" value="i386">
>                       <directory name="i386">
> @@ -556,7 +554,4 @@
>       </directory>
>       <file>ntoskrnl.rc</file>
>       <linkerscript>ntoskrnl_$(ARCH).lnk</linkerscript>
> -
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </group>
> 
> Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ps/job.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/ps/job.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ntoskrnl/ps/job.c [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ps/job.c [iso-8859-1] Sat Dec 
> 12 16:41:43 2009
> @@ -164,7 +164,7 @@
>                 ExAcquireRundownProtection(&Process->RundownProtect);
>                 if(NT_SUCCESS(Status))
>                 {
> -                    if(Process->Job == NULL && Process->Session == 
> Job->SessionId)
> +                    if(Process->Job == NULL && (ULONG_PTR)Process->Session 
> == Job->SessionId)
>                     {
>                         /* Just store the pointer to the job object in the 
> process, we'll
>                         assign it later. The reason we can't do this here is 
> that locking
> @@ -268,7 +268,7 @@
> 
>         /* setup the job object */
>         InitializeListHead(&Job->ProcessListHead);
> -        Job->SessionId = CurrentProcess->Session; /* inherit the session id 
> from the caller */
> +        Job->SessionId = (ULONG_PTR)CurrentProcess->Session; /* inherit the 
> session id from the caller */
> 
>         Status = ExInitializeResource(&Job->JobLock);
>         if(!NT_SUCCESS(Status))
> 
> Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ps/process.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/ps/process.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ntoskrnl/ps/process.c [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ps/process.c [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -1104,7 +1104,7 @@
> NTAPI
> PsGetCurrentProcessSessionId(VOID)
> {
> -    return PsGetCurrentProcess()->Session;
> +    return (ULONG)(ULONG_PTR)PsGetCurrentProcess()->Session;
> }
> 
> /*
> 
> Modified: branches/ros-amd64-bringup/reactos/ntoskrnl/ps/query.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/ntoskrnl/ps/query.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/ntoskrnl/ps/query.c [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/ntoskrnl/ps/query.c [iso-8859-1] Sat 
> Dec 12 16:41:43 2009
> @@ -1001,7 +1001,7 @@
>             if (!NT_SUCCESS(Status)) break;
> 
>             /* Write the session ID in the EPROCESS */
> -            Process->Session = SessionInfo.SessionId;
> +            Process->Session = (PVOID)(ULONG_PTR)SessionInfo.SessionId;
> 
>             /* Check if the process also has a PEB */
>             if (Process->Peb)
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/objects/gdiobj.c
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/objects/gdiobj.c?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- 
> branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/objects/gdiobj.c 
> [iso-8859-1] (original)
> +++ 
> branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/objects/gdiobj.c 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -30,7 +30,7 @@
> 
> #include "gdidbg.c"
> 
> -/* static */ /* FIXME: -fno-unit-at-a-time breaks this */
> +static
> BOOL INTERNAL_CALL GDI_CleanupDummy(PVOID ObjectBody);
> 
> /** GLOBALS 
> *******************************************************************/
> @@ -87,7 +87,7 @@
> /*
>  * Dummy GDI Cleanup Callback
>  */
> -/* static */ /* FIXME: -fno-unit-at-a-time breaks this */
> +static
> BOOL INTERNAL_CALL
> GDI_CleanupDummy(PVOID ObjectBody)
> {
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/win32k.rbuild
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/win32k.rbuild?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/win32k.rbuild 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/subsystems/win32/win32k/win32k.rbuild 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -20,9 +20,7 @@
>       <compilerflag compilerset="msc">/wd4276</compilerflag>
>       <define name="LANGPACK" />
>       <define name="_WIN32K_" />
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
>       <pch>pch.h</pch>
> -     -->
> 
>       <directory name="dib" root="intermediate">
>               <file>dib8gen.c</file>
> @@ -205,8 +203,5 @@
>               <file>stubs.c</file>
>               <file>umpdstubs.c</file>
>       </directory>
> -
> -     <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054#c7 -->
> -     <compilerflag compilerset="gcc">-fno-unit-at-a-time</compilerflag>
> </module>
> </group>
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/linkers/ld.mak
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/linkers/ld.mak?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/linkers/ld.mak 
> [iso-8859-1] (original)
> +++ 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/linkers/ld.mak 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -4,6 +4,8 @@
> LDFLAG_CONSOLE:=--subsystem=console
> LDFLAG_WINDOWS:=--subsystem=windows
> LDFLAG_NATIVE:=--subsystem=native
> +
> +LDFLAG_EXCLUDE_ALL_SYMBOLS=-exclude-all-symbols
> 
> #~ #(module, objs, deps, ldflags, output, def, libs, entry, base)
> #(module, objs, deps, ldflags, output, def, libs, entry, base, extralibs)
> @@ -40,7 +42,7 @@
> $(5): ${call RBUILD_intermediate_dir,$(5)}$$(SEP)$(1)_objs.rsp $(7) $(3) 
> $$(RSYM_TARGET) $$(PEFIXUP_TARGET) | ${call RBUILD_dir,$(5)}
>       $$(ECHO_LD)
> #~    $${ld} --entry=$(8) --image-base=$(9) @${call 
> RBUILD_intermediate_dir,$(5)}$$(SEP)$(1)_objs.rsp $(7) ${call 
> RBUILD_ldflags,$(1),$(4)} -o $$@
> -     $${ld} --entry=$(8) --image-base=$(9) @${call 
> RBUILD_intermediate_dir,$(5)}$$(SEP)$(1)_objs.rsp $(10) $(7) $(10) ${call 
> RBUILD_ldflags,$(1),$(4)} -o $$@
> +     $${ld} --entry=$(8) --image-base=$(9) @${call 
> RBUILD_intermediate_dir,$(5)}$$(SEP)$(1)_objs.rsp --start-group $(10) $(7) 
> --end-group ${call RBUILD_ldflags,$(1),$(4)} -o $$@
> ifneq ($(or $(6),$$(MODULETYPE$$($(1)_TYPE)_KMODE)),)
>       $$(ECHO_PEFIXUP)
>       $$(Q)$$(PEFIXUP_TARGET) $$@ $(if $(6),-exports) $$(if 
> $$(MODULETYPE$($(1)_TYPE)_KMODE),-sections)
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/mingw.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/mingw.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/mingw.cpp 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/mingw.cpp 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -480,14 +480,8 @@
>               fputs ( "BUILTIN_CXXINCLUDES+= $(TARGET_CPPFLAGS)\n", fMakefile 
> );
> 
>               fprintf ( fMakefile, "PROJECT_CCLIBS := \"$(shell ${TARGET_CC} 
> -print-libgcc-file-name)\"\n" );
> -             fprintf ( fMakefile, "PROJECT_CXXLIBS := \"$(shell 
> ${TARGET_CPP} -print-file-name=libstdc++.a)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libgcc.a)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libmingw32.a)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libmingwex.a)\" " );
> -
> -             /* hack to get libgcc_eh.a, should check mingw version or 
> something */
> -             if (Environment::GetArch() == "amd64")
> -             {
> -                     fprintf ( fMakefile, " \"$(shell ${TARGET_CPP} 
> -print-file-name=libgcc_eh.a)\"" );
> -             }
> -             fprintf ( fMakefile,"\n");
> +        fprintf ( fMakefile, "PROJECT_CXXLIBS := \"$(shell ${TARGET_CPP} 
> -print-file-name=libstdc++.a)\" \"$(shell ${TARGET_CPP} 
> -print-libgcc-file-name)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libmingw32.a)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libmingwex.a)\" \"$(shell ${TARGET_CPP} 
> -print-file-name=libgcc_eh.a)\"\n" );
> +
>       }
>       MingwModuleHandler::GenerateParameters ( "PROJECT", "+=", 
> ProjectNode.non_if_data );
>       MingwModuleHandler::GenerateParameters ( "PROJECT_HOST", "+=", 
> ProjectNode.host_non_if_data );
> @@ -844,7 +838,7 @@
>       buffer[i] = '\0';
>       pclose ( fp );
> 
> -     char separators[] = " ()";
> +     char separators[] = " ()\n";
>       char *token;
>       char *prevtoken = NULL;
> 
> @@ -888,7 +882,7 @@
> string
> MingwBackend::GetCompilerVersion ( const string& compilerCommand )
> {
> -     string versionCommand = ssprintf ( "%s --version gcc",
> +     string versionCommand = ssprintf ( "%s --version",
>                                          compilerCommand.c_str (),
>                                          NUL,
>                                          NUL );
> @@ -908,7 +902,7 @@
> bool
> MingwBackend::IsSupportedCompilerVersion ( const string& compilerVersion )
> {
> -     if ( strcmp ( compilerVersion.c_str (), "3.4.2") < 0 )
> +     if ( strcmp ( compilerVersion.c_str (), "4.4.2") < 0 )
>               return false;
>       else
>               return true;
> @@ -970,27 +964,32 @@
> bool
> MingwBackend::IsSupportedBinutilsVersion ( const string& binutilsVersion )
> {
> -     if ( manualBinutilsSetting ) return true;
> -
> -     /* linux */
> -     if ( binutilsVersion.find('.') != std::string::npos )
> -     {
> -             /* TODO: blacklist versions on version number instead of date */
> -             return true;
> -     }
> -
> -     /*
> -      * - Binutils older than 2003/10/01 have broken windres which can't 
> handle
> -      *   icons with alpha channel.
> -      * - Binutils between 2004/09/02 and 2004/10/08 have broken handling of
> -      *   forward exports in dlltool.
> -      */
> -     if ( ( ( strcmp ( binutilsVersion.c_str (), "20040902") >= 0 ) &&
> -            ( strcmp ( binutilsVersion.c_str (), "20041008") <= 0 ) ) ||
> -            ( strcmp ( binutilsVersion.c_str (), "20031001") < 0 ) )
> +     int digit = binutilsVersion.find_last_of(".");
> +     if(digit == -1)
> +     {
> +             printf("Unable to detect binutils version!\n");
>               return false;
> +     }
> +
> +     string date = string(binutilsVersion, digit + 1);
> +     if(date.length() == 8)
> +     {
> +             /* This is a real date in the format YYYYMMDD.
> +                Check whether we have at least Binutils 20091017 (older 
> versions
> +                don't support the -exclude-all-symbols option we use). */
> +             if(strcmp(date.c_str(), "20091119") < 0)
> +                     return false;
> +     }
>       else
> -             return true;
> +     {
> +             /* This is no date, so binutilsVersion should just contain the 
> version
> +                number.
> +                Binutils 2.20 will hopefully contain the required features. 
> */
> +             if(strcmp(binutilsVersion.c_str(), "2.20") < 0)
> +                     return false;
> +     }
> +     
> +     return true;
> }
> 
> void
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/modulehandler.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
>  [iso-8859-1] (original)
> +++ 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
>  [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -1782,6 +1782,12 @@
>               &module.linkerFlags,
>               used_defs );
> 
> +     /* LD automatically exports all symbols by default if -shared is 
> specified. Prevent it from doing
> +        this by adding the option -exclude-all-symbols (available since 
> Binutils 20091017). */
> +     // FIXME: Should only be applied for -shared modules, when there's a 
> smart way to check for them.
> +     if ( ModuleHandlerInformations[module.type].DefaultHost == HostFalse && 
> !module.importLibrary )
> +             fprintf ( fMakefile, 
> "%s_LDFLAGS+=$(LDFLAG_EXCLUDE_ALL_SYMBOLS)\n", module.name.c_str() );
> +     
>       fprintf ( fMakefile, "\n\n" );
> }
> 
> 
> Modified: 
> branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak 
> [iso-8859-1] (original)
> +++ branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak 
> [iso-8859-1] Sat Dec 12 16:41:43 2009
> @@ -259,7 +259,7 @@
>       $$(ECHO_WIDL)
>       $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
> RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_c.h -c -C 
> ${call RBUILD_intermediate_path_noext,$(2)}_c.c $(2)
> 
> -${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_c.c,,-fno-unit-at-a-time,${call 
> RBUILD_intermediate_path_noext,$(2)}_c.o}
> +${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_c.c,,,${call 
> RBUILD_intermediate_path_noext,$(2)}_c.o}
> 
> endef
> 
> @@ -272,7 +272,7 @@
>       $$(ECHO_WIDL)
>       $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
> RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_s.h -s -S 
> ${call RBUILD_intermediate_path_noext,$(2)}_s.c $(2)
> 
> -${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_s.c,,-fno-unit-at-a-time,${call 
> RBUILD_intermediate_path_noext,$(2)}_s.o}
> +${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_s.c,,,${call 
> RBUILD_intermediate_path_noext,$(2)}_s.o}
> 
> endef
> 
> @@ -285,7 +285,7 @@
>       $$(ECHO_WIDL)
>       $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
> RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_p.h -p -P 
> ${call RBUILD_intermediate_path_noext,$(2)}_p.c $(2)
> 
> -${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_p.c,,-fno-unit-at-a-time,${call 
> RBUILD_intermediate_path_noext,$(2)}_p.o}
> +${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_p.c,,,${call 
> RBUILD_intermediate_path_noext,$(2)}_p.o}
> 
> endef
> 
> @@ -298,7 +298,7 @@
>       $$(ECHO_WIDL)
>       $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
> RBUILD_dir,$(2)}} -u -U $$@ $$<
> 
> -${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_i.c,,-fno-unit-at-a-time,${call 
> RBUILD_intermediate_path_noext,$(2)}_i.o}
> +${call RBUILD_CC,$(1),${call 
> RBUILD_intermediate_path_noext,$(2)}_i.c,,,${call 
> RBUILD_intermediate_path_noext,$(2)}_i.o}
> 
> endef
> 
> 
> Modified: branches/ros-amd64-bringup/reactos/tools/rbuild/project.cpp
> URL: 
> http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/project.cpp?rev=44550&r1=44549&r2=44550&view=diff
> ==============================================================================
> --- branches/ros-amd64-bringup/reactos/tools/rbuild/project.cpp [iso-8859-1] 
> (original)
> +++ branches/ros-amd64-bringup/reactos/tools/rbuild/project.cpp [iso-8859-1] 
> Sat Dec 12 16:41:43 2009
> @@ -527,6 +527,7 @@
>       case MicrosoftC: return "msc";
>       default: assert ( false );
>       }
> +    return "";
> }
> 
> std::string
> @@ -538,4 +539,5 @@
>       case MicrosoftLink: return "mslink";
>       default: assert ( false );
>       }
> -}
> +    return "";
> +}
> 
> 

Best regards,
Alex Ionescu


_______________________________________________
Ros-dev mailing list
[email protected]
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to