* Introduce ROS_OUTPUT
* Correct dependencies for ROS_INTERMEDIATE <> . in bootstrap makefiles
* GNU make don't support depending on a directory, so simulate the dependency using a file
Modified: branches/xmlbuildsystem/reactos/Makefile
Modified: branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak
Modified: branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak
Modified: branches/xmlbuildsystem/reactos/tools/nci/nci.mak
Modified: branches/xmlbuildsystem/reactos/tools/rmkdir.c
Modified: branches/xmlbuildsystem/reactos/tools/tools.mak
Modified: branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak
Modified: branches/xmlbuildsystem/reactos/tools/wmc/wmc.mak
Modified: branches/xmlbuildsystem/reactos/tools/wpp/wpp.mak
Modified: branches/xmlbuildsystem/reactos/tools/wrc/wrc.mak
Property changes on: branches/xmlbuildsystem/reactos
___________________________________________________________________
Name: svn:ignore
   - *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.zip
*.iso
*.cab
*.bat
doxy-doc
Makefile.auto
cd
   + *.sys
*.exe
*.dll
*.cpl
*.a
*.o
*.d
*.coff
*.dsp
*.dsw
*.aps
*.ncb
*.opt
*.sym
*.plg
*.bak
*.zip
*.iso
*.cab
*.bat
obj-*
output-*
doxy-doc
Makefile.auto
cd

Modified: branches/xmlbuildsystem/reactos/Makefile
--- branches/xmlbuildsystem/reactos/Makefile	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/Makefile	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,3 +1,19 @@
+# Accepted environment variables:
+#
+#    ROS_INTERMEDIATE
+#        This variable controls where to put intermediate files. Intermediate
+#        files are generated files that are needed to generate the final
+#        output files. Examples of intermediate files include *.o, *.a, and
+#        *.coff. N.B. Don't put a path separator at the end. The variable
+#        defaults to .\obj-i386.
+#
+#    ROS_OUTPUT
+#        This variable controls where to put output files. Output files are
+#        generated files that makes up the result of the build process.
+#        Examples of output files include *.exe, *.dll, and *.sys. N.B. Don't
+#        put a path separator at the end. The variable defaults to .\output-i386.
+#
+
 .PHONY: all
 .PHONY: clean
 all: makefile.auto
@@ -85,7 +101,8 @@
 else # mingw32-windows
 	EXEPREFIX =
 	EXEPOSTFIX = .exe
-	SEP = \$(EMPTY_VAR)
+	ROS_EMPTY =
+	SEP = \$(ROS_EMPTY)
 	nmkdir = $(Q)mkdir
 	gcc = $(Q)gcc
 	gpp = $(Q)g++
@@ -100,19 +117,28 @@
 endif
 
 ifneq ($(ROS_INTERMEDIATE),)
-$(ROS_INTERMEDIATE):
-	${nmkdir} $(ROS_INTERMEDIATE)
-$(ROS_INTERMEDIATE)tools: $(ROS_INTERMEDIATE)
-	${nmkdir} $@
-$(ROS_INTERMEDIATE)dk: $(ROS_INTERMEDIATE)
-	${nkmdir} $@
-$(ROS_INTERMEDIATE)dk$(SEP)nkm: $(ROS_INTERMEDIATE)dk
-	${nkmdir} $@
+  INTERMEDIATE = .$(SEP)$(ROS_INTERMEDIATE)$(SEP)
+  INTERMEDIATE_NO_SLASH := $(ROS_INTERMEDIATE)
+else
+  INTERMEDIATE = obj-i386$(SEP)
+  INTERMEDIATE_NO_SLASH = obj-i386
 endif
 
-$(ROS_INTERMEDIATE)dk$(SEP)nkm$(SEP)lib: $(ROS_INTERMEDIATE)dk$(SEP)nkm
-	${nmkdir} $@
+ifneq ($(ROS_OUTPUT),)
+  OUTPUT = $(ROS_OUTPUT)$(SEP)
+  OUTPUT_NO_SLASH = $(ROS_OUTPUT)
+else
+  OUTPUT = obj-i386$(SEP)
+  OUTPUT_NO_SLASH = obj-i386
+endif
 
