Browse Source

human68k: less fail in regenerating a Makefile

Karoly Balogh 1 year ago
parent
commit
65234c674a
1 changed files with 1261 additions and 1 deletions
  1. 1261 1
      rtl/human68k/Makefile

+ 1261 - 1
rtl/human68k/Makefile

@@ -103,6 +103,7 @@ export ECHO
 endif
 override OS_TARGET_DEFAULT=human68k
 override CPU_TARGET_DEFAULT=m68k
+override DEFAULT_FPCDIR=../..
 ifndef FPC
 ifdef PP
 FPC=$(PP)
@@ -369,6 +370,519 @@ endif
 endif
 override PACKAGE_NAME=rtl
 PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
+ifdef FPC_DOTTEDUNITS
+AIOUNIT=NetWareApi.Aio
+ALLWINNER_A20UNIT=Embedded.Allwinner_a20
+ANDROIDR14UNIT=AndroidAPI.AndroidR14
+ATHREADSUNIT=AmigaApi.AThreads
+BASEUNIXUNIT=UnixApi.Base
+BETHREADSUNIT=BeosApi.Bethreads
+BLOCKRTLUNIT=blockrtl
+BSDUNIT=BsdApi
+CHARACTERUNIT=System.Character
+CHARSETUNIT=System.CharSet
+CLASSESUNIT=System.Classes
+CMEMUNIT=System.CMem
+COMMONUNIT=PalmApi.Common
+CONSOLEUNIT=System.Console
+CONSOLEIOUNIT=EmbeddedApi.ConsoleIO
+CORTEXM0UNIT=ARMApi.cortexm0
+CORTEXM3UNIT=ARMApi.cortexm3
+CORTEXM4UNIT=ARMApi.cortexm4
+CORTEXM7UNIT=ARMApi.cortexm7
+CP1250UNIT=System.CodePages.CP1250
+CP1251UNIT=System.CodePages.CP1251
+CP1252UNIT=System.CodePages.CP1252
+CP1253UNIT=System.CodePages.CP1253
+CP1254UNIT=System.CodePages.CP1254
+CP1255UNIT=System.CodePages.CP1255
+CP1256UNIT=System.CodePages.CP1256
+CP1257UNIT=System.CodePages.CP1257
+CP1258UNIT=System.CodePages.CP1258
+CP3021UNIT=System.CodePages.CP3021
+CP437UNIT=System.CodePages.CP437
+CP646UNIT=System.CodePages.CP646
+CP737UNIT=System.CodePages.CP737
+CP775UNIT=System.CodePages.CP775
+CP850UNIT=System.CodePages.CP850
+CP852UNIT=System.CodePages.CP852
+CP855UNIT=System.CodePages.CP855
+CP856UNIT=System.CodePages.CP856
+CP857UNIT=System.CodePages.CP857
+CP860UNIT=System.CodePages.CP860
+CP861UNIT=System.CodePages.CP861
+CP862UNIT=System.CodePages.CP862
+CP863UNIT=System.CodePages.CP863
+CP864UNIT=System.CodePages.CP864
+CP865UNIT=System.CodePages.CP865
+CP866UNIT=System.CodePages.CP866
+CP869UNIT=System.CodePages.CP869
+CP874UNIT=System.CodePages.CP874
+CP8859_1UNIT=System.CodePages.CP8859_1
+CP8859_10UNIT=System.CodePages.CP8859_10
+CP8859_11UNIT=System.CodePages.CP8859_11
+CP8859_13UNIT=System.CodePages.CP8859_13
+CP8859_14UNIT=System.CodePages.CP8859_14
+CP8859_15UNIT=System.CodePages.CP8859_15
+CP8859_16UNIT=System.CodePages.CP8859_16
+CP8859_2UNIT=System.CodePages.CP8859_2
+CP8859_3UNIT=System.CodePages.CP8859_3
+CP8859_4UNIT=System.CodePages.CP8859_4
+CP8859_5UNIT=System.CodePages.CP8859_5
+CP8859_6UNIT=System.CodePages.CP8859_6
+CP8859_7UNIT=System.CodePages.CP8859_7
+CP8859_8UNIT=System.CodePages.CP8859_8
+CP8859_9UNIT=System.CodePages.CP8859_9
+CPALLUNIT=System.CodePages.All
+CPKOI8_RUNIT=System.CodePages.CPkoi8_r
+CPKOI8_UUNIT=System.CodePages.CPkoi8_u
+CPUUNIT=System.CPU
+CTHREADSUNIT=UnixApi.CThreads
+CTYPESUNIT=System.CTypes
+CWSTRINGUNIT=UnixApi.CWString
+DDKUNIT=NTApi.Ddk
+DLUNIT=UnixApi.Dl
+DOSUNIT=TP.DOS
+DOSCALL2UNIT=OS2Api.doscall2
+DOSCALLSUNIT=OS2Api.doscalls
+DPMIEXCPUNIT=DOSApi.Dpmiexcp
+DXELOADUNIT=DOSApi.Dxeload
+DXETYPEUNIT=DOSApi.Dxetype
+DYNLIBSUNIT=System.DynLibs
+EMU387UNIT=DOSApi.EMU387
+EMXUNIT=DOSApi.EMX
+ERRORSUNIT=UnixApi.Errors
+ESP32UNIT=System.Esp32
+ESP8266UNIT=System.Esp8266
+ESP8266RTOS_30300UNIT=System.Esp8266rtos_30300
+ESP8266RTOS_30400UNIT=System.Esp8266rtos_30400
+ESPIDF_40100UNIT=System.Espidf_40100
+ESPIDF_40200UNIT=System.Espidf_40200
+ESPIDF_40400UNIT=System.Espidf_40400
+EXEUNIT=OS2Api.exe
+EXEINFOUNIT=System.ExeInfo
+EXTPASUNIT=extpas
+FE310G000UNIT=EmbeddedApi.fe310g000
+FE310G002UNIT=EmbeddedApi.fe310g002
+FGLUNIT=System.FGL
+FPCMEMDLLUNIT=System.FPCMemDLL
+FPCYLIXUNIT=fpcylix
+FPINTRESUNIT=fpintres
+FPWIDESTRINGUNIT=System.FPWideString
+FREEBSDUNIT=FreeBSDApi.FreeBSD
+GD32VF103XXUNIT=EmbeddedApi.gd32vf103xx
+GETOPTSUNIT=System.GetOpts
+GO32UNIT=DOSApi.GO32
+GPIOUNIT=EmbeddedApi.gpio
+HEAPMGRUNIT=EmbeddedApi.HeapMGR
+HEAPTRCUNIT=heaptrc
+INITCUNIT=System.InitC
+INTRINSICSUNIT=System.Intrinsics
+ISO7185UNIT=iso7185
+JDK15UNIT=JavaApi.JDK15
+KBDCALLSUNIT=OS2Api.kbdcalls
+LIBCUNIT=NetwareLibCApi.Libc
+LINEINFOUNIT=lineinfo
+LINUXUNIT=LinuxApi
+LINUXVCSUNIT=LinuxApi.Vcs
+LM3FURYUNIT=EmbeddedApi.lm3fury
+LM3TEMPESTUNIT=EmbeddedApi.lm3tempest
+LM4F120UNIT=EmbeddedApi.lm4f120
+LNFODWRFUNIT=lnfodwrf
+LNFOGDBUNIT=lnfogdb
+LPC11XXUNIT=EmbeddedApi.lpc11xx
+LPC122XUNIT=EmbeddedApi.lpc122x
+LPC13XXUNIT=EmbeddedApi.lpc13xx
+LPC1768UNIT=EmbeddedApi.lpc1768
+LPC21X4UNIT=EmbeddedApi.lpc21x4
+LPC8XXUNIT=EmbeddedApi.lpc8xx
+LSTRINGSUNIT=System.LStrings
+MACOSUNIT=MacOSApi.MacOS
+MACOSTPUNIT=MacOSApi.MacOSTP
+MACPASUNIT=macpas
+MACUTILSUNIT=MacOSApi.MacUtils
+MAILBOXUNIT=EmbeddedApi.mailbox
+MATHUNIT=System.Math
+MESSAGESUNIT=WinApi.Messages
+MK20D5UNIT=EmbeddedApi.mk20d5
+MK20D7UNIT=EmbeddedApi.mk20d7
+MK22F51212UNIT=EmbeddedApi.mk22f51212
+MK64F12UNIT=EmbeddedApi.mk64f12
+MMIOUNIT=EmbeddedApi.mmio
+MMXUNIT=System.CPU.MMX
+MONCALLSUNIT=OS2Api.moncalls
+MOUCALLSUNIT=OS2Api.moucalls
+MSMOUSEUNIT=DOSApi.MSMouse
+MULTIBOOTUNIT=EmbeddedApi.multiboot
+NDKUNIT=NTApi.NDK
+NDKUTILSUNIT=NTApi.NDKUtils
+NETWAREUNIT=NetwareApi.NetWare
+NEWEXEUNIT=OS2Api.newexe
+NRF51UNIT=EmbeddedApi.nrf51
+NRF52UNIT=EmbeddedApi.nrf52
+NWCALLSUNIT=NetWareApi.Nwcalls
+NWNITUNIT=NetWareApi.Nwnit
+NWPREUNIT=NetWareApi.Nwpre
+NWPROTUNIT=NetWareApi.Nwprot
+NWSERVUNIT=NetWareApi.Nwserv
+NWSNUTUNIT=NetWareApi.Nwsnut
+OBJCUNIT=objc
+OBJCBASEUNIT=objcbase
+OBJPASUNIT=objpas
+OS2DEFUNIT=OS2Api.os2def
+PAGEMEMUNIT=System.PageMem
+PILOTUNIT=PalmApi.Pilot
+PMBIDIUNIT=OS2Api.pmbidi
+PMBITMAPUNIT=OS2Api.pmbitmap
+PMDEVUNIT=OS2Api.pmdev
+PMGPIUNIT=OS2Api.pmgpi
+PMHELPUNIT=OS2Api.pmhelp
+PMSHLUNIT=OS2Api.pmshl
+PMSPLUNIT=OS2Api.pmspl
+PMSTDDLGUNIT=OS2Api.pmstddlg
+PMWINUNIT=OS2Api.pmwin
+PMWPUNIT=OS2Api.pmwp
+PMWSOCKUNIT=OS2Api.pmwsock
+PORTSUNIT=System.Ports
+POSIXUNIT=QNXApi.Posix
+PROFILEUNIT=DOSApi.Profile
+RASPI2UNIT=EmbeddedApi.raspi2
+RASPI3UNIT=EmbeddedApi.raspi3
+RASPIUARTUNIT=EmbeddedApi.raspiuart
+RTLCONSTSUNIT=System.RtlConsts
+SAM3X8EUNIT=EmbeddedApi.sam3x8e
+SAMD51P19AUNIT=EmbeddedApi.samd51p19a
+SC32442BUNIT=EmbeddedApi .sc32442b
+SFPU128UNIT=System.SoftFpu128
+SFPUX80UNIT=System.SoftFpuX80
+SHAREMEMUNIT=WinApi.ShareMem
+SIGNALSUNIT=WinApi.Signals
+SO32DLLUNIT=OS2Api.so32dll
+SOFTFPUUNIT=System.SoftFPU
+SORTBASEUNIT=System.SortBase
+STM32F0XXUNIT=EmbeddedApi.stm32f0xx
+STM32F103XEUNIT=EmbeddedApi.stm32f103xe
+STM32F10X_CLUNIT=EmbeddedApi.stm32f10x_cl
+STM32F10X_CONNUNIT=EmbeddedApi.stm32f10x_conn
+STM32F10X_HDUNIT=EmbeddedApi.stm32f10x_hd
+STM32F10X_LDUNIT=EmbeddedApi.stm32f10x_ld
+STM32F10X_MDUNIT=EmbeddedApi.stm32f10x_md
+STM32F10X_XLUNIT=EmbeddedApi.stm32f10x_xl
+STM32F401XEUNIT=EmbeddedApi.stm32f401xe
+STM32F401XXUNIT=EmbeddedApi.stm32f401xx
+STM32F407XXUNIT=EmbeddedApi.stm32f407xx
+STM32F411XEUNIT=EmbeddedApi.stm32f411xe
+STM32F429UNIT=EmbeddedApi.stm32f429
+STM32F429XXUNIT=EmbeddedApi.stm32f429xx
+STM32F446XXUNIT=EmbeddedApi.stm32f446xx
+STM32F745UNIT=EmbeddedApi.stm32f745
+STM32F746UNIT=EmbeddedApi.stm32f746
+STM32F756UNIT=EmbeddedApi.stm32f756
+STM32G071XXUNIT=EmbeddedApi.stm32g071xx
+STRINGSUNIT=System.Strings
+SYMBIANUNIT=SymbianApi.Symbian
+SYSALLUNIT=PalmApi.Sysall
+SYSCALLUNIT=UnixApi.SysCall
+SYSCONSTUNIT=System.SysConst
+SYSCTLUNIT=BsdApi.SysCtl
+SYSEMXUNIT=DOSApi.Sysemx
+SYSOS2UNIT=OS2Api.sysos2
+SYSTEMUNIT=system
+SYSTRAPSUNIT=PalmApi.Systraps
+SYSUTILSUNIT=System.SysUtils
+TERMIOUNIT=UnixApi.TermIO
+TYPESUNIT=System.Types
+TYPINFOUNIT=System.TypInfo
+UFLOAT128UNIT=System.UFloat128
+UFLOATX80UNIT=System.UFloatX80
+UIUNIT=PalmApi.Ui
+UIQUNIT=SymbianApi.Uiq
+UIQCLASSESUNIT=SymbianApi.Uiqclasses
+UNICODEDATAUNIT=System.CodePages.unicodedata
+UNIXUNIT=UnixApi.Unix
+UNIXCPUNIT=UnixApi.CP
+UNIXTYPEUNIT=UnixApi.Types
+UNIXUTILUNIT=UnixApi.Utils
+UUCHARUNIT=uuchar
+VIOCALLSUNIT=OS2Api.viocalls
+WASIAPIUNIT=WASIApi.WASIApi
+WASIUTILUNIT=WASIApi.WASIUtil
+WATCOMUNIT=WatcomApi.WatCom
+WEBASSEMBLYUNIT=Wasm.Api
+WIN31UNIT=WinApi.Win31
+WINDIRSUNIT=WinApi.WinDirs
+WINDOWSUNIT=WinApi.Windows
+WINPROCSUNIT=WinApi.WinProcs
+WINSYSUTUNIT=WinApi.WinSysUt
+WINTYPESUNIT=WinApi.WinTypes
+X86UNIT=System.X86
+XMC4500UNIT=EmbeddedApi.xmc4500
+else
+AIOUNIT=aio
+ALLWINNER_A20UNIT=allwinner_a20
+ANDROIDR14UNIT=androidr14
+ATHREADSUNIT=athreads
+BASEUNIXUNIT=baseunix
+BETHREADSUNIT=bethreads
+BLOCKRTLUNIT=blockrtl
+BSDUNIT=bsd
+CHARACTERUNIT=character
+CHARSETUNIT=charset
+CLASSESUNIT=classes
+CMEMUNIT=cmem
+COMMONUNIT=common
+CONSOLEUNIT=console
+CONSOLEIOUNIT=consoleio
+CORTEXM0UNIT=cortexm0
+CORTEXM3UNIT=cortexm3
+CORTEXM4UNIT=cortexm4
+CORTEXM7UNIT=cortexm7
+CP1250UNIT=cp1250
+CP1251UNIT=cp1251
+CP1252UNIT=cp1252
+CP1253UNIT=cp1253
+CP1254UNIT=cp1254
+CP1255UNIT=cp1255
+CP1256UNIT=cp1256
+CP1257UNIT=cp1257
+CP1258UNIT=cp1258
+CP3021UNIT=cp3021
+CP437UNIT=cp437
+CP646UNIT=cp646
+CP737UNIT=cp737
+CP775UNIT=cp775
+CP850UNIT=cp850
+CP852UNIT=cp852
+CP855UNIT=cp855
+CP856UNIT=cp856
+CP857UNIT=cp857
+CP860UNIT=cp860
+CP861UNIT=cp861
+CP862UNIT=cp862
+CP863UNIT=cp863
+CP864UNIT=cp864
+CP865UNIT=cp865
+CP866UNIT=cp866
+CP869UNIT=cp869
+CP874UNIT=cp874
+CP8859_1UNIT=cp8859_1
+CP8859_10UNIT=cp8859_10
+CP8859_11UNIT=cp8859_11
+CP8859_13UNIT=cp8859_13
+CP8859_14UNIT=cp8859_14
+CP8859_15UNIT=cp8859_15
+CP8859_16UNIT=cp8859_16
+CP8859_2UNIT=cp8859_2
+CP8859_3UNIT=cp8859_3
+CP8859_4UNIT=cp8859_4
+CP8859_5UNIT=cp8859_5
+CP8859_6UNIT=cp8859_6
+CP8859_7UNIT=cp8859_7
+CP8859_8UNIT=cp8859_8
+CP8859_9UNIT=cp8859_9
+CPALLUNIT=cpall
+CPKOI8_RUNIT=cpkoi8_r
+CPKOI8_UUNIT=cpkoi8_u
+CPUUNIT=cpu
+CTHREADSUNIT=cthreads
+CTYPESUNIT=ctypes
+CWSTRINGUNIT=cwstring
+DDKUNIT=ddk
+DLUNIT=dl
+DOSUNIT=dos
+DOSCALL2UNIT=doscall2
+DOSCALLSUNIT=doscalls
+DPMIEXCPUNIT=dpmiexcp
+DXELOADUNIT=dxeload
+DXETYPEUNIT=dxetype
+DYNLIBSUNIT=dynlibs
+EMU387UNIT=emu387
+EMXUNIT=emx
+ERRORSUNIT=errors
+ESP32UNIT=esp32
+ESP8266UNIT=esp8266
+ESP8266RTOS_30300UNIT=esp8266rtos_30300
+ESP8266RTOS_30400UNIT=esp8266rtos_30400
+ESPIDF_40100UNIT=espidf_40100
+ESPIDF_40200UNIT=espidf_40200
+ESPIDF_40400UNIT=espidf_40400
+EXEUNIT=exe
+EXEINFOUNIT=exeinfo
+EXTPASUNIT=extpas
+FE310G000UNIT=fe310g000
+FE310G002UNIT=fe310g002
+FGLUNIT=fgl
+FPCMEMDLLUNIT=fpcmemdll
+FPCYLIXUNIT=fpcylix
+FPINTRESUNIT=fpintres
+FPWIDESTRINGUNIT=fpwidestring
+FREEBSDUNIT=freebsd
+GD32VF103XXUNIT=gd32vf103xx
+GETOPTSUNIT=getopts
+GO32UNIT=go32
+GPIOUNIT=gpio
+HEAPMGRUNIT=heapmgr
+HEAPTRCUNIT=heaptrc
+INITCUNIT=initc
+INTRINSICSUNIT=intrinsics
+ISO7185UNIT=iso7185
+JDK15UNIT=jdk15
+KBDCALLSUNIT=kbdcalls
+LIBCUNIT=libc
+LINEINFOUNIT=lineinfo
+LINUXUNIT=linux
+LINUXVCSUNIT=linuxvcs
+LM3FURYUNIT=lm3fury
+LM3TEMPESTUNIT=lm3tempest
+LM4F120UNIT=lm4f120
+LNFODWRFUNIT=lnfodwrf
+LNFOGDBUNIT=lnfogdb
+LPC11XXUNIT=lpc11xx
+LPC122XUNIT=lpc122x
+LPC13XXUNIT=lpc13xx
+LPC1768UNIT=lpc1768
+LPC21X4UNIT=lpc21x4
+LPC8XXUNIT=lpc8xx
+LSTRINGSUNIT=lstrings
+MACOSUNIT=macos
+MACOSTPUNIT=macostp
+MACUTILSUNIT=macutils
+MACPASUNIT=macpas
+MAILBOXUNIT=mailbox
+MATHUNIT=math
+MESSAGESUNIT=messages
+MK20D5UNIT=mk20d5
+MK20D7UNIT=mk20d7
+MK22F51212UNIT=mk22f51212
+MK64F12UNIT=mk64f12
+MMIOUNIT=mmio
+MMXUNIT=mmx
+MONCALLSUNIT=moncalls
+MOUCALLSUNIT=moucalls
+MSMOUSEUNIT=msmouse
+MULTIBOOTUNIT=multiboot
+NDKUNIT=ndk
+NDKUTILSUNIT=ndkutils
+NETWAREUNIT=netware
+NEWEXEUNIT=newexe
+NRF51UNIT=nrf51
+NRF52UNIT=nrf52
+NWCALLSUNIT=nwcalls
+NWNITUNIT=nwnit
+NWPREUNIT=nwpre
+NWPROTUNIT=nwprot
+NWSERVUNIT=nwserv
+NWSNUTUNIT=nwsnut
+OBJCUNIT=objc
+OBJCBASEUNIT=objcbase
+OBJPASUNIT=objpas
+OS2DEFUNIT=os2def
+PAGEMEMUNIT=pagemem
+PILOTUNIT=pilot
+PMBIDIUNIT=pmbidi
+PMBITMAPUNIT=pmbitmap
+PMDEVUNIT=pmdev
+PMGPIUNIT=pmgpi
+PMHELPUNIT=pmhelp
+PMSHLUNIT=pmshl
+PMSPLUNIT=pmspl
+PMSTDDLGUNIT=pmstddlg
+PMWINUNIT=pmwin
+PMWPUNIT=pmwp
+PMWSOCKUNIT=pmwsock
+PORTSUNIT=ports
+POSIXUNIT=posix
+PROFILEUNIT=profile
+RASPI2UNIT=raspi2
+RASPI3UNIT=raspi3
+RASPIUARTUNIT=raspiuart
+RTLCONSTSUNIT=rtlconsts
+SAM3X8EUNIT=sam3x8e
+SAMD51P19AUNIT=samd51p19a
+SC32442BUNIT=sc32442b
+SFPU128UNIT=sfpu128
+SFPUX80UNIT=sfpux80
+SHAREMEMUNIT=sharemem
+SIGNALSUNIT=signals
+SO32DLLUNIT=so32dll
+SOFTFPUUNIT=softfpu
+SORTBASEUNIT=sortbase
+STM32F0XXUNIT=stm32f0xx
+STM32F103XEUNIT=stm32f103xe
+STM32F10X_CLUNIT=stm32f10x_cl
+STM32F10X_CONNUNIT=stm32f10x_conn
+STM32F10X_HDUNIT=stm32f10x_hd
+STM32F10X_LDUNIT=stm32f10x_ld
+STM32F10X_MDUNIT=stm32f10x_md
+STM32F10X_XLUNIT=stm32f10x_xl
+STM32F401XEUNIT=stm32f401xe
+STM32F401XXUNIT=stm32f401xx
+STM32F407XXUNIT=stm32f407xx
+STM32F411XEUNIT=stm32f411xe
+STM32F429UNIT=stm32f429
+STM32F429XXUNIT=stm32f429xx
+STM32F446XXUNIT=stm32f446xx
+STM32F745UNIT=stm32f745
+STM32F746UNIT=stm32f746
+STM32F756UNIT=stm32f756
+STM32G071XXUNIT=stm32g071xx
+STRINGSUNIT=strings
+SYMBIANUNIT=symbian
+SYSALLUNIT=sysall
+SYSCALLUNIT=syscall
+SYSCONSTUNIT=sysconst
+SYSCTLUNIT=sysctl
+SYSEMXUNIT=sysemx
+SYSOS2UNIT=sysos2
+SYSTEMUNIT=system
+SYSTRAPSUNIT=systraps
+SYSUTILSUNIT=sysutils
+TERMIOUNIT=termio
+TYPESUNIT=types
+TYPINFOUNIT=typinfo
+UFLOAT128UNIT=ufloat128
+UFLOATX80UNIT=ufloatx80
+UIUNIT=ui
+UIQUNIT=uiq
+UIQCLASSESUNIT=uiqclasses
+UNICODEDATAUNIT=unicodedata
+UNIXUNIT=unix
+UNIXCPUNIT=unixcp
+UNIXTYPEUNIT=unixtype
+UNIXUTILUNIT=unixutil
+UUCHARUNIT=uuchar
+VIOCALLSUNIT=viocalls
+WASIAPIUNIT=wasiapi
+WASIUTILUNIT=wasiutil
+WATCOMUNIT=watcom
+WEBASSEMBLYUNIT=webassembly
+WIN31UNIT=win31
+WINDIRSUNIT=windirs
+WINDOWSUNIT=windows
+WINPROCSUNIT=winprocs
+WINSYSUTUNIT=winsysut
+WINTYPESUNIT=wintypes
+X86UNIT=x86
+XMC4500UNIT=xmc4500
+endif
+ifdef FPC_DOTTEDUNITS
+NS_SYSTEM=System.
+NS_CPUNITS=System.CodePages.
+NSDIR=$(RTL)/namespaced
+NSINC=$(NSDIR)/common
+BASEINCLUDE=$(INC) $(PROCINC)
+BASESOURCE=$(INC) $(PROCINC) $($(COMMONUNIT))
+endif
+CP_UNITS=$(CP1250UNIT) $(CP1251UNIT) $(CP1252UNIT) $(CP1253UNIT) $(CP1254UNIT) $(CP1255UNIT) $(CP1256UNIT) $(CP1257UNIT) $(CP1258UNIT) \
+      $(CP437UNIT) $(CP646UNIT) $(CP737UNIT) $(CP775UNIT) $(CP850UNIT) $(CP852UNIT) $(CP855UNIT) $(CP856UNIT) $(CP857UNIT) $(CP860UNIT) $(CP861UNIT) $(CP862UNIT) \
+      $(CP863UNIT) $(CP864UNIT) $(CP865UNIT) $(CP866UNIT) $(CP869UNIT) $(CP874UNIT) $(CP3021UNIT) $(CP8859_1UNIT) $(CP8859_2UNIT) $(CP8859_3UNIT) $(CP8859_4UNIT) \
+      $(CP8859_5UNIT) $(CP8859_6UNIT) $(CP8859_7UNIT) $(CP8859_8UNIT) $(CP8859_9UNIT) $(CP8859_10UNIT) $(CP8859_11UNIT) \
+      $(CP8859_13UNIT) $(CP8859_14UNIT) $(CP8859_15UNIT) $(CP8859_16UNIT) $(CPKOI8_RUNIT) $(CPKOI8_UUNIT)
+ifdef FPC_DOTTEDUNITS
+CP_UNITS_SRC=$(addsuffix .pas,$(addprefix $(NSINC)/,$(CP_UNITS)))
+else
+CP_UNITS_SRC=$(addsuffix .pas,$(addprefix $(RTL)/charmaps/,$(CP_UNITS)))
+endif
 RTL=..
 INC=$(RTL)/inc
 COMMON=$(RTL)/common
