added lib/rtl/rtl-common.rbuild

modified   lib/rtl/rtl.rbuild
   Compile rtl twice, as rtl_umode and rtl_kmode. Allows conditional compilation of RTL (finally!), instead of necessitating hacks like RtlpGetMode()
   "rtl" module now a dummy static library for things like <include base="rtl">

modified   boot/freeldr/freeldr/freeldr.rbuild
modified   boot/freeldr/freeldr/setupldr.rbuild
modified   ntoskrnl/ntoskrnl-generic.rbuild
   rtl -> rtl_kmode

modified   dll/ntdll/ntdll.rbuild
   rtl -> rtl_umode

This commit dedicated to Fireball and Stefan100 (now get to work! >:3)

svn path=/trunk/; revision=36761
This commit is contained in:
KJK::Hyperion 2008-10-15 15:45:11 +00:00
parent 7b75f95f4b
commit 427c90af34
6 changed files with 114 additions and 101 deletions

View file

@ -11,7 +11,7 @@
<library>freeldr_main</library>
<library>rossym</library>
<library>cmlib</library>
<library>rtl</library>
<library>rtl_kmode</library>
<library>libcntpr</library>
<linkerflag>-static</linkerflag>
<linkerflag>-lgcc</linkerflag>

View file

@ -9,7 +9,7 @@
<library>setupldr_main</library>
<library>rossym</library>
<library>cmlib</library>
<library>rtl</library>
<library>rtl_kmode</library>
<library>libcntpr</library>
<linkerflag>-nostartfiles</linkerflag>
<linkerflag>-nostdlib</linkerflag>

View file

@ -12,7 +12,7 @@
<define name="_WIN32_WINNT">0x0502</define>
<define name="_NTOSKRNL_" />
<define name="__NO_CTYPE_INLINES" />
<library>rtl</library>
<library>rtl_umode</library>
<library>ntdllsys</library>
<library>libcntpr</library>
<library>pseh</library>

View file

@ -0,0 +1,98 @@
<?xml version="1.0"?>
<include base="rtl">.</include>
<define name="_NTOSKRNL_" />
<define name="__NO_CTYPE_INLINES" />
<define name="NO_RTL_INLINES" />
<define name="_NTSYSTEM_" />
<define name="_NTDLLBUILD_" />
<if property="ARCH" value="i386">
<directory name="i386">
<file>debug_asm.S</file>
<file>except_asm.s</file>
<file>except.c</file>
<file>random_asm.S</file>
<file>rtlswap.S</file>
<file>rtlmem.s</file>
<file>res_asm.s</file>
<file>thread.c</file>
</directory>
</if>
<if property="ARCH" value="powerpc">
<directory name="powerpc">
<file>debug.c</file>
<file>except.c</file>
<file>interlocked.c</file>
<file>rtlmem.s</file>
<file>rtlswap.s</file>
<file>thread.c</file>
</directory>
</if>
<if property="ARCH" value="arm">
<directory name="arm">
<file>debug_asm.S</file>
</directory>
<file>mem.c</file>
<file>memgen.c</file>
</if>
<directory name="austin">
<file>avl.c</file>
<file>tree.c</file>
</directory>
<file>access.c</file>
<file>acl.c</file>
<file>actctx.c</file>
<file>atom.c</file>
<file>bitmap.c</file>
<file>bootdata.c</file>
<file>compress.c</file>
<file>condvar.c</file>
<file>crc32.c</file>
<file>critical.c</file>
<file>dbgbuffer.c</file>
<file>debug.c</file>
<file>dos8dot3.c</file>
<file>encode.c</file>
<file>env.c</file>
<file>error.c</file>
<file>exception.c</file>
<file>generictable.c</file>
<file>handle.c</file>
<file>heap.c</file>
<file>image.c</file>
<file>interlck.c</file>
<file>message.c</file>
<file>largeint.c</file>
<file>luid.c</file>
<file>network.c</file>
<file>nls.c</file>
<file>path.c</file>
<file>ppb.c</file>
<file>process.c</file>
<file>propvar.c</file>
<file>qsort.c</file>
<file>random.c</file>
<file>rangelist.c</file>
<file>registry.c</file>
<file>res.c</file>
<file>resource.c</file>
<file>sd.c</file>
<file>security.c</file>
<file>slist.c</file>
<file>sid.c</file>
<file>sprintf.c</file>
<file>srw.c</file>
<file>swprintf.c</file>
<file>splaytree.c</file>
<file>thread.c</file>
<file>time.c</file>
<file>timezone.c</file>
<file>timerqueue.c</file>
<file>unicode.c</file>
<file>unicodeprefix.c</file>
<file>vectoreh.c</file>
<file>version.c</file>
<file>wait.c</file>
<file>workitem.c</file>
<pch>rtl.h</pch>