+mkdir = $(Q)$(INTERMEDIATE)rmkdir
+CREATED = .created
+
+directories:
+	-${nmkdir} $(INTERMEDIATE_NO_SLASH)
+	-${nmkdir} $(OUTPUT_NO_SLASH)
+
 NTOSKRNL_MC = .$(SEP)ntoskrnl$(SEP)ntoskrnl.mc
 KERNEL32_MC = .$(SEP)lib$(SEP)kernel32$(SEP)kernel32.mc
 BUILDNO_H = .$(SEP)include$(SEP)reactos$(SEP)buildno.h
@@ -146,4 +172,6 @@
 .PHONY: makefile_auto_clean
 makefile_auto_clean:
 	-@$(rm) makefile.auto $(PREAUTO) 2>$(NUL)
+
+.PHONY: clean
 clean: makefile_auto_clean

Modified: branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak
--- branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,7 +1,12 @@
-BUILDNO_BASE = .$(SEP)tools$(SEP)buildno
+BUILDNO_BASE = tools$(SEP)buildno
 
+BUILDNO_BASE_DIR = $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)$(CREATED)
+
+$(BUILDNO_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(BUILDNO_BASE)
+
 BUILDNO_TARGET = \
-	$(ROS_INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno$(EXEPOSTFIX)
+	$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno$(EXEPOSTFIX)
 
 BUILDNO_SOURCES = \
 	$(BUILDNO_BASE)$(SEP)buildno.cpp \
@@ -10,35 +15,35 @@
 	$(BUILDNO_BASE)$(SEP)XML.cpp
 
 BUILDNO_OBJECTS = \
-	$(BUILDNO_SOURCES:.cpp=.o)
+  $(addprefix $(INTERMEDIATE), $(BUILDNO_SOURCES:.cpp=.o))
 
 BUILDNO_HOST_CFLAGS = -Iinclude/reactos -g -Werror -Wall
 
 BUILDNO_HOST_LFLAGS = -g
 
-$(BUILDNO_TARGET): $(BUILDNO_OBJECTS)
+$(BUILDNO_TARGET): $(BUILDNO_BASE_DIR) $(BUILDNO_OBJECTS)
 	$(ECHO_LD)
 	${host_gpp} $(BUILDNO_OBJECTS) $(BUILDNO_HOST_CFLAGS) -o $(BUILDNO_TARGET)
 
-$(BUILDNO_OBJECTS): %.o : %.cpp include$(SEP)reactos$(SEP)version.h
+$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)buildno.cpp
 	$(ECHO_CC)
-	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)buildno.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno.o
 
+$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)exception.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)exception.cpp
+	$(ECHO_CC)
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)exception.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)exception.o
+
+$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)ssprintf.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)ssprintf.cpp
+	$(ECHO_CC)
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)ssprintf.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)ssprintf.o
+
+$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)XML.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)XML.cpp
+	$(ECHO_CC)
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)XML.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)XML.o
+
 .PHONY: buildno_clean
 buildno_clean:
 	-@$(rm) $(BUILDNO_TARGET) $(BUILDNO_OBJECTS) 2>$(NUL)
-clean: buildno_clean
 
-# BUILDNO_H is defined from the top-level makefile now...
-#BUILDNO_H = .$(SEP)include$(SEP)reactos$(SEP)buildno.h
-
-.PHONY: buildno_h
-buildno_h: $(BUILDNO_H)
-
 $(BUILDNO_H): $(BUILDNO_TARGET)
-	$(BUILDNO_TARGET) $(BUILDNO_H)
-
-.PHONY: buildno_h_clean
-buildno_h_clean:
-	-@$(rm) $(BUILDNO_H)
-clean: buildno_h_clean
+	$(EXEPREFIX)$(BUILDNO_TARGET) $(BUILDNO_H)

Modified: branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak
--- branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,7 +1,12 @@
-CDMAKE_BASE = .$(SEP)tools$(SEP)cdmake
+CDMAKE_BASE = tools$(SEP)cdmake
 
+CDMAKE_BASE_DIR = $(INTERMEDIATE)$(CDMAKE_BASE)$(SEP)$(CREATED)
+
+$(CDMAKE_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(CDMAKE_BASE)
+
 CDMAKE_TARGET = \
-	$(ROS_INTERMEDIATE)$(CDMAKE_BASE)$(SEP)cdmake$(EXEPOSTFIX)
+	$(INTERMEDIATE)$(CDMAKE_BASE)$(SEP)cdmake$(EXEPOSTFIX)
 
 CDMAKE_SOURCES = \
 	$(CDMAKE_BASE)$(SEP)cdmake.c \
@@ -14,11 +19,11 @@
 
 CDMAKE_HOST_LFLAGS = -g
 
-$(CDMAKE_TARGET): $(CDMAKE_OBJECTS)
+$(CDMAKE_TARGET): $(CDMAKE_BASE_DIR) $(CDMAKE_OBJECTS)
 	$(ECHO_LD)
 	${host_gcc} $(CDMAKE_OBJECTS) $(CDMAKE_HOST_CFLAGS) -o $(CDMAKE_TARGET)
 
-$(CDMAKE_OBJECTS): %.o : %.c
+$(CDMAKE_OBJECTS): %.o : %.c $(CDMAKE_BASE_DIR)
 	$(ECHO_CC)
 	${host_gcc} $(CDMAKE_CFLAGS) -c $< -o $@
 

Modified: branches/xmlbuildsystem/reactos/tools/nci/nci.mak
--- branches/xmlbuildsystem/reactos/tools/nci/nci.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/nci/nci.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,25 +1,30 @@
-NCI_BASE = .$(SEP)tools$(SEP)nci
+NCI_BASE = tools$(SEP)nci
 
+CDMAKE_BASE_DIR = $(INTERMEDIATE)$(NCI_BASE)$(SEP)$(CREATED)
+
+$(CDMAKE_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(NCI_BASE)
+
 NCI_TARGET = \
-	$(ROS_INTERMEDIATE)$(NCI_BASE)$(SEP)nci$(EXEPOSTFIX)
+	$(INTERMEDIATE)$(NCI_BASE)$(SEP)nci$(EXEPOSTFIX)
 
 NCI_SOURCES = \
 	$(NCI_BASE)$(SEP)ncitool.c
 
 NCI_OBJECTS = \
-	$(NCI_SOURCES:.c=.o)
+    $(addprefix $(INTERMEDIATE), $(NCI_SOURCES:.c=.o))
 
 NCI_HOST_CFLAGS = -Iinclude -g -Werror -Wall
 
 NCI_HOST_LFLAGS = -g
 
-$(NCI_TARGET): $(NCI_OBJECTS)
+$(NCI_TARGET): $(CDMAKE_BASE_DIR) $(NCI_OBJECTS)
 	$(ECHO_LD)
 	${host_gcc} $(NCI_OBJECTS) $(NCI_HOST_CFLAGS) -o $(NCI_TARGET)
 
-$(NCI_OBJECTS): %.o : %.c
+$(INTERMEDIATE)$(NCI_BASE)$(SEP)ncitool.o: $(CDMAKE_BASE_DIR) $(NCI_BASE)$(SEP)ncitool.c
 	$(ECHO_CC)
-	${host_gcc} $(NCI_HOST_CFLAGS) -c $< -o $@
+	${host_gcc} $(NCI_HOST_CFLAGS) -c $(NCI_BASE)$(SEP)ncitool.c -o $(INTERMEDIATE)$(NCI_BASE)$(SEP)ncitool.o
 
 .PHONY: nci_clean
 nci_clean:

Modified: branches/xmlbuildsystem/reactos/tools/rmkdir.c
--- branches/xmlbuildsystem/reactos/tools/rmkdir.c	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/rmkdir.c	2005-03-13 21:30:35 UTC (rev 14032)
@@ -2,6 +2,7 @@
 #include <string.h>
 #include <stdlib.h>
 #include <ctype.h>
+#include <fcntl.h>
 #ifdef _MSC_VER
 #include <direct.h>
 #else
@@ -9,6 +10,12 @@
 #include <sys/stat.h>
 #include <sys/types.h>
 #endif
+#ifdef WIN32
+#include <sys/utime.h>
+#include <time.h>
+#else
+#include <sys/time.h>
+#endif
 
 #if defined(WIN32)
 #define DIR_SEPARATOR_CHAR '\\'
@@ -24,6 +31,7 @@
 {
    char* newpath;
    int i;
+   int length;
    
    //newpath = strdup(origpath);
 	 newpath=malloc(strlen(origpath)+1);
@@ -47,6 +55,13 @@
 #endif	
 	i++;
      }
+
+   length = strlen(newpath);
+   if (length > 0)
+     {
+        if (newpath[length - 1] == DIR_SEPARATOR_CHAR)
+          newpath[length - 1] = 0;
+     }
    return(newpath);
 }
 
@@ -80,6 +95,43 @@
    return(0);
 }
 
