I give up, make's "directory target" support has a fatal flaw, converting to "dummy file" system
Modified: branches/xmlbuildsystem/reactos/Makefile
Modified: branches/xmlbuildsystem/reactos/lib/zlib/zlib.mak
Modified: branches/xmlbuildsystem/reactos/tools/bin2res/bin2res.mak
Modified: branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak
Modified: branches/xmlbuildsystem/reactos/tools/cabman/cabman.mak
Modified: branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak
Modified: branches/xmlbuildsystem/reactos/tools/nci/nci.mak
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/automaticdependency.cpp
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
Modified: branches/xmlbuildsystem/reactos/tools/rbuild/rbuild.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/winebuild/winebuild.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

Modified: branches/xmlbuildsystem/reactos/Makefile
--- branches/xmlbuildsystem/reactos/Makefile	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/Makefile	2005-03-15 03:51:11 UTC (rev 14087)
@@ -18,6 +18,8 @@
 .PHONY: clean
 all: makefile.auto
 
+.SUFFIXES:
+
 ifeq ($(HOST),)
 ifeq ($(word 1,$(shell gcc -dumpmachine)),mingw32)
 HOST=mingw32-windows
@@ -40,6 +42,7 @@
 endif
 endif
 ifeq ($(HALFVERBOSEECHO),yes)
+  ECHO_MKDIR  =@echo [MKDIR]   $@
   ECHO_INVOKE =@echo [INVOKE]  $<
   ECHO_PCH    =@echo [PCH]     $@
   ECHO_CC     =@echo [CC]      $<
@@ -59,6 +62,7 @@
   ECHO_CDMAKE =@echo [CDMAKE]  $@
   ECHO_TEST   =@echo [TEST]    $@
 else
+  ECHO_MKDIR  =
   ECHO_INVOKE =
   ECHO_PCH    =
   ECHO_CC     =
@@ -89,7 +93,7 @@
 	EXEPREFIX = ./
 	EXEPOSTFIX =
 	SEP = /
-	nmkdir = $(Q)mkdir -p
+	nmkdir = -$(Q)mkdir -p
 	gcc = $(Q)mingw32-gcc
 	gpp = $(Q)mingw32-g++
 	ld = $(Q)mingw32-ld
@@ -105,7 +109,7 @@
 	EXEPOSTFIX = .exe
 	ROS_EMPTY =
 	SEP = \$(ROS_EMPTY)
-	nmkdir = $(Q)mkdir
+	nmkdir = -$(Q)mkdir
 	gcc = $(Q)gcc
 	gpp = $(Q)g++
 	ld = $(Q)ld
@@ -134,18 +138,21 @@
   OUTPUT_NO_SLASH = obj-i386
 endif
 
-mkdir = $(Q)$(INTERMEDIATE)rmkdir
+mkdir = -$(Q)$(INTERMEDIATE)rmkdir
+EXISTS = .exists
+INTERMEDIATE_EXISTS = $(INTERMEDIATE)$(EXISTS)
 
-$(INTERMEDIATE_NO_SLASH):
+$(INTERMEDIATE_EXISTS):
 	${nmkdir} $(INTERMEDIATE_NO_SLASH)
+	@echo . > $@
 
-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
-BUGCODES_H = .$(SEP)include$(SEP)reactos$(SEP)bugcodes.h
-BUGCODES_RC = .$(SEP)ntoskrnl$(SEP)bugcodes.rc
-ERRCODES_H = .$(SEP)include$(SEP)reactos$(SEP)errcodes.h
-ERRCODES_RC = .$(SEP)lib$(SEP)kernel32$(SEP)errcodes.rc
+NTOSKRNL_MC = ntoskrnl$(SEP)ntoskrnl.mc
+KERNEL32_MC = lib$(SEP)kernel32$(SEP)kernel32.mc
+BUILDNO_H = include$(SEP)reactos$(SEP)buildno.h
+BUGCODES_H = include$(SEP)reactos$(SEP)bugcodes.h
+BUGCODES_RC = ntoskrnl$(SEP)bugcodes.rc
+ERRCODES_H = include$(SEP)reactos$(SEP)errcodes.h
+ERRCODES_RC = lib$(SEP)kernel32$(SEP)errcodes.rc
 
 include tools/tools.mak
 -include makefile.auto
@@ -160,7 +167,7 @@
 
 makefile.auto: $(RBUILD_TARGET) $(PREAUTO) $(XMLBUILDFILES)
 	$(ECHO_RBUILD)
-	$(Q)tools$(SEP)rbuild$(SEP)rbuild$(EXEPOSTFIX) mingw
+	$(Q)$(RBUILD_TARGET) mingw
 
 
 $(BUGCODES_H) $(BUGCODES_RC): $(WMC_TARGET) $(NTOSKRNL_MC)

Modified: branches/xmlbuildsystem/reactos/lib/zlib/zlib.mak
--- branches/xmlbuildsystem/reactos/lib/zlib/zlib.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/lib/zlib/zlib.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -2,6 +2,7 @@
 
 ZLIB_BASE_DIR = $(INTERMEDIATE)$(ZLIB_BASE)
 
+
 #$(ZLIB_BASE_DIR): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_TARGET)
 #	${mkdir} $(INTERMEDIATE)$(ZLIB_BASE)
 
@@ -9,8 +10,6 @@
 	$(INTERMEDIATE)$(ZLIB_BASE)$(SEP)zlib.host.a
 
 ZLIB_HOST_SOURCES = \
