Author: cfinck
Date: Tue Feb 9 19:14:58 2010
New Revision: 45535
URL:
http://svn.reactos.org/svn/reactos?rev=45535&view=rev
Log:
The big RosBE 1.5 compatibility patch. You will need RosBE 1.5 from this point!
- Set the minimum GCC version to 4.4.0 and minimum Binutils version to 20091016.
- Remove the -fno-unit-at-a-time hacks.
- Remove dgorbachev's temporary hacks for user-mode C++ applications.
- Merge ntoskrnl's "precomp.h" and "ntoskrnl.h" again, the PCH
issues have been fixed.
- Use our "ofmt_stub.a" to be compatible with newer MinGW Runtime versions.
- Use LD's new -exclude-all-symbols option to not auto-export all symbols in case no
DEF file or __declspec(dllexport) was specified.
We used to patch our LD version to work around this problem.
- Use LD's --start-group and --end-group parameters to allow a more flexible linking
order.
- Use GCC's -fno-set-stack-executable for amd64 and i386 targets to disable adding the
__enable_execute_stack code.
- Change the makefile's name to "makefile-$(ARCH).auto" for all
architectures.
- Remove some -Wno-error flags.
See issue #4810 for more details.
Removed:
trunk/reactos/ntoskrnl/include/precomp.h
Modified:
trunk/reactos/Makefile
trunk/reactos/ReactOS-generic.rbuild
trunk/reactos/ReactOS-i386.rbuild
trunk/reactos/base/applications/games/solitaire/solitaire.cpp
trunk/reactos/base/applications/games/spider/spider.cpp
trunk/reactos/dll/directx/ddraw/ddraw.rbuild
trunk/reactos/dll/directx/wine/ddraw/ddraw.rbuild
trunk/reactos/dll/win32/actxprxy/actxprxy.rbuild
trunk/reactos/dll/win32/advapi32/advapi32.rbuild
trunk/reactos/dll/win32/crypt32/crypt32.rbuild
trunk/reactos/dll/win32/gdi32/gdi32.rbuild
trunk/reactos/dll/win32/kernel32/kernel32.rbuild
trunk/reactos/dll/win32/ole32/ole32.rbuild
trunk/reactos/dll/win32/psapi/psapi.rbuild
trunk/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild
trunk/reactos/dll/win32/rpcrt4/rpcrt4.rbuild
trunk/reactos/dll/win32/setupapi/setupapi.rbuild
trunk/reactos/dll/win32/syssetup/syssetup.rbuild
trunk/reactos/dll/win32/user32/user32.rbuild
trunk/reactos/dll/win32/wintrust/wintrust.rbuild
trunk/reactos/dll/win32/wlanapi/wlanapi.rbuild
trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild
trunk/reactos/drivers/input/mouclass/mouclass.rbuild
trunk/reactos/drivers/network/afd/afd.rbuild
trunk/reactos/drivers/network/tcpip/tcpip.rbuild
trunk/reactos/lib/rtl/rtl.rbuild
trunk/reactos/ntoskrnl/include/ntoskrnl.h
trunk/reactos/ntoskrnl/ntoskrnl-generic.rbuild
trunk/reactos/subsystems/win32/win32k/objects/gdiobj.c
trunk/reactos/subsystems/win32/win32k/win32k.rbuild
trunk/reactos/tools/rbuild/backend/mingw/compilers/gcc.mak
trunk/reactos/tools/rbuild/backend/mingw/linkers/ld.mak
trunk/reactos/tools/rbuild/backend/mingw/mingw.cpp
trunk/reactos/tools/rbuild/backend/mingw/rules.mak
Modified: trunk/reactos/Makefile
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/Makefile?rev=45535&r1=…
==============================================================================
--- trunk/reactos/Makefile [iso-8859-1] (original)
+++ trunk/reactos/Makefile [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -169,11 +169,7 @@
endif
ifeq ($(ROS_AUTOMAKE),)
- ifeq ($(ARCH),i386)
- ROS_AUTOMAKE=makefile.auto
- else
- ROS_AUTOMAKE=makefile-$(ARCH).auto
- endif
+ ROS_AUTOMAKE=makefile-$(ARCH).auto
endif
all: $(ROS_AUTOMAKE)
Modified: trunk/reactos/ReactOS-generic.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ReactOS-generic.rbuild?rev…
==============================================================================
--- trunk/reactos/ReactOS-generic.rbuild [iso-8859-1] (original)
+++ trunk/reactos/ReactOS-generic.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -120,11 +120,6 @@
<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: trunk/reactos/ReactOS-i386.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ReactOS-i386.rbuild?rev=45…
==============================================================================
--- trunk/reactos/ReactOS-i386.rbuild [iso-8859-1] (original)
+++ trunk/reactos/ReactOS-i386.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!DOCTYPE project SYSTEM "tools/rbuild/project.dtd">
-<project name="ReactOS" makefile="makefile.auto"
xmlns:xi="http://www.w3.org/2001/XInclude">
+<project name="ReactOS" makefile="makefile-i386.auto"
xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="config.rbuild">
<xi:fallback>
<xi:include href="config.template.rbuild" />
Modified: trunk/reactos/base/applications/games/solitaire/solitaire.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/so…
==============================================================================
--- trunk/reactos/base/applications/games/solitaire/solitaire.cpp [iso-8859-1] (original)
+++ trunk/reactos/base/applications/games/solitaire/solitaire.cpp [iso-8859-1] Tue Feb 9
19:14:58 2010
@@ -196,8 +196,6 @@
SaveSettings();
- try { throw 0; } catch (int i) { } /* HACK */
-
return msg.wParam;
}
Modified: trunk/reactos/base/applications/games/spider/spider.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/games/sp…
==============================================================================
--- trunk/reactos/base/applications/games/spider/spider.cpp [iso-8859-1] (original)
+++ trunk/reactos/base/applications/games/spider/spider.cpp [iso-8859-1] Tue Feb 9
19:14:58 2010
@@ -154,9 +154,6 @@
DispatchMessage(&msg);
}
}
-
- try { throw 0; } catch (int i) { } /* HACK */
-
return msg.wParam;
}
Modified: trunk/reactos/dll/directx/ddraw/ddraw.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/ddraw.rb…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/ddraw.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/directx/ddraw/ddraw.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/directx/wine/ddraw/ddraw.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/wine/ddraw/ddr…
==============================================================================
--- trunk/reactos/dll/directx/wine/ddraw/ddraw.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/directx/wine/ddraw/ddraw.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/actxprxy/actxprxy.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/actxprxy/actxprx…
==============================================================================
--- trunk/reactos/dll/win32/actxprxy/actxprxy.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/actxprxy/actxprxy.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/advapi32/advapi32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advapi32/advapi3…
==============================================================================
--- trunk/reactos/dll/win32/advapi32/advapi32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advapi32/advapi32.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -59,5 +59,4 @@
<file>token.c</file>
</directory>
<file>advapi32.rc</file>
- <compilerflag
compilerset="gcc">-fno-unit-at-a-time</compilerflag>
</module>
Modified: trunk/reactos/dll/win32/crypt32/crypt32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/crypt32/crypt32.…
==============================================================================
--- trunk/reactos/dll/win32/crypt32/crypt32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/crypt32/crypt32.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/win32/gdi32/gdi32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/gdi32.rbui…
==============================================================================
--- trunk/reactos/dll/win32/gdi32/gdi32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/gdi32/gdi32.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/win32/kernel32/kernel32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32/kernel3…
==============================================================================
--- trunk/reactos/dll/win32/kernel32/kernel32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/kernel32/kernel32.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/ole32/ole32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/ole32/ole32.rbui…
==============================================================================
--- trunk/reactos/dll/win32/ole32/ole32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/ole32/ole32.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/win32/psapi/psapi.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/psapi/psapi.rbui…
==============================================================================
--- trunk/reactos/dll/win32/psapi/psapi.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/psapi/psapi.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -5,12 +5,8 @@
<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: trunk/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/qmgrprxy/qmgrprx…
==============================================================================
--- trunk/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/qmgrprxy/qmgrprxy.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/rpcrt4/rpcrt4.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/rpcrt4.rb…
==============================================================================
--- trunk/reactos/dll/win32/rpcrt4/rpcrt4.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/rpcrt4/rpcrt4.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/win32/setupapi/setupapi.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/setupapi/setupap…
==============================================================================
--- trunk/reactos/dll/win32/setupapi/setupapi.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/setupapi/setupapi.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/syssetup/syssetup.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/syssetup/syssetu…
==============================================================================
--- trunk/reactos/dll/win32/syssetup/syssetup.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/syssetup/syssetup.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/user32/user32.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/user32/user32.rb…
==============================================================================
--- trunk/reactos/dll/win32/user32/user32.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/user32/user32.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/dll/win32/wintrust/wintrust.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/wintrust/wintrus…
==============================================================================
--- trunk/reactos/dll/win32/wintrust/wintrust.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/wintrust/wintrust.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/dll/win32/wlanapi/wlanapi.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/wlanapi/wlanapi.…
==============================================================================
--- trunk/reactos/dll/win32/wlanapi/wlanapi.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/wlanapi/wlanapi.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/kbdclass/kbd…
==============================================================================
--- trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild [iso-8859-1] (original)
+++ trunk/reactos/drivers/input/kbdclass/kbdclass.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/drivers/input/mouclass/mouclass.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/input/mouclass/mou…
==============================================================================
--- trunk/reactos/drivers/input/mouclass/mouclass.rbuild [iso-8859-1] (original)
+++ trunk/reactos/drivers/input/mouclass/mouclass.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/drivers/network/afd/afd.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/afd/afd.rb…
==============================================================================
--- trunk/reactos/drivers/network/afd/afd.rbuild [iso-8859-1] (original)
+++ trunk/reactos/drivers/network/afd/afd.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/drivers/network/tcpip/tcpip.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/tcpip/tcpi…
==============================================================================
--- trunk/reactos/drivers/network/tcpip/tcpip.rbuild [iso-8859-1] (original)
+++ trunk/reactos/drivers/network/tcpip/tcpip.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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>
@@ -36,6 +34,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: trunk/reactos/lib/rtl/rtl.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/rtl.rbuild?rev=455…
==============================================================================
--- trunk/reactos/lib/rtl/rtl.rbuild [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/rtl.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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: trunk/reactos/ntoskrnl/include/ntoskrnl.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/ntoskrnl.…
==============================================================================
--- trunk/reactos/ntoskrnl/include/ntoskrnl.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/ntoskrnl.h [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -1,5 +1,101 @@
-#include "precomp.h"
+/*
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS Kernel
+ * FILE: ntoskrnl/include/ntoskrnl.h
+ * PURPOSE: Main Kernel Header
+ * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net)
+ */
-/* Headers that shouldn't be precompiled due to GCC bugs */
+/* INCLUDES ******************************************************************/
+
+/* ARM Bringup Hack */
+#ifdef _M_ARM
+#define DbgPrint DbgPrintEarly
+#endif
+
+/* Version Data */
+#undef __MSVCRT__
+#include <psdk/ntverp.h>
+
+/* DDK/IFS/NDK Headers */
+#define _REALLY_GET_CALLERS_CALLER
+#include <excpt.h>
+#include <ntdef.h>
+#undef DECLSPEC_IMPORT
+#define DECLSPEC_IMPORT
+#include <ntifs.h>
+#include <wdmguid.h>
+#include <arc/arc.h>
+#undef NTHALAPI
+#define NTHALAPI __declspec(dllimport)
+#include <ntndk.h>
+#undef TEXT
+#define TEXT(s) L##s
+#include <regstr.h>
+
+/* FIXME: Temporary until Winldr is used */
+#include <rosldr.h>
+
+/* C Headers */
+#include <stdlib.h>
+#include <stdio.h>
+#include <ctype.h>
+#include <malloc.h>
+#include <wchar.h>
+
+/* SEH support with PSEH */
+#include <pseh/pseh2.h>
+
+/* ReactOS Headers */
+#include <reactos/buildno.h>
+#include <reactos/bugcodes.h>
+
+/* SetupLDR Support */
+#include <arc/setupblk.h>
+
+/* KD Support */
+#define NOEXTAPI
+#include <windbgkd.h>
+#include <wdbgexts.h>
+#include <kddll.h>
+#ifndef _WINKD_
+#include <reactos/rossym.h>
+#endif
+
+/* PNP GUIDs */
+#include <umpnpmgr/sysguid.h>
+
+/* Internal Headers */
+#include "internal/ntoskrnl.h"
+#include "config.h"
+
#include <reactos/probe.h>
#include "internal/probe.h"
+
+//
+// Define the internal versions of external and public global data
+//
+#define IoFileObjectType _IoFileObjectType
+#define PsThreadType _PsThreadType
+#define PsProcessType _PsProcessType
+#define ExEventObjectType _ExEventObjectType
+#define ExSemaphoreObjectType _ExSemaphoreObjectType
+#define KdDebuggerEnabled _KdDebuggerEnabled
+#define KdDebuggerNotPresent _KdDebuggerNotPresent
+#define NlsOemLeadByteInfo _NlsOemLeadByteInfo
+extern PUSHORT _NlsOemLeadByteInfo;
+#define FsRtlLegalAnsiCharacterArray _FsRtlLegalAnsiCharacterArray
+#undef LEGAL_ANSI_CHARACTER_ARRAY
+#undef NLS_MB_CODE_PAGE_TAG
+#undef NLS_OEM_LEAD_BYTE_INFO
+#define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
+#define NLS_MB_CODE_PAGE_TAG NlsMbOemCodePageTag
+#define NLS_OEM_LEAD_BYTE_INFO _NlsOemLeadByteInfo
+#undef KD_DEBUGGER_ENABLED
+#undef KD_DEBUGGER_NOT_PRESENT
+#define KD_DEBUGGER_ENABLED KdDebuggerEnabled
+#define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
+#define HalDispatchTable _HalDispatchTable
+#undef HALDISPATCH
+#define HALDISPATCH (&HalDispatchTable)
+#define ExRaiseStatus RtlRaiseStatus
Removed: trunk/reactos/ntoskrnl/include/precomp.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/precomp.h…
==============================================================================
--- trunk/reactos/ntoskrnl/include/precomp.h [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/include/precomp.h (removed)
@@ -1,98 +1,0 @@
-/*
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS Kernel
- * FILE: ntoskrnl/include/ntoskrnl.h
- * PURPOSE: Main Kernel Header
- * PROGRAMMER: Alex Ionescu (alex(a)relsoft.net)
- */
-
-/* INCLUDES ******************************************************************/
-
-/* ARM Bringup Hack */
-#ifdef _M_ARM
-#define DbgPrint DbgPrintEarly
-#endif
-
-/* Version Data */
-#undef __MSVCRT__
-#include <psdk/ntverp.h>
-
-/* DDK/IFS/NDK Headers */
-#define _REALLY_GET_CALLERS_CALLER
-#include <excpt.h>
-#include <ntdef.h>
-#undef DECLSPEC_IMPORT
-#define DECLSPEC_IMPORT
-#include <ntifs.h>
-#include <wdmguid.h>
-#include <arc/arc.h>
-#undef NTHALAPI
-#define NTHALAPI __declspec(dllimport)
-#include <ntndk.h>
-#undef TEXT
-#define TEXT(s) L##s
-#include <regstr.h>
-
-/* FIXME: Temporary until Winldr is used */
-#include <rosldr.h>
-
-/* C Headers */
-#include <stdlib.h>
-#include <stdio.h>
-#include <ctype.h>
-#include <malloc.h>
-#include <wchar.h>
-
-/* SEH support with PSEH */
-#include <pseh/pseh2.h>
-
-/* ReactOS Headers */
-#include <reactos/buildno.h>
-#include <reactos/bugcodes.h>
-
-/* SetupLDR Support */
-#include <arc/setupblk.h>
-
-/* KD Support */
-#define NOEXTAPI
-#include <windbgkd.h>
-#include <wdbgexts.h>
-#include <kddll.h>
-#ifndef _WINKD_
-#include <reactos/rossym.h>
-#endif
-
-/* PNP GUIDs */
-#include <umpnpmgr/sysguid.h>
-
-/* Internal Headers */
-#include "internal/ntoskrnl.h"
-#include "config.h"
-
-//
-// Define the internal versions of external and public global data
-//
-#define IoFileObjectType _IoFileObjectType
-#define PsThreadType _PsThreadType
-#define PsProcessType _PsProcessType
-#define ExEventObjectType _ExEventObjectType
-#define ExSemaphoreObjectType _ExSemaphoreObjectType
-#define KdDebuggerEnabled _KdDebuggerEnabled
-#define KdDebuggerNotPresent _KdDebuggerNotPresent
-#define NlsOemLeadByteInfo _NlsOemLeadByteInfo
-extern PUSHORT _NlsOemLeadByteInfo;
-#define FsRtlLegalAnsiCharacterArray _FsRtlLegalAnsiCharacterArray
-#undef LEGAL_ANSI_CHARACTER_ARRAY
-#undef NLS_MB_CODE_PAGE_TAG
-#undef NLS_OEM_LEAD_BYTE_INFO
-#define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
-#define NLS_MB_CODE_PAGE_TAG NlsMbOemCodePageTag
-#define NLS_OEM_LEAD_BYTE_INFO _NlsOemLeadByteInfo
-#undef KD_DEBUGGER_ENABLED
-#undef KD_DEBUGGER_NOT_PRESENT
-#define KD_DEBUGGER_ENABLED KdDebuggerEnabled
-#define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
-#define HalDispatchTable _HalDispatchTable
-#undef HALDISPATCH
-#define HALDISPATCH (&HalDispatchTable)
-#define ExRaiseStatus RtlRaiseStatus
Modified: trunk/reactos/ntoskrnl/ntoskrnl-generic.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ntoskrnl-generic.…
==============================================================================
--- trunk/reactos/ntoskrnl/ntoskrnl-generic.rbuild [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ntoskrnl-generic.rbuild [iso-8859-1] Tue Feb 9 19:14:58 2010
@@ -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>
- -->
+ <pch>ntoskrnl.h</pch>
+ </directory>
<directory name="ke">
<if property="ARCH" value="i386">
<directory name="i386">
@@ -502,7 +500,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: trunk/reactos/subsystems/win32/win32k/objects/gdiobj.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ob…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/gdiobj.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/gdiobj.c [iso-8859-1] Tue Feb 9
19:14:58 2010
@@ -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 *******************************************************************/
@@ -140,7 +140,7 @@
/*
* Dummy GDI Cleanup Callback
*/
-/* static */ /* FIXME: -fno-unit-at-a-time breaks this */
+static
BOOL INTERNAL_CALL
GDI_CleanupDummy(PVOID ObjectBody)
{
Modified: trunk/reactos/subsystems/win32/win32k/win32k.rbuild
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/wi…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/win32k.rbuild [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/win32k.rbuild [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -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: trunk/reactos/tools/rbuild/backend/mingw/compilers/gcc.mak
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw…
==============================================================================
--- trunk/reactos/tools/rbuild/backend/mingw/compilers/gcc.mak [iso-8859-1] (original)
+++ trunk/reactos/tools/rbuild/backend/mingw/compilers/gcc.mak [iso-8859-1] Tue Feb 9
19:14:58 2010
@@ -11,6 +11,12 @@
# BUILTIN_CPPFLAGS+= -nostdinc
BUILTIN_CFLAGS+= -fno-optimize-sibling-calls
BUILTIN_CXXFLAGS+= -fno-optimize-sibling-calls
+
+# Add -fno-set-stack-executable required for x86/MinGW
+ifneq (,$(filter $(ARCH),amd64 i386))
+ BUILTIN_CFLAGS+= -fno-set-stack-executable
+ BUILTIN_CXXFLAGS+= -fno-set-stack-executable
+endif
#(module, source, dependencies, cflags, output)
define RBUILD_DEPENDS
Modified: trunk/reactos/tools/rbuild/backend/mingw/linkers/ld.mak
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw…
==============================================================================
--- trunk/reactos/tools/rbuild/backend/mingw/linkers/ld.mak [iso-8859-1] (original)
+++ trunk/reactos/tools/rbuild/backend/mingw/linkers/ld.mak [iso-8859-1] Tue Feb 9
19:14:58 2010
@@ -1,5 +1,6 @@
-LDFLAG_DLL:=-shared
-LDFLAG_DRIVER:=-shared --subsystem=native
+# -exclude-all-symbols disables autoexporting all symbols *if none were found* (either in
a DEF file or using __declspec(dllexport)
+LDFLAG_DLL:=-shared -exclude-all-symbols
+LDFLAG_DRIVER:=-shared --subsystem=native -exclude-all-symbols
LDFLAG_NOSTDLIB:=-nostartfiles -nostdlib
LDFLAG_CONSOLE:=--subsystem=console
LDFLAG_WINDOWS:=--subsystem=windows
@@ -40,7 +41,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: trunk/reactos/tools/rbuild/backend/mingw/mingw.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw…
==============================================================================
--- trunk/reactos/tools/rbuild/backend/mingw/mingw.cpp [iso-8859-1] (original)
+++ trunk/reactos/tools/rbuild/backend/mingw/mingw.cpp [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -480,8 +480,11 @@
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)\" \"$(shell ${TARGET_CPP}
-print-file-name=libcoldname.a)\"\n" );
-
+
+ // We use our proprietary "ofmt_stub.a" to implement a stub for
"_get_output_format" required by "libmingwex.a".
+ // This archive just contains the compiled "ofmt_stub.s" supplied with the
MinGW Runtime sources.
+ 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=ofmt_stub.a)\" \"$(shell ${TARGET_CPP}
-print-file-name=libcoldname.a)\"\n" );
+
/* hack to get libgcc_eh.a, should check mingw version or something */
if (Environment::GetArch() == "amd64")
{
@@ -844,7 +847,7 @@
buffer[i] = '\0';
pclose ( fp );
- char separators[] = " ()";
+ char separators[] = " ()\n";
char *token;
char *prevtoken = NULL;
@@ -888,7 +891,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 +911,7 @@
bool
MingwBackend::IsSupportedCompilerVersion ( const string& compilerVersion )
{
- if ( strcmp ( compilerVersion.c_str (), "3.4.2") < 0 )
+ if ( strcmp ( compilerVersion.c_str (), "4.4.0") < 0 )
return false;
else
return true;
@@ -970,27 +973,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 20091016 (the oldest one
+ we were still using after upgrading to RosBE 1.5). */
+ if(strcmp(date.c_str(), "20091016") < 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: trunk/reactos/tools/rbuild/backend/mingw/rules.mak
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw…
==============================================================================
--- trunk/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] (original)
+++ trunk/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] Tue Feb 9 19:14:58
2010
@@ -263,7 +263,7 @@
$$(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)
$${checkpoint} $$@>$(NUL)
-${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
@@ -279,7 +279,7 @@
$$(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)
$${checkpoint} $$@>$(NUL)
-${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
@@ -295,7 +295,7 @@
$$(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)
$${checkpoint} $$@>$(NUL)
-${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
@@ -308,7 +308,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