+int
+write_created_file()
+{
+   char filename[256];
+   int id;
+#ifdef WIN32
+   time_t now;
+   struct utimbuf fnow;
+#endif
+
+   strcpy(filename, ".created");
+
+  id = open(filename, S_IWRITE, S_IRUSR | S_IWUSR);
+  if (id < 0)
+    {
+      id = open(filename, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR);
+      if (id < 0)
+        {
+          fprintf(stderr, "Cannot create file %s.\n", filename);
+          return(1);
+        }
+    }
+
+  close(id);
+
+#ifdef WIN32
+  now = time(NULL);
+  fnow.actime = now;
+  fnow.modtime = now;
+  (int) utime(filename, &fnow);
+#else
+  (int) utimes(filename, NULL);
+#endif
+   
+   return 0;
+}
+
 int main(int argc, char* argv[])
 {
    char* path1;
@@ -113,9 +165,10 @@
    
    while (csec != NULL)
      {
-	mkdir_p(csec);
+	if (mkdir_p(csec) > 0)
+    exit(1);
 	csec = strtok(NULL, DIR_SEPARATOR_STRING);
      }
-   
-   exit(0);
+
+   exit(write_created_file());
 }

Modified: branches/xmlbuildsystem/reactos/tools/tools.mak
--- branches/xmlbuildsystem/reactos/tools/tools.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/tools.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,13 +1,17 @@
+# We have to put rmkdir in $(INTERMEDIATE) and not $(INTERMEDIATE)tools
+# since GNU make will always remake directory targets and we can't do the
+# .created file trick for rmkdir due to circular dependencies
+
 RMKDIR_BASE = tools
 
 RMKDIR_TARGET = \
-	$(ROS_INTERMEDIATE)$(RMKDIR_BASE)$(SEP)rmkdir$(EXEPOSTFIX)
+	$(INTERMEDIATE)rmkdir$(EXEPOSTFIX)
 
 RMKDIR_SOURCES = \
 	$(RMKDIR_BASE)$(SEP)rmkdir.c
 
 RMKDIR_OBJECTS = \
-	$(RMKDIR_SOURCES:.c=.o)
+	$(INTERMEDIATE)rmkdir.o
 
 RMKDIR_HOST_CFLAGS = -g -Werror -Wall
 
@@ -17,9 +21,9 @@
 	$(ECHO_LD)
 	${host_gcc} $(RMKDIR_OBJECTS) $(RMKDIR_HOST_LFLAGS) -o $(RMKDIR_TARGET)
 
-$(RMKDIR_OBJECTS): %.o : %.c
+$(INTERMEDIATE)rmkdir.o: $(RMKDIR_BASE)$(SEP)rmkdir.c
 	$(ECHO_CC)
