[ros-diffs] [sserapion] 44579: Try to fix IDL compilation race condition with patch from bug #4994

sserapion at svn.reactos.org sserapion at svn.reactos.org
Mon Dec 14 19:55:32 CET 2009


Author: sserapion
Date: Mon Dec 14 19:55:32 2009
New Revision: 44579

URL: http://svn.reactos.org/svn/reactos?rev=44579&view=rev
Log:
Try to fix IDL compilation race condition with patch from bug #4994 

Modified:
    branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak

Modified: branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak
URL: http://svn.reactos.org/svn/reactos/branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak?rev=44579&r1=44578&r2=44579&view=diff
==============================================================================
--- branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] (original)
+++ branches/ros-amd64-bringup/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] Mon Dec 14 19:55:32 2009
@@ -20,6 +20,7 @@
 
 #(source)
 RBUILD_name=$(basename $(notdir $(1)))
+RBUILD_noext=$(dir $(1))$(basename $(notdir $(1)))
 
 #(source)
 RBUILD_dir=${call RBUILD_fullpath,$(dir ${call RBUILD_compress_prefixes,$(1)})}
@@ -255,10 +256,12 @@
 
 $(2): $${$(1)_precondition}
 
-${call RBUILD_intermediate_path_noext,$(2)}_c.c ${call RBUILD_intermediate_path_noext,$(2)}_c.h: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
-	$$(ECHO_WIDL)
+${call RBUILD_intermediate_path_noext,$(2)}_c.c ${call RBUILD_intermediate_path_noext,$(2)}_c.h: ${call RBUILD_intermediate_path_noext,$(2)}_c
+
+${call RBUILD_intermediate_path_noext,$(2)}_c: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
+ 	$$(ECHO_WIDL)
 	$$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_c.h -c -C ${call RBUILD_intermediate_path_noext,$(2)}_c.c $(2)
-
+	$${touch} $$@>$(NUL)
 ${call RBUILD_CC,$(1),${call RBUILD_intermediate_path_noext,$(2)}_c.c,,,${call RBUILD_intermediate_path_noext,$(2)}_c.o}
 
 endef
@@ -268,10 +271,12 @@
 
 $(2): $${$(1)_precondition}
 
-${call RBUILD_intermediate_path_noext,$(2)}_s.c ${call RBUILD_intermediate_path_noext,$(2)}_s.h: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
+${call RBUILD_intermediate_path_noext,$(2)}_s.c ${call RBUILD_intermediate_path_noext,$(2)}_s.h: ${call RBUILD_intermediate_path_noext,$(2)}_s
+
+${call RBUILD_intermediate_path_noext,$(2)}_s: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
 	$$(ECHO_WIDL)
 	$$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_s.h -s -S ${call RBUILD_intermediate_path_noext,$(2)}_s.c $(2)
-
+	$${touch} $$@>$(NUL)
 ${call RBUILD_CC,$(1),${call RBUILD_intermediate_path_noext,$(2)}_s.c,,,${call RBUILD_intermediate_path_noext,$(2)}_s.o}
 
 endef
@@ -281,10 +286,12 @@
 
 $(2): $${$(1)_precondition}
 
-${call RBUILD_intermediate_path_noext,$(2)}_p.c ${call RBUILD_intermediate_path_noext,$(2)}_p.h: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
+${call RBUILD_intermediate_path_noext,$(2)}_p.c ${call RBUILD_intermediate_path_noext,$(2)}_p.h: ${call RBUILD_intermediate_path_noext,$(2)}_p
+
+${call RBUILD_intermediate_path_noext,$(2)}_p: $(2) $(3) $$(widl_TARGET) | ${call RBUILD_intermediate_dir,$(2)}
 	$$(ECHO_WIDL)
 	$$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_p.h -p -P ${call RBUILD_intermediate_path_noext,$(2)}_p.c $(2)
-
+	$${touch} $$@>$(NUL)
 ${call RBUILD_CC,$(1),${call RBUILD_intermediate_path_noext,$(2)}_p.c,,,${call RBUILD_intermediate_path_noext,$(2)}_p.o}
 
 endef




More information about the Ros-diffs mailing list