diff --git a/reactos/boot/freeldr/freeldr.xml b/reactos/boot/freeldr/freeldr.xml
index 9ef1a6a0c38..a504c71726c 100644
--- a/reactos/boot/freeldr/freeldr.xml
+++ b/reactos/boot/freeldr/freeldr.xml
@@ -6,5 +6,7 @@
+
+
diff --git a/reactos/boot/freeldr/freeldr/freeldr.xml b/reactos/boot/freeldr/freeldr/freeldr.xml
index eaa46f3de70..3ef38e66da5 100644
--- a/reactos/boot/freeldr/freeldr/freeldr.xml
+++ b/reactos/boot/freeldr/freeldr/freeldr.xml
@@ -1,4 +1,5 @@
+
freeldr_startup
freeldr_base64k
freeldr_base
diff --git a/reactos/boot/freeldr/freeldr/freeldr_main.xml b/reactos/boot/freeldr/freeldr/freeldr_main.xml
index 820e4a6e44d..b57c69d622e 100644
--- a/reactos/boot/freeldr/freeldr/freeldr_main.xml
+++ b/reactos/boot/freeldr/freeldr/freeldr_main.xml
@@ -8,9 +8,6 @@
-fno-inline
-fno-zero-initialized-in-bss
-Os
-
- inffile.c
-
bootmgr.c
drivemap.c
miscboot.c
diff --git a/reactos/boot/freeldr/freeldr/setupldr.xml b/reactos/boot/freeldr/freeldr/setupldr.xml
new file mode 100644
index 00000000000..011cfdd58bc
--- /dev/null
+++ b/reactos/boot/freeldr/freeldr/setupldr.xml
@@ -0,0 +1,8 @@
+
+
+ freeldr_startup
+ freeldr_base64k
+ freeldr_base
+ setupldr_main
+ rossym
+
diff --git a/reactos/boot/freeldr/freeldr/setupldr_main.xml b/reactos/boot/freeldr/freeldr/setupldr_main.xml
new file mode 100644
index 00000000000..3fd450f3575
--- /dev/null
+++ b/reactos/boot/freeldr/freeldr/setupldr_main.xml
@@ -0,0 +1,17 @@
+
+ include
+ include
+
+ -nostdlib
+ -ffreestanding
+ -fno-builtin
+ -fno-inline
+ -fno-zero-initialized-in-bss
+ -Os
+
+ inffile.c
+
+
+ setupldr.c
+
+
diff --git a/reactos/bootdata/bootdata.xml b/reactos/bootdata/bootdata.xml
index 540f2d3b140..7eca69a0201 100644
--- a/reactos/bootdata/bootdata.xml
+++ b/reactos/bootdata/bootdata.xml
@@ -3,6 +3,6 @@
readme.txt
hivecls.inf
hivedef.inf
-hiveinst.inf
hivesft.inf
hivesys.inf
+txtsetup.sif
diff --git a/reactos/subsys/system/directory.xml b/reactos/subsys/system/directory.xml
index b54bc332368..610454a4834 100644
--- a/reactos/subsys/system/directory.xml
+++ b/reactos/subsys/system/directory.xml
@@ -19,6 +19,9 @@
+
+
+
diff --git a/reactos/tools/rbuild/bootstrap.cpp b/reactos/tools/rbuild/bootstrap.cpp
index 00ee4bd6255..f136132596c 100644
--- a/reactos/tools/rbuild/bootstrap.cpp
+++ b/reactos/tools/rbuild/bootstrap.cpp
@@ -33,11 +33,11 @@ Bootstrap::IsSupportedModuleType ( ModuleType type )
case Win32GUI:
case KernelModeDriver:
case BootSector:
+ case BootLoader:
return true;
case BuildTool:
case StaticLibrary:
case ObjectLibrary:
- case BootLoader:
case Iso:
return false;
}
diff --git a/reactos/tools/wrc/makefile b/reactos/tools/wrc/makefile
new file mode 100644
index 00000000000..333bef9f0fa
--- /dev/null
+++ b/reactos/tools/wrc/makefile
@@ -0,0 +1,39 @@
+WRC_BASE = tools$(SEP)wrc
+
+WRC_TARGET = \
+ $(ROS_INTERMEDIATE)$(WRC_BASE)$(SEP)wrc$(EXEPOSTFIX)
+
+WRC_SOURCES = \
+ $(WRC_BASE)$(SEP)dumpres.c \
+ $(WRC_BASE)$(SEP)genres.c \
+ $(WRC_BASE)$(SEP)newstruc.c \
+ $(WRC_BASE)$(SEP)readres.c \
+ $(WRC_BASE)$(SEP)translation.c \
+ $(WRC_BASE)$(SEP)utils.c \
+ $(WRC_BASE)$(SEP)wrc.c \
+ $(WRC_BASE)$(SEP)writeres.c \
+ $(WRC_BASE)$(SEP)y.tab.c \
+ $(WRC_BASE)$(SEP)lex.yy.c \
+ $(WRC_BASE)$(SEP)port$(SEP)mkstemps.o
+
+WRC_OBJECTS = \
+ $(WRC_SOURCES:.c=.o)
+
+WRC_HOST_CFLAGS = -I$(WRC_BASE) -g -Werror -Wall \
+ -D__USE_W32API -DWINE_UNICODE_API= \
+ -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \
+ -I$(UNICODE_BASE) -I$(WPP_BASE) -I$(WRC_BASE) \
+ -Iinclude/wine -Iinclude -Iw32api/include
+
+WRC_HOST_LFLAGS = -g
+
+$(WRC_TARGET): $(WRC_OBJECTS) $(UNICODE_TARGET) $(WPP_TARGET)
+ ${host_gcc} $(WRC_OBJECTS) $(UNICODE_TARGET) $(WPP_TARGET) $(WRC_HOST_LFLAGS) -o $(WRC_TARGET)
+
+$(WRC_OBJECTS): %.o : %.c
+ ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
+
+.PHONY: wrc_clean
+wrc_clean:
+ -@$(rm) $(WRC_TARGET) $(WRC_OBJECTS) 2>$(NUL)
+clean: wrc_clean