-	${host_gcc} $(RMKDIR_HOST_CFLAGS) -c $< -o $@
+	${host_gcc} $(RMKDIR_HOST_CFLAGS) -c $(RMKDIR_BASE)$(SEP)rmkdir.c -o $(INTERMEDIATE)rmkdir.o
 
 .PHONY: rmkdir_clean
 rmkdir_clean:
@@ -30,7 +34,7 @@
 RSYM_BASE = tools
 
 RSYM_TARGET = \
-	$(ROS_INTERMEDIATE)$(RSYM_BASE)$(SEP)rsym$(EXEPOSTFIX)
+	$(INTERMEDIATE)$(RSYM_BASE)$(SEP)rsym$(EXEPOSTFIX)
 
 RSYM_SOURCES = \
 	$(RSYM_BASE)$(SEP)rsym.c

Modified: branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak
--- branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,7 +1,12 @@
-UNICODE_BASE = .$(SEP)tools$(SEP)unicode
+UNICODE_BASE = tools$(SEP)unicode
 
+UNICODE_BASE_DIR = $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)$(CREATED)
+
+$(UNICODE_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(UNICODE_BASE)
+
 UNICODE_TARGET = \
-	$(ROS_INTERMEDIATE)$(UNICODE_BASE)$(SEP)libunicode.a
+	$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)libunicode.a
 
 UNICODE_CODEPAGES = \
 	037 \
@@ -76,24 +81,288 @@
   $(addprefix $(UNICODE_BASE)$(SEP), $(UNICODE_CODEPAGES:%=c_%.o))
 
 UNICODE_OBJECTS = \
-	$(UNICODE_SOURCES:.c=.o)
+  $(addprefix $(INTERMEDIATE), $(UNICODE_SOURCES:.c=.o))
 
 UNICODE_HOST_CFLAGS = \
 	-D__USE_W32API -DWINVER=0x501 -DWINE_UNICODE_API= \
 	-Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \
-	-I$(UNICODE_BASE) -Iinclude/wine -Iw32api/include
+	-I$(UNICODE_BASE) -Iinclude/wine
 
 .PHONY: unicode
 unicode: $(UNICODE_TARGET)
 
-$(UNICODE_TARGET): $(UNICODE_OBJECTS)
+$(UNICODE_TARGET): $(UNICODE_BASE_DIR) $(UNICODE_OBJECTS)
 	$(ECHO_AR)
 	${host_ar} -rc $(UNICODE_TARGET) $(UNICODE_OBJECTS)
 
-$(UNICODE_OBJECTS): %.o : %.c
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)casemap.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)casemap.c
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)casemap.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)casemap.o
 
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)compose.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)compose.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)compose.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)compose.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)cptable.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)cptable.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)cptable.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)cptable.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)mbtowc.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)mbtowc.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)mbtowc.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)mbtowc.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)string.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)string.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)string.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)string.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctomb.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)wctomb.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)wctomb.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctomb.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctype.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)wctype.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)wctype.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctype.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_037.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_037.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_037.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_037.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_424.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_424.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_424.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_424.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_437.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_437.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_437.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_437.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_500.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_500.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_500.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_500.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_737.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_737.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_737.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_737.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_775.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_775.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_775.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_775.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_850.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_850.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_850.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_850.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_852.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_852.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_852.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_852.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_855.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_855.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_855.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_855.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_856.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_856.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_856.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_856.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_857.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_857.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_857.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_857.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_860.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_860.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_860.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_860.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_861.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_861.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_861.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_861.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_862.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_862.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_862.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_862.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_863.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_863.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_863.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_863.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_864.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_864.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_864.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_864.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_865.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_865.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_865.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_865.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_866.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_866.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_866.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_869.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_869.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_869.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_869.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_874.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_874.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_874.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_874.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_875.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_875.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_875.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_875.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_878.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_878.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_878.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_878.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_932.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_932.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_932.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_932.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_936.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_936.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_936.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_936.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_949.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_949.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_949.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_949.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_950.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_950.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_950.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_950.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1006.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1006.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1006.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1006.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1026.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1026.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1026.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1026.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1250.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1250.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1250.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1250.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1251.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1251.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1251.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1251.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1252.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1252.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1252.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1252.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1253.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1253.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1253.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1253.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1254.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1254.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1254.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1254.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1255.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1255.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1255.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1255.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1256.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1256.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1256.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1256.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1257.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1257.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1257.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1257.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1258.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_1258.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1258.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1258.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10000.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10000.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10000.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10000.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10006.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10006.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10006.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10006.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10007.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10007.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10007.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10007.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10029.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10029.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10029.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10029.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10079.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10079.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10079.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10079.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10081.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_10081.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10081.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10081.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20866.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_20866.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_20866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20866.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20932.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_20932.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_20932.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20932.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_21866.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_21866.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_21866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_21866.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28591.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28591.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28591.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28591.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28592.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28592.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28592.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28592.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28593.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28593.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28593.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28593.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28594.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28594.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28594.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28594.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28595.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28595.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28595.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28595.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28596.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28596.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28596.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28596.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28597.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28597.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28597.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28597.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28598.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28598.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28598.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28598.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28599.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28599.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28599.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28599.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28600.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28600.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28600.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28600.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28603.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28603.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28603.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28603.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28604.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28604.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28604.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28604.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28605.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28605.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28605.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28605.o
+
+$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28606.o: $(UNICODE_BASE_DIR) $(UNICODE_BASE)$(SEP)c_28606.c
+	$(ECHO_CC)
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28606.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28606.o
+
 .PHONY: unicode_clean
 unicode_clean:
 	-@$(rm) $(UNICODE_TARGET) $(UNICODE_OBJECTS) 2>$(NUL)

