From f7526d0d36457004d76aa66937457b8f4e8a66a0 Mon Sep 17 00:00:00 2001 From: Jeppe Johansen Date: Sun, 22 Mar 2015 13:55:20 +0000 Subject: [PATCH] Add classes and stub thread support in the embedded rtl. git-svn-id: trunk@30274 - --- .gitattributes | 4 + rtl/embedded/Makefile | 162 +++++++++++------------ rtl/embedded/Makefile.fpc | 14 +- rtl/embedded/classes.pp | 46 +++++++ rtl/embedded/dos.pp | 263 ++++++++++++++++++++++++++++++++++++++ rtl/embedded/rtl.cfg | 6 + rtl/embedded/system.pp | 5 +- rtl/embedded/systhrd.inc | 21 +++ rtl/embedded/sysutils.pp | 17 +++ rtl/embedded/tthread.inc | 111 ++++++++++++++++ 10 files changed, 562 insertions(+), 87 deletions(-) create mode 100644 rtl/embedded/classes.pp create mode 100644 rtl/embedded/dos.pp create mode 100644 rtl/embedded/systhrd.inc create mode 100644 rtl/embedded/tthread.inc diff --git a/.gitattributes b/.gitattributes index 5d3f83aca4..23dbab20f4 100644 --- a/.gitattributes +++ b/.gitattributes @@ -8179,7 +8179,9 @@ rtl/embedded/avr/start.inc svneol=native#text/plain rtl/embedded/buildrtl.lpi svneol=native#text/plain rtl/embedded/buildrtl.pp svneol=native#text/plain rtl/embedded/check.inc svneol=native#text/plain +rtl/embedded/classes.pp svneol=native#text/plain rtl/embedded/consoleio.pp svneol=native#text/pascal +rtl/embedded/dos.pp svneol=native#text/plain rtl/embedded/empty.cfg svneol=native#text/plain rtl/embedded/heapmgr.pp svneol=native#text/pascal rtl/embedded/i386/multiboot.pp svneol=native#text/plain @@ -8191,7 +8193,9 @@ rtl/embedded/sysheap.inc svneol=native#text/plain rtl/embedded/sysos.inc svneol=native#text/plain rtl/embedded/sysosh.inc svneol=native#text/plain rtl/embedded/system.pp svneol=native#text/plain +rtl/embedded/systhrd.inc svneol=native#text/plain rtl/embedded/sysutils.pp svneol=native#text/pascal +rtl/embedded/tthread.inc svneol=native#text/plain rtl/emx/Makefile svneol=native#text/plain rtl/emx/Makefile.fpc svneol=native#text/plain rtl/emx/dos.pas svneol=native#text/plain diff --git a/rtl/embedded/Makefile b/rtl/embedded/Makefile index 4f5ad7ead3..1a6cd5be17 100644 --- a/rtl/embedded/Makefile +++ b/rtl/embedded/Makefile @@ -1,5 +1,5 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2015-01-04 rev 29399] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2015-02-24 rev 29972] # default: all MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-dragonfly arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-msdos aarch64-darwin @@ -383,241 +383,241 @@ endif OBJPASDIR=$(RTL)/objpas GRAPHDIR=$(INC)/graph ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-nativent) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-iphonesim) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-android) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-aros) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-wii) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-aix) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-iphonesim) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-dragonfly) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),arm-android) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-aix) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),mips-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),mipsel-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),mipsel-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),mipsel-android) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),jvm-java) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),jvm-android) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i8086-msdos) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),aarch64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +override TARGET_UNITS+=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) dos sysutils classes math typinfo ctypes charset cpall getopts types rtlconsts sysconst lineinfo fgl endif ifeq ($(FULL_TARGET),i386-linux) override TARGET_LOADERS+=$(LOADERS) @@ -2575,6 +2575,8 @@ rtlconsts$(PPUEXT) : $(OBJPASDIR)/rtlconsts.pp $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) $(OBJPASDIR)/rtlconsts.pp sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) $(OBJPASDIR)/sysconst.pp +fgl$(PPUEXT): $(OBJPASDIR)/fgl.pp objpas$(PPUEXT) types$(PPUEXT) system$(PPUEXT) sysutils$(PPUEXT) + $(COMPILER) -Sg $(OBJPASDIR)/fgl.pp $(REDIR) dateutil$(PPUEXT) : $(OBJPASDIR)/dateutil.pp $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutil.pp macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) diff --git a/rtl/embedded/Makefile.fpc b/rtl/embedded/Makefile.fpc index 859d9167be..c007b23448 100644 --- a/rtl/embedded/Makefile.fpc +++ b/rtl/embedded/Makefile.fpc @@ -12,12 +12,13 @@ loaders=$(LOADERS) # not all targets include enough features to build all units so # the common units which are not compiled for all CPUs are stored in # CPU_SPECIFIC_COMMON_UNITS -units=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) +units=$(SYSTEMUNIT) $(CPU_UNITS) uuchar objpas macpas iso7185 strings heapmgr consoleio $(CPU_SPECIFIC_COMMON_UNITS) \ # macpas iso7185 strings -# dos \ -# classes math typinfo varutils fmtbcd \ -# charset cpall ucomplex getopts matrix \ -# variants types rtlconsts sysconst dateutil + dos \ + sysutils \ + classes math typinfo ctypes \ + charset cpall getopts \ + types rtlconsts sysconst lineinfo fgl #implicitunits=exeinfo \ # cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 \ # cp437 cp646 cp850 cp856 cp866 cp874 cp932 cp936 cp949 cp950 cp8859_1 cp8859_5 cp8859_2 cp852 @@ -210,6 +211,9 @@ rtlconsts$(PPUEXT) : $(OBJPASDIR)/rtlconsts.pp $(SYSTEMUNIT)$(PPUEXT) sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) $(OBJPASDIR)/sysconst.pp +fgl$(PPUEXT): $(OBJPASDIR)/fgl.pp objpas$(PPUEXT) types$(PPUEXT) system$(PPUEXT) sysutils$(PPUEXT) + $(COMPILER) -Sg $(OBJPASDIR)/fgl.pp $(REDIR) + dateutil$(PPUEXT) : $(OBJPASDIR)/dateutil.pp $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutil.pp diff --git a/rtl/embedded/classes.pp b/rtl/embedded/classes.pp new file mode 100644 index 0000000000..417d5d3514 --- /dev/null +++ b/rtl/embedded/classes.pp @@ -0,0 +1,46 @@ +{ + This file is part of the Free Component Library (FCL) + Copyright (c) 1999-2002 by the Free Pascal development team + + Classes unit for Embedded target + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} + +{$mode objfpc} + +unit Classes; + +interface + +uses + sysutils, + rtlconsts, + types, +{$ifdef FPC_TESTGENERICS} + fgl, +{$endif} + typinfo; + +{$i classesh.inc} + + +implementation + +{ OS - independent class implementations are in /inc directory. } +{$i classes.inc} + + +initialization + CommonInit; + +finalization + CommonCleanup; + +end. diff --git a/rtl/embedded/dos.pp b/rtl/embedded/dos.pp new file mode 100644 index 0000000000..7e7213b6b9 --- /dev/null +++ b/rtl/embedded/dos.pp @@ -0,0 +1,263 @@ +{ + This file is part of the Free Pascal run time library. + Copyright (c) 2004 by Karoly Balogh for Genesi S.a.r.l. + + Heavily based on the Commodore Amiga/m68k RTL by Nils Sjoholm and + Carl Eric Codere + + MorphOS port was done on a free Pegasos II/G4 machine + provided by Genesi S.a.r.l. + + This unit is based on the MorphOS one and is adapted for Gameboy Advance + simply by stripping out all stuff inside funcs and procs. + Copyright (c) 2006 by Francesco Lombardi + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} + +unit Dos; + +interface + +{$MODE objfpc} + +type + SearchRec = Packed Record + AnchorPtr : Pointer; { Pointer to the Anchorpath structure } + Fill: Array[1..15] of Byte; {future use} + {End of replacement for fill} + Attr : BYTE; {attribute of found file} + Time : LongInt; {last modify date of found file} + Size : LongInt; {file size of found file} + Name : String[255]; {name of found file} + End; + +{$I dosh.inc} + +implementation + +{$I dos.inc} + +{****************************************************************************** + --- Internal routines --- +******************************************************************************} + +function dosLock(const name: String; accessmode: Longint) : LongInt; +begin + result := -1; +end; + +function IsLeapYear(Source : Word) : Boolean; +begin + result := false; +end; + +function dosSetProtection(const name: string; mask:longint): Boolean; +begin + result := false; +end; + +function dosSetFileDate(name: string): Boolean; +begin + result := false; +end; + + +{****************************************************************************** + --- Info / Date / Time --- +******************************************************************************} + +function DosVersion: Word; +begin + result := 0; +end; + +procedure NewList (); +begin +end; + +function CreateExtIO (size: Longint): integer; +begin + result := -1; +end; + +procedure DeleteExtIO (); +begin +end; + +function Createport(name : PChar; pri : longint): integer; +begin + result := -1; +end; + +procedure DeletePort (); +begin +end; + + +function Create_Timer(theUnit : longint) : integer; +begin + result := -1; +end; + +Procedure Delete_Timer(); +begin +end; + +function set_new_time(secs, micro : longint): longint; +begin + result := -1; +end; + +function get_sys_time(): longint; +begin + result := -1; +end; + +procedure GetDate(Var Year, Month, MDay, WDay: Word); +begin +end; + +procedure SetDate(Year, Month, Day: Word); +begin +end; + +procedure GetTime(Var Hour, Minute, Second, Sec100: Word); +begin +end; + + +Procedure SetTime(Hour, Minute, Second, Sec100: Word); +begin +end; + + + +{****************************************************************************** + --- Exec --- +******************************************************************************} +procedure Exec(const Path: PathStr; const ComLine: ComStr); +begin +end; + + +{****************************************************************************** + --- Disk --- +******************************************************************************} + +Function DiskFree(Drive: Byte): int64; +Begin + result := -1; +end; + + + +Function DiskSize(Drive: Byte): int64; +Begin + result := -1; +end; + + +procedure FindFirst(const Path: PathStr; Attr: Word; Var f: SearchRec); +begin +end; + + +procedure FindNext(Var f: SearchRec); +begin +end; + +procedure FindClose(Var f: SearchRec); +begin +end; + + +{****************************************************************************** + --- File --- +******************************************************************************} + + +function FSearch(path: PathStr; dirlist: String) : PathStr; +begin + result := ''; +end; + + +Procedure getftime (var f; var time : longint); +begin +end; + + +Procedure setftime(var f; time : longint); +Begin +End; + +procedure getfattr(var f; var attr : word); +begin +End; + + +procedure setfattr(var f; attr : word); +begin +end; + + +{****************************************************************************** + --- Environment --- +******************************************************************************} + +function getpathstring: string; +begin + result := ''; +end; + + +function EnvCount: Longint; +begin + result := -1; +end; + + +function EnvStr(Index: LongInt): String; +begin + result := ''; +end; + + + +function GetEnv(envvar : String): String; +begin + result := ''; +end; + + +procedure AddDevice(str : String); +begin +end; + +function MakeDeviceName(str : pchar): string; +begin + result := ''; +end; + +function IsInDeviceList(str : string): boolean; +begin + result := false; +end; + +procedure ReadInDevices; +begin +end; + +begin +// DosError:=0; +// numberofdevices := 0; +// StrOfPaths := ''; +// ReadInDevices; +end. diff --git a/rtl/embedded/rtl.cfg b/rtl/embedded/rtl.cfg index 08d5bf5fe9..e6396f575f 100644 --- a/rtl/embedded/rtl.cfg +++ b/rtl/embedded/rtl.cfg @@ -44,10 +44,12 @@ -SfRTTI -SfWIDESTRINGS -SfDYNARRAYS +-SfTHREADING -SfVARIANTS -SfOBJECTS -SfCOMMANDARGS -SfRANDOM +-SfRESOURCES #endif CPUI386 # arm is powerful enough to handle most object pascal constructs @@ -60,10 +62,12 @@ -SfRTTI -SfWIDESTRINGS -SfDYNARRAYS +-SfTHREADING -SfVARIANTS -SfOBJECTS -SfCOMMANDARGS -SfRANDOM +-SfRESOURCES #endif CPUARM # mipsel is powerful enough to handle most object pascal constructs @@ -76,9 +80,11 @@ -SfRTTI -SfWIDESTRINGS -SfDYNARRAYS +-SfTHREADING -SfVARIANTS -SfOBJECTS -SfCOMMANDARGS -SfRANDOM +-SfRESOURCES #endif CPUMIPSEL diff --git a/rtl/embedded/system.pp b/rtl/embedded/system.pp index 6c6dfdcb6a..93b0d6c3f2 100644 --- a/rtl/embedded/system.pp +++ b/rtl/embedded/system.pp @@ -22,8 +22,9 @@ Unit System; {$define FPC_IS_SYSTEM} {$define HAS_CMDLINE} -{$define USE_NOTHREADMANAGER} +{ $define USE_NOTHREADMANAGER} +{$define DISABLE_NO_THREAD_MANAGER} { Do not use standard memory manager } {$define HAS_MEMORYMANAGER} @@ -245,7 +246,7 @@ begin {$ifdef FPC_HAS_FEATURE_THREADING} { threading } - InitSystemThreads; + //InitSystemThreads; // Empty call for embedded anyway {$endif FPC_HAS_FEATURE_THREADING} {$ifdef FPC_HAS_FEATURE_WIDESTRINGS} diff --git a/rtl/embedded/systhrd.inc b/rtl/embedded/systhrd.inc new file mode 100644 index 0000000000..b2dacab49a --- /dev/null +++ b/rtl/embedded/systhrd.inc @@ -0,0 +1,21 @@ +{ + This file is part of the Free Pascal run time library. + Copyright (c) 2002 by Peter Vreman, + member of the Free Pascal development team. + + Embedded empty threading support implementation + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} + +Procedure InitSystemThreads; +begin +end; + + diff --git a/rtl/embedded/sysutils.pp b/rtl/embedded/sysutils.pp index 61ab9e31dc..0e75d29218 100644 --- a/rtl/embedded/sysutils.pp +++ b/rtl/embedded/sysutils.pp @@ -20,6 +20,9 @@ unit sysutils; interface +{$DEFINE HAS_SLEEP} +{$DEFINE HAS_OSERROR} + { used OS file system APIs use ansistring } {$define SYSUTILS_HAS_ANSISTR_FILEUTIL_IMPL} { OS has an ansistring/single byte environment variable API } @@ -28,6 +31,9 @@ interface { Include platform independent interface part } {$i sysutilh.inc} + var + SleepHandler: procedure(ms: cardinal) = nil; + implementation uses @@ -193,6 +199,17 @@ end; Misc Functions ****************************************************************************} +procedure sysBeep; +begin +end; + + +Procedure Sleep(Milliseconds : Cardinal); +begin + if assigned(SleepHandler) then + SleepHandler(Milliseconds); +end; + Function GetLastOSError : Integer; begin Result:=-1; diff --git a/rtl/embedded/tthread.inc b/rtl/embedded/tthread.inc new file mode 100644 index 0000000000..d47e8823f9 --- /dev/null +++ b/rtl/embedded/tthread.inc @@ -0,0 +1,111 @@ +{ + This file is part of the Free Component Library (FCL) + Copyright (c) 1999-2002 by the Free Pascal development team + + See the file COPYING.FPC, included in this distribution, + for details about the copyright. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + **********************************************************************} + +{****************************************************************************} +{* TThread *} +{****************************************************************************} + +{$WARNING This file is only a stub, and will not work!} + +const + ThreadCount: longint = 0; + +(* Implementation of exported functions *) + +procedure AddThread (T: TThread); +begin + Inc (ThreadCount); +end; + + +procedure RemoveThread (T: TThread); +begin + Dec (ThreadCount); +end; + + +procedure TThread.CallOnTerminate; +begin + FOnTerminate (Self); +end; + + +function TThread.GetPriority: TThreadPriority; +begin + result := tpNormal; +end; + + +procedure TThread.SetPriority(Value: TThreadPriority); +begin + +end; + + +procedure TThread.SetSuspended(Value: Boolean); +begin + if Value <> FSuspended then + begin + if Value then Suspend else Resume; + end; +end; + + +procedure TThread.DoTerminate; +begin + if Assigned (FOnTerminate) then Synchronize (@CallOnTerminate); +end; + + +procedure TThread.SysCreate(CreateSuspended: Boolean; + const StackSize: SizeUInt); +var + Flags: cardinal; +begin + AddThread (Self); +end; + + +procedure TThread.SysDestroy; +begin + if not FFinished and not Suspended then + begin + Terminate; + WaitFor; + end; +end; + +procedure TThread.Resume; +begin + +end; + + +procedure TThread.Suspend; +begin + +end; + + +procedure TThread.Terminate; +begin + FTerminated := true; +end; + + +function TThread.WaitFor: Integer; +begin + result := -1; +end; + +