Browse Source

+ added unit ctypes to the WASI rtl

git-svn-id: branches/wasm@48425 -
nickysn 4 years ago
parent
commit
a3f383ed95
2 changed files with 112 additions and 107 deletions
  1. 107 105
      rtl/wasi/Makefile
  2. 5 2
      rtl/wasi/Makefile.fpc

+ 107 - 105
rtl/wasi/Makefile

@@ -366,319 +366,319 @@ ifdef NO_EXCEPTIONS_IN_SYSTEM
 override FPCOPT+=-dNO_EXCEPTIONS_IN_SYSTEM
 endif
 ifeq ($(FULL_TARGET),i386-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-go32v2)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-win32)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-os2)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-freebsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-beos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-haiku)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-solaris)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-netware)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-openbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-wdosx)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-darwin)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-emx)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-watcom)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-netwlibc)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-wince)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-symbian)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-nativent)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-iphonesim)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i386-aros)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-amiga)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-atari)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-palmos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-macosclassic)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),m68k-sinclairql)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-amiga)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-macosclassic)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-darwin)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-morphos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-wii)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc-aix)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),sparc-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),sparc-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),sparc-solaris)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),sparc-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-freebsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-haiku)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-solaris)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-openbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-darwin)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-win64)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-iphonesim)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-aros)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),x86_64-dragonfly)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-netbsd)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-palmos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-wince)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-gba)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-nds)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-symbian)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-aros)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-freertos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),arm-ios)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc64-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc64-darwin)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc64-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),powerpc64-aix)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),avr-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),armeb-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),armeb-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),mips-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),mipsel-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),mipsel-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),mipsel-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),mips64el-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),jvm-java)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),jvm-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i8086-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i8086-msdos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),i8086-win16)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),aarch64-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),aarch64-darwin)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),aarch64-win64)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),aarch64-android)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),aarch64-ios)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),wasm32-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),wasm32-wasi)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),sparc64-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),riscv32-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),riscv32-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),riscv64-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),riscv64-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),xtensa-linux)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),xtensa-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),xtensa-freertos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),z80-embedded)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),z80-zxspectrum)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),z80-msxdos)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 ifeq ($(FULL_TARGET),z80-amstradcpc)
-override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi
+override TARGET_UNITS+=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 endif
 override INSTALL_FPCPACKAGE=y
 ifeq ($(FULL_TARGET),i386-linux)
@@ -2625,3 +2625,5 @@ si_prc$(PPUEXT) : si_prc.pp $(SYSTEMUNIT)$(PPUEXT)
 wasiapi$(PPUEXT) : wasiapi.pp wasiinc/wasitypes.inc wasiinc/wasiprocs.inc $(SYSTEMUNIT)$(PPUEXT)
 	$(COMPILER) $< -Fiwasiinc
 	$(EXECPPAS)
+ctypes$(PPUEXT) :  $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)
+	$(COMPILER) $<

+ 5 - 2
rtl/wasi/Makefile.fpc

@@ -5,7 +5,7 @@
 main=rtl
 [target]
 loaders=
-units=system $(SYSINIT_UNITS) objpas wasiapi
+units=system $(SYSINIT_UNITS) objpas wasiapi ctypes
 
 [require]
 nortl=y
@@ -69,9 +69,12 @@ si_prc$(PPUEXT) : si_prc.pp $(SYSTEMUNIT)$(PPUEXT)
 	$(COMPILER) $<
 
 #
-# WASI API Unit
+# Other $(SYSTEMUNIT)-dependent RTL Units
 #
 
 wasiapi$(PPUEXT) : wasiapi.pp wasiinc/wasitypes.inc wasiinc/wasiprocs.inc $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) $< -Fiwasiinc
         $(EXECPPAS)
+
+ctypes$(PPUEXT) :  $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)
+	$(COMPILER) $<