Modified: branches/xmlbuildsystem/reactos/tools/wmc/wmc.mak
--- branches/xmlbuildsystem/reactos/tools/wmc/wmc.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/wmc/wmc.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,5 +1,10 @@
-WMC_BASE = .$(SEP)tools$(SEP)wmc
+WMC_BASE = tools$(SEP)wmc
 
+WMC_BASE_DIR = $(INTERMEDIATE)$(WMC_BASE)$(SEP)$(CREATED)
+
+$(WMC_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(WMC_BASE)
+
 WMC_TARGET = \
 	$(ROS_INTERMEDIATE)$(WMC_BASE)$(SEP)wmc$(EXEPOSTFIX)
 
@@ -14,20 +19,48 @@
 	$(WMC_BASE)$(SEP)misc.c
 
 WMC_OBJECTS = \
-	$(WMC_SOURCES:.c=.o)
+  $(addprefix $(INTERMEDIATE), $(WMC_SOURCES:.c=.o))
 
 WMC_HOST_CXXFLAGS = -I$(WMC_BASE) -g -Werror -Wall
 
 WMC_HOST_LFLAGS = -g
 
-$(WMC_TARGET): $(WMC_OBJECTS)
+$(WMC_TARGET): $(WMC_BASE_DIR) $(WMC_OBJECTS)
 	$(ECHO_LD)
 	${host_gcc} $(WMC_OBJECTS) $(WMC_HOST_LFLAGS) -o $(WMC_TARGET)
 
-$(WMC_OBJECTS): %.o : %.c
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)getopt.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)getopt.c
 	$(ECHO_CC)
-	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $< -o $@
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)getopt.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)getopt.o
 
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)lang.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)lang.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)lang.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)lang.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)mcl.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)mcl.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)mcl.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)mcl.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)utils.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)utils.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)utils.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)utils.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)wmc.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)wmc.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)wmc.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)wmc.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)write.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)write.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)write.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)write.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)y_tab.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)y_tab.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)y_tab.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)y_tab.o
+
+$(INTERMEDIATE)$(WMC_BASE)$(SEP)misc.o: $(WMC_BASE_DIR) $(WMC_BASE)$(SEP)misc.c
+	$(ECHO_CC)
+	${host_gcc} $(WMC_HOST_CXXFLAGS) -c $(WMC_BASE)$(SEP)misc.c -o $(INTERMEDIATE)$(WMC_BASE)$(SEP)misc.o
+
 .PHONY: wmc_clean
 wmc_clean:
 	-@$(rm) $(WMC_TARGET) $(WMC_OBJECTS) 2>$(NUL)