View file

@ -1,100 +1,15 @@
<?xml version="1.0"?>
<!DOCTYPE module SYSTEM "../../tools/rbuild/project.dtd">
<module name="rtl" type="staticlibrary">
<define name="_NTOSKRNL_" />
<define name="__NO_CTYPE_INLINES" />
<define name="NO_RTL_INLINES" />
<define name="_NTSYSTEM_" />
<define name="_NTDLLBUILD_" />
<include base="rtl">.</include>
<if property="ARCH" value="i386">
<directory name="i386">
<file>debug_asm.S</file>
<file>except_asm.s</file>
<file>except.c</file>
<file>random_asm.S</file>
<file>rtlswap.S</file>
<file>rtlmem.s</file>
<file>res_asm.s</file>
<file>thread.c</file>
</directory>
</if>
<if property="ARCH" value="powerpc">
<directory name="powerpc">
<file>debug.c</file>
<file>except.c</file>
<file>interlocked.c</file>
<file>rtlmem.s</file>
<file>rtlswap.s</file>
<file>thread.c</file>
</directory>
</if>
<if property="ARCH" value="arm">
<directory name="arm">
<file>debug_asm.S</file>
</directory>
<file>mem.c</file>
<file>memgen.c</file>
</if>
<directory name="austin">
<file>avl.c</file>
<file>tree.c</file>
</directory>
<file>access.c</file>
<file>acl.c</file>
<file>actctx.c</file>
<file>atom.c</file>
<file>bitmap.c</file>
<file>bootdata.c</file>
<file>compress.c</file>
<file>condvar.c</file>
<file>crc32.c</file>
<file>critical.c</file>
<file>dbgbuffer.c</file>
<file>debug.c</file>
<file>dos8dot3.c</file>
<file>encode.c</file>
<file>env.c</file>
<file>error.c</file>
<file>exception.c</file>
<file>generictable.c</file>
<file>handle.c</file>
<file>heap.c</file>
<file>image.c</file>
<file>interlck.c</file>
<file>message.c</file>
<file>largeint.c</file>
<file>luid.c</file>
<file>network.c</file>
<file>nls.c</file>
<file>path.c</file>
<file>ppb.c</file>
<file>process.c</file>
<file>propvar.c</file>
<file>qsort.c</file>
<file>random.c</file>
<file>rangelist.c</file>
<file>registry.c</file>
<file>res.c</file>
<file>resource.c</file>
<file>sd.c</file>
<file>security.c</file>
<file>slist.c</file>
<file>sid.c</file>
<file>sprintf.c</file>
<file>srw.c</file>
<file>swprintf.c</file>
<file>splaytree.c</file>
<file>thread.c</file>
<file>time.c</file>
<file>timezone.c</file>
<file>timerqueue.c</file>
<file>unicode.c</file>
<file>unicodeprefix.c</file>
<file>vectoreh.c</file>
<file>version.c</file>
<file>wait.c</file>
<file>workitem.c</file>
<pch>rtl.h</pch>
</module>
<group xmlns:xi="http://www.w3.org/2001/XInclude">
<module name="rtl_umode" type="staticlibrary">
<xi:include href="rtl-common.rbuild" />
</module>
<module name="rtl_kmode" type="staticlibrary">
<xi:include href="rtl-common.rbuild" />
</module>
<!-- dummy module to enable <include base="rtl"> -->
<module name="rtl" type="staticlibrary" />
</group>

View file

@ -26,7 +26,7 @@
<library>hal</library>
<library>pseh</library>
<library>cmlib</library>
<library>rtl</library>
<library>rtl_kmode</library>
<library>rossym</library>
<library>libcntpr</library>
<library>kdcom</library>