-	$(ZLIB_BASE)$(SEP)cdmake.c \
-	$(ZLIB_BASE)$(SEP)llmosrt.c \
 	$(ZLIB_BASE)$(SEP)adler32.c \
 	$(ZLIB_BASE)$(SEP)compress.c \
 	$(ZLIB_BASE)$(SEP)crc32.c \
@@ -32,6 +31,9 @@
 ZLIB_HOST_CFLAGS = -MMD -O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \
   -Wstrict-prototypes -Wmissing-prototypes
 
+.PHONY: zlib_host
+zlib_host: $(ZLIB_HOST_TARGET)
+
 $(ZLIB_HOST_TARGET): $(ZLIB_HOST_BASE_DIR) $(ZLIB_HOST_OBJECTS)
 	$(ECHO_AR)
 	$(host_ar) -r $(ZLIB_HOST_TARGET) $(ZLIB_HOST_OBJECTS)

Modified: branches/xmlbuildsystem/reactos/tools/bin2res/bin2res.mak
--- branches/xmlbuildsystem/reactos/tools/bin2res/bin2res.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/bin2res/bin2res.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,12 +1,14 @@
-BIN2RES_BASE = tools$(SEP)bin2res
+BIN2RES_BASE = $(TOOLS_BASE)$(SEP)bin2res
 
 BIN2RES_BASE_DIR = $(INTERMEDIATE)$(BIN2RES_BASE)
+BIN2RES_BASE_DIR_EXISTS = $(BIN2RES_BASE_DIR)$(SEP)$(EXISTS)
 
-$(BIN2RES_BASE_DIR): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_TARGET)
-	${mkdir} $(INTERMEDIATE)$(BIN2RES_BASE)
+$(BIN2RES_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXISTS)
+	${mkdir} $(BIN2RES_BASE_DIR)
+	@echo . >$(BIN2RES_BASE_DIR_EXISTS)
 
 BIN2RES_TARGET = \
-	$(INTERMEDIATE)$(BIN2RES_BASE)$(SEP)bin2res$(EXEPOSTFIX)
+	$(BIN2RES_BASE_DIR)$(SEP)bin2res$(EXEPOSTFIX)
 
 BIN2RES_SOURCES = \
 	$(BIN2RES_BASE)$(SEP)bin2res.c \
@@ -19,14 +21,18 @@
 
 BIN2RES_HOST_LFLAGS = -g
 
-$(BIN2RES_TARGET): $(BIN2RES_BASE_DIR) $(BIN2RES_OBJECTS)
+$(BIN2RES_TARGET): $(BIN2RES_OBJECTS)
 	$(ECHO_LD)
-	${host_gcc} $(BIN2RES_OBJECTS) $(BIN2RES_HOST_LFLAGS) -o $(BIN2RES_TARGET)
+	${host_gcc} $(BIN2RES_OBJECTS) $(BIN2RES_HOST_LFLAGS) -o $@
 
-$(BIN2RES_OBJECTS): %.o : %.c $(BIN2RES_BASE_DIR)
+$(BIN2RES_BASE_DIR)$(SEP)bin2res.o: $(BIN2RES_BASE)$(SEP)bin2res.c $(BIN2RES_BASE_DIR_EXISTS)
 	$(ECHO_CC)
 	${host_gcc} $(BIN2RES_HOST_CFLAGS) -c $< -o $@
 
+$(BIN2RES_BASE_DIR)$(SEP)mkstemps.o: $(BIN2RES_BASE)$(SEP)mkstemps.c $(BIN2RES_BASE_DIR_EXISTS)
+	$(ECHO_CC)
+	${host_gcc} $(BIN2RES_HOST_CFLAGS) -c $< -o $@
+
 .PHONY: bin2res_clean
 bin2res_clean:
 	-@$(rm) $(BIN2RES_TARGET) $(BIN2RES_OBJECTS) 2>$(NUL)

Modified: branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak
--- branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/buildno/buildno.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,12 +1,15 @@
-BUILDNO_BASE = tools$(SEP)buildno
+BUILDNO_BASE = $(TOOLS_BASE)$(SEP)buildno
 
 BUILDNO_BASE_DIR = $(INTERMEDIATE)$(BUILDNO_BASE)
+BUILDNO_BASE_DIR_EXISTS = $(BUILDNO_BASE_DIR)$(SEP)$(EXISTS)
 
-$(BUILDNO_BASE_DIR): $(RMKDIR_TARGET)
-	${mkdir} $@
+$(BUILDNO_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXISTS)
+	$(ECHO_MKDIR)
+	${mkdir} $(BUILDNO_BASE_DIR)
+	@echo. > $@
 
 BUILDNO_TARGET = \
-	$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno$(EXEPOSTFIX)
+	$(BUILDNO_BASE_DIR)$(SEP)buildno$(EXEPOSTFIX)
 
 BUILDNO_SOURCES = \
 	$(BUILDNO_BASE)$(SEP)buildno.cpp \
@@ -21,25 +24,25 @@
 
 BUILDNO_HOST_LFLAGS = -g
 
-$(BUILDNO_TARGET): $(BUILDNO_BASE_DIR) $(BUILDNO_OBJECTS)
+$(BUILDNO_TARGET): $(BUILDNO_OBJECTS)
 	$(ECHO_LD)
 	${host_gpp} $(BUILDNO_OBJECTS) $(BUILDNO_HOST_LFLAGS) -o $(BUILDNO_TARGET)
 