Modified: branches/xmlbuildsystem/reactos/tools/wpp/wpp.mak
--- branches/xmlbuildsystem/reactos/tools/wpp/wpp.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/wpp/wpp.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,7 +1,10 @@
-WPP_BASE = .$(SEP)tools$(SEP)wpp
+WPP_BASE = tools$(SEP)wpp
 
+$(INTERMEDIATE)$(WPP_BASE): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(WPP_BASE)
+
 WPP_TARGET = \
-	$(ROS_INTERMEDIATE)$(WPP_BASE)$(SEP)libwpp.a
+	$(INTERMEDIATE)$(WPP_BASE)$(SEP)libwpp.a
 
 WPP_SOURCES = \
 	$(WPP_BASE)$(SEP)lex.yy.c \
@@ -10,18 +13,30 @@
 	$(WPP_BASE)$(SEP)wpp.tab.c
 
 WPP_OBJECTS = \
-	$(WPP_SOURCES:.c=.o)
+    $(addprefix $(INTERMEDIATE), $(WPP_SOURCES:.c=.o))
 
 WPP_HOST_CFLAGS = -D__USE_W32API -I$(WPP_BASE) -Iinclude -Iinclude/wine -g
 
-$(WPP_TARGET): $(WPP_OBJECTS)
+$(WPP_TARGET): $(INTERMEDIATE)$(WPP_BASE) $(WPP_OBJECTS)
 	$(ECHO_AR)
 	${host_ar} -rc $(WPP_TARGET) $(WPP_OBJECTS)
 
-$(WPP_OBJECTS): %.o : %.c
+$(INTERMEDIATE)$(WPP_BASE)$(SEP)lex.yy.o: $(INTERMEDIATE)$(WPP_BASE) $(WPP_BASE)$(SEP)lex.yy.c
 	$(ECHO_CC)
-	${host_gcc} $(WPP_HOST_CFLAGS) -c $< -o $@
+	${host_gcc} $(WPP_HOST_CFLAGS) -c $(WPP_BASE)$(SEP)lex.yy.c -o $(INTERMEDIATE)$(WPP_BASE)$(SEP)lex.yy.o
 
+$(INTERMEDIATE)$(WPP_BASE)$(SEP)preproc.o: $(INTERMEDIATE)$(WPP_BASE) $(WPP_BASE)$(SEP)preproc.c
+	$(ECHO_CC)
+	${host_gcc} $(WPP_HOST_CFLAGS) -c $(WPP_BASE)$(SEP)preproc.c -o $(INTERMEDIATE)$(WPP_BASE)$(SEP)preproc.o
+
+$(INTERMEDIATE)$(WPP_BASE)$(SEP)wpp.o: $(INTERMEDIATE)$(WPP_BASE) $(WPP_BASE)$(SEP)wpp.c
+	$(ECHO_CC)
+	${host_gcc} $(WPP_HOST_CFLAGS) -c $(WPP_BASE)$(SEP)wpp.c -o $(INTERMEDIATE)$(WPP_BASE)$(SEP)wpp.o
+
+$(INTERMEDIATE)$(WPP_BASE)$(SEP)wpp.tab.o: $(INTERMEDIATE)$(WPP_BASE) $(WPP_BASE)$(SEP)wpp.tab.c
+	$(ECHO_CC)
+	${host_gcc} $(WPP_HOST_CFLAGS) -c $(WPP_BASE)$(SEP)wpp.tab.c -o $(INTERMEDIATE)$(WPP_BASE)$(SEP)wpp.tab.o
+
 .PHONY: wpp_clean
 wpp_clean:
 	-@$(rm) $(WPP_TARGET) $(WPP_OBJECTS) 2>$(NUL)

