- Add STATUS_SUCCESS to asm.h and make use of it.
[reactos.git] / reactos / ntoskrnl / ntoskrnl-generic.rbuild
index 17227b1..5ff09a5 100644 (file)
@@ -2,18 +2,15 @@
 <!DOCTYPE module SYSTEM "../tools/rbuild/project.dtd">
 <group xmlns:xi="http://www.w3.org/2001/XInclude">
        <bootstrap installbase="$(CDOUTPUT)" />
-       <importlibrary definition="ntoskrnl_$(ARCH).def" />
-       <define name="_DISABLE_TIDENTS" />
+       <importlibrary definition="ntoskrnl.pspec" />
        <define name="__NTOSKRNL__" />
        <define name="_NTOSKRNL_" />
        <define name="_NTSYSTEM_" />
-       <define name="__NO_CTYPE_INLINES" />
-       <define name="WIN9X_COMPAT_SPINLOCK" />
        <define name="_IN_KERNEL_" />
        <if property="_WINKD_" value="1">
                <define name="_WINKD_" />
        </if>
-       <if property="_ELF" value="1">
+       <if property="_ELF_" value="1">
                <define name="_ELF_" />
        </if>
        <include base="cmlib">.</include>
        <library>bootvid</library>
        <library>wdmguid</library>
        <dependency>bugcodes</dependency>
+       <!-- See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38269
        <directory name="include">
-               <pch>ntoskrnl.h</pch>
+               <pch>precomp.h</pch>
        </directory>
-       <file>amd64stubs.c</file>
+       -->
        <directory name="ke">
                <if property="ARCH" value="i386">
                        <directory name="i386">
                                <file>ctxhelp.S</file>
                        </directory>
                </if>
-               <if property="ARCH" value="amd64">
-                       <directory name="amd64">
-                               <file first="true">boot.S</file>
-                               <file>kiinit.c</file>
-                       </directory>
-               </if>
                <file>apc.c</file>
                <file>balmgr.c</file>
-               <!-- file>bug.c</file -->
+               <file>bug.c</file>
                <file>clock.c</file>
                <file>config.c</file>
                <file>devqueue.c</file>
        </directory>
        <directory name="dbgk">
                <file>dbgkutil.c</file>
-               <!-- file>dbgkobj.c</file -->
+               <file>dbgkobj.c</file>
        </directory>
        <directory name="ex" root="intermediate">
                <file>zw.S</file>
                <file>callback.c</file>
                <file>dbgctrl.c</file>
                <file>efi.c</file>
-               <!-- file>event.c</file -->
+               <file>event.c</file>
                <file>evtpair.c</file>
                <file>exintrin.c</file>
                <file>fastinterlck.c</file>
                <file>init.c</file>
                <file>keyedevt.c</file>
                <file>locale.c</file>
-               <!-- file>lookas.c</file -->
-               <!-- file>mutant.c</file -->
+               <file>lookas.c</file>
+               <file>mutant.c</file>
                <file>pushlock.c</file>
                <file>profile.c</file>
                <file>resource.c</file>
                <file>rundown.c</file>
-               <!-- file>sem.c</file -->
+               <file>sem.c</file>
                <file>shutdown.c</file>
-               <!-- file>sysinfo.c</file -->
+               <file>sysinfo.c</file>
                <file>time.c</file>
-               <!-- file>timer.c</file -->
+               <file>timer.c</file>
                <file>uuid.c</file>
                <file>win32k.c</file>
                <file>work.c</file>
                        <file>drvrlist.c</file>
                        <file>error.c</file>
                        <file>file.c</file>
-                       <!-- file>iocomp.c</file -->
+                       <file>iocomp.c</file>
                        <file>ioevent.c</file>
                        <file>iofunc.c</file>
                        <file>iomdl.c</file>
                        <file>ramdisk.c</file>
                        <file>rawfs.c</file>
                        <file>remlock.c</file>
-                       <!-- file>util.c</file -->
+                       <file>util.c</file>
                        <file>symlink.c</file>
                        <file>volume.c</file>
                </directory>
                        <file>pnproot.c</file>
                </directory>
        </directory>
+       <if property="KDBG" value="1">
+               <directory name="kd">
+                       <if property="ARCH" value="i386">
+                               <directory name="i386">
+                                       <file>kdmemsup.c</file>
+                               </directory>
+                       </if>
+               </directory>
+       </if>
        <if property="_WINKD_" value="0">
                <directory name="kdbg">
                        <if property="ARCH" value="i386">
                                </directory>
                        </if>
                        <if property="KDBG" value="1">