-$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)buildno.cpp
+$(BUILDNO_BASE_DIR)$(SEP)buildno.o: $(BUILDNO_BASE)$(SEP)buildno.cpp $(BUILDNO_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)buildno.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)buildno.o
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)exception.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)exception.cpp
+$(BUILDNO_BASE_DIR)$(SEP)exception.o: $(BUILDNO_BASE)$(SEP)exception.cpp $(BUILDNO_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)exception.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)exception.o
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)ssprintf.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)ssprintf.cpp
+$(BUILDNO_BASE_DIR)$(SEP)ssprintf.o: $(BUILDNO_BASE)$(SEP)ssprintf.cpp $(BUILDNO_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)ssprintf.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)ssprintf.o
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)XML.o: $(BUILDNO_BASE_DIR) $(BUILDNO_BASE)$(SEP)XML.cpp
+$(BUILDNO_BASE_DIR)$(SEP)XML.o: $(BUILDNO_BASE)$(SEP)XML.cpp $(BUILDNO_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $(BUILDNO_BASE)$(SEP)XML.cpp -o $(INTERMEDIATE)$(BUILDNO_BASE)$(SEP)XML.o
+	${host_gpp} $(BUILDNO_HOST_CFLAGS) -c $< -o $@
 
 .PHONY: buildno_clean
 buildno_clean:
@@ -47,4 +50,4 @@
 clean: buildno_clean
 
 $(BUILDNO_H): $(BUILDNO_TARGET)
-	$(EXEPREFIX)$(BUILDNO_TARGET) $(BUILDNO_H)
+	$(BUILDNO_TARGET) $(BUILDNO_H)

Modified: branches/xmlbuildsystem/reactos/tools/cabman/cabman.mak
--- branches/xmlbuildsystem/reactos/tools/cabman/cabman.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/cabman/cabman.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -6,7 +6,7 @@
 	${mkdir} $(INTERMEDIATE)$(CABMAN_BASE)
 
 CABMAN_TARGET = \
-	$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)cabman$(EXEPOSTFIX)
+	$(CABMAN_BASE_DIR)$(SEP)cabman$(EXEPOSTFIX)
 
 CABMAN_SOURCES = \
 	$(CABMAN_BASE)$(SEP)cabinet.cxx \
@@ -18,33 +18,36 @@
 CABMAN_OBJECTS = \
   $(addprefix $(INTERMEDIATE), $(CABMAN_SOURCES:.cxx=.o))
 
-CABMAN_HOST_CFLAGS = -Iinclude/reactos -g -Werror -Wall
+CABMAN_HOST_CFLAGS = -Iinclude/reactos -Ilib/zlib -g -Werror -Wall
 
 CABMAN_HOST_LFLAGS = -g $(ZLIB_HOST_TARGET)
 
-$(CABMAN_TARGET): $(CABMAN_BASE_DIR) $(CABMAN_OBJECTS)
+.PHONY: cabman
+cabman: $(CABMAN_TARGET)
+
+$(CABMAN_TARGET): $(CABMAN_OBJECTS) $(ZLIB_HOST_TARGET)
 	$(ECHO_LD)
-	${host_gpp} $(CABMAN_OBJECTS) $(CABMAN_HOST_LFLAGS) -o $(CABMAN_TARGET)
+	${host_gpp} $(CABMAN_OBJECTS) $(CABMAN_HOST_LFLAGS) -o $@
 
-$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)cabinet.o: $(CABMAN_BASE_DIR) $(CABMAN_BASE)$(SEP)cabinet.cxx
+$(CABMAN_BASE_DIR)$(SEP)cabinet.o: $(CABMAN_BASE)$(SEP)cabinet.cxx $(CABMAN_BASE_DIR)
 	$(ECHO_CC)
-	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $(CABMAN_BASE)$(SEP)cabinet.cxx -o $(INTERMEDIATE)$(CABMAN_BASE)$(SEP)cabinet.o
+	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)dfp.o: $(CABMAN_BASE_DIR) $(CABMAN_BASE)$(SEP)dfp.cxx
+$(CABMAN_BASE_DIR)$(SEP)dfp.o: $(CABMAN_BASE)$(SEP)dfp.cxx $(CABMAN_BASE_DIR)
 	$(ECHO_CC)
-	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $(CABMAN_BASE)$(SEP)dfp.cxx -o $(INTERMEDIATE)$(CABMAN_BASE)$(SEP)dfp.o
+	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)main.o: $(CABMAN_BASE_DIR) $(CABMAN_BASE)$(SEP)main.cxx
+$(CABMAN_BASE_DIR)$(SEP)main.o: $(CABMAN_BASE)$(SEP)main.cxx $(CABMAN_BASE_DIR)
 	$(ECHO_CC)
-	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $(CABMAN_BASE)$(SEP)main.cxx -o $(INTERMEDIATE)$(CABMAN_BASE)$(SEP)main.o
+	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)mszip.o: $(CABMAN_BASE_DIR) $(CABMAN_BASE)$(SEP)mszip.cxx
+$(CABMAN_BASE_DIR)$(SEP)mszip.o: $(CABMAN_BASE)$(SEP)mszip.cxx $(CABMAN_BASE_DIR)
 	$(ECHO_CC)
-	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $(CABMAN_BASE)$(SEP)mszip.cxx -o $(INTERMEDIATE)$(CABMAN_BASE)$(SEP)mszip.o
+	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(CABMAN_BASE)$(SEP)raw.o: $(CABMAN_BASE_DIR) $(CABMAN_BASE)$(SEP)raw.cxx
+$(CABMAN_BASE_DIR)$(SEP)raw.o: $(CABMAN_BASE)$(SEP)raw.cxx $(CABMAN_BASE_DIR)
 	$(ECHO_CC)
-	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $(CABMAN_BASE)$(SEP)raw.cxx -o $(INTERMEDIATE)$(CABMAN_BASE)$(SEP)raw.o
+	${host_gpp} $(CABMAN_HOST_CFLAGS) -c $< -o $@
 
 .PHONY: cabman_clean
 cabman_clean:

Modified: branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak
--- branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/cdmake/cdmake.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,32 +1,42 @@
-CDMAKE_BASE = tools$(SEP)cdmake
+CDMAKE_BASE = $(TOOLS_BASE)$(SEP)cdmake
 
 CDMAKE_BASE_DIR = $(INTERMEDIATE)$(CDMAKE_BASE)
+CDMAKE_BASE_DIR_EXISTS = $(CDMAKE_BASE_DIR)$(SEP)$(EXISTS)
 
-$(CDMAKE_BASE_DIR): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_TARGET)
-	${mkdir} $(INTERMEDIATE)$(CDMAKE_BASE)
+$(CDMAKE_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXISTS)
+	$(ECHO_MKDIR)
+	${mkdir} $(CDMAKE_BASE_DIR)
+	@echo . >$@
 
 CDMAKE_TARGET = \
-	$(INTERMEDIATE)$(CDMAKE_BASE)$(SEP)cdmake$(EXEPOSTFIX)
+	$(CDMAKE_BASE_DIR)$(SEP)cdmake$(EXEPOSTFIX)
 
 CDMAKE_SOURCES = \
 	$(CDMAKE_BASE)$(SEP)cdmake.c \
 	$(CDMAKE_BASE)$(SEP)llmosrt.c
 
 CDMAKE_OBJECTS = \
-	$(CDMAKE_SOURCES:.c=.o)
+	$(addprefix $(INTERMEDIATE), $(CDMAKE_SOURCES:.c=.o))
 
 CDMAKE_HOST_CFLAGS = -Iinclude -g -Werror -Wall
 
 CDMAKE_HOST_LFLAGS = -g
 
-$(CDMAKE_TARGET): $(CDMAKE_BASE_DIR) $(CDMAKE_OBJECTS)
+.PHONY: cdmake
+cdmake: $(CDMAKE_TARGET)
+
+$(CDMAKE_TARGET): $(CDMAKE_OBJECTS)
 	$(ECHO_LD)
-	${host_gcc} $(CDMAKE_OBJECTS) $(CDMAKE_HOST_LFLAGS) -o $(CDMAKE_TARGET)
+	${host_gcc} $(CDMAKE_OBJECTS) $(CDMAKE_HOST_LFLAGS) -o $@
 
-$(CDMAKE_OBJECTS): %.o : %.c $(CDMAKE_BASE_DIR)
+$(CDMAKE_BASE_DIR)$(SEP)cdmake.o: $(CDMAKE_BASE)$(SEP)cdmake.c $(CDMAKE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
 	${host_gcc} $(CDMAKE_HOST_CFLAGS) -c $< -o $@
 
+$(CDMAKE_BASE_DIR)$(SEP)llmosrt.o: $(CDMAKE_BASE)$(SEP)llmosrt.c $(CDMAKE_BASE_DIR_EXISTS)
+	$(ECHO_CC)
+	${host_gcc} $(CDMAKE_HOST_CFLAGS) -c $< -o $@
+
 .PHONY: cdmake_clean
 cdmake_clean:
 	-@$(rm) $(CDMAKE_TARGET) $(CDMAKE_OBJECTS) 2>$(NUL)

Modified: branches/xmlbuildsystem/reactos/tools/nci/nci.mak
--- branches/xmlbuildsystem/reactos/tools/nci/nci.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/nci/nci.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,12 +1,14 @@
-NCI_BASE = tools$(SEP)nci
+NCI_BASE = $(TOOLS_BASE)$(SEP)nci
 
-CDMAKE_BASE_DIR = $(INTERMEDIATE)$(NCI_BASE)
+NCI_BASE_DIR = $(INTERMEDIATE)$(NCI_BASE)
+NCI_BASE_DIR_EXISTS = $(NCI_BASE_DIR)$(SEP)$(EXISTS)
 
-$(CDMAKE_BASE_DIR): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_TARGET)
-	${mkdir} $(INTERMEDIATE)$(NCI_BASE)
+$(NCI_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXIST)
+	${mkdir} $(NCI_BASE_DIR)
+	@echo . > $@
 
 NCI_TARGET = \
-	$(INTERMEDIATE)$(NCI_BASE)$(SEP)nci$(EXEPOSTFIX)
+	$(NCI_BASE_DIR)$(SEP)nci$(EXEPOSTFIX)
 
 NCI_SOURCES = \
 	$(NCI_BASE)$(SEP)ncitool.c
@@ -18,13 +20,13 @@
 
 NCI_HOST_LFLAGS = -g
 
-$(NCI_TARGET): $(CDMAKE_BASE_DIR) $(NCI_OBJECTS)
+$(NCI_TARGET): $(NCI_OBJECTS)
 	$(ECHO_LD)
 	${host_gcc} $(NCI_OBJECTS) $(NCI_HOST_CFLAGS) -o $(NCI_TARGET)
 