Modified: branches/xmlbuildsystem/reactos/tools/wrc/wrc.mak
--- branches/xmlbuildsystem/reactos/tools/wrc/wrc.mak	2005-03-13 21:29:49 UTC (rev 14031)
+++ branches/xmlbuildsystem/reactos/tools/wrc/wrc.mak	2005-03-13 21:30:35 UTC (rev 14032)
@@ -1,7 +1,17 @@
-WRC_BASE = .$(SEP)tools$(SEP)wrc
+WRC_BASE = tools$(SEP)wrc
 
+WRC_BASE_DIR = $(INTERMEDIATE)$(WRC_BASE)$(SEP)$(CREATED)
+
+$(WRC_BASE_DIR): $(RMKDIR_TARGET)
+	${mkdir} $(INTERMEDIATE)$(WRC_BASE)
+
+WRC_BASE_PORT_DIR = $(INTERMEDIATE)$(WRC_BASE)$(SEP)port$(SEP)$(CREATED)
+
+$(WRC_BASE_PORT_DIR): $(RMKDIR_TARGET) $(WRC_BASE_DIR)
+	${mkdir} $(INTERMEDIATE)$(WRC_BASE)$(SEP)port
+
 WRC_TARGET = \
-	$(ROS_INTERMEDIATE)$(WRC_BASE)$(SEP)wrc$(EXEPOSTFIX)
+	$(INTERMEDIATE)$(WRC_BASE)$(SEP)wrc$(EXEPOSTFIX)
 
 WRC_SOURCES = \
 	$(WRC_BASE)$(SEP)dumpres.c \
@@ -17,7 +27,7 @@
 	$(WRC_BASE)$(SEP)port$(SEP)mkstemps.o
 
 WRC_OBJECTS = \
-	$(WRC_SOURCES:.c=.o)
+  $(addprefix $(INTERMEDIATE), $(WRC_SOURCES:.c=.o))
 
 WRC_HOST_CFLAGS = -I$(WRC_BASE) -g -Werror -Wall \
                   -D__USE_W32API -DWINE_UNICODE_API= \
@@ -27,14 +37,57 @@
 
 WRC_HOST_LFLAGS = -g
 
-$(WRC_TARGET): $(WRC_OBJECTS) $(UNICODE_TARGET) $(WPP_TARGET)
+.PHONY: wrc
+wrc: $(WRC_TARGET)
+
+$(WRC_TARGET): $(WRC_BASE_DIR) $(WRC_OBJECTS) $(UNICODE_TARGET) $(WPP_TARGET)
 	$(ECHO_LD)
 	${host_gcc} $(WRC_OBJECTS) $(UNICODE_TARGET) $(WPP_TARGET) $(WRC_HOST_LFLAGS) -o $(WRC_TARGET)
 
-$(WRC_OBJECTS): %.o : %.c
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)dumpres.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)dumpres.c
 	$(ECHO_CC)
-	${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)dumpres.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)dumpres.o
 
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)genres.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)genres.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)genres.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)genres.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)newstruc.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)newstruc.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)newstruc.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)newstruc.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)readres.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)readres.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)readres.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)readres.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)translation.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)translation.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)translation.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)translation.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)utils.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)utils.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)utils.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)utils.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)wrc.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)wrc.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)wrc.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)wrc.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)writeres.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)writeres.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)writeres.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)writeres.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)y.tab.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)y.tab.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)y.tab.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)y.tab.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)lex.yy.o: $(WRC_BASE_DIR) $(WRC_BASE)$(SEP)lex.yy.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)lex.yy.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)lex.yy.o
+
+$(INTERMEDIATE)$(WRC_BASE)$(SEP)port$(SEP)mkstemps.o: $(WRC_BASE_PORT_DIR) $(WRC_BASE)$(SEP)port$(SEP)mkstemps.c
+	$(ECHO_CC)
+	${host_gcc} $(WRC_HOST_CFLAGS) -c $(WRC_BASE)$(SEP)port$(SEP)mkstemps.c -o $(INTERMEDIATE)$(WRC_BASE)$(SEP)port$(SEP)mkstemps.o
+
 .PHONY: wrc_clean
 wrc_clean:
 	-@$(rm) $(WRC_TARGET) $(WRC_OBJECTS) 2>$(NUL)