From ec841a86f5171cb4a5dc8a4df4ccc51fa2af04d9 Mon Sep 17 00:00:00 2001 From: Legolas Date: Sun, 6 Dec 2009 19:37:58 +0000 Subject: [PATCH] * Updated to devkitARM r27 and libnds 1.4.0 git-svn-id: trunk@14344 - --- .gitattributes | 2 + packages/libgbafpc/Makefile.fpc | 5 +- .../examples/graphics/ansi_console/console.pp | 2 +- packages/libgbafpc/src/gba/gba_helper.inc | 7 +- packages/libgbafpc/src/gba/gba_interrupt.inc | 4 +- .../audio/maxmod/audio_modes/Makefile | 902 +------------- .../audio/maxmod/audio_modes/Makefile.fpc | 17 +- .../audio/maxmod/basic_sound/Makefile | 1073 +---------------- .../audio/maxmod/basic_sound/Makefile.fpc | 2 +- .../song_events_example2.pp | 7 +- .../debugging/exceptionTest/exceptionTest.pp | 2 +- .../src/dswifi/inc/dswifi_version.inc | 4 +- packages/libndsfpc/src/fat/fat.inc | 2 +- .../libndsfpc/src/nds/arm9/exceptions.inc | 2 +- packages/libndsfpc/src/nds/memory.inc | 28 +- packages/libndsfpc/src/nds/system.inc | 11 +- rtl/gba/Makefile | 210 +--- rtl/gba/Makefile.fpc | 7 +- rtl/gba/libc.inc | 56 + rtl/gba/libch.inc | 199 +++ rtl/gba/system.pp | 27 +- rtl/nds/cprt07.as | 7 +- rtl/nds/cprt09.as | 150 +-- rtl/nds/prt07.as | 8 +- rtl/nds/prt09.as | 150 +-- 25 files changed, 430 insertions(+), 2454 deletions(-) create mode 100644 rtl/gba/libc.inc create mode 100644 rtl/gba/libch.inc diff --git a/.gitattributes b/.gitattributes index 7fc4f181a3..952f954b5a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -6269,6 +6269,8 @@ rtl/gba/cprt0.as svneol=native#text/plain rtl/gba/dos.pp svneol=native#text/plain rtl/gba/gbabios.inc svneol=native#text/plain rtl/gba/gbabiosh.inc svneol=native#text/plain +rtl/gba/libc.inc svneol=native#text/plain +rtl/gba/libch.inc svneol=native#text/plain rtl/gba/prt0.as svneol=native#text/plain rtl/gba/sysdir.inc svneol=native#text/plain rtl/gba/sysfile.inc svneol=native#text/plain diff --git a/packages/libgbafpc/Makefile.fpc b/packages/libgbafpc/Makefile.fpc index aa8b8bc847..ec7e23d745 100644 --- a/packages/libgbafpc/Makefile.fpc +++ b/packages/libgbafpc/Makefile.fpc @@ -3,13 +3,12 @@ # [package] -name=libgbafpc -version=2.5.1 +version=2.4.0 [target] loaders=core_asm units=gba maxmod -exampledirs=examples +#exampledirs=examples [compiler] diff --git a/packages/libgbafpc/examples/graphics/ansi_console/console.pp b/packages/libgbafpc/examples/graphics/ansi_console/console.pp index c8cf3d5935..eb35a56651 100644 --- a/packages/libgbafpc/examples/graphics/ansi_console/console.pp +++ b/packages/libgbafpc/examples/graphics/ansi_console/console.pp @@ -2,7 +2,7 @@ program console; uses gba; - + begin // the vblank interrupt must be enabled for VBlankIntrWait() to work // since the default dispatcher handles the bios flags no vblank handler diff --git a/packages/libgbafpc/src/gba/gba_helper.inc b/packages/libgbafpc/src/gba/gba_helper.inc index 78d76887f5..4908a7a8f6 100644 --- a/packages/libgbafpc/src/gba/gba_helper.inc +++ b/packages/libgbafpc/src/gba/gba_helper.inc @@ -48,7 +48,7 @@ {$ifdef GBA_INTERFACE} {$H+} - + (* procedure memset16(dest: pointer; hw: word; hwcount: dword); cdecl; external; procedure memcpy16(dest: pointer; const src: pointer; hwcount: dword); cdecl; external; @@ -71,7 +71,7 @@ function realloc(ptr: pointer; size: integer): pointer; cdecl; external; procedure free(ptr: pointer); cdecl; external; function memcpy(dest: pointer; src: pointer; n: integer): pointer; cdecl; external; -(* libc file handling types and routines *) + type _FILE = record firstCluster: cuint; @@ -105,7 +105,6 @@ function ftell(stream: P_FILE): longint; cdecl; external; function fseek(stream: P_FILE; off: longint; whence: longint): longint; cdecl; external; function fclose(stream: P_FILE): longint; cdecl; external; -(* Directory iterator for mantaining state between dir* calls *) type DIR_ITER = record device: cint; @@ -160,7 +159,7 @@ function diropen(const path: pchar): PDIR_ITER; cdecl; external; function dirreset(dirState: PDIR_ITER): cint; cdecl; external; function dirnext(dirState: PDIR_ITER; filename: pchar; filestat: Pstat): cint; cdecl; external; function dirclose(dirState: PDIR_ITER): cint; cdecl; external; - + *) procedure DebugPrint(s: string); assembler; inline; function GBAIntToStr(i: integer): string; diff --git a/packages/libgbafpc/src/gba/gba_interrupt.inc b/packages/libgbafpc/src/gba/gba_interrupt.inc index c888fb3968..37bdb67957 100644 --- a/packages/libgbafpc/src/gba/gba_interrupt.inc +++ b/packages/libgbafpc/src/gba/gba_interrupt.inc @@ -49,7 +49,7 @@ type IntTable = record handler: IntFn; - mask: u32; + mask: cuint32; end; PIntTable = ^IntTable; @@ -87,7 +87,7 @@ const var // IntrTable: array [0..MAX_INTS-1] of IntTable; cvar; // cvar used in order to gain access from assembly unit - IntrTable: array [0..0] of IntTable; cvar; external; + IntrTable: array [0..0] of IntTable; cvar; external; procedure irqInit(); cdecl; external; diff --git a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile index 9a2e1580f2..0ca6781bbf 100644 --- a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile +++ b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile @@ -1,8 +1,9 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02] -# +<<<<<<< .mine# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/04/02] +=======# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/09/29] +>>>>>>> .theirs# 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 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 sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded +MAKEFILETARGETS=arm-nds BSDs = freebsd netbsd openbsd darwin UNIXs = linux $(BSDs) solaris qnx LIMIT83fs = go32v2 os2 emx watcom @@ -59,11 +60,9 @@ endif endif ifdef COMSPEC ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),) -ifndef RUNBATCH RUNBATCH=$(COMSPEC) /C endif endif -endif ifdef inUnix PATHSEP=/ else @@ -175,17 +174,6 @@ OS_TARGET:=$(word 5,$(FPC_COMPILERINFO)) endif FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) -ifeq ($(CPU_TARGET),armeb) -ARCH=arm -override FPCOPT+=-Cb -else -ifeq ($(CPU_TARGET),armel) -ARCH=arm -override FPCOPT+=-CaEABI -else -ARCH=$(CPU_TARGET) -endif -endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) SOURCESUFFIX=$(OS_SOURCE) @@ -207,7 +195,7 @@ endif ifeq ($(OS_TARGET),linux) linuxHier=1 endif -export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE +export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE ifdef FPCDIR override FPCDIR:=$(subst \,/,$(FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) @@ -269,701 +257,17 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(F BUILD = build AUDIO_FILES = $(foreach dir,$(notdir $(wildcard audio/*.*)),$(CURDIR)/audio/$(dir)) GFX_FILES = $(foreach dir,gfx,$(notdir $(wildcard $(dir)/*.png))) -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_PROGRAMS+=audio_modes -endif ifeq ($(FULL_TARGET),arm-nds) override TARGET_PROGRAMS+=audio_modes endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_PROGRAMS+=audio_modes -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif ifeq ($(FULL_TARGET),arm-nds) override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-win32) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-os2) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-beos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-haiku) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-solaris) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-qnx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netware) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-emx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-watcom) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-wince) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-symbian) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-atari) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-palmos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-wince) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-gba) -override CLEAN_UNITS+=* -endif ifeq ($(FULL_TARGET),arm-nds) override CLEAN_UNITS+=* endif -ifeq ($(FULL_TARGET),arm-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-symbian) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),avr-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),armeb-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-win32) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-os2) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-beos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-haiku) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-solaris) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-qnx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netware) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-emx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-watcom) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-wince) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-symbian) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-atari) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-palmos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-wince) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-gba) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif ifeq ($(FULL_TARGET),arm-nds) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-symbian) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),avr-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),armeb-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* +override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* endif override INSTALL_FPCPACKAGE=y ifdef REQUIRE_UNITSDIR @@ -1184,7 +488,6 @@ endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= @@ -1192,7 +495,6 @@ OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1229,7 +531,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd @@ -1238,7 +539,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=emx ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1259,11 +559,6 @@ BATCHEXT=.sh EXEEXT= SHORTSUFFIX=be endif -ifeq ($(OS_TARGET),haiku) -BATCHEXT=.sh -EXEEXT= -SHORTSUFFIX=hai -endif ifeq ($(OS_TARGET),solaris) BATCHEXT=.sh EXEEXT= @@ -1278,20 +573,17 @@ ifeq ($(OS_TARGET),netware) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),darwin) BATCHEXT=.sh @@ -1318,17 +610,14 @@ STATICLIBEXT=.a1 SHAREDLIBEXT=.so1 STATICLIBPREFIX= SHORTSUFFIX=v1 -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1375,7 +664,6 @@ STATICLIBEXT=.ao2 SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1436,7 +724,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) STATICLIBPREFIX= @@ -1448,7 +735,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= @@ -1460,7 +746,6 @@ STATICLIBEXT=.a EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) @@ -1733,180 +1018,9 @@ TAROPT=vz TAREXT=.tar.gz endif override REQUIRE_PACKAGES=libndsfpc -ifeq ($(FULL_TARGET),i386-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_LIBNDSFPC=1 endif -ifeq ($(FULL_TARGET),arm-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif ifdef REQUIRE_PACKAGES_LIBNDSFPC PACKAGEDIR_LIBNDSFPC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libndsfpc/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_LIBNDSFPC),) @@ -1934,13 +1048,13 @@ override COMPILER_UNITDIR+=$(UNITDIR_LIBNDSFPC) endif endif ifndef NOCPUDEF -override FPCOPTDEF=$(ARCH) +override FPCOPTDEF=$(CPU_TARGET) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifneq ($(CPU_TARGET),$(CPU_SOURCE)) -override FPCOPT+=-P$(ARCH) +override FPCOPT+=-P$(CPU_TARGET) endif ifeq ($(OS_SOURCE),openbsd) override FPCOPT+=-FD$(NEW_BINUTILS_PATH) diff --git a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile.fpc b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile.fpc index 2c4810ef2e..497065f320 100644 --- a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile.fpc +++ b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile.fpc @@ -20,9 +20,8 @@ target=nds fpcdir=../../../../../.. [clean] -files=*.elf *.o *.s *.nds *.nef *.h *.bin *.map \ - $(BUILD)/* \ - $(INC)/* +files=*.elf *.o *.s *.nds *.nef *.h *.bin \ + $(BUILD)/* units=* [prerules] @@ -32,17 +31,9 @@ GFX_FILES = $(foreach dir,gfx,$(notdir $(wildcard $(dir)/*.png))) [rules] .NOTPARALLEL: -clean: dir_delete fpc_clean fpc_cleanall all: direc fpc_all - -# -# Delete temp directories -# -dir_delete: - @$(DELTREE) $(CURDIR)/$(BUILD) - @$(DELTREE) $(CURDIR)/$(INC) - -direc: +<<<<<<< .mine======= +>>>>>>> .theirsdirec: ifneq ($(BUILD), $(CURDIR)) $(MKDIR) $(BUILD) endif diff --git a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile index 822986a4bd..41da81fc9f 100644 --- a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile +++ b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile @@ -1,8 +1,9 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02] -# +<<<<<<< .mine# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/04/02] +=======# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/09/29] +>>>>>>> .theirs# 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 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 sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded +MAKEFILETARGETS=arm-nds BSDs = freebsd netbsd openbsd darwin UNIXs = linux $(BSDs) solaris qnx LIMIT83fs = go32v2 os2 emx watcom @@ -59,11 +60,9 @@ endif endif ifdef COMSPEC ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),) -ifndef RUNBATCH RUNBATCH=$(COMSPEC) /C endif endif -endif ifdef inUnix PATHSEP=/ else @@ -175,17 +174,6 @@ OS_TARGET:=$(word 5,$(FPC_COMPILERINFO)) endif FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) -ifeq ($(CPU_TARGET),armeb) -ARCH=arm -override FPCOPT+=-Cb -else -ifeq ($(CPU_TARGET),armel) -ARCH=arm -override FPCOPT+=-CaEABI -else -ARCH=$(CPU_TARGET) -endif -endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) SOURCESUFFIX=$(OS_SOURCE) @@ -207,7 +195,7 @@ endif ifeq ($(OS_TARGET),linux) linuxHier=1 endif -export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE +export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE ifdef FPCDIR override FPCDIR:=$(subst \,/,$(FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) @@ -269,876 +257,21 @@ PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(F BUILD = build AUDIO_FILES = $(foreach dir,$(notdir $(wildcard audio/*.*)),$(CURDIR)/audio/$(dir)) GFX_FILES = $(foreach dir,gfx,$(notdir $(wildcard $(dir)/*.png))) -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_PROGRAMS+=basic_sound -endif ifeq ($(FULL_TARGET),arm-nds) override TARGET_PROGRAMS+=basic_sound endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_PROGRAMS+=basic_sound -endif -ifeq ($(FULL_TARGET),i386-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-win32) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-os2) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-beos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netware) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-emx) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-wince) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-wince) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-gba) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif ifeq ($(FULL_TARGET),arm-nds) override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) endif -ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_LOADERS+=soundbank.bin $(GFX_FILES) -endif -ifeq ($(FULL_TARGET),i386-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-win32) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-os2) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-beos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-haiku) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-solaris) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-qnx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netware) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-emx) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-watcom) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-wince) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-symbian) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-atari) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-palmos) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-wince) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-gba) -override CLEAN_UNITS+=* -endif ifeq ($(FULL_TARGET),arm-nds) override CLEAN_UNITS+=* endif -ifeq ($(FULL_TARGET),arm-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),arm-symbian) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),avr-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),armeb-linux) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override CLEAN_UNITS+=* -endif -ifeq ($(FULL_TARGET),i386-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-win32) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-os2) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-beos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-haiku) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-solaris) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-qnx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netware) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-emx) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-watcom) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-wince) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),i386-symbian) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-atari) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-palmos) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-wince) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-gba) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif ifeq ($(FULL_TARGET),arm-nds) override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* endif -ifeq ($(FULL_TARGET),arm-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),arm-symbian) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),avr-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),armeb-linux) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin $(BUILD)/* -endif override INSTALL_FPCPACKAGE=y -ifeq ($(FULL_TARGET),i386-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-go32v2) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-win32) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-os2) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-freebsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-beos) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-netbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-solaris) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-qnx) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-netware) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-openbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-wdosx) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-darwin) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-emx) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-watcom) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-wince) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),i386-symbian) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-amiga) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-atari) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-palmos) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),m68k-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-macos) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),sparc-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),sparc-solaris) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),sparc-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),x86_64-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),x86_64-win64) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-palmos) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-wince) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-gba) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif ifeq ($(FULL_TARGET),arm-nds) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),arm-symbian) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_OPTIONS+=-g -O2 -d__THUMB__ +override COMPILER_OPTIONS+=-g -O2 endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) @@ -1358,7 +491,6 @@ endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= @@ -1366,7 +498,6 @@ OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1403,7 +534,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd @@ -1412,7 +542,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=emx ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1433,11 +562,6 @@ BATCHEXT=.sh EXEEXT= SHORTSUFFIX=be endif -ifeq ($(OS_TARGET),haiku) -BATCHEXT=.sh -EXEEXT= -SHORTSUFFIX=hai -endif ifeq ($(OS_TARGET),solaris) BATCHEXT=.sh EXEEXT= @@ -1452,20 +576,17 @@ ifeq ($(OS_TARGET),netware) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),darwin) BATCHEXT=.sh @@ -1492,17 +613,14 @@ STATICLIBEXT=.a1 SHAREDLIBEXT=.so1 STATICLIBPREFIX= SHORTSUFFIX=v1 -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1549,7 +667,6 @@ STATICLIBEXT=.ao2 SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1610,7 +727,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) STATICLIBPREFIX= @@ -1622,7 +738,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= @@ -1634,7 +749,6 @@ STATICLIBEXT=.a EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) @@ -1907,180 +1021,9 @@ TAROPT=vz TAREXT=.tar.gz endif override REQUIRE_PACKAGES=libndsfpc -ifeq ($(FULL_TARGET),i386-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-go32v2) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-win32) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-os2) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-beos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-haiku) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-solaris) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-qnx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netware) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-openbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-wdosx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-emx) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-watcom) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-netwlibc) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-wince) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),i386-symbian) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-amiga) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-atari) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-openbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-palmos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),m68k-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-amiga) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-macos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-morphos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-netbsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-solaris) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),sparc-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-freebsd) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-win64) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),x86_64-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-palmos) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-wince) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-gba) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif ifeq ($(FULL_TARGET),arm-nds) REQUIRE_PACKAGES_LIBNDSFPC=1 endif -ifeq ($(FULL_TARGET),arm-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),arm-symbian) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-darwin) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),powerpc64-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),avr-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),armeb-linux) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -REQUIRE_PACKAGES_LIBNDSFPC=1 -endif ifdef REQUIRE_PACKAGES_LIBNDSFPC PACKAGEDIR_LIBNDSFPC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libndsfpc/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_LIBNDSFPC),) @@ -2108,13 +1051,13 @@ override COMPILER_UNITDIR+=$(UNITDIR_LIBNDSFPC) endif endif ifndef NOCPUDEF -override FPCOPTDEF=$(ARCH) +override FPCOPTDEF=$(CPU_TARGET) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifneq ($(CPU_TARGET),$(CPU_SOURCE)) -override FPCOPT+=-P$(ARCH) +override FPCOPT+=-P$(CPU_TARGET) endif ifeq ($(OS_SOURCE),openbsd) override FPCOPT+=-FD$(NEW_BINUTILS_PATH) diff --git a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile.fpc b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile.fpc index 14071c506e..f0f2a43d11 100644 --- a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile.fpc +++ b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile.fpc @@ -20,7 +20,7 @@ target=nds fpcdir=../../../../../.. [compiler] -options=-g -O2 -d__THUMB__ +options=-g -O2 [clean] files=*.elf *.o *.s *.nds *.nef *.h *.bin \ diff --git a/packages/libndsfpc/examples/audio/maxmod/song_events_example2/song_events_example2.pp b/packages/libndsfpc/examples/audio/maxmod/song_events_example2/song_events_example2.pp index 279ab05574..fa1db5dd14 100644 --- a/packages/libndsfpc/examples/audio/maxmod/song_events_example2/song_events_example2.pp +++ b/packages/libndsfpc/examples/audio/maxmod/song_events_example2/song_events_example2.pp @@ -37,8 +37,9 @@ var sprites: array[0..4] of MySprite; -function myEventHandler(msg, param: mm_word): mm_callback; -begin +<<<<<<< .minefunction myEventHandler(msg, param: mm_word): mm_word; +=======function myEventHandler(msg, param: mm_word): pmm_word; +>>>>>>> .theirsbegin case msg of MMCB_SONGMESSAGE: // process song messages begin @@ -50,7 +51,7 @@ begin end; MMCB_SONGFINISHED:; // process song finish message (only triggered in songs played with MM_PLAY_ONCE) end; - result := nil; + result := 0; end; diff --git a/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp b/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp index 8ddd5e6cbd..4c0019073f 100644 --- a/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp +++ b/packages/libndsfpc/examples/debugging/exceptionTest/exceptionTest.pp @@ -16,7 +16,7 @@ begin defaultExceptionHandler(); // generate an exception - pu32(250)^ := 100; + pu32(8192)^ := 100; while true do swiWaitForVBlank(); diff --git a/packages/libndsfpc/src/dswifi/inc/dswifi_version.inc b/packages/libndsfpc/src/dswifi/inc/dswifi_version.inc index 5f63b54571..feed113dee 100644 --- a/packages/libndsfpc/src/dswifi/inc/dswifi_version.inc +++ b/packages/libndsfpc/src/dswifi/inc/dswifi_version.inc @@ -2,6 +2,6 @@ const DSWIFI_MAJOR = 0; DSWIFI_MINOR = 3; - DSWIFI_REVISION = 6; - DSWIFI_VERSION = '0.3.6'; + DSWIFI_REVISION = 11; + DSWIFI_VERSION = '0.3.11'; {$endif NDS_INTERFACE} diff --git a/packages/libndsfpc/src/fat/fat.inc b/packages/libndsfpc/src/fat/fat.inc index 95c2e3b755..2ceb3ffaca 100644 --- a/packages/libndsfpc/src/fat/fat.inc +++ b/packages/libndsfpc/src/fat/fat.inc @@ -41,7 +41,7 @@ function fatInit(cacheSize: cuint32; setAsDefaultDevice: cbool): cbool; cdecl; external; function fatInitDefault(): cbool; cdecl; external; function fatMountSimple (const name: pcchar; const ainterface: PDISC_INTERFACE): cbool; cdecl; external; -function fatMount (const name: pcchar; const ainterface: PDISC_INTERFACE; startSector, cacheSize: cuint32): cbool; cdecl; external; +function fatMount (const name: pcchar; const ainterface: PDISC_INTERFACE; startSector, cacheSize, SectorsPerPage: cuint32): cbool; cdecl; external; function fatUnmount(const name: pcchar): cbool; cdecl; external; {$endif NDS_INTERFACE} diff --git a/packages/libndsfpc/src/nds/arm9/exceptions.inc b/packages/libndsfpc/src/nds/arm9/exceptions.inc index 5dc10c5329..3bd8f4d2e2 100644 --- a/packages/libndsfpc/src/nds/arm9/exceptions.inc +++ b/packages/libndsfpc/src/nds/arm9/exceptions.inc @@ -40,7 +40,7 @@ {$ifdef NDS_INTERFACE} const - EXCEPTION_VECTOR : ^VoidFunctionPointer = pointer($27FFD9C); + EXCEPTION_VECTOR : ^VoidFunctionPointer = pointer($2FFFD9C); var exceptionC: ^VoidFunctionPointer; cvar; external; diff --git a/packages/libndsfpc/src/nds/memory.inc b/packages/libndsfpc/src/nds/memory.inc index 2f3f7964ac..ac5387452f 100644 --- a/packages/libndsfpc/src/nds/memory.inc +++ b/packages/libndsfpc/src/nds/memory.inc @@ -160,7 +160,7 @@ type pNDSHeader = ^tNDSHeader; const - __NDSHeader : pNDSHeader = pointer($027FFE00); + __NDSHeader : pNDSHeader = pointer($02FFFE00); type @@ -216,21 +216,19 @@ end; // Changes all bus ownerships procedure sysSetBusOwners(arm9rom, arm9card: cbool); inline; var - pattern: cuint16; - a9r, a9c: cint; + val1, val2: cuint; begin - pattern := REG_EXMEMCNT^ and not (ARM7_OWNS_CARD or ARM7_OWNS_ROM); - if arm9card then - a9c := 0 - else - a9c := ARM7_OWNS_CARD; - if arm9rom then - a9r := 0 - else - a9r := ARM7_OWNS_ROM; - - pattern := pattern or (a9c) or (a9r); - REG_EXMEMCNT^ := pattern; + val1 := 0; + val2 := 0; + if not arm9card then + val1 := ARM7_OWNS_CARD; + + if not arm9rom then + val2 := ARM7_OWNS_ROM ; + + REG_EXMEMCNT^ := (REG_EXMEMCNT^ and not(ARM7_OWNS_CARD or ARM7_OWNS_ROM)) or val1 or val2; end; + + {$endif NDS_IMPLEMENTATION} {$endif ARM9} diff --git a/packages/libndsfpc/src/nds/system.inc b/packages/libndsfpc/src/nds/system.inc index 8442e11fa0..3ba1e11c37 100644 --- a/packages/libndsfpc/src/nds/system.inc +++ b/packages/libndsfpc/src/nds/system.inc @@ -200,7 +200,7 @@ type const REG_KEYINPUT : pcuint16 = pointer($04000130); REG_KEYCNT : pcuint16 = pointer($04000132); - PersonalData : PPERSONAL_DATA = pointer($27FFC80); + PersonalData : PPERSONAL_DATA = pointer($2FFFC80); type @@ -216,7 +216,7 @@ type Pargv = ^Targv; const - __system_argv: Pargv = pointer($027FFF70); + __system_argv: Pargv = pointer($02FFFE70); ARGV_MAGIC = $5f617267; @@ -232,6 +232,13 @@ type padding: cuint8; end; + +{$ifdef ARM9} +procedure memCached(address: pointer); cdecl; external; +procedure memUncached(address: pointer); cdecl; external; +{$endif ARM9} + + {$endif NDS_INTERFACE} {$ifdef NDS_IMPLEMENTATION} diff --git a/rtl/gba/Makefile b/rtl/gba/Makefile index 12d9d388b3..354a328243 100644 --- a/rtl/gba/Makefile +++ b/rtl/gba/Makefile @@ -1,8 +1,8 @@ # -# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/08/02] +# Don't edit, this file is generated by FPCMake Version 2.0.0 [2009/09/29] # 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 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 sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded +MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos 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 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 sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded BSDs = freebsd netbsd openbsd darwin UNIXs = linux $(BSDs) solaris qnx LIMIT83fs = go32v2 os2 emx watcom @@ -59,11 +59,9 @@ endif endif ifdef COMSPEC ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),) -ifndef RUNBATCH RUNBATCH=$(COMSPEC) /C endif endif -endif ifdef inUnix PATHSEP=/ else @@ -175,17 +173,6 @@ OS_TARGET:=$(word 5,$(FPC_COMPILERINFO)) endif FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) -ifeq ($(CPU_TARGET),armeb) -ARCH=arm -override FPCOPT+=-Cb -else -ifeq ($(CPU_TARGET),armel) -ARCH=arm -override FPCOPT+=-CaEABI -else -ARCH=$(CPU_TARGET) -endif -endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) SOURCESUFFIX=$(OS_SOURCE) @@ -207,7 +194,7 @@ endif ifeq ($(OS_TARGET),linux) linuxHier=1 endif -export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE +export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE ifdef FPCDIR override FPCDIR:=$(subst \,/,$(FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) @@ -274,185 +261,169 @@ COMMON=$(RTL)/common PROCINC=$(RTL)/$(CPU_TARGET) UNITPREFIX=rtl SYSTEMUNIT=system -BINUTILSPREFIX=arm-eabi- ifdef RELEASE override FPCOPT+=-Ur endif OBJPASDIR=$(RTL)/objpas GRAPHDIR=$(INC)/graph ifeq ($(FULL_TARGET),i386-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-go32v2) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-win32) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-os2) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-beos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl -endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-qnx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netware) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-wdosx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-emx) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-watcom) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-netwlibc) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-atari) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-openbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),m68k-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-amiga) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-macos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-morphos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-netbsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-solaris) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),sparc-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-freebsd) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-win64) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),x86_64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-palmos) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl -endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-wince) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-gba) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-nds) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),arm-symbian) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-darwin) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),powerpc64-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl -endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil fgl +override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings sysutils classes math typinfo varutils fmtbcd ctypes charset ucomplex getopts matrix variants types rtlconsts sysconst dateutil lineinfo fgl endif ifeq ($(FULL_TARGET),i386-linux) override TARGET_LOADERS+=prt0 cprt0 @@ -472,9 +443,6 @@ endif ifeq ($(FULL_TARGET),i386-beos) override TARGET_LOADERS+=prt0 cprt0 endif -ifeq ($(FULL_TARGET),i386-haiku) -override TARGET_LOADERS+=prt0 cprt0 -endif ifeq ($(FULL_TARGET),i386-netbsd) override TARGET_LOADERS+=prt0 cprt0 endif @@ -592,9 +560,6 @@ endif ifeq ($(FULL_TARGET),arm-palmos) override TARGET_LOADERS+=prt0 cprt0 endif -ifeq ($(FULL_TARGET),arm-darwin) -override TARGET_LOADERS+=prt0 cprt0 -endif ifeq ($(FULL_TARGET),arm-wince) override TARGET_LOADERS+=prt0 cprt0 endif @@ -619,15 +584,6 @@ endif ifeq ($(FULL_TARGET),powerpc64-embedded) override TARGET_LOADERS+=prt0 cprt0 endif -ifeq ($(FULL_TARGET),avr-embedded) -override TARGET_LOADERS+=prt0 cprt0 -endif -ifeq ($(FULL_TARGET),armeb-linux) -override TARGET_LOADERS+=prt0 cprt0 -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override TARGET_LOADERS+=prt0 cprt0 -endif override INSTALL_FPCPACKAGE=y ifeq ($(FULL_TARGET),i386-linux) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) @@ -647,9 +603,6 @@ endif ifeq ($(FULL_TARGET),i386-beos) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) -endif ifeq ($(FULL_TARGET),i386-netbsd) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) endif @@ -767,9 +720,6 @@ endif ifeq ($(FULL_TARGET),arm-palmos) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) -endif ifeq ($(FULL_TARGET),arm-wince) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) endif @@ -794,15 +744,6 @@ endif ifeq ($(FULL_TARGET),powerpc64-embedded) override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) -endif ifeq ($(FULL_TARGET),i386-linux) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif @@ -821,9 +762,6 @@ endif ifeq ($(FULL_TARGET),i386-beos) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif -ifeq ($(FULL_TARGET),i386-haiku) -override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) -endif ifeq ($(FULL_TARGET),i386-netbsd) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif @@ -941,9 +879,6 @@ endif ifeq ($(FULL_TARGET),arm-palmos) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif -ifeq ($(FULL_TARGET),arm-darwin) -override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) -endif ifeq ($(FULL_TARGET),arm-wince) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif @@ -968,15 +903,6 @@ endif ifeq ($(FULL_TARGET),powerpc64-embedded) override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) endif -ifeq ($(FULL_TARGET),avr-embedded) -override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) -endif -ifeq ($(FULL_TARGET),armeb-linux) -override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) -endif -ifeq ($(FULL_TARGET),armeb-embedded) -override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) -endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif @@ -1195,7 +1121,6 @@ endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= @@ -1203,7 +1128,6 @@ OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1240,7 +1164,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd @@ -1249,7 +1172,6 @@ STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=emx ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1270,11 +1192,6 @@ BATCHEXT=.sh EXEEXT= SHORTSUFFIX=be endif -ifeq ($(OS_TARGET),haiku) -BATCHEXT=.sh -EXEEXT= -SHORTSUFFIX=hai -endif ifeq ($(OS_TARGET),solaris) BATCHEXT=.sh EXEEXT= @@ -1289,20 +1206,17 @@ ifeq ($(OS_TARGET),netware) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),darwin) BATCHEXT=.sh @@ -1329,17 +1243,14 @@ STATICLIBEXT=.a1 SHAREDLIBEXT=.so1 STATICLIBPREFIX= SHORTSUFFIX=v1 -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= SHORTSUFFIX=wat -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh @@ -1386,7 +1297,6 @@ STATICLIBEXT=.ao2 SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo -IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= @@ -1447,7 +1357,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nw -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) STATICLIBPREFIX= @@ -1459,7 +1368,6 @@ STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nwl -IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macos) BATCHEXT= @@ -1471,7 +1379,6 @@ STATICLIBEXT=.a EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac -IMPORTLIBPREFIX=imp endif endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) @@ -1744,13 +1651,13 @@ TAROPT=vz TAREXT=.tar.gz endif ifndef NOCPUDEF -override FPCOPTDEF=$(ARCH) +override FPCOPTDEF=$(CPU_TARGET) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifneq ($(CPU_TARGET),$(CPU_SOURCE)) -override FPCOPT+=-P$(ARCH) +override FPCOPT+=-P$(CPU_TARGET) endif ifeq ($(OS_SOURCE),openbsd) override FPCOPT+=-FD$(NEW_BINUTILS_PATH) @@ -2329,6 +2236,7 @@ ucomplex$(PPUEXT): $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT) heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) -Sg $(INC)/heaptrc.pp $(REDIR) +lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT) charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT) exec$(PPUEXT) : exec.pp execf.inc execd.inc timer$(PPUEXT) : timer.pp timerd.inc timerf.inc diff --git a/rtl/gba/Makefile.fpc b/rtl/gba/Makefile.fpc index addf530500..3b263aef10 100644 --- a/rtl/gba/Makefile.fpc +++ b/rtl/gba/Makefile.fpc @@ -12,10 +12,10 @@ units=$(SYSTEMUNIT) objpas macpas strings \ sysutils \ classes math typinfo varutils fmtbcd ctypes \ charset ucomplex getopts matrix \ - variants types rtlconsts sysconst dateutil fgl \ + variants types rtlconsts sysconst dateutil lineinfo fgl \ # exec timer doslib utility hardware inputevent graphics layers \ # these can be moved to packages later -# clipboard datatypes asl ahi tinygl get9 muihelper lineinfo \ +# clipboard datatypes asl ahi tinygl get9 muihelper \ #rsts=math rtlconsts varutils typinfo variants classes sysconst dateutil # implicitunits=exeinfo @@ -42,7 +42,6 @@ COMMON=$(RTL)/common PROCINC=$(RTL)/$(CPU_TARGET) UNITPREFIX=rtl SYSTEMUNIT=system -BINUTILSPREFIX=arm-eabi- # Use new feature from 1.0.5 version # that generates release PPU files @@ -179,7 +178,7 @@ getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT) heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT) $(COMPILER) -Sg $(INC)/heaptrc.pp $(REDIR) -#lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT) +lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT) #lnfodwrf$(PPUEXT) : $(INC)/lnfodwrf.pp $(SYSTEMUNIT)$(PPUEXT) charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT) diff --git a/rtl/gba/libc.inc b/rtl/gba/libc.inc new file mode 100644 index 0000000000..15ced61e7a --- /dev/null +++ b/rtl/gba/libc.inc @@ -0,0 +1,56 @@ +{ + This file is part of the Free Component Library (FCL) + Copyright (c) 1999-2002 by the Free Pascal development team + + BIOS functions unit for Nintendo DS + 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. + + *****************************************************************************} + +function __errno: plongint; cdecl; export; +begin + +end; + + +function S_ISBLK(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFBLK; +end; + +function S_ISCHR(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFCHR; +end; + +function S_ISDIR(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFDIR; +end; + +function S_ISFIFO(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFIFO; +end; + +function S_ISREG(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFREG; +end; + +function S_ISLNK(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFLNK; +end; + +function S_ISSOCK(m: longint): boolean; inline; +begin + result := (m and _IFMT) = _IFSOCK; +end; diff --git a/rtl/gba/libch.inc b/rtl/gba/libch.inc new file mode 100644 index 0000000000..d72e5508d6 --- /dev/null +++ b/rtl/gba/libch.inc @@ -0,0 +1,199 @@ +{ + This file is part of the Free Component Library (FCL) + Copyright (c) 1999-2002 by the Free Pascal development team + + BIOS functions unit for Nintendo DS + 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. + + *****************************************************************************} + +type + time_t = longint; + ptime_t = ^time_t; + + Ptm = ^tm; + tm = record + tm_sec: longint; + tm_min: longint; + tm_hour: longint; + tm_mday: longint; + tm_mon: longint; + tm_year: longint; + tm_wday: longint; + tm_yday: longint; + tm_isdst: longint; + end; + + +(* Some libc functions *) +//function printf(format: Pchar; args: array of const): longint; cdecl; external; +function printf(format: Pchar): longint; cdecl; varargs; external; +//function sprintf(s: Pchar; format: Pchar; args: array of const): longint; cdecl; external; +function sprintf(s: Pchar; format: Pchar): longint; varargs; cdecl; external; +//function iprintf(format: Pchar; args: array of const): longint; cdecl; external; +function iprintf(format: Pchar): longint; varargs; cdecl; external; +//function scanf(format: Pchar; args: array of const): longint; cdecl; external; +function scanf(format: Pchar): longint; cdecl; varargs; external; +//function sscanf(s: Pchar; format: Pchar; args: array of const): longint; cdecl; external; +function sscanf(s: Pchar; format: Pchar): longint; cdecl; varargs; external; +function strcmp(s1: Pchar; s2: Pchar): longint; cdecl; external; + +function malloc(size: integer): pointer; cdecl; external; +function realloc(ptr: pointer; size: integer): pointer; cdecl; external; +procedure free(ptr: pointer); cdecl; external; +function memcpy(dest: pointer; src: pointer; n: integer): pointer; cdecl; external; + +function gmtime(timer: ptime_t): ptm; cdecl; external; +function time(timer: ptime_t): time_t; cdecl; external; + +type + TSort = function (const a, b: pointer): integer; +procedure qsort(__base: pointer; __nmemb: integer; __size: integer; __compar: TSort); cdecl; external; + +function __errno: plongint; cdecl; export; + +type + _FILE = record + firstCluster: longword; + length: longword; + curPos: longword; + curClus: longword; // Current cluster to read from + curSect: integer; // Current sector within cluster + curByte: integer; // Current byte within sector + readBuffer: array [0..511] of byte; // Buffer used for unaligned reads + appClus: longword; // Cluster to append to + appSect: integer; // Sector within cluster for appending + appByte: integer; // Byte within sector for appending + read: boolean; // Can read from file + write: boolean; // Can write to file + append: boolean; // Can append to file + inUse: boolean; // This file is open + dirEntSector: longword; // The sector where the directory entry is stored + dirEntOffset: integer; // The offset within the directory sector + end; + P_FILE = ^_FILE; + +const + SEEK_SET = 0; + SEEK_CUR = 1; + SEEK_END = 2; + +(* + ------------------------------------------------------------------------------ + Directory iterator for mantaining state between dir* calls + ------------------------------------------------------------------------------ +*) +type + DIR_ITER = record + device: longint; + dirStruct: pointer; + end; + PDIR_ITER = ^DIR_ITER; + + stat = packed record + st_dev: longint; + st_ino: longword; + st_mode : longword; + st_nlink : word; + st_uid : word; + st_gid : word; + st_rdev : longint; + st_size : longint; + st_atime : longint; + + st_spare1: longint; + st_mtime: longint; + st_spare2: longint; + st_ctime: longint; + st_spare3: longint; + st_blksize: longint; + st_blocks: longint; + st_spare4: array [0..1] of longint; + end; + TStat = stat; + PStat = ^stat; + +const + _IFMT = 0170000; // type of file + _IFDIR = 0040000; // directory + _IFCHR = 0020000; // character special + _IFBLK = 0060000; // block special + _IFREG = 0100000; // regular + _IFLNK = 0120000; // symbolic link + _IFSOCK = 0140000; // socket + _IFIFO = 0010000; // fifo + + S_BLKSIZE = 1024; // size of a block + + S_ISUID = 0004000; // set user id on execution + S_ISGID = 0002000; // set group id on execution + + NAME_MAX = 767; + +function S_ISBLK(m: longint): boolean; inline; +function S_ISCHR(m: longint): boolean; inline; +function S_ISDIR(m: longint): boolean; inline; +function S_ISFIFO(m: longint): boolean; inline; +function S_ISREG(m: longint): boolean; inline; +function S_ISLNK(m: longint): boolean; inline; +function S_ISSOCK(m: longint): boolean; inline; + + +type + dirent = record + d_ino: longint; + d_name: array [0..NAME_MAX] of char; + end; + PDirent = ^dirent; + PPDirent = ^PDirent; + + DIR = record + position: longint; + dirData: PDIR_ITER; + fileData: dirent; + end; + PDIR = ^DIR; + +(* DIR handling *) +function closedir(dirp: PDIR): longint; cdecl; external; +function opendir(const dirname: pchar): PDIR; cdecl; external; +function readdir(dirp: PDIR): PDirent; cdecl; external; +function readdir_r(dirp: PDIR; entry: PDirent; result: PPDirent): longint; cdecl; external; +procedure rewinddir(dirp: PDIR); cdecl; external; +procedure seekdir(dirp: PDIR; loc: longint); cdecl; external; +function telldir(dirp: PDIR): longint; cdecl; external; + + +function diropen(const path: pchar): PDIR_ITER; cdecl; external; +function dirreset(dirState: PDIR_ITER): longint; cdecl; external; +function dirnext(dirState: PDIR_ITER; filename: pchar; filestat: Pstat): longint; cdecl; external; +function dirclose(dirState: PDIR_ITER): longint; cdecl; external; + +(* File handling *) +function fopen(filename: Pchar; modes: Pchar): P_FILE; cdecl; external; +function fread(ptr: pointer; size: longint; n: longint; stream: P_FILE): longint; cdecl; external; +function fread(var ptr; size: longint; n: longint; var stream: _FILE): longint; cdecl; external; +function fwrite(ptr: pointer; size: longint; n: longint; s: P_FILE): longint; cdecl; external; +function fwrite(var ptr; size: longint; n: longint; var s: _FILE): longint; cdecl; external; +function ftell(stream: P_FILE): longint; cdecl; external; +function ftell(var stream: _FILE): longint; cdecl; external; +function fseek(stream: P_FILE; off: longint; whence: longint): longint; cdecl; external; +function fseek(var stream: _FILE; off: longint; whence: longint): longint; cdecl; external; +function fclose(stream: P_FILE): longint; cdecl; external; +function fclose(var stream: _FILE): longint; cdecl; external; +function isatty(fildes: longint): longint; cdecl; external; +function fileno(para1: P_FILE): longint; cdecl; external; +function fileno(var para1: _FILE): longint; cdecl; external; +function fstat(fildes: longint; buf: PStat): longint; cdecl; external; +function fstat(fildes: longint; var buf: TStat): longint; cdecl; external; +function _stat(__file:Pchar; var __buf:Tstat):longint; cdecl; external name 'stat'; +function ftruncate(fildes: longint; len: longint): longint; cdecl; external; +function unlink(path: Pchar): longint; cdecl; external; +function rename(para1: Pchar; para2: Pchar): longint; cdecl; external; diff --git a/rtl/gba/system.pp b/rtl/gba/system.pp index 77b99c98fb..a058fd4754 100644 --- a/rtl/gba/system.pp +++ b/rtl/gba/system.pp @@ -28,6 +28,10 @@ interface {$i systemh.inc} {$i gbabiosh.inc} +{$i libch.inc} + + + {$define fpc_softfpu_interface} {$i softfpu.pp} {$undef fpc_softfpu_interface} @@ -48,24 +52,25 @@ const MaxPathLen = 255; AllFilesMask = '*'; - sLineBreak : string[1] = LineEnding; DefaultTextLineBreakStyle : TTextLineBreakStyle = tlbsCRLF; -const UnusedHandle = $ffff; StdInputHandle = 0; StdOutputHandle = 1; StdErrorHandle = $ffff; + + var argc: LongInt = 0; argv: PPChar; envp: PPChar; - errno: integer; +// errno: integer; fake_heap_end: ^byte; cvar; external; + procedure randomize(value: integer); implementation @@ -89,9 +94,12 @@ implementation {$i system.inc} {$i gbabios.inc} +{$i libc.inc} + {$ifdef FPC_HAS_FEATURE_PROCESSES} function GetProcessID: SizeUInt; begin + GetProcessID := 0; end; {$endif} @@ -101,6 +109,7 @@ end; *****************************************************************************} procedure System_exit; begin + end; @@ -154,16 +163,16 @@ function paramstr(l : longint) : string; begin paramstr:=''; end; -{$endif} +{$endif FPC_HAS_FEATURE_COMMANDARGS} -{$ifdef FPC_HAS_FEATURE_CONSOLEIO} +{$ifdef FPC_HAS_FEATURE_TEXTIO} procedure SysInitStdIO; begin OpenStdIO(Input,fmInput,StdInputHandle); OpenStdIO(Output,fmOutput,StdOutputHandle); OpenStdIO(StdOut,fmOutput,StdOutputHandle); end; -{$endif} +{$endif FPC_HAS_FEATURE_TEXTIO} function CheckInitialStkLen(stklen : SizeUInt) : SizeUInt; @@ -177,17 +186,19 @@ begin StackBottom := StackTop - StackLength; { OS specific startup } +{ Set up signals handlers } + fpc_cpucodeinit; + { Setup heap } InitHeap; SysInitExceptions; {$ifdef FPC_HAS_FEATURE_CONSOLEIO} { Setup stdin, stdout and stderr } SysInitStdIO; -{$endif FPC_HAS_FEATURE_CONSOLEIO} -{$ifdef FPC_HAS_FEATURE_CONSOLEIO} { Reset IO Error } InOutRes:=0; {$endif FPC_HAS_FEATURE_CONSOLEIO} + {$ifdef FPC_HAS_FEATURE_THREADING} { threading } InitSystemThreads; diff --git a/rtl/nds/cprt07.as b/rtl/nds/cprt07.as index c795e68e93..accf9e5add 100644 --- a/rtl/nds/cprt07.as +++ b/rtl/nds/cprt07.as @@ -33,11 +33,8 @@ _start: mov r0, #0 @ int argc mov r1, #0 @ char *argv[] ldr r3, =main - bl _blx_r3_stub - - @ If the user ever returns, return to flash cartridge - mov r0, #0x08000000 - bx r0 + ldr lr,=__libnds_exit + bx r3 @--------------------------------------------------------------------------------- _blx_r3_stub: diff --git a/rtl/nds/cprt09.as b/rtl/nds/cprt09.as index c07815165e..66ba9adf15 100644 --- a/rtl/nds/cprt09.as +++ b/rtl/nds/cprt09.as @@ -5,7 +5,7 @@ .cpu arm946e-s @--------------------------------------------------------------------------------- - .equ _libnds_argv, 0x027FFF70 + .equ _libnds_argv,0x02FFFE70 @--------------------------------------------------------------------------------- .section ".init" @@ -19,123 +19,8 @@ _start: mov r0, #0x04000000 @ IME = 0; str r0, [r0, #0x208] -@--------------------------------------------------------------------------------- -@ turn the power on for M3 -@--------------------------------------------------------------------------------- - ldr r1, =0x8203 - add r0,r0,#0x304 - strh r1, [r0] - - ldr r1, =0x00002078 @ disable TCM and protection unit - mcr p15, 0, r1, c1, c0 - -@--------------------------------------------------------------------------------- -@ Protection Unit Setup added by Sasq -@--------------------------------------------------------------------------------- - @ Disable cache - mov r0, #0 - mcr p15, 0, r0, c7, c5, 0 @ Instruction cache - mcr p15, 0, r0, c7, c6, 0 @ Data cache - - @ Wait for write buffer to empty - mcr p15, 0, r0, c7, c10, 4 - - ldr r0, =__dtcm_start - orr r0,r0,#0x0a - mcr p15, 0, r0, c9, c1,0 @ DTCM base = __dtcm_start, size = 16 KB - - mov r0,#0x20 - mcr p15, 0, r0, c9, c1,1 @ ITCM base = 0 , size = 32 MB - -@--------------------------------------------------------------------------------- -@ Setup memory regions similar to Release Version -@--------------------------------------------------------------------------------- - - @------------------------------------------------------------------------- - @ Region 0 - IO registers - @------------------------------------------------------------------------- - ldr r0,=( (0b11001 << 1) | 0x04000000 | 1) - mcr p15, 0, r0, c6, c0, 0 - - @------------------------------------------------------------------------- - @ Region 1 - Main Memory - @------------------------------------------------------------------------- - ldr r0,=( (0b10101 << 1) | 0x02000000 | 1) - mcr p15, 0, r0, c6, c1, 0 - - @------------------------------------------------------------------------- - @ Region 2 - alternate vector base - @------------------------------------------------------------------------- - ldr r0,=( (0b01011 << 1) | 0x00000000 | 1) - mcr p15, 0, r0, c6, c2, 0 - - @------------------------------------------------------------------------- - @ Region 3 - DS Accessory (GBA Cart) - @------------------------------------------------------------------------- - ldr r0,=( (0b11010 << 1) | 0x08000000 | 1) - mcr p15, 0, r0, c6, c3, 0 - - @------------------------------------------------------------------------- - @ Region 4 - DTCM - @------------------------------------------------------------------------- - ldr r0,=__dtcm_start - orr r0,r0,#((0b01101 << 1) | 1) - mcr p15, 0, r0, c6, c4, 0 - - @------------------------------------------------------------------------- - @ Region 5 - ITCM - @------------------------------------------------------------------------- - ldr r0,=__itcm_start - @ align to 32k boundary - mov r0,r0,lsr #15 - mov r0,r0,lsl #15 - orr r0,r0,#((0b01110 << 1) | 1) - mcr p15, 0, r0, c6, c5, 0 - - @------------------------------------------------------------------------- - @ Region 6 - System ROM - @------------------------------------------------------------------------- - ldr r0,=( (0b01110 << 1) | 0xFFFF0000 | 1) - mcr p15, 0, r0, c6, c6, 0 - - @------------------------------------------------------------------------- - @ Region 7 - non cacheable main ram - @------------------------------------------------------------------------- - ldr r0,=( (0b10101 << 1) | 0x02400000 | 1) - mcr p15, 0, r0, c6, c7, 0 - - @------------------------------------------------------------------------- - @ Write buffer enable - @------------------------------------------------------------------------- - ldr r0,=0b00000010 - mcr p15, 0, r0, c3, c0, 0 - - @------------------------------------------------------------------------- - @ DCache & ICache enable - @------------------------------------------------------------------------- - ldr r0,=0b01000010 - mcr p15, 0, r0, c2, c0, 0 - mcr p15, 0, r0, c2, c0, 1 - - @------------------------------------------------------------------------- - @ IAccess - @------------------------------------------------------------------------- - ldr r0,=0x36636633 - mcr p15, 0, r0, c5, c0, 3 - - @------------------------------------------------------------------------- - @ DAccess - @------------------------------------------------------------------------- - ldr r0,=0x36333633 - mcr p15, 0, r0, c5, c0, 2 - - @------------------------------------------------------------------------- - @ Enable ICache, DCache, ITCM & DTCM - @------------------------------------------------------------------------- - mrc p15, 0, r0, c1, c0, 0 - ldr r1,= (1<<18) | (1<<16) | (1<<12) | (1<<2) | (1<<0) - orr r0,r0,r1 - mcr p15, 0, r0, c1, c0, 0 + ldr r3,=__libnds_mpu_setup + blx r3 mov r0, #0x12 @ Switch to IRQ Mode msr cpsr, r0 @@ -176,10 +61,6 @@ _start: ldr r1, =__sbss_end sub r1, r1, r0 bl ClearMem - - ldr r1, =fake_heap_end @ set heap end - ldr r0, =__eheap_end - str r0, [r1] ldr r0, =_libnds_argv @@ -188,6 +69,10 @@ _start: ldr r1,=fake_heap_start str r2,[r1] + ldr r1, =fake_heap_end @ set heap end + sub r8,r8,#0xc000 + str r8, [r1] + push {r0} ldr r3, =initSystem blx r3 @ system initialisation @@ -200,16 +85,8 @@ _start: ldr r3, =main - blx r3 @ jump to user code - - @ If the user ever returns, go back to passme loop - ldr r0, =ILoop - ldr r0, [r0] - ldr r1, =0x027FFE78 - str r0, [r1] - bx r1 -ILoop: - b ILoop + ldr lr,=__libnds_exit + bx r3 @ jump to user code @--------------------------------------------------------------------------------- @ check for a commandline @@ -221,10 +98,11 @@ checkARGV: str r1, [r0,#12] @ clear argc str r1, [r0,#16] @ clear argv - ldr r1, [r0] @ argv magic number - ldr r2, =0x5f617267 @ '_arg' - cmp r1, r2 - bxne lr @ bail out if no magic + ldr r3, [r0] @ argv magic number + ldr r2, =0x5f617267 @ '_arg' + cmp r3, r2 + strne r1,[r0,#20] + bxne lr @ bail out if no magic ldr r1, [r0, #4] @ command line address ldr r2, [r0, #8] @ length of command line diff --git a/rtl/nds/prt07.as b/rtl/nds/prt07.as index 9a5258ab58..320462e8b3 100644 --- a/rtl/nds/prt07.as +++ b/rtl/nds/prt07.as @@ -30,12 +30,8 @@ _start: mov r0, #0 @ int argc mov r1, #0 @ char *argv[] ldr r3, =main - bx r3 - nop - - @ If the user ever returns, return to flash cartridge - mov r0, #0x08000000 - bx r0 + ldr lr,=__libnds_exit + bx r3 @--------------------------------------------------------------------------------- @ Clear memory to 0x00 if length != 0 diff --git a/rtl/nds/prt09.as b/rtl/nds/prt09.as index f1bfbc4ca7..c74d26f15e 100644 --- a/rtl/nds/prt09.as +++ b/rtl/nds/prt09.as @@ -5,7 +5,7 @@ .cpu arm946e-s @--------------------------------------------------------------------------------- - .equ _libnds_argv, 0x027FFF70 + .equ _libnds_argv,0x02FFFE70 @--------------------------------------------------------------------------------- .section ".init" @@ -19,123 +19,8 @@ _start: mov r0, #0x04000000 @ IME = 0; str r0, [r0, #0x208] -@--------------------------------------------------------------------------------- -@ turn the power on for M3 -@--------------------------------------------------------------------------------- - ldr r1, =0x8203 - add r0,r0,#0x304 - strh r1, [r0] - - ldr r1, =0x00002078 @ disable TCM and protection unit - mcr p15, 0, r1, c1, c0 - -@--------------------------------------------------------------------------------- -@ Protection Unit Setup added by Sasq -@--------------------------------------------------------------------------------- - @ Disable cache - mov r0, #0 - mcr p15, 0, r0, c7, c5, 0 @ Instruction cache - mcr p15, 0, r0, c7, c6, 0 @ Data cache - - @ Wait for write buffer to empty - mcr p15, 0, r0, c7, c10, 4 - - ldr r0, =__dtcm_start - orr r0,r0,#0x0a - mcr p15, 0, r0, c9, c1,0 @ DTCM base = __dtcm_start, size = 16 KB - - mov r0,#0x20 - mcr p15, 0, r0, c9, c1,1 @ ITCM base = 0 , size = 32 MB - -@--------------------------------------------------------------------------------- -@ Setup memory regions similar to Release Version -@--------------------------------------------------------------------------------- - - @------------------------------------------------------------------------- - @ Region 0 - IO registers - @------------------------------------------------------------------------- - ldr r0,=( (0b11001 << 1) | 0x04000000 | 1) - mcr p15, 0, r0, c6, c0, 0 - - @------------------------------------------------------------------------- - @ Region 1 - Main Memory - @------------------------------------------------------------------------- - ldr r0,=( (0b10101 << 1) | 0x02000000 | 1) - mcr p15, 0, r0, c6, c1, 0 - - @------------------------------------------------------------------------- - @ Region 2 - alternate vector base - @------------------------------------------------------------------------- - ldr r0,=( (0b01011 << 1) | 0x00000000 | 1) - mcr p15, 0, r0, c6, c2, 0 - - @------------------------------------------------------------------------- - @ Region 3 - DS Accessory (GBA Cart) - @------------------------------------------------------------------------- - ldr r0,=( (0b11010 << 1) | 0x08000000 | 1) - mcr p15, 0, r0, c6, c3, 0 - - @------------------------------------------------------------------------- - @ Region 4 - DTCM - @------------------------------------------------------------------------- - ldr r0,=__dtcm_start - orr r0,r0,#((0b01101 << 1) | 1) - mcr p15, 0, r0, c6, c4, 0 - - @------------------------------------------------------------------------- - @ Region 5 - ITCM - @------------------------------------------------------------------------- - ldr r0,=__itcm_start - @ align to 32k boundary - mov r0,r0,lsr #15 - mov r0,r0,lsl #15 - orr r0,r0,#((0b01110 << 1) | 1) - mcr p15, 0, r0, c6, c5, 0 - - @------------------------------------------------------------------------- - @ Region 6 - System ROM - @------------------------------------------------------------------------- - ldr r0,=( (0b01110 << 1) | 0xFFFF0000 | 1) - mcr p15, 0, r0, c6, c6, 0 - - @------------------------------------------------------------------------- - @ Region 7 - non cacheable main ram - @------------------------------------------------------------------------- - ldr r0,=( (0b10101 << 1) | 0x02400000 | 1) - mcr p15, 0, r0, c6, c7, 0 - - @------------------------------------------------------------------------- - @ Write buffer enable - @------------------------------------------------------------------------- - ldr r0,=0b00000010 - mcr p15, 0, r0, c3, c0, 0 - - @------------------------------------------------------------------------- - @ DCache & ICache enable - @------------------------------------------------------------------------- - ldr r0,=0b01000010 - mcr p15, 0, r0, c2, c0, 0 - mcr p15, 0, r0, c2, c0, 1 - - @------------------------------------------------------------------------- - @ IAccess - @------------------------------------------------------------------------- - ldr r0,=0x36636633 - mcr p15, 0, r0, c5, c0, 3 - - @------------------------------------------------------------------------- - @ DAccess - @------------------------------------------------------------------------- - ldr r0,=0x36333633 - mcr p15, 0, r0, c5, c0, 2 - - @------------------------------------------------------------------------- - @ Enable ICache, DCache, ITCM & DTCM - @------------------------------------------------------------------------- - mrc p15, 0, r0, c1, c0, 0 - ldr r1,= (1<<18) | (1<<16) | (1<<12) | (1<<2) | (1<<0) - orr r0,r0,r1 - mcr p15, 0, r0, c1, c0, 0 + ldr r3,=__libnds_mpu_setup + blx r3 mov r0, #0x12 @ Switch to IRQ Mode msr cpsr, r0 @@ -177,10 +62,6 @@ _start: sub r1, r1, r0 bl ClearMem - ldr r1, =fake_heap_end @ set heap end - ldr r0, =__eheap_end - str r0, [r1] - ldr r0, =_libnds_argv @ reset heap base @@ -188,6 +69,10 @@ _start: ldr r1,=fake_heap_start str r2,[r1] + ldr r1, =fake_heap_end @ set heap end + sub r8,r8,#0xc000 + str r8, [r1] + push {r0} ldr r3, =initSystem blx r3 @ system initialisation @@ -200,16 +85,8 @@ _start: ldr r3, =main - blx r3 @ jump to user code - - @ If the user ever returns, go back to passme loop - ldr r0, =ILoop - ldr r0, [r0] - ldr r1, =0x027FFE78 - str r0, [r1] - bx r1 -ILoop: - b ILoop + ldr lr,=__libnds_exit + bx r3 @ jump to user code @--------------------------------------------------------------------------------- @ check for a commandline @@ -221,10 +98,11 @@ checkARGV: str r1, [r0,#12] @ clear argc str r1, [r0,#16] @ clear argv - ldr r1, [r0] @ argv magic number - ldr r2, =0x5f617267 @ '_arg' - cmp r1, r2 - bxne lr @ bail out if no magic + ldr r3, [r0] @ argv magic number + ldr r2, =0x5f617267 @ '_arg' + cmp r3, r2 + strne r1,[r0,#20] + bxne lr @ bail out if no magic ldr r1, [r0, #4] @ command line address ldr r2, [r0, #8] @ length of command line