-$(INTERMEDIATE)$(NCI_BASE)$(SEP)ncitool.o: $(CDMAKE_BASE_DIR) $(NCI_BASE)$(SEP)ncitool.c
+$(NCI_BASE_DIR)$(SEP)ncitool.o: $(NCI_BASE)$(SEP)ncitool.c $(NCI_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(NCI_HOST_CFLAGS) -c $(NCI_BASE)$(SEP)ncitool.c -o $(INTERMEDIATE)$(NCI_BASE)$(SEP)ncitool.o
+	${host_gcc} $(NCI_HOST_CFLAGS) -c $< -o $@
 
 .PHONY: nci_clean
 nci_clean:
@@ -53,7 +55,7 @@
 
 $(NCI_SERVICE_FILES): $(NCI_TARGET)
 	$(ECHO_NCI)
-	$(Q)$(EXEPREFIX)$(NCI_TARGET) \
+	$(Q)$(NCI_TARGET) \
 		$(KERNEL_SVC_DB) \
 		$(WIN32K_SVC_DB) \
 		$(KERNEL_SERVICE_TABLE) \

Modified: branches/xmlbuildsystem/reactos/tools/rbuild/automaticdependency.cpp
--- branches/xmlbuildsystem/reactos/tools/rbuild/automaticdependency.cpp	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/automaticdependency.cpp	2005-03-15 03:51:11 UTC (rev 14087)
@@ -21,9 +21,9 @@
 	  isNonAutomaticDependency ( isNonAutomaticDependency ),
 	  youngestLastWriteTime ( 0 )
 {
-  	if ( parent != NULL )
+	if ( parent != NULL )
 		parents.push_back ( parent );
-  	GetDirectoryAndFilenameParts ();
+	GetDirectoryAndFilenameParts ();
 }
 
 void
@@ -41,7 +41,7 @@
 		filenamePart = filename;
 	}
 }
-	  	
+
 void
 SourceFile::Close ()
 {

Modified: branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
--- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1449,7 +1449,7 @@
 		clean_files );
 
 	string linker;
-	if ( IsCPlusPlusModule ( module ) )
+	if ( module.cplusplus )
 		linker = "${host_gpp}";
 	else
 		linker = "${host_gcc}";

Modified: branches/xmlbuildsystem/reactos/tools/rbuild/rbuild.mak
--- branches/xmlbuildsystem/reactos/tools/rbuild/rbuild.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/rbuild.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,10 +1,18 @@
-RBUILD_BASE = .$(SEP)tools$(SEP)rbuild
+RBUILD_BASE = $(TOOLS_BASE)$(SEP)rbuild
 
+RBUILD_BASE_DIR = $(INTERMEDIATE)$(RBUILD_BASE)
+RBUILD_BASE_DIR_EXISTS = $(RBUILD_BASE_DIR)$(SEP)$(EXISTS)
+
+$(RBUILD_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXISTS)
+	$(ECHO_MKDIR)
+	${mkdir} $(RBUILD_BASE_DIR)
+	@echo . >$@
+
 RBUILD_TARGET = \
-	$(ROS_INTERMEDIATE)$(RBUILD_BASE)$(SEP)rbuild$(EXEPOSTFIX)
+	$(RBUILD_BASE_DIR)$(SEP)rbuild$(EXEPOSTFIX)
 
 RBUILD_TEST_TARGET = \
-	$(ROS_INTERMEDIATE)$(RBUILD_BASE)$(SEP)rbuild_test$(EXEPOSTFIX)
+	$(RBUILD_BASE_DIR)$(SEP)rbuild_test$(EXEPOSTFIX)
 
 RBUILD_BACKEND_MINGW_BASE_SOURCES = \
 	backend$(SEP)mingw$(SEP)mingw.cpp \
@@ -87,7 +95,7 @@
 .PHONY: rbuild
 rbuild: $(RBUILD_TARGET)
 
-$(RBUILD_TARGET): $(RBUILD_OBJECTS)
+$(RBUILD_TARGET): $(RBUILD_OBJECTS) $(RBUILD_BASE_DIR_EXISTS)
 	$(ECHO_LD)
 	${host_gpp} $(RBUILD_OBJECTS) $(RBUILD_HOST_LFLAGS) -o $(RBUILD_TARGET)
 
@@ -99,7 +107,7 @@
 	$(ECHO_CC)
 	${host_gpp} $(RBUILD_HOST_CXXFLAGS) -c $< -o $@
 
-$(RBUILD_TEST_TARGET): $(RBUILD_TEST_OBJECTS)
+$(RBUILD_TEST_TARGET): $(RBUILD_TEST_OBJECTS) $(RBUILD_BASE_DIR_EXISTS)
 	$(ECHO_LD)
 	${host_gpp} $(RBUILD_TEST_OBJECTS) $(RBUILD_HOST_LFLAGS) -o $(RBUILD_TEST_TARGET)
 

Modified: branches/xmlbuildsystem/reactos/tools/rmkdir.c
--- branches/xmlbuildsystem/reactos/tools/rmkdir.c	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/rmkdir.c	2005-03-15 03:51:11 UTC (rev 14087)
@@ -2,7 +2,7 @@
 #include <string.h>
 #include <stdlib.h>
 #include <ctype.h>
-#ifdef _MSC_VER
+#ifdef WIN32
 #include <direct.h>
 #else
 #include <unistd.h>
@@ -32,10 +32,10 @@
 {
 	char* newpath;
 	int i;
-	
+
 	newpath=malloc(strlen(origpath)+1);
 	strcpy(newpath,origpath);
-	
+
 	i = 0;
 	while (newpath[i] != 0)
 	{
@@ -74,15 +74,15 @@
 	char* path1;
 	char* csec;
 	char buf[256];
-	
+
 	if (argc != 2)
 	{
 		fprintf(stderr, "Too many arguments\n");
 		exit(1);
 	}
-	
+
 	path1 = convert_path(argv[1]);
-	
+
 	if (isalpha(path1[0]) && path1[1] == ':' && path1[2] == DIR_SEPARATOR_CHAR)
 	{
 		csec = strtok(path1, DIR_SEPARATOR_STRING);
@@ -99,12 +99,12 @@
 	{
 		csec = strtok(path1, DIR_SEPARATOR_STRING);
 	}
-	
+
 	while (csec != NULL)
 	{
 		mkdir_p(csec);
 		csec = strtok(NULL, DIR_SEPARATOR_STRING);
 	}
-	
+
 	exit(0);
 }

Modified: branches/xmlbuildsystem/reactos/tools/tools.mak
--- branches/xmlbuildsystem/reactos/tools/tools.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/tools.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,13 +1,16 @@
 RMKDIR_BASE = tools
 
+RMKDIR_BASE_DIR = $(INTERMEDIATE)
+RMKDIR_BASE_DIR_EXISTS = $(RMKDIR_BASE_DIR)$(EXISTS)
+
 RMKDIR_TARGET = \
-	$(INTERMEDIATE)rmkdir$(EXEPOSTFIX)
+	$(RMKDIR_BASE_DIR)rmkdir$(EXEPOSTFIX)
 
 RMKDIR_SOURCES = \
 	$(RMKDIR_BASE)$(SEP)rmkdir.c
 
 RMKDIR_OBJECTS = \
-	$(INTERMEDIATE)rmkdir.o
+	$(RMKDIR_BASE_DIR)rmkdir.o
 
 RMKDIR_HOST_CFLAGS = -g -Werror -Wall
 
@@ -16,13 +19,13 @@
 .PHONY: rmkdir
 rmkdir: $(RMKDIR_TARGET)
 
-$(RMKDIR_TARGET): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_OBJECTS)
+$(RMKDIR_TARGET): $(RMKDIR_OBJECTS)
 	$(ECHO_LD)
-	${host_gcc} $(RMKDIR_OBJECTS) $(RMKDIR_HOST_LFLAGS) -o $(RMKDIR_TARGET)
+	${host_gcc} $(RMKDIR_OBJECTS) $(RMKDIR_HOST_LFLAGS) -o $@
 
-$(INTERMEDIATE)rmkdir.o: $(INTERMEDIATE_NO_SLASH) $(RMKDIR_BASE)$(SEP)rmkdir.c
+$(RMKDIR_BASE_DIR)rmkdir.o: $(RMKDIR_BASE)$(SEP)rmkdir.c $(RMKDIR_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(RMKDIR_HOST_CFLAGS) -c $(RMKDIR_BASE)$(SEP)rmkdir.c -o $(INTERMEDIATE)rmkdir.o
+	${host_gcc} $(RMKDIR_HOST_CFLAGS) -c $< -o $@
 
 .PHONY: rmkdir_clean
 rmkdir_clean:
@@ -30,10 +33,22 @@
 clean: rmkdir_clean
 
 
-RSYM_BASE = tools
+TOOLS_BASE = tools
+TOOLS_BASE_DIR = $(INTERMEDIATE)$(TOOLS_BASE)
+TOOLS_BASE_DIR_EXISTS = $(TOOLS_BASE_DIR)$(EXISTS)
 
+$(TOOLS_BASE_DIR_EXISTS): $(INTERMEDIATE_EXISTS) $(RMKDIR_TARGET)
+	${mkdir} $(TOOLS_BASE_DIR)
+	@echo . >$@
+
+
+RSYM_BASE = $(TOOLS_BASE)
+
+RSYM_BASE_DIR = $(INTERMEDIATE)$(RSYM_BASE)
+RSYM_BASE_DIR_EXISTS = $(RSYM_BASE_DIR)$(EXISTS)
+
 RSYM_TARGET = \
-	$(INTERMEDIATE)$(RSYM_BASE)$(SEP)rsym$(EXEPOSTFIX)
+	$(RSYM_BASE_DIR)$(SEP)rsym$(EXEPOSTFIX)
 
 RSYM_SOURCES = \
 	$(RSYM_BASE)$(SEP)rsym.c
@@ -50,9 +65,9 @@
 
 $(RSYM_TARGET): $(RSYM_OBJECTS)
 	$(ECHO_LD)
-	${host_gcc} $(RSYM_OBJECTS) $(RSYM_HOST_LFLAGS) -o $(RSYM_TARGET)
+	${host_gcc} $(RSYM_OBJECTS) $(RSYM_HOST_LFLAGS) -o $@
 
-$(RSYM_OBJECTS): %.o : %.c
+$(RSYM_OBJECTS): %.o : %.c $(RSYM_BASE_DIR_EXISTS)
 	$(ECHO_CC)
 	${host_gcc} $(RSYM_HOST_CFLAGS) -c $< -o $@
 
@@ -61,9 +76,9 @@
 	-@$(rm) $(RSYM_TARGET) $(RSYM_OBJECTS) 2>$(NUL)
 clean: rsym_clean
 
+
 include tools/bin2res/bin2res.mak
 include tools/buildno/buildno.mak
-include tools/cabman/cabman.mak
 include tools/cdmake/cdmake.mak
 include tools/nci/nci.mak
 include tools/rbuild/rbuild.mak
@@ -73,3 +88,6 @@
 include tools/wpp/wpp.mak
 include tools/wrc/wrc.mak
 include lib/zlib/zlib.mak
+
+# cabman must come after zlib
+include tools/cabman/cabman.mak

Modified: branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak
--- branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak	2005-03-15 00:23:19 UTC (rev 14086)
+++ branches/xmlbuildsystem/reactos/tools/unicode/unicode.mak	2005-03-15 03:51:11 UTC (rev 14087)
@@ -1,12 +1,15 @@
-UNICODE_BASE = tools$(SEP)unicode
+UNICODE_BASE = $(TOOLS_BASE)$(SEP)unicode
 
 UNICODE_BASE_DIR = $(INTERMEDIATE)$(UNICODE_BASE)
+UNICODE_BASE_DIR_EXISTS = $(UNICODE_BASE_DIR)$(SEP)$(EXISTS)
 
-$(UNICODE_BASE_DIR): $(INTERMEDIATE_NO_SLASH) $(RMKDIR_TARGET)
-	${mkdir} $(INTERMEDIATE)$(UNICODE_BASE)
+$(UNICODE_BASE_DIR_EXISTS): $(TOOLS_BASE_DIR_EXISTS)
+	$(ECHO_MKDIR)
+	${mkdir} $(UNICODE_BASE_DIR)
+	@echo . >$(UNICODE_BASE_DIR_EXISTS)
 
 UNICODE_TARGET = \
-	$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)libunicode.a
+	$(UNICODE_BASE_DIR)$(SEP)libunicode.a
 
 UNICODE_CODEPAGES = \
 	037 \
@@ -91,277 +94,277 @@
 .PHONY: unicode
 unicode: $(UNICODE_TARGET)
 
-$(UNICODE_TARGET): $(UNICODE_BASE_DIR) $(UNICODE_OBJECTS)
+$(UNICODE_TARGET): $(UNICODE_OBJECTS)
 	$(ECHO_AR)
-	${host_ar} -rc $(UNICODE_TARGET) $(UNICODE_OBJECTS)
+	${host_ar} -rc $@ $(UNICODE_OBJECTS)
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)casemap.o: $(UNICODE_BASE)$(SEP)casemap.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)casemap.o: $(UNICODE_BASE)$(SEP)casemap.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)casemap.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)casemap.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)compose.o: $(UNICODE_BASE)$(SEP)compose.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)compose.o: $(UNICODE_BASE)$(SEP)compose.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)compose.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)compose.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)cptable.o: $(UNICODE_BASE)$(SEP)cptable.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)cptable.o: $(UNICODE_BASE)$(SEP)cptable.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)cptable.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)cptable.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)mbtowc.o: $(UNICODE_BASE)$(SEP)mbtowc.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)mbtowc.o: $(UNICODE_BASE)$(SEP)mbtowc.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)mbtowc.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)mbtowc.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)string.o: $(UNICODE_BASE)$(SEP)string.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)string.o: $(UNICODE_BASE)$(SEP)string.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)string.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)string.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctomb.o: $(UNICODE_BASE)$(SEP)wctomb.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)wctomb.o: $(UNICODE_BASE)$(SEP)wctomb.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)wctomb.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctomb.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctype.o: $(UNICODE_BASE)$(SEP)wctype.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)wctype.o: $(UNICODE_BASE)$(SEP)wctype.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)wctype.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)wctype.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_037.o: $(UNICODE_BASE)$(SEP)c_037.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_037.o: $(UNICODE_BASE)$(SEP)c_037.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_037.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_037.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_424.o: $(UNICODE_BASE)$(SEP)c_424.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_424.o: $(UNICODE_BASE)$(SEP)c_424.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_424.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_424.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_437.o: $(UNICODE_BASE)$(SEP)c_437.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_437.o: $(UNICODE_BASE)$(SEP)c_437.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_437.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_437.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_500.o: $(UNICODE_BASE)$(SEP)c_500.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_500.o: $(UNICODE_BASE)$(SEP)c_500.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_500.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_500.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_737.o: $(UNICODE_BASE)$(SEP)c_737.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_737.o: $(UNICODE_BASE)$(SEP)c_737.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_737.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_737.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_775.o: $(UNICODE_BASE)$(SEP)c_775.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_775.o: $(UNICODE_BASE)$(SEP)c_775.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_775.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_775.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_850.o: $(UNICODE_BASE)$(SEP)c_850.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_850.o: $(UNICODE_BASE)$(SEP)c_850.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_850.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_850.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_852.o: $(UNICODE_BASE)$(SEP)c_852.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_852.o: $(UNICODE_BASE)$(SEP)c_852.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_852.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_852.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_855.o: $(UNICODE_BASE)$(SEP)c_855.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_855.o: $(UNICODE_BASE)$(SEP)c_855.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_855.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_855.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_856.o: $(UNICODE_BASE)$(SEP)c_856.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_856.o: $(UNICODE_BASE)$(SEP)c_856.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_856.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_856.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_857.o: $(UNICODE_BASE)$(SEP)c_857.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_857.o: $(UNICODE_BASE)$(SEP)c_857.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_857.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_857.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_860.o: $(UNICODE_BASE)$(SEP)c_860.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_860.o: $(UNICODE_BASE)$(SEP)c_860.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_860.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_860.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_861.o: $(UNICODE_BASE)$(SEP)c_861.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_861.o: $(UNICODE_BASE)$(SEP)c_861.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_861.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_861.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_862.o: $(UNICODE_BASE)$(SEP)c_862.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_862.o: $(UNICODE_BASE)$(SEP)c_862.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_862.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_862.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_863.o: $(UNICODE_BASE)$(SEP)c_863.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_863.o: $(UNICODE_BASE)$(SEP)c_863.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_863.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_863.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_864.o: $(UNICODE_BASE)$(SEP)c_864.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_864.o: $(UNICODE_BASE)$(SEP)c_864.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_864.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_864.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_865.o: $(UNICODE_BASE)$(SEP)c_865.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_865.o: $(UNICODE_BASE)$(SEP)c_865.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_865.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_865.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_866.o: $(UNICODE_BASE)$(SEP)c_866.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_866.o: $(UNICODE_BASE)$(SEP)c_866.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_866.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_869.o: $(UNICODE_BASE)$(SEP)c_869.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_869.o: $(UNICODE_BASE)$(SEP)c_869.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_869.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_869.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_874.o: $(UNICODE_BASE)$(SEP)c_874.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_874.o: $(UNICODE_BASE)$(SEP)c_874.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_874.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_874.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_875.o: $(UNICODE_BASE)$(SEP)c_875.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_875.o: $(UNICODE_BASE)$(SEP)c_875.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_875.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_875.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_878.o: $(UNICODE_BASE)$(SEP)c_878.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_878.o: $(UNICODE_BASE)$(SEP)c_878.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_878.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_878.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_932.o: $(UNICODE_BASE)$(SEP)c_932.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_932.o: $(UNICODE_BASE)$(SEP)c_932.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_932.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_932.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_936.o: $(UNICODE_BASE)$(SEP)c_936.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_936.o: $(UNICODE_BASE)$(SEP)c_936.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_936.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_936.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_949.o: $(UNICODE_BASE)$(SEP)c_949.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_949.o: $(UNICODE_BASE)$(SEP)c_949.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_949.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_949.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_950.o: $(UNICODE_BASE)$(SEP)c_950.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_950.o: $(UNICODE_BASE)$(SEP)c_950.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_950.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_950.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1006.o: $(UNICODE_BASE)$(SEP)c_1006.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1006.o: $(UNICODE_BASE)$(SEP)c_1006.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1006.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1006.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1026.o: $(UNICODE_BASE)$(SEP)c_1026.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1026.o: $(UNICODE_BASE)$(SEP)c_1026.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1026.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1026.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1250.o: $(UNICODE_BASE)$(SEP)c_1250.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1250.o: $(UNICODE_BASE)$(SEP)c_1250.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1250.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1250.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1251.o: $(UNICODE_BASE)$(SEP)c_1251.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1251.o: $(UNICODE_BASE)$(SEP)c_1251.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1251.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1251.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1252.o: $(UNICODE_BASE)$(SEP)c_1252.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1252.o: $(UNICODE_BASE)$(SEP)c_1252.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1252.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1252.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1253.o: $(UNICODE_BASE)$(SEP)c_1253.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1253.o: $(UNICODE_BASE)$(SEP)c_1253.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1253.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1253.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1254.o: $(UNICODE_BASE)$(SEP)c_1254.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1254.o: $(UNICODE_BASE)$(SEP)c_1254.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1254.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1254.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1255.o: $(UNICODE_BASE)$(SEP)c_1255.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1255.o: $(UNICODE_BASE)$(SEP)c_1255.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1255.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1255.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1256.o: $(UNICODE_BASE)$(SEP)c_1256.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1256.o: $(UNICODE_BASE)$(SEP)c_1256.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1256.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1256.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1257.o: $(UNICODE_BASE)$(SEP)c_1257.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1257.o: $(UNICODE_BASE)$(SEP)c_1257.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1257.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1257.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1258.o: $(UNICODE_BASE)$(SEP)c_1258.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_1258.o: $(UNICODE_BASE)$(SEP)c_1258.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_1258.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_1258.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10000.o: $(UNICODE_BASE)$(SEP)c_10000.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10000.o: $(UNICODE_BASE)$(SEP)c_10000.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10000.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10000.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10006.o: $(UNICODE_BASE)$(SEP)c_10006.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10006.o: $(UNICODE_BASE)$(SEP)c_10006.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10006.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10006.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10007.o: $(UNICODE_BASE)$(SEP)c_10007.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10007.o: $(UNICODE_BASE)$(SEP)c_10007.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10007.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10007.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10029.o: $(UNICODE_BASE)$(SEP)c_10029.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10029.o: $(UNICODE_BASE)$(SEP)c_10029.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10029.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10029.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10079.o: $(UNICODE_BASE)$(SEP)c_10079.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10079.o: $(UNICODE_BASE)$(SEP)c_10079.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10079.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10079.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10081.o: $(UNICODE_BASE)$(SEP)c_10081.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_10081.o: $(UNICODE_BASE)$(SEP)c_10081.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_10081.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_10081.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20866.o: $(UNICODE_BASE)$(SEP)c_20866.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_20866.o: $(UNICODE_BASE)$(SEP)c_20866.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_20866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20866.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20932.o: $(UNICODE_BASE)$(SEP)c_20932.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_20932.o: $(UNICODE_BASE)$(SEP)c_20932.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_20932.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_20932.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_21866.o: $(UNICODE_BASE)$(SEP)c_21866.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_21866.o: $(UNICODE_BASE)$(SEP)c_21866.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_21866.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_21866.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28591.o: $(UNICODE_BASE)$(SEP)c_28591.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_28591.o: $(UNICODE_BASE)$(SEP)c_28591.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28591.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28591.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28592.o: $(UNICODE_BASE)$(SEP)c_28592.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_28592.o: $(UNICODE_BASE)$(SEP)c_28592.c $(UNICODE_BASE_DIR_EXISTS)
 	$(ECHO_CC)
-	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $(UNICODE_BASE)$(SEP)c_28592.c -o $(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28592.o
+	${host_gcc} $(UNICODE_HOST_CFLAGS) -c $< -o $@
 
-$(INTERMEDIATE)$(UNICODE_BASE)$(SEP)c_28593.o: $(UNICODE_BASE)$(SEP)c_28593.c $(UNICODE_BASE_DIR)
+$(UNICODE_BASE_DIR)$(SEP)c_28593.o: $(UNICODE_BASE)$(SEP)c_28593.c $(UNICODE_BASE_DIR_EXISTS)
[truncated at 1000 lines; 476 more skipped]