@@ -388,7 +902,7 @@ endif
 ifeq ($(CPU_OS_TARGET),m68k-human68k)
 override TARGET_RSTS+=$(MATHUNIT) $(RTLCONSTSUNIT) $(TYPINFOUNIT) $(CLASSESUNIT) $(SYSCONSTUNIT)
 endif
-override INSTALL_FPCPACKAGE=y
+override INSTALL_FPCPACKAGE=y y
 ifeq ($(CPU_OS_TARGET),m68k-human68k)
 override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(CPU_TARGET)
 endif
@@ -1652,6 +2166,752 @@ makefiles: fpc_makefiles
 ifneq ($(wildcard fpcmake.loc),)
 include fpcmake.loc
 endif
+ifndef OSDIR
+OSDIR=.
+endif
+ifndef NSOSDIR
+NSOSDIR=$(NSDIR)/$(OS_TARGET)
+endif
+ifndef PORTSDIR
+PORTSDIR=$(OSDIR)
+endif
+ifndef DYNLIBSINCDIR
+DYNLIBSINCDIR=$(OSDIR)
+endif
+ifndef INITCDIR
+ifdef UNIXINC
+INITCDIR=$(UNIXINC)
+else
+INITCDIR=$(OSDIR)
+endif
+endif
+ifndef DOSDIR
+DOSDIR=$(OSDIR)
+NSDOSDIR=$(NSDIR)/$(DOSDIR)
+endif
+ifndef OS2DIR
+OS2DIR=.
+endif
+ifndef NSOS2DIR
+NSOS2DIR=$(NSDIR)/os2
+endif
+ifndef SYSUTILSDIR
+SYSUTILSDIR=$(OSDIR)
+endif
+ifndef NSSYSUTILSDIR
+NSSYSUTILSDIR=$(NSDIR)/$(SYSUTILSDIR)
+endif
+ifndef SYSTEMDIR
+SYSTEMDIR=$(OSDIR)
+endif
+ifndef CLASSESDIR
+CLASSESDIR=$(OSDIR)
+endif
+ifndef TTHREADINCDIR
+TTHREADINCDIR=$(CLASSESDIR)
+endif
+ifndef NSCLASSESDIR
+NSCLASSESDIR=$(NSDIR)/$(CLASSESDIR)
+endif
+ifndef NSBSDDIR
+NSBSDDIR=$(NSDIR)/bsd
+endif
+ifndef TERMIODIR
+TERMIODIR=$(OSDIR)
+endif
+ifndef PTHREADINCDIR
+PTHREADINCDIR=$(OSDIR)
+endif
+ifndef NSWINDOWSDIR
+NSWINDOWSDIR=$(NSDIR)/windows
+endif
+ifndef SYSTEMUNITEXT
+SYSTEMUNITEXT=pp
+endif
+ifndef DOSUNITEXT
+DOSUNITEXT=pp
+endif
+ifndef PORTSUNITEXT
+PORTSUNITEXT=pp
+endif
+ifndef BASEUNIXDIR
+BASEUNIXDIR=$(UNIXINC)
+endif
+ifndef EXTPAS_DEPS_OS
+EXTPAS_DEPS_OS=$(DOSUNIT)$(PPUEXT)
+endif
+ifdef FPC_DOTTEDUNITS
+BLOCKRTL_OPT:=$(BLOCKRTL_OPT) -dFPC_DOTTEDUNITS
+FPEXTRES_OPT:=$(FPEXTRES_OPT) -dFPC_DOTTEDUNITS
+OBJC_OPT:=$(OBJC_OPT) -dFPC_DOTTEDUNITS
+OBJCBASE_OPT:=$(OBJCBASE_OPT) -dFPC_DOTTEDUNITS
+FPCYLIX_OPT:=$(FPCYLIX_OPT) -dFPC_DOTTEDUNITS
+MACPAS_OPT:=$(MACPAS_OPT) -dFPC_DOTTEDUNITS
+EXTPAS_OPT:=$(EXTPAS_OPT) -dFPC_DOTTEDUNITS
+LINEINFO_OPT:=$(LINEINFO_OPT) -dFPC_DOTTEDUNITS
+LNFODWRF_OPT:=$(LNFODWRF_OPT) -dFPC_DOTTEDUNITS
+endif
+$(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMDIR)/$(SYSTEMUNIT).$(SYSTEMUNITEXT) $(SYSDEPS)
+	$(COMPILER) $(FPC_SYSTEM_OPT) -Us -Sg $<
+UUCHAR_DEPS=$(INC)/uuchar.pp \
+	    $(SYSTEMUNIT)$(PPUEXT) \
+	    $(UUCHAR_DEPS_OS) $(UUCHAR_DEPS_CPU)
+uuchar$(PPUEXT): $(UUCHAR_DEPS)
+	$(COMPILER) $(UUCHAR_OPT) $<
+UACHAR_DEPS=$(INC)/uachar.pp \
+	    $(SYSTEMUNIT)$(PPUEXT) \
+	    $(UACHAR_DEPS_OS) $(UACHAR_DEPS_CPU)
+uachar$(PPUEXT): $(UACHAR_DEPS)
+	$(COMPILER) $(UACHAR_OPT) $<
+OBJPAS_DEPS= $(OBJPASDIR)/objpas.pp $(INC)/except.inc \
+	     $(SYSTEMUNIT)$(PPUEXT) \
+	     $(OBJPAS_DEPS_OS) $(OBJPAS_DEPS_SPU)
+objpas$(PPUEXT): $(OBJPAS_DEPS)
+	$(COMPILER) $(OBJPAS_OPT) -Fi$(OBJPASDIR) $<
+MACPAS_DEPS=$(INC)/macpas.pp \
+	    $(OBJPASUNIT)$(PPUEXT) $(MATHUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	    $(MACPAS_DEPS_OS)  $(MACPAS_DEPS_CPU)
+macpas$(PPUEXT) : $(MACPAS_DEPS)
+	$(COMPILER) $(MACPAS_OPT) $<
+ISO7185_DEPS= $(INC)/iso7185.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) \
+	      $(ISO7185_DEPS_OS) $(ISO7185_DEPS_CPU)
+iso7185$(PPUEXT) : $(ISO7185_DEPS)
+	$(COMPILER) $(ISO7185_OPT) $<
+EXTPAS_DEPS=$(INC)/extpas.pp \
+	    $(SYSTEMUNIT)$(PPUEXT) \
+	    $(EXTPAS_DEPS_OS) $(EXTPAS_DEPS_CPU)
+extpas$(PPUEXT) : $(EXTPAS_DEPS)
+	$(COMPILER) $(EXTPAS_OPT) $<
+FPINTRES_DEPS= $(INC)/fpintres.pp $(SYSTEMUNIT)$(PPUEXT) \
+	       $(FPINTRES_DEPS_OS) $(FPINTRES_DEPS_CPU)
+fpintres$(PPUEXT) : $(FPINTRES_DEPS)
+	$(COMPILER) $(FPINTRES_OPT) $<
+FPEXTRES_DEPS= $(INC)/fpextres.pp $(SYSTEMUNIT)$(PPUEXT) \
+	       $(FPEXTRES_DEPS_OS) $(FPEXTRES_DEPS_CPU)              
+fpextres$(PPUEXT) : $(FPEXTRES_DEPS)
+	$(COMPILER) -Sg $(FPEXTRES_OPT) $<
+HEAPTRC_DEPS=$(INC)/heaptrc.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) \
+	     $(HEAPTRC_DEPS_OS) $(HEAPTRC_DEPS_CPU)
+heaptrc$(PPUEXT) : $(HEAPTRC_DEPS)
+	$(COMPILER) $(HEAPTRC_OPT) $<
+SOFTFPU_DEPS=$(INC)/softfpu.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) \
+	     $(SOFTFPU_DEPS_OS) $(SOFTFPU_DEPS_CPU)
+softfpu$(PPUEXT) : $(SOFTFPU_DEPS) 
+	$(COMPILER) -Sg $(SOFTFPU_OPT) $<
+System.SoftFPU$(PPUEXT) : $(NSINC)/System.SoftFPU.pp $(SOFTFPU_DEPS) 
+	$(COMPILER) -Sg $(SOFTFPU_OPT) $<
+SFPUX80_DEPS=$(INC)/sfpux80.pp $(INC)/softfpu.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) \
+	     $(SFPUX80_DEPS_OS) $(SFPUX80_DEPS_CPU) 
+sfpux80$(PPUEXT) : $(SFPUX80_DEPS)
+	$(COMPILER) -Sg $(SFPUX80_OPT) $<
+System.SoftFpuX80$(PPUEXT) : $(NSINC)/System.SoftFpuX80.pp  $(SFPUX80_DEPS)
+	$(COMPILER) -Sg $(SFPUX80_OPT) $<
+SFPU128_DEPS=$(INC)/sfpu128.pp $(INC)/softfpu.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) \
+	     $(SFPU128_DEPS_OS) $(SFPU128_DEPS_CPU)
+sfpu128$(PPUEXT) : $(SFPU128_DEPS)
+	$(COMPILER) -Sg $(SFPUX128_OPT) $<
+System.SoftFpu128$(PPUEXT) : $(NSINC)/System.SoftFpu128.pp $(SFPU128_DEPS)
+	$(COMPILER) -Sg $(SFPUX128_OPT) $<
+UFLOATX80_DEPS=$(INC)/ufloatx80.pp \
+	       $(SFPUX80UNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	       $(UFLOATX80_DEPS_OS) $(UFLOATX80_DEPS_CPU)
+ufloatx80$(PPUEXT) : $(UFLOATX80_DEPS)
+	$(COMPILER) $(UFLOATX80_OPT) $<
+System.UFloatX80$(PPUEXT) : $(NSINC)/System.UFloatX80.pp $(UFLOATX80_DEPS)
+	$(COMPILER) $(UFLOATX80_OPT) $<
+UFLOAT128_DEPS=$(INC)/ufloat128.pp \
+	       $(SFPU128UNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	       $(UFLOAT128_DEPS_OS) $(UFLOAT128_DEPS_CPU)
+ufloat128$(PPUEXT) : $(UFLOAT128_DEPS)
+	$(COMPILER) $(UFLOAT128_OPT) $<
+System.UFloat128$(PPUEXT) : $(NSINC)/System.UFloat128.pp $(UFLOAT128_DEPS)
+	$(COMPILER) $(UFLOAT128_OPT) $<
+STRINGS_DEPS=$(INC)/strings.pp $(INC)/stringsi.inc $(PROCINC)/stringss.inc $(PROCINC)/strings.inc \
+	     $(INC)/genstr.inc $(INC)/genstrs.inc $(INC)/cgenstr.inc \
+	     $(SYSTEMUNIT)$(PPUEXT)  \
+	     $(STRINGS_DEPS_OS)
+strings$(PPUEXT) : $(STRINGS_DEPS)
+	$(COMPILER) $(STRINGS_OPT) $<
+System.Strings$(PPUEXT) : $(NSINC)/System.Strings.pp $(STRINGS_DEPS)
+	$(COMPILER) $(STRINGS_OPT) $<
+PORTS_DEPS=$(PORTSDIR)/ports.$(PORTSUNITEXT) \
+	   $(SYSTEMUNIT)$(PPUEXT) \
+	   $(PORTS_DEPS_OS) $(PORTS_DEPS_CPU)
+ports$(PPUEXT) : $(PORTS_DEPS) 
+	$(COMPILER) $(PORTS_OPT) $<
+System.Ports$(PPUEXT) :  $(NSINC)/System.Ports.$(PORTSUNITEXT) $(PORTS_DEPS)
+	$(COMPILER) $(PORTS_OPT) $<
+DYNLIBS_DEPS=$(INC)/dynlibs.pas $(DYNLIBSINCDIR)/dynlibs.inc \
+	     $(OBJPASUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
+	     $(DYNLIBS_DEPS_OS) $(DYNLIBS_DEPS_CPU)
+ifdef DYNLIBSINCDIR
+  ifndef DYNLIBS_OPT
+    DYNLIBS_OPT=-Fi$(DYNLIBSINCDIR)
+  endif
+endif
+dynlibs$(PPUEXT) : $(DYNLIBS_DEPS)
+	$(COMPILER) $(DYNLIBS_OPT) $<
+System.DynLibs$(PPUEXT) : $(NSINC)/System.DynLibs.pas $(DYNLIBS_DEPS)
+	$(COMPILER) $(DYNLIBS_OPT) $<
+INITC_DEPS=$(INITCDIR)/initc.pp $(CTYPESUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	   $(INITC_DEPS_OS) $(INITC_DEPS_CPU)
+initc$(PPUEXT) : $(INITC_DEPS)
+	$(COMPILER) $(INITC_OPT) $<
+System.InitC$(PPUEXT) : $(NSINC)/System.InitC.pp  $(INITC_DEPS)
+	$(COMPILER) $(INITC_OPT) $<
+UNIXCP_DEPS=$(UNIXINC)/unixcp.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	$(UNIXCP_DEPS_OS) $(UNIXCP_DEPS_CPU)
+unixcp$(PPUEXT) : $(UNIXCP_DEPS)
+	$(COMPILER) $(UNIXCP_OPT) $(UNIXINC)/unixcp.pp
+UnixApi.CP$(PPUEXT) : $(NSINC)/UnixApi.CP.pp $(UNIXCP_DEPS)
+	$(COMPILER) $(UNIXCP_OPT) $<
+ifeq ($(filter -dFPC_USE_LIBC,$(FPCOPT)),)
+  LINUX_DEPS_OS+=$(SYSCALLUNIT)$(PPUEXT)
+endif
+LINUX_DEPS=$(OSDIR)/linux.pp \
+	   $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	   $(LINUX_DEPS_OS) $(LINUX_DEPS_CPU)
+linux$(PPUEXT): $(LINUX_DEPS)
+	$(COMPILER) $<
+LinuxApi$(PPUEXT): $(NSOSDIR)/LinuxApi.pp $(LINUX_DEPS) 
+	$(COMPILER) $(LINUX_OPT) $<
+LINUXVCS_DEPS=$(OSDIR)/linuxvcs.pp $(BASEUNIXUNIT)$(PPUEXT) $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(LINUXVCS_DEPS_OS) $(LINUXVCS_DEPS_CPU)
+linuxvcs$(PPUEXT): $(LINUXVCS_DEPS)
+	$(COMPILER) $(LINUXVCS_OPT) $<
+LinuxApi.Vcs$(PPUEXT): $(NSOSDIR)/LinuxApi.Vcs.pp $(LINUXVCS_DEPS)
+	$(COMPILER) $(LINUXVCS_OPT) $<
+FPCYLIX_DEPS=../linux/fpcylix.pp \
+	     $(CTHREADSUNIT)$(PPUEXT) $(CWSTRINGUNIT)$(PPUEXT) $(DYNLIBSUNIT)$(PPUEXT) \
+	     $(OBJPASUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(FPCYLIX_DEPS_OS)  $(FPCYLIX_DEPS_CPU)
+fpcylix$(PPUEXT) : $(FPCYLIX_DEPS)
+	$(COMPILER) $(FPCYLIX_OPT) $<
+TERMIO_DEPS=$(TERMIODIR)/termio.pp $(UNIXINC)/ttyname.inc $(TERMIODIR)/termios.inc \
+	    $(TERMIODIR)/termiosproc.inc $(BASEUNIXUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	    $(TERMIO_DEPS_OS) $(TERMIO_DEPS_CPU)
+termio$(PPUEXT) : $(TERMIO_DEPS)
+	$(COMPILER) $(TERMIO_OPT) $<
+UnixApi.TermIO$(PPUEXT) : $(NSINC)/UnixApi.TermIO.pp $(TERMIO_DEPS)
+	$(COMPILER) $(TERMIO_OPT) $<
+CONSOLE_DEPS= console.pp $(BASEUNIXUNIT)$(PPUEXT) $(TERMIOUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	    $(CONSOLE_DEPS_OS) $(CONSOLE_DEPS_CPU)
+console$(PPUEXT) : $(CONSOLE_DEPS)
+	$(COMPILER) $(CONSOLE_OPT) $<
+System.Console$(PPUEXT) : $(NSOSDIR)/System.Console.pp $(CONSOLE_DEPS)
+	$(COMPILER) $(CONSOLE_OPT) $<
+DOS_DEPS=$(DOSDIR)/dos.$(DOSUNITEXT)  $(INC)/filerec.inc $(INC)/textrec.inc \
+	 $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	 $(DOS_DEPS_OS) $(DOS_DEPS_CPU)
+dos$(PPUEXT): $(DOS_DEPS)
+	$(COMPILER) $(DOS_OPTS) $<
+TP.DOS$(PPUEXT): $(NSINC)/TP.DOS.$(DOSUNITEXT) $(DOS_DEPS)
+	$(COMPILER) $(DOS_OPTS) $(DOS_NS_OPTS) $<
+MSMOUSE_DEPS=msmouse.pp $(SYSTEMUNIT)$(PPUEXT)
+msmouse$(PPUEXT) : $(MSMOUSE_DEPS)
+	$(COMPILER) $(MSMOUSE_OPTS) $<
+DOSApi.MSMouse$(PPUEXT) : $(NSOSDIR)/DOSApi.MSMouse.pp $(MSMOUSE_DEPS)
+	$(COMPILER) $(MSMOUSE_OPTS) $<
+SYSUTILS_UNIX_DEPS=$(UNIXUNIT)$(PPUEXT) $(ERRORSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
+		   $(BASEUNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
+		   $(UNIXUTILUNIT)$(PPUEXT)  $(INITCUNIT)$(PPUEXT)
+ifeq ($(filter -dFPC_USE_LIBC,$(FPCOPT)),)
+  SYSUTILS_UNIX_DEPS+= $(SYSCALLUNIT)$(PPUEXT)
+endif
+SYSUTILS_DEPS=$(SYSUTILSDIR)/sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
+	      $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(SYSCONSTUNIT)$(PPUEXT) \
+	      $(SYSUTILS_DEPS_OS) $(SYSUTILS_DEPS_CPU)
+sysutils$(PPUEXT) : $(SYSUTILS_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR)/sysutils $<
+System.SysUtils$(PPUEXT) : $(NSINC)/System.SysUtils.pp $(SYSUTILS_DEPS)
+	$(COMPILER) $(SYSUTILS_OPT) -Fi$(OBJPASDIR)/sysutils -Fi$(SYSUTILSDIR) $<
+CLASSES_DEPS=$(CLASSESDIR)/classes.pp $(TTHREADINCDIR)/tthread.inc $(wildcard $(OBJPASDIR)/classes/*.inc) \
+	     $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(SORTBASEUNIT)$(PPUEXT) \
+	     $(SYSUTILSUNIT)$(PPUEXT) $(TYPINFOUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
+	     $(FGLUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) \
+	     $(CLASSES_DEPS_OS) $(CLASSES_DEPS_CPU)
+classes$(PPUEXT) : $(CLASSES_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR)/classes $(CLASSES_OPT) $<
+System.Classes$(PPUEXT) : $(NSINC)/System.Classes.pp $(CLASSES_DEPS) 
+	$(COMPILER) -Fi$(OBJPASDIR)/classes $(CLASSES_OPT) $<
+TYPINFO_DEPS=$(OBJPASDIR)/typinfo.pp \
+	     $(OBJPASUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
+	     $(TYPINFO_DEPS_OS) $(TYPINFO_DEPS_CPU)
+typinfo$(PPUEXT): $(TYPINFO_DEPS)
+	$(COMPILER) -Sg $(TYPINFO_OPT) $<
+System.TypInfo$(PPUEXT): $(NSINC)/System.TypInfo.pp $(TYPINFO_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) -Sg $(TYPINFO_OPT) $<
+CHARACTER_DEPS=$(OBJPASDIR)/character.pas $(UNICODEDATAUNIT)$(PPUEXT) \
+	       $(SYSUTILSUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(RTLCONSTSUNIT)$(PPUEXT) \
+	       $(CHARACTER_DEPS_OS) $(CHARACTER_DEPS_CPU)
+character$(PPUEXT): $(CHARACTER_DEPS)
+	$(COMPILER) $(CHARACTER_OPT) $<
+System.Character$(PPUEXT): $(NSINC)/System.Character.pas $(CHARACTER_DEPS)
+	$(COMPILER) $(CHARACTER_OPT) -Fi$(OBJPASDIR) $<
+MATH_DEPS= $(OBJPASDIR)/math.pp $(PROCINC)/mathu.inc \
+	   $(OBJPASUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	   $(MATH_DEPS_OS) $(MATH_DEPS_CPU)
+math$(PPUEXT): $(MATH_DEPS)
+	$(COMPILER) $(MATH_OPT) $<
+System.Math$(PPUEXT): $(NSINC)/System.Math.pp $(MATH_DEPS)
+	$(COMPILER) $(MATH_OPT) -Fi$(OBJPASDIR)  $<
+FGL_DEPS=$(OBJPASDIR)/fgl.pp \
+	  $(OBJPASUNIT)$(PPUEXT) $(TYPESUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	  $(SYSUTILSUNIT)$(PPUEXT) $(SORTBASEUNIT)$(PPUEXT) \
+	  $(RTLCONSTSUNIT)$(PPUEXT) \
+	  $(FGL_DEPS_OS) $(FGL_DEPS_CPU)
+fgl$(PPUEXT) : $(FGL_DEPS)
+	$(COMPILER) $(FGL_OPT) $<
+System.FGL$(PPUEXT) : $(NSINC)/System.FGL.pp $(FGL_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(FGL_OPT) $<
+TYPES_DEPS=$(OBJPASDIR)/types.pp \
+	   $(OBJPASUNIT)$(PPUEXT) $(MATHUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	   $(TYPES_DEPS_OS) $(TYPES_DEPS_CPU)
+types$(PPUEXT) : $(TYPES_DEPS)
+	$(COMPILER) $(TYPES_OPT) $<
+System.Types$(PPUEXT) :  $(NSINC)/System.Types.pp $(TYPES_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(TYPES_OPT) $<
+SYSCONST_DEPS=$(OBJPASDIR)/sysconst.pp \
+	      $(OBJPASUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(SYSCONST_DEPS_OS) $(SYSCONST_DEPS_CPU)
+sysconst$(PPUEXT) : $(SYSCONST_DEPS)
+	$(COMPILER) $(SYSCONST_OPT) $<
+System.SysConst$(PPUEXT) :  $(NSINC)/System.SysConst.pp $(SYSCONST_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(SYSCONST_OPT) $<
+ifdef FPC_DOTTEDUNITS
+RTLCONSTS_DEPS=$(OBJPASDIR)/rtlconsts.pp $(OBJPASDIR)/rtlconst.inc \
+	      $(OBJPASUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(RTLCONSTS_DEPS_OS) $(RTLCONSTS_DEPS_CPU)
+System.RtlConsts$(PPUEXT) : $(NSINC)/System.RtlConsts.pp $(RTLCONSTS_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(RTLCONSTS_OPT) $<
+else
+RTLCONSTS_DEPS=$(OBJPASDIR)/$(RTLCONSTSUNIT).pp $(OBJPASDIR)/rtlconst.inc \
+	      $(OBJPASUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(RTLCONSTS_DEPS_OS) $(RTLCONSTS_DEPS_CPU)
+$(RTLCONSTSUNIT)$(PPUEXT) : $(RTLCONSTS_DEPS)
+	$(COMPILER) $(RTLCONSTS_OPT) $<
+endif
+ifneq ($(findstring $(ARCH),x86_64 i386 i8086),)
+CPU_DEPS_CPU:=$(CPU_DEPS_CPU) $(SYSUTILSUNIT)$(PPUEXT)
+endif
+CPU_DEPS=$(PROCINC)/cpu.pp \
+	 $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) \
+	 $(CPU_DEPS_OS) $(CPU_DEPS_CPU)
+cpu$(PPUEXT) : $(CPU_DEPS)
+	$(COMPILER) $(CPU_OPT) $<
+System.CPU$(PPUEXT) : $(NSINC)/System.CPU.pp $(CPU_DEPS)
+	$(COMPILER) $(CPU_OPT) $<
+MMX_DEPS=$(PROCINC)/mmx.pp \
+	 $(CPUUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	 $(MMX_DEPS_OS) $(MMX_DEPS_CPU) 
+mmx$(PPUEXT) : $(MMX_DEPS)
+	$(COMPILER) $(MMX_OPT) $<
+System.CPU.MMX$(PPUEXT) : $(NSINC)/System.CPU.MMX.pp $(MMX_DEPS)
+	$(COMPILER) $(MMX_OPT) $<
+ifeq ($(filter -dFPC_USE_LIBC,$(FPCOPT)),)
+  X86_DEPS_OS+=$(SYSCALLUNIT)$(PPUEXT)
+endif
+X86_DEPS = $(UNIXINC)/x86.pp \
+	  $(BASEUNIXUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	  $(X86_DEPS_OS) $(X86_DEPS_CPU)
+x86$(PPUEXT) : $(X86_DEPS)
+	$(COMPILER) $(X86_OPT)  $<
+System.X86$(PPUEXT) : $(NSINC)/System.X86.pp $(X86_DEPS)
+	$(COMPILER) $(X86_OPT) $<
+GETOPTS_DEPS=$(INC)/getopts.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) \
+	     $(GETOPTS_DEPS_OS) $(GETOPTS_DEPS_CPU)
+getopts$(PPUEXT) : $(GETOPTS_DEPS)
+	$(COMPILER) $(GETOPTS_OPT) $<
+System.GetOpts$(PPUEXT) : $(NSINC)/System.GetOpts.pp $(GETOPTS_DEPS)
+	$(COMPILER)  $(GETOPTS_OPT) $<
+LINEINFO_DEPS=$(INC)/lineinfo.pp \
+	      $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) $(SYSUTILSUNIT)$(PPUEXT) $(EXEINFOUNIT)$(PPUEXT) \
+	      $(LINEINFO_DEPS_OS)  $(LINEINFO_DEPS_CPU)
+lineinfo$(PPUEXT) : $(LINEINFO_DEPS)
+	$(COMPILER) $(LINEINFO_OPT) $<
+System.LineInfo$(PPUEXT) : $(NSINC)/System.LineInfo.pp $(LINEINFO_DEPS)
+	$(COMPILER) $(LINEINFO_OPT) $<
+EXEINFO_DEPS=$(INC)/exeinfo.pp \
+	      $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(EXEINFO_DEPS_OS)  $(EXEINFO_DEPS_CPU)
+exeinfo$(PPUEXT) : $(EXEINFO_DEPS)
+	$(COMPILER) $(EXEINFO_OPT) $<
+System.ExeInfo$(PPUEXT) : $(NSINC)/System.ExeInfo.pp $(EXEINFO_DEPS)
+	$(COMPILER) $(EXEINFO_OPT) $<
+LNFODWRF_DEPS=$(INC)/lnfodwrf.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) $(STRINGSUNIT)$(PPUEXT) \
+	      $(SYSUTILSUNIT)$(PPUEXT) $(EXEINFOUNIT)$(PPUEXT) \
+	      $(LNFODWRF_DEPS_OS) $(LNFODWRF_DEPS_CPU)
+lnfodwrf$(PPUEXT) : $(LNFODWRF_DEPS)
+	$(COMPILER) $(LNFODWRF_OPT) $<
+System.LineInfo.Dwarf$(PPUEXT) : $(NSINC)/System.LineInfo.Dwarf.pp $(LNFODWRF_DEPS)
+	$(COMPILER) $(LNFODWRF_OPT) $<
+LNFOGDB_DEPS=$(UNIXINC)/lnfogdb.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
+	      $(BASEUNIXUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(LNFOGDB_DEPS_OS) $(LNFOGDB_DEPS_CPU)
+lnfogdb$(PPUEXT) : $(LNFOGDB_DEPS)
+	$(COMPILER) $(LNFOGDB_OPT) $<
+System.LineInfo.Gdb$(PPUEXT) : $(NSINC)/System.LineInfo.Gdb.pp $(LNFOGDB_DEPS)
+	$(COMPILER) $(LNFOGDB_OPT) $<
+CHARSET_DEPS=$(INC)/charset.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) \
+	     $(CHARSET_DEPS_OS) $(CHARSET_DEPS_CPU)
+charset$(PPUEXT) : $(CHARSET_DEPS)
+	$(COMPILER) $(CHARSET_OPT) $<
+System.CharSet$(PPUEXT) : $(NSINC)/System.CharSet.pp $(CHARSET_DEPS)
+	$(COMPILER) $(CHARSET_OPT) $< 
+UNICODEDATA_DEPS = $(OBJPASDIR)/unicodedata.pas $(OBJPASDIR)/unicodedata.inc \
+		   $(OBJPASDIR)/unicodedata_le.inc $(OBJPASDIR)/unicodedata_be.inc \
+		   $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT)
+unicodedata$(PPUEXT) : $(UNICODEDATA_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(UNICODEDATA_OPT) $<
+System.CodePages.unicodedata$(PPUEXT) : $(NSINC)/System.CodePages.unicodedata.pas $(UNICODEDATA_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(UNICODEDATA_OPT) $<
+CPALL_DEPS=$(RTL)/charmaps/cpall.pas $(CP_UNITS_SRC) \
+	  system$(PPUEXT) $(CHARSETUNIT)$(PPUEXT) \
+	  $(CPALL_DEPS_OS) $(CPALL_DEPS_CPU)
+cpall$(PPUEXT): $(CPALL_DEPS)  
+	$(COMPILER) $(CPALL_OPT) -Fu$(INC) -Fi$(RTL)/charmaps $<
+System.CodePages.All$(PPUEXT):  $(NSINC)/System.CodePages.All.pas $(CPALL_DEPS)
+	$(COMPILER) $(CPALL_OPT) -Fu$(INC) -Fi$(RTL)/charmaps $<
+ifneq ($(UNIXINC),)
+  FPWIDESTRING_DEPS_OS:=$(FPWIDESTRING_DEPS_OS) $(UNIXCPUNIT)$(PPUEXT)
+endif
+ifneq ($(AMIINC),)
+  RTLDEFSINCDIR=$(AMIINC)
+else
+ifeq ($(OS_TARGET),android)
+  RTLDEFSINCDIR = $(LINUXINC)
+else
+  RTLDEFSINCDIR = $(OSDIR)
+endif
+endif
+FPWIDESTRING_DEPS=$(OBJPASDIR)/fpwidestring.pp $(RTLDEFSINCDIR)/rtldefs.inc \
+		  $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(UNICODEDATAUNIT)$(PPUEXT) \
+		  $(CHARACTERUNIT)$(PPUEXT) $(CPALLUNIT)$(PPUEXT) \
+		  $(FPWIDESTRING_DEPS_OS) $(FPWIDESTRING_DEPS_CPU)
+fpwidestring$(PPUEXT): $(FPWIDESTRING_DEPS)
+	$(COMPILER) $(FPWIDESTRING_OPT) $<
+System.FPWideString$(PPUEXT): $(NSINC)/System.FPWideString.pp $(FPWIDESTRING_DEPS)
+	$(COMPILER) -Fi$(OBJPASDIR) $(FPWIDESTRING_OPT) $<
+SORTBASE_DEPS=$(INC)/sortbase.pp $(OBJPASUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(SORTBASE_DEPS_OS) $(SORTBASE_DEPS_CPU) 
+sortbase$(PPUEXT) : $(SORTBASE_DEPS)
+	$(COMPILER) $(SORTBASE_OPT) $<
+System.SortBase$(PPUEXT) : $(NSINC)/System.SortBase.pp $(SORTBASE_DEPS)
+	$(COMPILER) $(SORTBASE_OPT) $<
+CALLSPEC_DEPS=$(INC)/callspec.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) \
+	      $(CALLSPEC_DEPS_OS) $(CALLSPEC_DEPS_CPU) 
+callspec$(PPUEXT) : $(CALLSPEC_DEPS)
+	$(COMPILER) $(CALLSPEC_OPT) $<
+System.CallSpec$(PPUEXT) : $(NSINC)/System.CallSpec.pp $(CALLSPEC_DEPS)
+	$(COMPILER) $(CALLSPEC_OPT) $<
+CMEM_DEPS=$(INC)/cmem.pp \
+	  $(SYSTEMUNIT)$(PPUEXT) \
+	  $(CMEM_DEPS_OS) $(CMEM_DEPS_CPU)
+cmem$(PPUEXT) : $(CMEM_DEPS)
+	$(COMPILER) $(CMEM_OPT) $<
+System.CMem$(PPUEXT) : $(NSINC)/System.CMem.pp $(CMEM_DEPS)
+	$(COMPILER) $(CMEM_OPT) $<
+BASEUNIX_DEPS=$(BASEUNIXDIR)/baseunix.pp  $(UNIXINC)/ctypes.inc  \
+	      $(UNIXINC)/bunxh.inc $(UNIXINC)/gensigset.inc $(OSDIR)/ptypes.inc $(OSDIR)/errno.inc \
+	      $(UNIXTYPEUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	      $(BASEUNIX_DEPS_OS) $(BASEUNIX_DEPS_CPU) 
+baseunix$(PPUEXT): $(BASEUNIX_DEPS)
+	$(COMPILER) $(BASEUNIX_OPT) $<
+UnixApi.Base$(PPUEXT): $(NSINC)/UnixApi.Base.pp $(BASEUNIX_DEPS) 
+	$(COMPILER) $(BASEUNIX_OPT) $<
+UNIX_DEPS=$(UNIXINC)/unix.pp \
+	 $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	 $(UNIXUTILUNIT)$(PPUEXT) \
+	 $(INC)/textrec.inc $(INC)/filerec.inc  $(UNIXINC)/timezone.inc \
+	 $(OSDIR)/unxconst.inc $(OSDIR)/unxfunc.inc \
+	 $(UNIX_DEPS_OS) $(UNIX_DEPS_CPU)
+unix$(PPUEXT): $(UNIX_DEPS)
+	$(COMPILER) $(UNIX_OPT) $<
+UnixApi.Unix$(PPUEXT) : $(NSINC)/UnixApi.Unix.pp $(UNIX_DEPS)
+	$(COMPILER) $(UNIX_OPT) $<
+SYSCALL_DEPS=$(UNIXINC)/syscall.pp \
+	     $(SYSTEMUNIT)$(PPUEXT) \
+	     $(SYSCALL_DEPS_OS) $(SYSCALL_DEPS_CPU)
+syscall$(PPUEXT) : $(SYSCALL_DEPS)
+	$(COMPILER) $(SYSCALL_OPT) $<
+UnixApi.SysCall$(PPUEXT) : $(NSINC)/UnixApi.SysCall.pp $(SYSCALL_DEPS) 
+	$(COMPILER) $(SYSCALL_OPT) $<
+UNIXUTIL_DEPS=$(UNIXINC)/unixutil.pp $(INC)/textrec.inc $(INC)/filerec.inc \
+	     $(SYSTEMUNIT)$(PPUEXT) \
+	     $(UNIXUTIL_DEPS_OS)
+unixutil$(PPUEXT) : $(UNIXUTIL_DEPS)
+	$(COMPILER) $(UNIXUTIL_OPT) $<
+UnixApi.Utils$(PPUEXT) : $(NSINC)/UnixApi.Utils.pp $(UNIXUTIL_DEPS) 
+	$(COMPILER) $(UNIXUTIL_OPT) $<
+ifndef PTYPESINCDIR
+  PTYPESINCDIR=$(OSDIR)
+endif
+UNIXTYPE_DEPS=$(UNIXINC)/unixtype.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) $(PTYPESINCDIR)/ptypes.inc $(UNIXINC)/ctypes.inc \
+	      $(UNIXTYPE_DEPS_OS) $(UNIXTYPE_DEPS_CPU)
+unixtype$(PPUEXT) : $(UNIXTYPE_DEPS)
+	$(COMPILER) $(UNIXTYPE_OPT) $(UNIXINC)/unixtype.pp
+UnixApi.Types$(PPUEXT) : $(NSINC)/UnixApi.Types.pp $(UNIXTYPE_DEPS)
+	$(COMPILER) $(UNIXTYPE_OPT) $<
+DL_DEPS=$(UNIXINC)/dl.pp \
+	$(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
+	$(DL_DEPS_OS) $(DL_DEPS_CPU)
+dl$(PPUEXT) : $(DL_DEPS)
+	$(COMPILER) $(DL_OPT) $<
+UnixApi.Dl$(PPUEXT) : $(NSINC)/UnixApi.Dl.pp $(DL_DEPS)
+	$(COMPILER) $(DL_OPT) $<
+ERRORS_DEPS=$(UNIXINC)/errors.pp \
+	    $(STRINGSUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	    $(ERRORS_DEPS_OS) $(ERRORS_DEPS_CPU)
+errors$(PPUEXT) : $(ERRORS_DEPS)
+	$(COMPILER) $(ERRORS_OPT) $<
+UnixApi.Errors$(PPUEXT) : $(NSINC)/UnixApi.Errors.pp $(ERRORS_DEPS)
+	$(COMPILER) $(ERRORS_OPT) $<
+CTHREADS_DEPS=$(UNIXINC)/cthreads.pp $(PTHREADINCDIR)/pthread.inc \
+	      $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	      $(BASEUNIXUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(DLUNIT)$(PPUEXT) \
+	      $(CTHREADS_DEPS_OS) $(CTHREADS_DEPS_CPU)
+cthreads$(PPUEXT) : $(CTHREADS_DEPS)
+	$(COMPILER) $(CTHREADS_OPT) $<
+UnixApi.CThreads$(PPUEXT) : $(NSINC)/UnixApi.CThreads.pp $(CTHREADS_DEPS)
+	$(COMPILER) $(CTHREADS_OPT) $<
+ifndef CWSTRINGDIR
+  CWSTRINGDIR=$(UNIXINC)
+  CWSSTRING_INC=$(RTLDEFSINCDIR)/rtldefs.inc
+endif
+CWSTRING_DEPS=$(CWSTRINGDIR)/cwstring.pp $(CWSTRING_INC) \
+	      $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(BASEUNIXUNIT)$(PPUEXT) \
+	      $(UNIXUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
+	      $(DYNLIBSUNIT)$(PPUEXT) $(UNIXCPUNIT)$(PPUEXT) \
+	      $(CWSTRING_DEPS_OS) $(CWSTRING_DEPS_CPU) 
+cwstring$(PPUEXT) : $(CWSTRING_DEPS)
+	$(COMPILER) $(CWSTRING_OPT) $<
+UnixApi.CWString$(PPUEXT) : $(NSINC)/UnixApi.CWString.pp $(CWSTRING_DEPS)
+	$(COMPILER) $(CWSTRING_OPT) $<
+ifneq ($(UNIXINC),)
+ifneq ($(OS_TARGET),macosclassic)
+  CTYPES_DEPS_OS+=$(UNIXTYPEUNIT)$(PPUEXT)
+endif
+endif
+CTYPES_DEPS=$(INC)/ctypes.pp \
+	    $(SYSTEMUNIT)$(PPUEXT) \
+	    $(CTYPES_DEPS_OS) $(CTYPES_DEPS_CPU)
+ctypes$(PPUEXT) : $(CTYPES_DEPS) 
+	$(COMPILER) $(CTYPES_OPT) $<
+System.CTypes$(PPUEXT) : $(NSINC)/System.CTypes.pp $(CTYPES_DEPS) 
+	$(COMPILER) $(CTYPES_OPT) $<
+OBJC_DEPS=$(INC)/objc.pp $(INC)/objc.pp $(INC)/objc1.inc $(INC)/objcnf.inc \
+	  $(SYSTEMUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
+	  $(OBJC_DEPS_OS) $(OBJC_DEPS_CPU)
+objc$(PPUEXT) : $(OBJC_DEPS)
+	$(COMPILER) $(OBJC_OPT) $<
+OBJCBASE_DEPS=$(INC)/objcbase.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) $(OBJCUNIT)$(PPUEXT) \
+	      $(OBJCBASE_DEPS_OS) $(OBJCBASE_DEPS_CPU)
+objcbase$(PPUEXT) : $(OBJCBASE_DEPS)
+	$(COMPILER) $(OBJCBASE_OPT) $<
+BLOCKRTL_DEPS=$(INC)/blockrtl.pp \
+	      $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(INITCUNIT)$(PPUEXT) $(CTYPESUNIT)$(PPUEXT) \
+	      $(BLOCKRTL_DEPS_OS) $(BLOCKRTL_DEPS_CPU)
+blockrtl$(PPUEXT) : $(BLOCKRTL_DEPS)
+	$(COMPILER) $(BLOCKRTL_OPT) $<
+ifndef WININCDIR
+  WININCDIR = $(WINDIR)/wininc
+endif
+WINDOWS_DEPS=windows.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) \
+	     $(WINDOWS_DEPS_OS) $(WINDOWS_DEPS_CPU)
+windows$(PPUEXT): $(WINDOWS_DEPS)
+	$(COMPILER) -Fi$(WININC) $(WINDOWS_OPT) $<
+WinApi.Windows$(PPUEXT): $(NSWINDOWSDIR)/WinApi.Windows.pp $(WINDOWS_DEPS)
+	$(COMPILER) -Fi$(WININC) -Fi$(WINDIR) $(WINDOWS_OPT) $<
+WINDIRS_DEPS=$(WINDIRSDIR)/windirs.pp $(WINDOWSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(WINDIRS_DEPS_OS) $(WINDIRS_DEPS_CPU)
+windirs$(PPUEXT): $(WINDIRS_DEPS)
+	$(COMPILER) $(WINDIRS_OPT) $<
+WinApi.WinDirs$(PPUEXT): $(NSWINDOWSDIR)/WinApi.WinDirs.pp $(WINDIRS_DEPS)
+	$(COMPILER) -Fi$(WININC) -Fi$(WINDIR) $(WINDIRS_OPT) $<
+ifndef WINMESSAGESDIR
+  WINMESSAGESDIR = $(WINDIR)
+endif
+ifndef WINMESSAGESINCDIR
+  WINMESSAGESINCDIR = $(WINDIR)/wininc
+endif
+MESSAGES_DEPS = $(WINMESSAGESDIR)/messages.pp $(WINMESSAGESINCDIR)/messages.inc $(WINDOWSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+		$(MESSAGES_DEPS_OS) $(MESSAGES_DEPS_CPU)
+messages$(PPUEXT): $(MESSAGES_DEPS)
+	$(COMPILER) -Fi$(WINMESSAGESINCDIR) $<
+WinApi.Messages$(PPUEXT): $(NSWINDOWSDIR)/WinApi.Messages.pp $(MESSAGES_DEPS)
+	$(COMPILER) -Fi$(WINMESSAGESINCDIR) -Fi$(WINMMESSAGESDIR) $<
+WINTYPES_DEPS = wintypes.pp wintypes.inc $(SYSTEMUNIT)$(PPUEXT) \
+	       $(WINTYPES_DEPS_OS) $(WINTYPES_DEPS_CPU)
+wintypes$(PPUEXT) : $(WINTYPES_DEPS)
+	$(COMPILER) $<
+WinApi.WinTypes$(PPUEXT) : $(NSWINDOWSDIR)/WinApi.WinTypes.pp $(WINTYPES_DEPS)
+	$(COMPILER) $<
+WINPROCS_DEPS = winprocs.pp winprocsh.inc winprocs.inc $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINTYPESUNIT)$(PPUEXT) \
+	       $(WINTYPES_DEPS_OS) $(WINTYPES_DEPS_CPU)
+winprocs$(PPUEXT) : $(WINPROCS_DEPS)
+	$(COMPILER) $<
+WinApi.Winprocs$(PPUEXT) : $(NSWINDOWSDIR)/WinApi.WinProcs.pp $(WINPROCS_DEPS)
+	$(COMPILER) $<
+WIN31_DEPS = win31.pp $(SYSTEMUNIT)$(PPUEXT) $(OBJPASUNIT)$(PPUEXT) $(WINTYPESUNIT)$(PPUEXT) \
+	       $(WINTYPES_DEPS_OS) $(WINTYPES_DEPS_CPU)
+win31$(PPUEXT) : $(WIN31_DEPS)
+	$(COMPILER) $<
+WinApi.Win31$(PPUEXT) : $(NSWINDOWSDIR)/WinApi.Win31.pp $(WINPROCS_DEPS)
+	$(COMPILER) $<
+ifeq ($(filter -dFPC_USE_LIBC,$(FPCOPT)),)
+  SYSCTL_DEPS_OS+=$(SYSCALLUNIT)$(PPUEXT)
+endif
+SYSCTL_DEPS=$(BSDINC)/sysctl.pp $(SYSTEMUNIT)$(PPUEXT) $(UNIXTYPEUNIT)$(PPUEXT) \
+	    $(SYSCTL_DEPS_OS) $(SYSCTL_DEPS_CPU)
+sysctl$(PPUEXT) : $(SYSCTL_DEPS)
+	$(COMPILER) $(SYSCTL_OPT) $<
+BsdApi.SysCtl$(PPUEXT) : $(NSBSDDIR)/BsdApi.SysCtl.pp $(SYSCTL_DEPS)
+	$(COMPILER) $(SYSCTL_OPT) $<
+BSD_DEPS=$(BSDINC)/bsd.pas $(INITCUNIT)$(PPUEXT) $(UNIXUNIT)$(PPUEXT) \
+	 $(BSD_DEPS_OS) $(BSD_DEPS_CPU)
+bsd$(PPUEXT): $(BSD_DEPS)
+	$(COMPILER) $(BSD_OPT) $<
+BsdApi$(PPUEXT): $(NSBSDDIR)/BsdApi.pp $(BSD_DEPS)
+	$(COMPILER) $(BSD_OPT) $<
+DOSCALLS_DEPS = $(OS2DIR)/doscalls.pas $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(DOSCALLS_DEPS_OS) $(DOSCALLS_DEPS_CPU)
+doscalls$(PPUEXT) : $(DOSCALLS_DEPS)
+	$(COMPILER) $<
+OS2Api.doscalls$(PPUEXT) : $(NSOS2DIR)/OS2Api.doscalls.pas $(DOSCALLS_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+VIOCALLS_DEPS = $(OS2DIR)/viocalls.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(VIOCALLS_DEPS_OS) $(VIOCALLS_DEPS_CPU)
+viocalls$(PPUEXT) : $(VIOCALLS_DEPS)
+	$(COMPILER) $<
+OS2Api.viocalls$(PPUEXT) : $(NSOS2DIR)/OS2Api.viocalls.pas $(VIOCALLS_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+SO32DLL_DEPS = $(OS2DIR)/so32dll.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(SO32DLL_DEPS_OS) $(SO32DLL_DEPS_CPU)
+so32dll$(PPUEXT) : $(SO32DLL_DEPS)
+	$(COMPILER) $<
+OS2Api.so32dll$(PPUEXT) : $(NSOS2DIR)/OS2Api.so32dll.pas $(SO32DLL_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+KBDCALLS_DEPS = $(OS2DIR)/kbdcalls.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(KBDCALLS_DEPS_OS) $(KBDCALLS_DEPS_CPU)
+kbdcalls$(PPUEXT) : $(KBDCALLS_DEPS)
+	$(COMPILER) $<
+OS2Api.kbdcalls$(PPUEXT) : $(NSOS2DIR)/OS2Api.kbdcalls.pas $(KBDCALLS_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+MOUCALLS_DEPS = $(OS2DIR)/moucalls.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(MOUCALLS_DEPS_OS) $(MOUCALLS_DEPS_CPU)
+moucalls$(PPUEXT) : $(MOUCALLS_DEPS)
+	$(COMPILER) $<
+OS2Api.moucalls$(PPUEXT) : $(NSOS2DIR)/OS2Api.moucalls.pas $(MOUCALLS_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+MONCALLS_DEPS = $(OS2DIR)/moncalls.pas $(STRINGSUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(MONCALLS_DEPS_OS) $(MONCALLS_DEPS_CPU)
+moncalls$(PPUEXT) : $(MONCALLS_DEPS)
+	$(COMPILER) $<
+OS2Api.moncalls$(PPUEXT) : $(NSOS2DIR)/OS2Api.moncall.pas $(MONCALLS_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+OS2DEF_DEPS = $(OS2DIR)/os2def.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(OS2DEF_DEPS_OS) $(OS2DEF_DEPS_CPU)
+os2def$(PPUEXT) : $(OS2DEF_DEPS)
+	$(COMPILER) $<
+OS2Api.os2def$(PPUEXT) : $(NSOS2DIR)/OS2Api.os2def.pas $(OS2DEF_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+DOSCALL2_DEPS = $(OS2DIR)/doscall2.pas $(DOSCALLSUNIT)$(PPUEXT) $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(DOSCALL2_DEPS_OS) $(DOSCALL2_DEPS_CPU)
+doscall2$(PPUEXT) : $(DOSCALL2_DEPS)
+	$(COMPILER) $<
+OS2Api.doscall2$(PPUEXT) : $(NSOS2DIR)/OS2Api.doscall2.pas $(DOSCALL2_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMWIN_DEPS = $(OS2DIR)/pmwin.pas $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMWIN_DEPS_OS) $(PMWIN_DEPS_CPU)
+pmwin$(PPUEXT) : $(PMWIN_DEPS) 
+	$(COMPILER) $<
+OS2Api.pmwin$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmwin.pas $(PMWIN_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMBITMAP_DEPS = $(OS2DIR)/pmbitmap.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMBITMAP_DEPS_OS) $(PMBITMAP_DEPS_CPU)
+pmbitmap$(PPUEXT) : $(PMBITMAP_DEPS) 
+	$(COMPILER) $<
+OS2Api.pmbitmap$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmbitmap.pas $(PMBITMAP_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMGPI_DEPS = $(OS2DIR)/pmgpi.pas $(PMBITMAPUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMGPI_DEPS_OS) $(PMGPI_DEPS_CPU)
+pmgpi$(PPUEXT) : $(PMGPI_DEPS)
+	$(COMPILER) $<
+OS2Api.pmgpi$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmgpi.pas $(PMGPI_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMSTDDLG_DEPS = $(OS2DIR)/pmstddlg.pas $(OS2DEFUNIT)$(PPUEXT) $(DOSCALLSUNIT)$(PPUEXT) \
+	$(PMWINUNIT)$(PPUEXT) $(PMGPIUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	$(PMSTDDLG_DEPS_OS) $(PMSTDDLG_DEPS_CPU)
+pmstddlg$(PPUEXT) : $(PMSTDDLG_DEPS)
+	$(COMPILER) $<
+OS2Api.pmstddlg$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmstddlg.pas $(PMSTDDLG_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMHELP_DEPS = $(OS2DIR)/pmhelp.pas $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMHELP_DEPS_OS) $(PMHELP_DEPS_CPU)
+pmhelp$(PPUEXT) : $(PMHELP_DEPS)
+	$(COMPILER) $<
+OS2Api.pmhelp$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmhelp.pas $(PMHELP_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMDEV_DEPS = $(OS2DIR)/pmdev.pas $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMDEV_DEPS_OS) $(PMDEV_DEPS_CPU)
+pmdev$(PPUEXT) : $(PMDEV_DEPS)
+	$(COMPILER) $<
+OS2Api.pmdev$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmdev.pas $(PMDEV_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMSPL_DEPS = $(OS2DIR)/pmspl.pas $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMSPL_DEPS_OS) $(PMSPL_DEPS_CPU)
+pmspl$(PPUEXT) : $(PMSPL_DEPS)
+	$(COMPILER) $<
+OS2Api.pmspl$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmspl.pas $(PMSPL_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMSHL_DEPS = $(OS2DIR)/pmshl.pas $(OS2DEFUNIT)$(PPUEXT) $(PMWINUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMSHL_DEPS_OS) $(PMSHL_DEPS_CPU)
+pmshl$(PPUEXT) : $(PMSHL_DEPS)
+	$(COMPILER) $<
+OS2Api.pmshl$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmshl.pas $(PMSHL_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMWP_DEPS = $(OS2DIR)/pmwp.pas $(OS2DEFUNIT)$(PPUEXT) $(PMWINUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMWP_DEPS_OS) $(PMWP_DEPS_CPU)
+pmwp$(PPUEXT) : $(PMWP_DEPS)
+	$(COMPILER) $<
+OS2Api.pmwp$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmwp.pas $(PMWP_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMWSOCK_DEPS = $(OS2DIR)/pmwsock.pas $(OS2DEFUNIT)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMWSOCK_DEPS_OS) $(PMWSOCK_DEPS_CPU)
+pmwsock$(PPUEXT) : $(PMWSOCK_DEPS)
+	$(COMPILER) $<
+OS2Api.pmwsock$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmwsock.pas $(PMWSOCK_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+PMBIDI_DEPS = $(OS2DIR)/pmbidi.pas $(OS2DEFUNIT)$(PPUEXT) $(PMWIN)$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
+	     $(PMBIDI_DEPS_OS) $(PMBIDI_DEPS_CPU)
+pmbidi$(PPUEXT) : $(PMBIDI_DEPS)
+	$(COMPILER) $<
+OS2Api.pmbidi$(PPUEXT) : $(NSOS2DIR)/OS2Api.pmbidi.pas $(PMBIDI_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+EXE_DEPS = $(OS2DIR)/exe.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(EXE_DEPS_OS) $(EXE_DEPS_CPU)
+exe$(PPUEXT) : $(EXE_DEPS)
+	$(COMPILER) $<
+OS2Api.exe$(PPUEXT) : $(NSOS2DIR)/OS2Api.exe.pas $(EXE_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
+NEWEXE_DEPS = $(OS2DIR)/newexe.pas $(SYSTEMUNIT)$(PPUEXT) \
+	     $(NEWEXE_DEPS_OS) $(NEWEXE_DEPS_CPU)
+newexe$(PPUEXT) : $(NEWEXE_DEPS)
+	$(COMPILER) $<
+OS2Api.newexe$(PPUEXT) : $(NSOS2DIR)/OS2Api.newexe.pas $(NEWEXE_DEPS)
+	$(COMPILER) -Fi$(OS2DIR) $<
 .NOTPARALLEL:
 include $(INC)/makefile.inc
 SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))