Browse Source

Remove OS spefic rules for system unit.

  Use SYSDEPS variable to add specific dependencies.
  Override FPC_SYTEM_OPT to add OS specific options.
  Use SYSTEMUNIT variable.
Pierre Muller 1 year ago
parent
commit
70d25e3b60

+ 0 - 8
rtl/aix/Makefile.fpc

@@ -106,11 +106,3 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 
 
-
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(SYSTEMUNIT).pp
-

+ 1 - 1
rtl/amiga/Makefile.fpc

@@ -91,7 +91,7 @@ endif
 # Base Units (System, strings, os-dependent-base-unit)
 # Base Units (System, strings, os-dependent-base-unit)
 #
 #
 
 
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) $(BUILDRTL_OPT) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) $(BUILDRTL_OPT) buildrtl
 
 
 $(RESUNIT)$(PPUEXT) : $(INC)/$(RESUNIT).pp $(SYSTEMUNIT)$(PPUEXT)
 $(RESUNIT)$(PPUEXT) : $(INC)/$(RESUNIT).pp $(SYSTEMUNIT)$(PPUEXT)

+ 1 - 6
rtl/android/Makefile.fpc

@@ -59,6 +59,7 @@ TERMIODIR=$(LINUXINC)
 PTHREADINCDIR=$(LINUXINC)
 PTHREADINCDIR=$(LINUXINC)
 PTYPESINCDIR=$(LINUXINC)
 PTYPESINCDIR=$(LINUXINC)
 
 
+SYSTEMDIR = $(LINUXINC)
 SYSCALL_DEPS_OS=$(LINUXINC)/$(ARCH)/syscallh.inc $(LINUXINC)/$(ARCH)/sysnr.inc
 SYSCALL_DEPS_OS=$(LINUXINC)/$(ARCH)/syscallh.inc $(LINUXINC)/$(ARCH)/sysnr.inc
 SYSUTILS_DEPS_OS=$(DLUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT)
 SYSUTILS_DEPS_OS=$(DLUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT)
 SYSUTILSDIR=$(UNIXINC)
 SYSUTILSDIR=$(UNIXINC)
@@ -134,10 +135,4 @@ prt0$(OEXT) : prt0.as
 dllprt0$(OEXT) : dllprt0.as
 dllprt0$(OEXT) : dllprt0.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) --defsym CPU$(CPUBITS)=1 dllprt0.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) --defsym CPU$(CPUBITS)=1 dllprt0.as
 
 
-#
-# $(SYSTEMUNIT) Units ($(SYSTEMUNIT), Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(LINUXINC)/$(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(LINUXINC)/$(SYSTEMUNIT).pp
 
 

+ 1 - 1
rtl/aros/Makefile.fpc

@@ -87,6 +87,6 @@ prt0$(OEXT) : $(CPU_TARGET)/prt0.as
 #
 #
 
 
 
 
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 

+ 1 - 1
rtl/atari/Makefile.fpc

@@ -65,6 +65,6 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 # Base Units (System, strings, os-dependent-base-unit)
 # Base Units (System, strings, os-dependent-base-unit)
 #
 #
 
 
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 

+ 1 - 1
rtl/beos/Makefile.fpc

@@ -7,7 +7,7 @@ main=rtl
 
 
 [target]
 [target]
 loaders=prt0 cprt0 func dllprt
 loaders=prt0 cprt0 func dllprt
