2007-09-14 17:07:53 +00:00
|
|
|
<?xml version="1.0"?>
|
|
|
|
<!DOCTYPE module SYSTEM "../../tools/rbuild/project.dtd">
|
2010-03-28 23:06:36 +00:00
|
|
|
<module name="rtl" type="staticlibrary" crt="static">
|
2008-10-20 23:40:10 +00:00
|
|
|
<define name="_NTOSKRNL_" />
|
|
|
|
<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>
|
2009-02-17 03:45:27 +00:00
|
|
|
<file>interlck.S</file>
|
2008-10-20 23:40:10 +00:00
|
|
|
<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>
|
2009-12-28 12:02:32 +00:00
|
|
|
</if>
|
2008-10-20 23:40:10 +00:00
|
|
|
<if property="ARCH" value="arm">
|
|
|
|
<directory name="arm">
|
|
|
|
<file>debug_asm.S</file>
|
|
|
|
</directory>
|
|
|
|
<file>mem.c</file>
|
|
|
|
<file>memgen.c</file>
|
|
|
|
</if>
|
|
|
|
<if property="ARCH" value="amd64">
|
|
|
|
<directory name="amd64">
|
|
|
|
<file>debug_asm.S</file>
|
2008-11-12 23:38:33 +00:00
|
|
|
<file>except_asm.S</file>
|
2009-11-26 22:40:07 +00:00
|
|
|
<file>slist.S</file>
|
2008-11-12 15:24:40 +00:00
|
|
|
<file>unwind.c</file>
|
2008-10-26 21:35:03 +00:00
|
|
|
<file>stubs.c</file>
|
2008-10-20 23:40:10 +00:00
|
|
|
</directory>
|
2008-10-26 21:35:03 +00:00
|
|
|
<file>mem.c</file>
|
|
|
|
<file>memgen.c</file>
|
2008-10-20 23:40:10 +00:00
|
|
|
</if>
|
|
|
|
<file>access.c</file>
|
|
|
|
<file>acl.c</file>
|
|
|
|
<file>actctx.c</file>
|
2009-10-23 22:51:39 +00:00
|
|
|
<file>assert.c</file>
|
2008-10-20 23:40:10 +00:00
|
|
|
<file>atom.c</file>
|
This patch introduces a highly-shareable version of AVL trees both for RTL usage and for ARM3's MM_AVL_TABLE/MMADDRESS_NODE structures used by VADs on Windows (and soon, ReactOS):
[RTL]: Uncouple generic table from AVL table implementation into its own avltable.c
[RTL]: Get rid of "Austin" and fix prototypes of AVL table functions.
[RTL]: Re-implement AVL table functions, sharing as much code as possible with the SPLAY tree implementation which is pretty decent. Lookup, insert, enumeration are implemented, but not delete.
[RTL]: Make large part of the RTL AVL package into its own "support" file that can work both with MMADDRESS_NODE and RTL_BALANCED_LINKS structures. The former is used by ARM3 for VADs.
[NTOS]: Implement basic VAD AVL tree routines (Insert, LookupEmpty, GetPrevious, CheckForConflict, Locate). This is enough to insert VADs, find a free address range, and locate a VAD by address. No delete yet
Thanks to Timo Kreuzer for some clever definitions, Knuth for his genius, several online C implementations for ideas, the HPI kernel blog for insight on how Windows does it, and others.
svn path=/trunk/; revision=48173
2010-07-22 01:41:45 +00:00
|
|
|
<file>avltable.c</file>
|
2008-10-20 23:40:10 +00:00
|
|
|
<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>
|