-                               <!-- file>kdb.c</file -->
-                               <!-- file>kdb_cli.c</file -->
+                               <file>kdb.c</file>
+                               <file>kdb_cli.c</file>
                                <file>kdb_expr.c</file>
                                <file>kdb_keyboard.c</file>
                                <file>kdb_serial.c</file>
        </if>
        <if property="_WINKD_" value ="1">
                <directory name="kd64">
+                       <if property="ARCH" value="i386">
+                               <directory name="i386">
+                                       <file>kdsup.c</file>
+                               </directory>
+                       </if>
+                       <if property="ARCH" value="amd64">
+                               <directory name="amd64">
+                                       <file>kdsup.c</file>
+                               </directory>
+                       </if>
+                       <if property="ARCH" value="arm">
+                               <directory name="arm">
+                                       <file>kdsup.c</file>
+                               </directory>
+                       </if>
                        <file>kdapi.c</file>
                        <file>kdbreak.c</file>
                        <file>kddata.c</file>
                                <file>page.c</file>
                        </directory>
                </if>
-               <!-- file>anonmem.c</file -->
-               <file>aspace.c</file>
+               <directory name="ARM3">
+                       <if property="ARCH" value="i386">
+                               <directory name="i386">
+                                       <file>init.c</file>
+                               </directory>
+                       </if>
+                       <if property="ARCH" value="arm">
+                               <directory name="arm">
+                                       <file>init.c</file>
+                               </directory>
+                       </if>
+                       <file>contmem.c</file>
+                       <file>drvmgmt.c</file>
+                       <file>dynamic.c</file>
+                       <file>expool.c</file>
+                       <file>hypermap.c</file>
+                       <file>iosup.c</file>
+                       <file>mdlsup.c</file>
+                       <file>mmsup.c</file>
+                       <file>ncache.c</file>
+                       <file>pagfault.c</file>
+                       <file>pool.c</file>
+                       <file>procsup.c</file>
+                       <file>syspte.c</file>
+                       <file>virtual.c</file>
+               </directory>
+               <file>anonmem.c</file>
                <file>balance.c</file>
-               <!-- file>cont.c</file -->
-               <file>drvlck.c</file>
+               <file>dbgpool.c</file>
                <file>freelist.c</file>
-               <!-- file>iospace.c</file -->
-               <file>kmap.c</file>
                <file>marea.c</file>
-               <!-- file>mdlsup.c</file -->
-               <!-- file>mm.c</file -->
-               <!-- file>mminit.c</file -->
+               <file>mmfault.c</file>
+               <file>mminit.c</file>
                <file>mpw.c</file>
-               <!-- file>ncache.c</file -->
-               <file>npool.c</file>
                <file>pagefile.c</file>
                <file>pageop.c</file>
-               <file>pager.c</file>
-               <file>pagfault.c</file>
-               <file>paging.c</file>
                <file>pe.c</file>
-               <file>physical.c</file>
-               <!-- file>pool.c</file -->
+               <file>pool.c</file>
                <file>ppool.c</file>
-               <!-- file>procsup.c</file -->
-               <!-- file>region.c</file -->
+               <file>procsup.c</file>
+               <file>region.c</file>
                <file>rmap.c</file>
-               <!-- file>section.c</file -->
+               <file>section.c</file>
                <file>sysldr.c</file>
-               <file>verifier.c</file>
-               <!-- file>virtual.c</file -->
-               <file>wset.c</file>
+               <file>virtual.c</file>
                <if property="_ELF_" value="1">
                        <file>elf32.c</file>
                        <file>elf64.c</file>
                <file>quota.c</file>
                <file>security.c</file>
                <file>state.c</file>
-               <!-- file>thread.c</file -->
-               <!-- file>win32.c</file -->
+               <file>thread.c</file>
+               <file>win32.c</file>
        </directory>
        <directory name="rtl">
                <if property="ARCH" value="arm">
                                <file>rtlexcpt.c</file>
                        </directory>
                </if>
-               <!-- file>libsupp.c</file -->
+               <if property="ARCH" value="i386">
+                       <directory name="i386">
+                               <file>stack.S</file>
+                       </directory>
+               </if>
+               <file>libsupp.c</file>
                <file>misc.c</file>
-               <file>strtok.c</file>
        </directory>
        <directory name="se">
                <file>access.c</file>
                <file>sd.c</file>
                <file>semgr.c</file>
                <file>sid.c</file>
-               <!-- file>token.c</file -->
+               <file>token.c</file>
        </directory>
        <directory name="vdm">
                <if property="ARCH" value="i386">
        </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>