-units=system $(UUCHARUNIT) $(BASEUNIXUNIT) $(UNIXTYPEUNIT) $(CTYPESUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(STRINGSUNIT) \
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(BASEUNIXUNIT) $(UNIXTYPEUNIT) $(CTYPESUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(STRINGSUNIT) \
       $(ERRORSUNIT) $(DOSUNIT) $(DLUNIT) $(CTHREADSUNIIT) \ 
       $(ERRORSUNIT) $(DOSUNIT) $(DLUNIT) $(CTHREADSUNIIT) \ 
       $(SYSCONSTUNIT) $(SYSUTILSUNIT) \
       $(SYSCONSTUNIT) $(SYSUTILSUNIT) \
       $(TYPESUNIT) $(CHARSETUNIT) $(CPALLUNIT) $(TYPINFOUNIT)  $(SORTBASEUNIT) $(CLASSESUNIT) $(FGLUNIT) $(MATHUNIT) \
       $(TYPESUNIT) $(CHARSETUNIT) $(CPALLUNIT) $(TYPINFOUNIT)  $(SORTBASEUNIT) $(CLASSESUNIT) $(FGLUNIT) $(MATHUNIT) \

+ 2 - 9
rtl/dragonfly/Makefile.fpc

@@ -97,8 +97,8 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
-
+SYSDEPS = unxconst.inc $(SYSINCDEPS) $(SYSCPUDEPS)
+SYSTEMDIR = $(BSDINC)
 
 
 #
 #
 # Loaders
 # Loaders
@@ -116,10 +116,3 @@ gprt0$(OEXT) : $(CPU_TARGET)/gprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
         $(AS) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
         $(AS) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp unxconst.inc $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
-

+ 1 - 1
rtl/embedded/Makefile.fpc

@@ -285,7 +285,7 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/softfpu.pp
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/softfpu.pp
[email protected]
+override FPC_SYSTEM_OPT += @system.cfg
 
 
 #
 #
 # Loaders
 # Loaders

+ 2 - 12
rtl/freebsd/Makefile.fpc

@@ -103,8 +103,8 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
-
+SYSDEPS = unxconst.inc $(SYSINCDEPS) $(SYSCPUDEPS)
+SYSTEMDIR = $(BSDINC)
 
 
 #
 #
 # Loaders
 # Loaders
@@ -122,13 +122,6 @@ gprt0$(OEXT) : $(CPU_TARGET)/gprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp unxconst.inc $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
-
 #
 #
 # freebsd unit
 # freebsd unit
 #
 #
@@ -138,7 +131,6 @@ else
   FREEBSD_DEPS_OS+=$(INITCUNIT)$(PPUEXT)
   FREEBSD_DEPS_OS+=$(INITCUNIT)$(PPUEXT)
 endif
 endif
 
 
-
 FREEBSD_DEPS = freebsd.pas $(SYSTEMUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(SYSCTLUNIT)$(PPUEXT) \
 FREEBSD_DEPS = freebsd.pas $(SYSTEMUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) $(SYSCTLUNIT)$(PPUEXT) \
          $(FREEBSD_DEPS_OS) $(FREEBSD_DEPS_CPU)
          $(FREEBSD_DEPS_OS) $(FREEBSD_DEPS_CPU)
 
 
@@ -148,5 +140,3 @@ freebsd$(PPUEXT): $(FREEBSD_DEPS)
 FreeBSDApi.FreeBSD$(PPUEXT): $(NSFREEBSDDIR)/FreeBSDApi.FreeBSD.pas $(FREEBSD_DEPS)
 FreeBSDApi.FreeBSD$(PPUEXT): $(NSFREEBSDDIR)/FreeBSDApi.FreeBSD.pas $(FREEBSD_DEPS)
         $(COMPILER) $(FREEBSD_OPT) $<
         $(COMPILER) $(FREEBSD_OPT) $<
 
 
-
-

+ 2 - 4
rtl/freertos/Makefile.fpc

@@ -256,7 +256,8 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
+SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/softfpu.pp
+override FPC_SYSTEM_OPT += @system.cfg
 
 
 #
 #
 # Loaders
 # Loaders
@@ -269,9 +270,6 @@ startup$(OEXT) : $(CPU_TARGET)/startup.s
 # Base Units (System, $(STRINGSUNIT), os-dependent-base-unit)
 # Base Units (System, $(STRINGSUNIT), os-dependent-base-unit)
 #
 #
 
 
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS) $(INC)/softfpu.pp
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(SYSTEMUNIT).pp @system.cfg $(REDIR)
-
 consoleio$(PPUEXT) : consoleio.pp $(SYSTEMUNIT)$(PPUEXT)
 consoleio$(PPUEXT) : consoleio.pp $(SYSTEMUNIT)$(PPUEXT)
 	$(COMPILER) $<
 	$(COMPILER) $<
 
 

+ 0 - 6
rtl/go32v2/Makefile.fpc

@@ -80,12 +80,6 @@ exceptn$(OEXT) : exceptn.as
 
 
 fpu$(OEXT) : fpu.as
 fpu$(OEXT) : fpu.as
 	$(AS) -o $(UNITTARGETDIRPREFIX)fpu$(OEXT) $<
 	$(AS) -o $(UNITTARGETDIRPREFIX)fpu$(OEXT) $<
-#
-# System Units (System, Objpas, Strings)
-#
-system$(PPUEXT) : system.pp $(SYSDEPS)
-	$(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-	$(EXECPPAS)
 
 
 #
 #
 # System Dependent Units
 # System Dependent Units

+ 1 - 1
rtl/java/Makefile.fpc

@@ -44,7 +44,7 @@ endif
 
 
 # Paths
 # Paths
 
 
[email protected]
+override FPC_SYSTEM_OPT += @rtl.cfg
 
 
 [rules]
 [rules]
 .NOTPARALLEL:
 .NOTPARALLEL:

+ 1 - 4
rtl/morphos/Makefile.fpc

@@ -76,9 +76,6 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 # Base Units (System, strings, os-dependent-base-unit)
 # Base Units (System, strings, os-dependent-base-unit)
 #
 #
 
 
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(SYSTEMUNIT).pp $(REDIR)
-
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(HEAPTRCUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 

+ 4 - 10
rtl/msxdos/Makefile.fpc

@@ -5,7 +5,7 @@
 main=rtl
 main=rtl
 [target]
 [target]
 #loaders=prt0s prt0t prt0m prt0c prt0l prt0h # exceptn fpu
 #loaders=prt0s prt0t prt0m prt0c prt0l prt0h # exceptn fpu
-units=system si_prc $(UUCHARUNIT) $(OBJPASUNIT) $(ISO7185UNIT) $(STRINGSUNIT) $(CHARSETUNIT) $(CPALLUNIT) \
+units=$(SYSTEMUNIT) si_prc $(UUCHARUNIT) $(OBJPASUNIT) $(ISO7185UNIT) $(STRINGSUNIT) $(CHARSETUNIT) $(CPALLUNIT) \
       $(GETOPTSUNIT) $(EXEINFOUNIT) $(HEAPTRCUNIT)
       $(GETOPTSUNIT) $(EXEINFOUNIT) $(HEAPTRCUNIT)
 #$(UUCHARUNIT) $(OBJPASUNIT) $(STRINGSUNIT) $(DOSUNIT) $(HEAPTRCUNIT) $(LNFODWRFUNIT) $(SYSCONSTUNIT) $(SYSUTILSUNIT) \
 #$(UUCHARUNIT) $(OBJPASUNIT) $(STRINGSUNIT) $(DOSUNIT) $(HEAPTRCUNIT) $(LNFODWRFUNIT) $(SYSCONSTUNIT) $(SYSUTILSUNIT) \
 #      $(MATHUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(RTLCONSTSUNIT) $(TYPINFOUNIT) $(CPUUNIT) $(TYPESUNIT) \
 #      $(MATHUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(RTLCONSTSUNIT) $(TYPINFOUNIT) $(CPUUNIT) $(TYPESUNIT) \
@@ -62,7 +62,8 @@ SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
 include $(PROCINC)/makefile.cpu
 include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
+SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/tnyheaph.inc $(INC)/tinyheap.inc registers.inc
+
 #
 #
 # Loaders
 # Loaders
 #
 #
@@ -70,16 +71,9 @@ ifneq ($(findstring -dTEST_I8086_SMARTLINK_SECTIONS,$(FPCOPT)),)
 override NASM_OPT+=-D__I8086_SMARTLINK_SECTIONS__
 override NASM_OPT+=-D__I8086_SMARTLINK_SECTIONS__
 endif
 endif
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-system$(PPUEXT) : system.pp $(SYSDEPS) $(INC)/tnyheaph.inc $(INC)/tinyheap.inc registers.inc
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-	$(EXECPPAS)
-
 #
 #
 # Other system-dependent RTL Units
 # Other system-dependent RTL Units
 #
 #
 
 
-si_prc$(PPUEXT) : system$(PPUEXT)
+si_prc$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) si_prc.pp
         $(COMPILER) si_prc.pp

+ 3 - 6
rtl/nativent/Makefile.fpc

@@ -7,8 +7,8 @@ main=rtl
 
 
 [target]
 [target]
 loaders=
 loaders=
-#units=system $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) buildrtl $(LINEINFOUNIT) $(LNFODWRFUNIT)
-units=system $(UUCHARUNIT) $(OBJPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(CPALLUNIT) buildrtl
+#units=$(SYSTEMUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) buildrtl $(LINEINFOUNIT) $(LNFODWRFUNIT)
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(OBJPASUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(CPALLUNIT) buildrtl
 implicitunits=ndk ndkutils ddk \
 implicitunits=ndk ndkutils ddk \
       $(CTYPESUNIT) $(STRINGSUNIT) \
       $(CTYPESUNIT) $(STRINGSUNIT) \
 #      $(HEAPTRCUNIT)
 #      $(HEAPTRCUNIT)
@@ -104,9 +104,6 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 # Unit specific rules
 # Unit specific rules
 #
 #
 
 
-system$(PPUEXT) : system.pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -Fi$(DDKINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -Fi$(DDKINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 

+ 1 - 8
rtl/nds/Makefile.fpc

@@ -64,7 +64,7 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/softfpu.pp
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) $(INC)/softfpu.pp
-
+override FPC_SYSTEM_OPT += @rtl.cfg
 
 
 #
 #
 # Loaders
 # Loaders
@@ -82,10 +82,3 @@ cprt07$(OEXT) : cprt07.as
 cprt09$(OEXT) : cprt09.as
 cprt09$(OEXT) : cprt09.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)cprt09$(OEXT) cprt09.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)cprt09$(OEXT) cprt09.as
 
 
-#
-# Base Units (System, strings, os-dependent-base-unit)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS) $(INC)/softfpu.pp
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg @rtl.cfg $(SYSTEMUNIT).pp $(REDIR)
-

+ 2 - 9
rtl/netbsd/Makefile.fpc

@@ -100,8 +100,8 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
-
+SYSDEPS = sysconst.inc systypes.inc syscalls.inc $(SYSINCDEPS) $(SYSCPUDEPS)
+SYSTEMDIR = $(BSDINC)
 
 
 #
 #
 # Loaders
 # Loaders
@@ -116,10 +116,3 @@ cprt0$(OEXT) : $(CPU_TARGET)/cprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
 dllprt0$(OEXT) : $(CPU_TARGET)/dllprt0.as
         $(AS) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
         $(AS) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(CPU_TARGET)/dllprt0.as
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp sysconst.inc systypes.inc syscalls.inc $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
-

+ 2 - 10
rtl/netwlibc/Makefile.fpc

@@ -83,7 +83,7 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
+SYSDEPS = libc.pp $(SYSINCDEPS) $(SYSCPUDEPS)
 
 
 copyimpfiles:
 copyimpfiles:
 	$(COPY) $(IMPFILES) $(COMPILER_UNITTARGETDIR)
 	$(COPY) $(IMPFILES) $(COMPILER_UNITTARGETDIR)
@@ -100,7 +100,7 @@ copyimpfiles:
 
 
 # for now use the gcc pre
 # for now use the gcc pre
 nwplibc$(OEXT) :
 nwplibc$(OEXT) :
-        cp pre/libcpre.gcc.o $(UNITTARGETDIRPREFIX)nwplibc$(OEXT)
+	cp pre/libcpre.gcc.o $(UNITTARGETDIRPREFIX)nwplibc$(OEXT)
 
 
 nwl_main$(OEXT) : nwl_main.as
 nwl_main$(OEXT) : nwl_main.as
         $(AS) -o $(UNITTARGETDIRPREFIX)nwl_main$(OEXT) nwl_main.as
         $(AS) -o $(UNITTARGETDIRPREFIX)nwl_main$(OEXT) nwl_main.as
@@ -108,14 +108,6 @@ nwl_main$(OEXT) : nwl_main.as
 nwl_dlle$(OEXT) : nwl_dlle.as
 nwl_dlle$(OEXT) : nwl_dlle.as
         $(AS) -o $(UNITTARGETDIRPREFIX)nwl_dlle$(OEXT) nwl_dlle.as
         $(AS) -o $(UNITTARGETDIRPREFIX)nwl_dlle$(OEXT) nwl_dlle.as
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp libc.pp $(SYSDEPS)
-	$(COPY) $(IMPFILES) $(COMPILER_UNITTARGETDIR)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(SYSTEMUNIT).pp
-
 #
 #
 # System Dependent Units
 # System Dependent Units
 #
 #

+ 2 - 9
rtl/openbsd/Makefile.fpc

@@ -108,8 +108,8 @@ include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
-
+SYSDEPS= sysconst.inc systypes.inc syscalls.inc $(SYSINCDEPS) $(SYSCPUDEPS)
+SYSTEMDIR = $(BSDINC)
 
 
 #
 #
 # Loaders
 # Loaders
@@ -135,10 +135,3 @@ si_g$(PPUEXT) : si_g.pp si_intf.inc si_impl.inc $(ARCH)/openbsd_ident.inc $(ARCH
 	$(COMPILER) $<
 	$(COMPILER) $<
 
 
 
 
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp sysconst.inc systypes.inc syscalls.inc $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
-

+ 1 - 4
rtl/palmos/Makefile.fpc

@@ -75,7 +75,7 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
-
+override FPC_SYSTEM_OPT += @rtl.cfg
 
 
 #
 #
 # Loaders
 # Loaders
@@ -89,9 +89,6 @@ $(PRT0)$(OEXT) : $(CPU_TARGET)/$(PRT0).as
 # System Units (System, Objpas, Strings)
 # System Units (System, Objpas, Strings)
 #
 #
 
 
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg @rtl.cfg $(SYSTEMUNIT).pp
-
 si_prc$(PPUEXT): si_prc.pp palmos.inc $(SYSTEMUNIT)$(PPUEXT)
 si_prc$(PPUEXT): si_prc.pp palmos.inc $(SYSTEMUNIT)$(PPUEXT)
 
 
 #
 #

+ 2 - 9
rtl/qnx/Makefile.fpc

@@ -7,7 +7,7 @@ main=rtl
 
 
 [target]
 [target]
 loaders=cprt0 crti crtn
 loaders=cprt0 crti crtn
-units=system $(UUCHARUNIT) $(DOSUNIT) $(OBJPASUNIT) $(STRINGSUNIT) \
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(DOSUNIT) $(OBJPASUNIT) $(STRINGSUNIT) \
       $(SYSUTILSUNIT) $(TYPINFOUNIT) $(MATHUNIT) \
       $(SYSUTILSUNIT) $(TYPINFOUNIT) $(MATHUNIT) \
       $(CPUUNIT) $(MMXUNIT) $(GETOPTSUNIT) $(HEAPTRCUNIT) $(LINEINFOUNIT) posix
       $(CPUUNIT) $(MMXUNIT) $(GETOPTSUNIT) $(HEAPTRCUNIT) $(LINEINFOUNIT) posix
 rsts=$(MATHUNIT) $(TYPINFOUNIT)
 rsts=$(MATHUNIT) $(TYPINFOUNIT)
@@ -78,16 +78,9 @@ func$(OEXT) : $(CPU_TARGET)/func.as
 dllprt$(OEXT) : $(CPU_TARGET)/dllprt.as
 dllprt$(OEXT) : $(CPU_TARGET)/dllprt.as
         $(AS) -o dllprt$(OEXT) $(CPU_TARGET)/dllprt.as
         $(AS) -o dllprt$(OEXT) $(CPU_TARGET)/dllprt.as
 
 
-#
-# system Units (system, Objpas, Strings)
-#
-
-system$(PPUEXT) : system.pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-
 #
 #
 # Other system-dependent RTL Units
 # Other system-dependent RTL Units
 #
 #
 
 
 posix$(PPUEXT) : posix.pp \
 posix$(PPUEXT) : posix.pp \
-		 errno.inc osposix.inc osposixh.inc signal.inc system$(PPUEXT)
+		 errno.inc osposix.inc osposixh.inc signal.inc $(SYSTEMUNIT)$(PPUEXT)

+ 2 - 5
rtl/sinclairql/Makefile.fpc

@@ -59,16 +59,13 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 
 
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) qdos.inc qdosh.inc qdosfuncs.inc sms.inc
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) qdos.inc qdosh.inc qdosfuncs.inc sms.inc
-
+override FPC_SYSTEM_OPT += @rtl.cfg
 
 
 #
 #
 # Base Units (System, strings, os-dependent-base-unit)
 # Base Units (System, strings, os-dependent-base-unit)
 #
 #
 
 
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg @rtl.cfg $(SYSTEMUNIT).pp $(REDIR)
-
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(CPU_TARGET) -Fu$(PROCINC) -Fu$(AMIINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 
 #fpextres$(PPUEXT) : $(INC)/fpextres.pp $(SYSTEMUNIT)$(PPUEXT)
 #fpextres$(PPUEXT) : $(INC)/fpextres.pp $(SYSTEMUNIT)$(PPUEXT)

+ 0 - 8
rtl/solaris/Makefile.fpc

@@ -102,11 +102,3 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 # Put system unit dependencies together.
 # Put system unit dependencies together.
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 
 
-
-#
-# System Units (System, Objpas, Strings)
-#
-
-$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $(SYSTEMUNIT).pp
-

+ 1 - 1
rtl/symbian/Makefile.fpc

@@ -82,6 +82,6 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 # System Units (System, Objpas, Strings)
 # System Units (System, Objpas, Strings)
 #
 #
 
 
-buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) # $(MACPASUNIT)$(PPUEXT)
+buildrtl$(PPUEXT): buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) # $(MACPASUNIT)$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -I$(INC) -I$(SYMBIANINC) -I$(UIQINC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -I$(INC) -I$(SYMBIANINC) -I$(UIQINC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
 

+ 1 - 1
rtl/wasi/Makefile.fpc

@@ -48,7 +48,7 @@ ifdef NO_EXCEPTIONS_IN_SYSTEM
 override FPCOPT+=-dNO_EXCEPTIONS_IN_SYSTEM
 override FPCOPT+=-dNO_EXCEPTIONS_IN_SYSTEM
 endif
 endif
 
 
-FPC_SYSTEM_OPT=-Fiwasiinc
+override FPC_SYSTEM_OPT += -Fiwasiinc
 
 
 DOS_DEPS_OS=$(WASIAPIUNIT)$(PPUEXT) $(WASIUTILUNIT)$(PPUEXT)
 DOS_DEPS_OS=$(WASIAPIUNIT)$(PPUEXT) $(WASIUTILUNIT)$(PPUEXT)
 
 

+ 1 - 1
rtl/wii/Makefile.fpc

@@ -38,7 +38,7 @@ COMMON=$(RTL)/common
 PROCINC=$(RTL)/$(CPU_TARGET)
 PROCINC=$(RTL)/$(CPU_TARGET)
 UNITPREFIX=rtl
 UNITPREFIX=rtl
 SYSTEMUNIT=system
 SYSTEMUNIT=system
-override [email protected]
+override FPC_SYSTEM_OPT += @rtl.cfg
 
 
 ifdef RELEASE
 ifdef RELEASE
 override FPCOPT+=-Ur
 override FPCOPT+=-Ur

+ 5 - 10
rtl/win16/Makefile.fpc

@@ -5,7 +5,7 @@
 main=rtl
 main=rtl
 [target]
 [target]
 loaders=prt0s prt0m prt0c prt0l prt0h 
 loaders=prt0s prt0m prt0c prt0l prt0h 
-units=system $(UUCHARUNIT) $(OBJPASUNIT) $(STRINGSUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(DOSUNIT) \
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(OBJPASUNIT) $(STRINGSUNIT) $(ISO7185UNIT) $(EXTPASUNIT) $(DOSUNIT) \
       $(WINTYPESUNIT) $(WINPROCSUNIT) $(WIN31UNIT) $(PORTSUNIT) $(DYNLIBSUNIT) $(SORTBASEUNIT) \
       $(WINTYPESUNIT) $(WINPROCSUNIT) $(WIN31UNIT) $(PORTSUNIT) $(DYNLIBSUNIT) $(SORTBASEUNIT) \
       $(SYSCONSTUNIT) $(RTLCONSTSUNIT) $(SYSUTILSUNIT) $(MATHUNIT) $(TYPESUNIT) $(TYPINFOUNIT) $(FGLUNIT) \
       $(SYSCONSTUNIT) $(RTLCONSTSUNIT) $(SYSUTILSUNIT) $(MATHUNIT) $(TYPESUNIT) $(TYPINFOUNIT) $(FGLUNIT) \
       $(CLASSESUNIT) $(CHARSETUNIT) $(CPUUNIT) $(GETOPTSUNIT) $(CPALLUNIT) \
       $(CLASSESUNIT) $(CHARSETUNIT) $(CPUUNIT) $(GETOPTSUNIT) $(CPALLUNIT) \
@@ -57,7 +57,10 @@ SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
 include $(PROCINC)/makefile.cpu
 include $(PROCINC)/makefile.cpu
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 # Put system unit dependencies together.
 # Put system unit dependencies together.
-SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
+SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) wintypes.inc winprocsh.inc winprocs.inc \
+                  glbheap.inc glbheaph.inc locheap.inc locheaph.inc \
+                  sysdl.inc sysdlh.inc
+
 #
 #
 # Loaders
 # Loaders
 #
 #
@@ -76,12 +79,4 @@ prt0l$(OEXT) : prt0l.asm prt0comn.asm
 prt0h$(OEXT) : prt0h.asm prt0comn.asm
 prt0h$(OEXT) : prt0h.asm prt0comn.asm
 	$(MAKE) $(COMPILER_UNITTARGETDIR)
 	$(MAKE) $(COMPILER_UNITTARGETDIR)
         $(NASM) -f obj -o $(UNITTARGETDIRPREFIX)prt0h$(OEXT) prt0h.asm
         $(NASM) -f obj -o $(UNITTARGETDIRPREFIX)prt0h$(OEXT) prt0h.asm
-#
-# System Units (System, Objpas, Strings)
-#
-system$(PPUEXT) : system.pp $(SYSDEPS) wintypes.inc winprocsh.inc winprocs.inc \
-                  glbheap.inc glbheaph.inc locheap.inc locheaph.inc \
-                  sysdl.inc sysdlh.inc
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-	$(EXECPPAS)
 
 

+ 3 - 4
rtl/win32/Makefile.fpc

@@ -7,7 +7,7 @@ main=rtl
 
 
 [target]
 [target]
 loaders=$(LOADERS)
 loaders=$(LOADERS)
-units=system $(UUCHARUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(WINDOWSUNIT) $(SYSUTILSUNIT) buildrtl $(CHARSETUNIT) $(CPALLUNIT) $(LINEINFOUNIT) $(LNFODWRFUNIT)
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(WINDOWSUNIT) $(SYSUTILSUNIT) buildrtl $(CHARSETUNIT) $(CPALLUNIT) $(LINEINFOUNIT) $(LNFODWRFUNIT)
 implicitunits=sysinitpas sysinitcyg sysinitgprof $(INITCUNIT) $(EXTPASUNIT) $(HEAPTRCUNIT) \
 implicitunits=sysinitpas sysinitcyg sysinitgprof $(INITCUNIT) $(EXTPASUNIT) $(HEAPTRCUNIT) \
       $(WINSYSUTUNIT) $(CTYPESUNIT) $(STRINGSUNIT) \
       $(WINSYSUTUNIT) $(CTYPESUNIT) $(STRINGSUNIT) \
       $(DOSUNIT) $(MESSAGESUNIT) \
       $(DOSUNIT) $(MESSAGESUNIT) \
@@ -46,7 +46,6 @@ COMMON=$(RTL)/common
 PROCINC=$(RTL)/$(CPU_TARGET)
 PROCINC=$(RTL)/$(CPU_TARGET)
 WININC=../win/wininc
 WININC=../win/wininc
 WINDIR=../win
 WINDIR=../win
-OSDIR=win32
 NSOSDIR=$(NSDIR)/windows
 NSOSDIR=$(NSDIR)/windows
 
 
 UNITPREFIX=rtl
 UNITPREFIX=rtl
@@ -55,7 +54,7 @@ DLLS=fpcmemdll
 CPU_UNITS=$(CPUUNIT) $(SIGNALSUNIT) $(MMXUNIT)
 CPU_UNITS=$(CPUUNIT) $(SIGNALSUNIT) $(MMXUNIT)
 # Paths
 # Paths
 OBJPASDIR=$(RTL)/objpas
 OBJPASDIR=$(RTL)/objpas
-FPC_SYSTEM_OPT=-Fu$(WINDIR)
+override FPC_SYSTEM_OPT += -Fu$(WINDIR)
 SYSUTILSDIR=$(WINDIR)
 SYSUTILSDIR=$(WINDIR)
 SYSUTILS_OPT=-Fi$(WINDIR)
 SYSUTILS_OPT=-Fi$(WINDIR)
 SYSUTILS_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT) $(WINDIRSUNIT)$(PPUEXT)
 SYSUTILS_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT) $(WINDIRSUNIT)$(PPUEXT)
@@ -106,7 +105,7 @@ endif
 # Unit specific rules
 # Unit specific rules
 #
 #
 
 
-BUILDRTL_DEPS=buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINDOWSUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
+BUILDRTL_DEPS=buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINDOWSUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
               $(BUILDRTL_DEPS_OS) $(BUILDRTL_DEPS_CPU)
               $(BUILDRTL_DEPS_OS) $(BUILDRTL_DEPS_CPU)
 
 
 buildrtl$(PPUEXT) : $(BUILDRTL_DEPS)
 buildrtl$(PPUEXT) : $(BUILDRTL_DEPS)

+ 3 - 4
rtl/win64/Makefile.fpc

@@ -7,7 +7,7 @@ main=rtl
 
 
 [target]
 [target]
 loaders=$(LOADERS)
 loaders=$(LOADERS)
-units=system $(UUCHARUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(WINDOWSUNIT) $(SYSUTILSUNIT) buildrtl $(CHARSETUNIT) $(CPALLUNIT) $(LINEINFOUNIT) $(LNFODWRFUNIT)
+units=$(SYSTEMUNIT) $(UUCHARUNIT) $(OBJPASUNIT) $(MACPASUNIT) $(ISO7185UNIT) $(WINDOWSUNIT) $(SYSUTILSUNIT) buildrtl $(CHARSETUNIT) $(CPALLUNIT) $(LINEINFOUNIT) $(LNFODWRFUNIT)
 implicitunits=sysinit $(EXTPASUNIT) $(HEAPTRCUNIT) $(FPINTRESUNIT) \
 implicitunits=sysinit $(EXTPASUNIT) $(HEAPTRCUNIT) $(FPINTRESUNIT) \
       $(CTYPESUNIT) $(STRINGSUNIT) \
       $(CTYPESUNIT) $(STRINGSUNIT) \
       $(DOSUNIT) $(MESSAGESUNIT) \
       $(DOSUNIT) $(MESSAGESUNIT) \
@@ -48,7 +48,6 @@ COMMON=$(RTL)/common
 PROCINC=$(RTL)/$(CPU_TARGET)
 PROCINC=$(RTL)/$(CPU_TARGET)
 WININC=../win/wininc
 WININC=../win/wininc
 WINDIR=../win
 WINDIR=../win
-OSDIR=win64
 NSOSDIR=$(NSDIR)/windows
 NSOSDIR=$(NSDIR)/windows
 SYSUTILSDIR=$(WINDIR)
 SYSUTILSDIR=$(WINDIR)
 SYSUTILS_OPT=-Fi../win
 SYSUTILS_OPT=-Fi../win
@@ -83,7 +82,7 @@ OBJPASDIR=$(RTL)/objpas
 #include $(WININC)/makefile.inc
 #include $(WININC)/makefile.inc
 
 
 WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
 WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
-FPC_SYSTEM_OPT=-Fi../win
+override FPC_SYSTEM_OPT += -Fi../win
 EXEINFO_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
 EXEINFO_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
 FPWIDESTRING_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
 FPWIDESTRING_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
 TYPES_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
 TYPES_DEPS_OS=$(WINDOWSUNIT)$(PPUEXT)
@@ -120,7 +119,7 @@ endif
 # Unit specific rules
 # Unit specific rules
 #
 #
 
 
-BUILDRTL_DEPS=buildrtl.pp system$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINDOWSUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
+BUILDRTL_DEPS=buildrtl.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINDOWSUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
               $(BUILDRTL_DEPS_OS) $(BUILDRTL_DEPS_CPU)
               $(BUILDRTL_DEPS_OS) $(BUILDRTL_DEPS_CPU)
 
 
 buildrtl$(PPUEXT) : $(BUILDRTL_DEPS)
 buildrtl$(PPUEXT) : $(BUILDRTL_DEPS)

+ 2 - 2
rtl/wince/Makefile.fpc

@@ -106,9 +106,9 @@ SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS) winres.inc
 
 
 WINMESSAGESDIR=$(OSDIR)
 WINMESSAGESDIR=$(OSDIR)
 
 
-sharemem$(PPUEXT) : $(WINDIR)/sharemem.pp system$(PPUEXT)
+sharemem$(PPUEXT) : $(WINDIR)/sharemem.pp $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) $(WINDIR)/sharemem.pp
         $(COMPILER) $(WINDIR)/sharemem.pp
 
 
-fpcmemdll.dll : $(WINDIR)/fpcmemdll.pp system$(PPUEXT)
+fpcmemdll.dll : $(WINDIR)/fpcmemdll.pp $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) $(WINDIR)/fpcmemdll.pp
         $(COMPILER) $(WINDIR)/fpcmemdll.pp
 
 

+ 3 - 6
rtl/zxspectrum/Makefile.fpc

@@ -5,7 +5,7 @@
 main=rtl
 main=rtl
 [target]
 [target]
 loaders=
 loaders=
-units=system si_prc
+units=$(SYSTEMUNIT) si_prc
 
 
 [require]
 [require]
 nortl=y
 nortl=y
@@ -50,11 +50,8 @@ SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
 
 
 #
 #
-# System Units (System, Objpas, Strings)
+# Loaders
 #
 #
-system$(PPUEXT) : system.pp $(SYSDEPS)
-        $(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg system.pp
-        $(EXECPPAS)
 
 
-si_prc$(PPUEXT) : system$(PPUEXT)
+si_prc$(PPUEXT) : $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) si_prc.pp
         $(COMPILER) si_prc.pp