diff --git a/rtl/aix/Makefile b/rtl/aix/Makefile
index b5662d6d49..98b1d21747 100644
--- a/rtl/aix/Makefile
+++ b/rtl/aix/Makefile
@@ -2379,13 +2379,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2606,7 +2607,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2614,7 +2615,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/amiga/Makefile b/rtl/amiga/Makefile
index eea056f8bc..abf50ce12d 100644
--- a/rtl/amiga/Makefile
+++ b/rtl/amiga/Makefile
@@ -2411,13 +2411,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2638,7 +2639,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2646,7 +2647,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/android/Makefile b/rtl/android/Makefile
index 81b78fc3d7..7a3660338b 100644
--- a/rtl/android/Makefile
+++ b/rtl/android/Makefile
@@ -2518,13 +2518,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2745,7 +2746,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2753,7 +2754,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/aros/Makefile b/rtl/aros/Makefile
index d684545a4a..da516e42d1 100644
--- a/rtl/aros/Makefile
+++ b/rtl/aros/Makefile
@@ -2426,13 +2426,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2653,7 +2654,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2661,7 +2662,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/atari/Makefile b/rtl/atari/Makefile
index a3ebca1a90..ec6e9ab549 100644
--- a/rtl/atari/Makefile
+++ b/rtl/atari/Makefile
@@ -2381,13 +2381,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2608,7 +2609,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2616,7 +2617,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/beos/Makefile b/rtl/beos/Makefile
index 6c4fac7eb9..1fb6cac554 100644
--- a/rtl/beos/Makefile
+++ b/rtl/beos/Makefile
@@ -2387,13 +2387,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2614,7 +2615,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2622,7 +2623,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/darwin/Makefile b/rtl/darwin/Makefile
index 559e610c4a..e9e2581939 100644
--- a/rtl/darwin/Makefile
+++ b/rtl/darwin/Makefile
@@ -2507,13 +2507,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2734,7 +2735,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2742,7 +2743,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/dragonfly/Makefile b/rtl/dragonfly/Makefile
index 7c74794e11..363197d180 100644
--- a/rtl/dragonfly/Makefile
+++ b/rtl/dragonfly/Makefile
@@ -2388,13 +2388,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2615,7 +2616,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2623,7 +2624,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/embedded/Makefile b/rtl/embedded/Makefile
index 284987cb13..071f6012e3 100644
--- a/rtl/embedded/Makefile
+++ b/rtl/embedded/Makefile
@@ -2745,13 +2745,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2972,7 +2973,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2980,7 +2981,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/emx/Makefile b/rtl/emx/Makefile
index 0dbdba47d8..79f2c426da 100644
--- a/rtl/emx/Makefile
+++ b/rtl/emx/Makefile
@@ -2391,13 +2391,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2618,7 +2619,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2626,7 +2627,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/freebsd/Makefile b/rtl/freebsd/Makefile
index 3c70c285b1..1811ff728c 100644
--- a/rtl/freebsd/Makefile
+++ b/rtl/freebsd/Makefile
@@ -2429,13 +2429,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2656,7 +2657,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2664,7 +2665,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/freertos/Makefile b/rtl/freertos/Makefile
index 7761e892c6..05d365df93 100644
--- a/rtl/freertos/Makefile
+++ b/rtl/freertos/Makefile
@@ -2576,13 +2576,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2803,7 +2804,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2811,7 +2812,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/gba/Makefile b/rtl/gba/Makefile
index a5efb5d108..1431e49e02 100644
--- a/rtl/gba/Makefile
+++ b/rtl/gba/Makefile
@@ -2380,13 +2380,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2607,7 +2608,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2615,7 +2616,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/go32v2/Makefile b/rtl/go32v2/Makefile
index cd9ebb9dfa..c0dfd37cc3 100644
--- a/rtl/go32v2/Makefile
+++ b/rtl/go32v2/Makefile
@@ -2386,13 +2386,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2613,7 +2614,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2621,7 +2622,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/haiku/Makefile b/rtl/haiku/Makefile
index a056679062..201feb09b5 100644
--- a/rtl/haiku/Makefile
+++ b/rtl/haiku/Makefile
@@ -2420,13 +2420,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2647,7 +2648,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2655,7 +2656,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/java/Makefile b/rtl/java/Makefile
index 714c0c8467..743085e68a 100644
--- a/rtl/java/Makefile
+++ b/rtl/java/Makefile
@@ -2350,13 +2350,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2577,7 +2578,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2585,7 +2586,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/linux/Makefile b/rtl/linux/Makefile
index c4fa5c3470..61a4a9f05b 100644
--- a/rtl/linux/Makefile
+++ b/rtl/linux/Makefile
@@ -2980,13 +2980,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -3207,7 +3208,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -3215,7 +3216,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/macos/Makefile b/rtl/macos/Makefile
index 31ae93f275..4138bedf3a 100644
--- a/rtl/macos/Makefile
+++ b/rtl/macos/Makefile
@@ -2369,13 +2369,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2596,7 +2597,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2604,7 +2605,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/morphos/Makefile b/rtl/morphos/Makefile
index c0b2d9b52c..bd30422452 100644
--- a/rtl/morphos/Makefile
+++ b/rtl/morphos/Makefile
@@ -2353,13 +2353,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2580,7 +2581,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2588,7 +2589,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/msdos/Makefile b/rtl/msdos/Makefile
index ba6d7aa391..aec255265c 100644
--- a/rtl/msdos/Makefile
+++ b/rtl/msdos/Makefile
@@ -2380,13 +2380,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2607,7 +2608,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2615,7 +2616,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/msxdos/Makefile b/rtl/msxdos/Makefile
index abfcabb385..92a487a06b 100644
--- a/rtl/msxdos/Makefile
+++ b/rtl/msxdos/Makefile
@@ -2350,13 +2350,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2577,7 +2578,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2585,7 +2586,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/nativent/Makefile b/rtl/nativent/Makefile
index c4ae3e0f78..4d1ed8a2ef 100644
--- a/rtl/nativent/Makefile
+++ b/rtl/nativent/Makefile
@@ -2357,13 +2357,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2584,7 +2585,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2592,7 +2593,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/nds/Makefile b/rtl/nds/Makefile
index 5a269a9408..b6e51ebc03 100644
--- a/rtl/nds/Makefile
+++ b/rtl/nds/Makefile
@@ -2380,13 +2380,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2607,7 +2608,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2615,7 +2616,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/netbsd/Makefile b/rtl/netbsd/Makefile
index f4fbd3a40a..4e738998d0 100644
--- a/rtl/netbsd/Makefile
+++ b/rtl/netbsd/Makefile
@@ -2485,13 +2485,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2712,7 +2713,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2720,7 +2721,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/netware/Makefile b/rtl/netware/Makefile
index 684f1f038f..1df150521e 100644
--- a/rtl/netware/Makefile
+++ b/rtl/netware/Makefile
@@ -2392,13 +2392,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2619,7 +2620,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2627,7 +2628,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/netwlibc/Makefile b/rtl/netwlibc/Makefile
index 3a537d056b..78cfd0b141 100644
--- a/rtl/netwlibc/Makefile
+++ b/rtl/netwlibc/Makefile
@@ -2382,13 +2382,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2609,7 +2610,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2617,7 +2618,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/openbsd/Makefile b/rtl/openbsd/Makefile
index fb40aab9b6..ba76e4514a 100644
--- a/rtl/openbsd/Makefile
+++ b/rtl/openbsd/Makefile
@@ -2418,13 +2418,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2645,7 +2646,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2653,7 +2654,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/os2/Makefile b/rtl/os2/Makefile
index 64fb4f9df2..9ccd3b348a 100644
--- a/rtl/os2/Makefile
+++ b/rtl/os2/Makefile
@@ -2390,13 +2390,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2617,7 +2618,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2625,7 +2626,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/palmos/Makefile b/rtl/palmos/Makefile
index c3dcd5dd82..039bcaa11d 100644
--- a/rtl/palmos/Makefile
+++ b/rtl/palmos/Makefile
@@ -2393,13 +2393,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2620,7 +2621,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2628,7 +2629,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/sinclairql/Makefile b/rtl/sinclairql/Makefile
index 0822610596..39159c0df6 100644
--- a/rtl/sinclairql/Makefile
+++ b/rtl/sinclairql/Makefile
@@ -2381,13 +2381,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2608,7 +2609,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2616,7 +2617,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/solaris/Makefile b/rtl/solaris/Makefile
index 6146f4708d..f4f6ad2217 100644
--- a/rtl/solaris/Makefile
+++ b/rtl/solaris/Makefile
@@ -2394,13 +2394,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2621,7 +2622,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2629,7 +2630,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/symbian/Makefile b/rtl/symbian/Makefile
index 036903b2c1..4d39d132e0 100644
--- a/rtl/symbian/Makefile
+++ b/rtl/symbian/Makefile
@@ -2371,13 +2371,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2598,7 +2599,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2606,7 +2607,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/wasi/Makefile b/rtl/wasi/Makefile
index 8f11eca173..24813828da 100644
--- a/rtl/wasi/Makefile
+++ b/rtl/wasi/Makefile
@@ -2355,13 +2355,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2582,7 +2583,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2590,7 +2591,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/watcom/Makefile b/rtl/watcom/Makefile
index ce39d93389..16981711d4 100644
--- a/rtl/watcom/Makefile
+++ b/rtl/watcom/Makefile
@@ -2387,13 +2387,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2614,7 +2615,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2622,7 +2623,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/wii/Makefile b/rtl/wii/Makefile
index 02d893184f..b36090e05f 100644
--- a/rtl/wii/Makefile
+++ b/rtl/wii/Makefile
@@ -2349,13 +2349,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2576,7 +2577,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2584,7 +2585,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/win16/Makefile b/rtl/win16/Makefile
index 9674195f9d..0093487f37 100644
--- a/rtl/win16/Makefile
+++ b/rtl/win16/Makefile
@@ -2380,13 +2380,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2607,7 +2608,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2615,7 +2616,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/win32/Makefile b/rtl/win32/Makefile
index 27bc7ce542..589e4a7e1f 100644
--- a/rtl/win32/Makefile
+++ b/rtl/win32/Makefile
@@ -2392,13 +2392,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2619,7 +2620,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2627,7 +2628,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/win64/Makefile b/rtl/win64/Makefile
index 343b47a1e3..7ae6f36049 100644
--- a/rtl/win64/Makefile
+++ b/rtl/win64/Makefile
@@ -2409,13 +2409,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2636,7 +2637,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2644,7 +2645,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/wince/Makefile b/rtl/wince/Makefile
index 18b9747822..ce1dacf920 100644
--- a/rtl/wince/Makefile
+++ b/rtl/wince/Makefile
@@ -2372,13 +2372,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2599,7 +2600,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2607,7 +2608,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
diff --git a/rtl/zxspectrum/Makefile b/rtl/zxspectrum/Makefile
index d23b87a81c..6b05d4a3de 100644
--- a/rtl/zxspectrum/Makefile
+++ b/rtl/zxspectrum/Makefile
@@ -2347,13 +2347,14 @@ SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(
 		   $(SYSCALLUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
 		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
 SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/$(SYSUTILSUNIT)/*.inc) \
-	      objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
 	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
 sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
 	$(COMPILER) -Fi$(OBJPASDIR)/$(SYSUTILSUNIT) $<
 System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
 	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils $<
 CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(wildcard $(OBJPASDIR)/$(CLASSESUNIT)/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) \
 	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
 	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
 	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
@@ -2574,7 +2575,7 @@ errors$(PPUEXT) : $(ERRORS_DEPS)
 UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
 	$(COMPILER) $(ERRORS_OPT) $<
 CTHREADS_DEPS=$(UNIXINC)/cthreads.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
 	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
 	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
 cthreads$(PPUEXT) : $(CTHREADS_DEPS)
@@ -2582,7 +2583,7 @@ cthreads$(PPUEXT) : $(CTHREADS_DEPS)
 UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
 	$(COMPILER) $(CTHREADS_OPT) $<
 CWSTRING_DEPS=$(UNIXINC)/cwstring.pp \
-	      $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
 	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
 	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
 	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU)