summaryrefslogtreecommitdiff
path: root/packages/libndsfpc/examples
diff options
context:
space:
mode:
authorpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-09-27 07:05:49 +0000
committerpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-09-27 07:05:49 +0000
commit6468f91c0e100623a7b124f5a165bbbf7c8e4512 (patch)
tree3b1f8221fdc3002ae1dd6312e2994616c4a28aea /packages/libndsfpc/examples
parente43c5138dd5c06cacb9603c74694c0872d12c02e (diff)
downloadfpc-6468f91c0e100623a7b124f5a165bbbf7c8e4512.tar.gz
Update all packages Makefile's
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@39828 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/libndsfpc/examples')
-rw-r--r--packages/libndsfpc/examples/Makefile103
-rw-r--r--packages/libndsfpc/examples/audio/Makefile67
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/Makefile79
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile123
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile123
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/reverb/Makefile123
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/song_events_example/Makefile123
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/song_events_example2/Makefile123
-rw-r--r--packages/libndsfpc/examples/audio/maxmod/streaming/Makefile111
-rw-r--r--packages/libndsfpc/examples/audio/micrecord/Makefile111
-rw-r--r--packages/libndsfpc/examples/card/Makefile63
-rw-r--r--packages/libndsfpc/examples/card/eeprom/Makefile111
-rw-r--r--packages/libndsfpc/examples/debugging/Makefile63
-rw-r--r--packages/libndsfpc/examples/debugging/exceptionTest/Makefile111
-rw-r--r--packages/libndsfpc/examples/ds_motion/Makefile111
-rw-r--r--packages/libndsfpc/examples/dswifi/Makefile71
-rw-r--r--packages/libndsfpc/examples/dswifi/ap_search/Makefile111
-rw-r--r--packages/libndsfpc/examples/dswifi/autoconnect/Makefile111
-rw-r--r--packages/libndsfpc/examples/dswifi/httpget/Makefile111
-rw-r--r--packages/libndsfpc/examples/filesystem/Makefile67
-rw-r--r--packages/libndsfpc/examples/filesystem/embedded_gbfs/Makefile123
-rw-r--r--packages/libndsfpc/examples/filesystem/libfat/Makefile63
-rw-r--r--packages/libndsfpc/examples/filesystem/libfat/access_dir/Makefile111
-rw-r--r--packages/libndsfpc/examples/filesystem/libfat/access_file/Makefile111
-rw-r--r--packages/libndsfpc/examples/filesystem/libfat/libfatdir/Makefile111
-rw-r--r--packages/libndsfpc/examples/filesystem/nitrofs/Makefile63
-rw-r--r--packages/libndsfpc/examples/filesystem/nitrofs/nitrodir/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/2Dplus3D/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/Makefile83
-rw-r--r--packages/libndsfpc/examples/gl2d/dual_screen/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/fonts/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/primitives/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/scrolling/Makefile111
-rw-r--r--packages/libndsfpc/examples/gl2d/sprites/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/3D_Both_Screens/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/BoxTest/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Display_List/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Display_List_2/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Env_Mapping/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Makefile119
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Mixed_Text_3D/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Ortho/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Paletted_Cube/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Picking/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Simple_Quad/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Simple_Tri/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Textured_Cube/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Textured_Quad/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/Toon_Shading/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/Makefile107
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson01/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson02/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson03/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson04/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson05/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson06/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson07/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson08/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson09/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson10/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson10b/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/3D/nehe/lesson11/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/16bit_color_bmp/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/256_color_bmp/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/Double_Buffer/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/Makefile79
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/all_in_one/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Backgrounds/rotation/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Effects/Makefile63
-rw-r--r--packages/libndsfpc/examples/graphics/Effects/windows/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Ext_Palettes/Makefile63
-rw-r--r--packages/libndsfpc/examples/graphics/Ext_Palettes/backgrounds/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Makefile83
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/Makefile79
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/ansi_console/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/console_windows/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/custom_font/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/print_both_screens/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Printing/rotscale_text/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/Makefile87
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/allocation_test/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/animate_simple/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/bitmap_sprites/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/fire_and_sprites/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/simple/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/sprite_extended_palettes/Makefile111
-rw-r--r--packages/libndsfpc/examples/graphics/Sprites/sprite_rotate/Makefile111
-rw-r--r--packages/libndsfpc/examples/hello_world/Makefile111
-rw-r--r--packages/libndsfpc/examples/input/Makefile67
-rw-r--r--packages/libndsfpc/examples/input/Touch_Pad/Makefile71
-rw-r--r--packages/libndsfpc/examples/input/Touch_Pad/touch_area/Makefile111
-rw-r--r--packages/libndsfpc/examples/input/Touch_Pad/touch_look/Makefile111
-rw-r--r--packages/libndsfpc/examples/input/Touch_Pad/touch_test/Makefile111
-rw-r--r--packages/libndsfpc/examples/input/keyboard/Makefile67
-rw-r--r--packages/libndsfpc/examples/input/keyboard/keyboard_async/Makefile111
-rw-r--r--packages/libndsfpc/examples/input/keyboard/keyboard_stdin/Makefile111
-rw-r--r--packages/libndsfpc/examples/time/Makefile71
-rw-r--r--packages/libndsfpc/examples/time/RealTimeClock/Makefile111
-rw-r--r--packages/libndsfpc/examples/time/stopwatch/Makefile111
-rw-r--r--packages/libndsfpc/examples/time/timercallback/Makefile111
100 files changed, 10308 insertions, 100 deletions
diff --git a/packages/libndsfpc/examples/Makefile b/packages/libndsfpc/examples/Makefile
index f00c234171..348c86e477 100644
--- a/packages/libndsfpc/examples/Makefile
+++ b/packages/libndsfpc/examples/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=audio card debugging ds_motion dswifi filesystem gl2d graphics hello_world input time
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=audio card debugging ds_motion dswifi filesystem gl2d graphics hello_world input time
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=audio card debugging ds_motion dswifi filesystem gl2d graphics hello_world input time
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=audio card debugging ds_motion dswifi filesystem gl2d graphics hello_world input time
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=audio card debugging ds_motion dswifi filesystem gl2d graphics hello_world input time
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3745,6 +3794,58 @@ TARGET_DIRS_HELLO_WORLD=1
TARGET_DIRS_INPUT=1
TARGET_DIRS_TIME=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_AUDIO=1
+TARGET_DIRS_CARD=1
+TARGET_DIRS_DEBUGGING=1
+TARGET_DIRS_DS_MOTION=1
+TARGET_DIRS_DSWIFI=1
+TARGET_DIRS_FILESYSTEM=1
+TARGET_DIRS_GL2D=1
+TARGET_DIRS_GRAPHICS=1
+TARGET_DIRS_HELLO_WORLD=1
+TARGET_DIRS_INPUT=1
+TARGET_DIRS_TIME=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_AUDIO=1
+TARGET_DIRS_CARD=1
+TARGET_DIRS_DEBUGGING=1
+TARGET_DIRS_DS_MOTION=1
+TARGET_DIRS_DSWIFI=1
+TARGET_DIRS_FILESYSTEM=1
+TARGET_DIRS_GL2D=1
+TARGET_DIRS_GRAPHICS=1
+TARGET_DIRS_HELLO_WORLD=1
+TARGET_DIRS_INPUT=1
+TARGET_DIRS_TIME=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_AUDIO=1
+TARGET_DIRS_CARD=1
+TARGET_DIRS_DEBUGGING=1
+TARGET_DIRS_DS_MOTION=1
+TARGET_DIRS_DSWIFI=1
+TARGET_DIRS_FILESYSTEM=1
+TARGET_DIRS_GL2D=1
+TARGET_DIRS_GRAPHICS=1
+TARGET_DIRS_HELLO_WORLD=1
+TARGET_DIRS_INPUT=1
+TARGET_DIRS_TIME=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_AUDIO=1
+TARGET_DIRS_CARD=1
+TARGET_DIRS_DEBUGGING=1
+TARGET_DIRS_DS_MOTION=1
+TARGET_DIRS_DSWIFI=1
+TARGET_DIRS_FILESYSTEM=1
+TARGET_DIRS_GL2D=1
+TARGET_DIRS_GRAPHICS=1
+TARGET_DIRS_HELLO_WORLD=1
+TARGET_DIRS_INPUT=1
+TARGET_DIRS_TIME=1
+endif
ifdef TARGET_DIRS_AUDIO
audio_all:
$(MAKE) -C audio all
diff --git a/packages/libndsfpc/examples/audio/Makefile b/packages/libndsfpc/examples/audio/Makefile
index 4edf516642..e80402e43b 100644
--- a/packages/libndsfpc/examples/audio/Makefile
+++ b/packages/libndsfpc/examples/audio/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=maxmod micrecord
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=maxmod micrecord
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=maxmod micrecord
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=maxmod micrecord
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=maxmod micrecord
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2980,6 +3029,22 @@ ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_MAXMOD=1
TARGET_DIRS_MICRECORD=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_MAXMOD=1
+TARGET_DIRS_MICRECORD=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_MAXMOD=1
+TARGET_DIRS_MICRECORD=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_MAXMOD=1
+TARGET_DIRS_MICRECORD=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_MAXMOD=1
+TARGET_DIRS_MICRECORD=1
+endif
ifdef TARGET_DIRS_MAXMOD
maxmod_all:
$(MAKE) -C maxmod all
diff --git a/packages/libndsfpc/examples/audio/maxmod/Makefile b/packages/libndsfpc/examples/audio/maxmod/Makefile
index 7d0f0afa25..dddffed91a 100644
--- a/packages/libndsfpc/examples/audio/maxmod/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=audio_modes basic_sound reverb song_events_example song_events_example2
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=audio_modes basic_sound reverb song_events_example song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=audio_modes basic_sound reverb song_events_example song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=audio_modes basic_sound reverb song_events_example song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=audio_modes basic_sound reverb song_events_example song_events_example2
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3235,6 +3284,34 @@ TARGET_DIRS_REVERB=1
TARGET_DIRS_SONG_EVENTS_EXAMPLE=1
TARGET_DIRS_SONG_EVENTS_EXAMPLE2=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_AUDIO_MODES=1
+TARGET_DIRS_BASIC_SOUND=1
+TARGET_DIRS_REVERB=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE2=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_AUDIO_MODES=1
+TARGET_DIRS_BASIC_SOUND=1
+TARGET_DIRS_REVERB=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE2=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_AUDIO_MODES=1
+TARGET_DIRS_BASIC_SOUND=1
+TARGET_DIRS_REVERB=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE2=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_AUDIO_MODES=1
+TARGET_DIRS_BASIC_SOUND=1
+TARGET_DIRS_REVERB=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE=1
+TARGET_DIRS_SONG_EVENTS_EXAMPLE2=1
+endif
ifdef TARGET_DIRS_AUDIO_MODES
audio_modes_all:
$(MAKE) -C audio_modes all
diff --git a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile
index e52f70252f..6cb25944cf 100644
--- a/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/audio_modes/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=audio_modes
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=audio_modes
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=audio_modes
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=audio_modes
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=audio_modes
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=soundbank.bin
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=soundbank.bin
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=soundbank.bin
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=soundbank.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=soundbank.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=soundbank.bin
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1363,6 +1399,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2129,6 +2201,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2503,6 +2587,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3559,6 +3644,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile
index 4433350c52..b6457e41b2 100644
--- a/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/basic_sound/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=basic_sound
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=basic_sound
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=basic_sound
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=basic_sound
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=basic_sound
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1363,6 +1399,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2129,6 +2201,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2503,6 +2587,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3559,6 +3644,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/maxmod/reverb/Makefile b/packages/libndsfpc/examples/audio/maxmod/reverb/Makefile
index 22c5386315..aeb8516ff0 100644
--- a/packages/libndsfpc/examples/audio/maxmod/reverb/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/reverb/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=reverb
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=reverb
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=reverb
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=reverb
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=reverb
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=soundbank.bin $(GFX_FILES)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1363,6 +1399,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2129,6 +2201,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2503,6 +2587,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3559,6 +3644,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/maxmod/song_events_example/Makefile b/packages/libndsfpc/examples/audio/maxmod/song_events_example/Makefile
index 0858ca3175..a397fe946e 100644
--- a/packages/libndsfpc/examples/audio/maxmod/song_events_example/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/song_events_example/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=song_events_example
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=song_events_example
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=song_events_example
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=song_events_example
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=song_events_example
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=mmsolution.bin
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=mmsolution.bin
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=mmsolution.bin
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1363,6 +1399,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2129,6 +2201,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2503,6 +2587,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3559,6 +3644,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/maxmod/song_events_example2/Makefile b/packages/libndsfpc/examples/audio/maxmod/song_events_example2/Makefile
index f149818a08..557e05fbbc 100644
--- a/packages/libndsfpc/examples/audio/maxmod/song_events_example2/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/song_events_example2/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=song_events_example2
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=song_events_example2
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=song_events_example2
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=mmsolution.bin
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=mmsolution.bin
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=mmsolution.bin
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=mmsolution.bin
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1363,6 +1399,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2129,6 +2201,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2503,6 +2587,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3559,6 +3644,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/maxmod/streaming/Makefile b/packages/libndsfpc/examples/audio/maxmod/streaming/Makefile
index edd429eb7b..beaf93541f 100644
--- a/packages/libndsfpc/examples/audio/maxmod/streaming/Makefile
+++ b/packages/libndsfpc/examples/audio/maxmod/streaming/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=streaming
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=streaming
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=streaming
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=streaming
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=streaming
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/audio/micrecord/Makefile b/packages/libndsfpc/examples/audio/micrecord/Makefile
index 1f7e0e2048..928cc5c66b 100644
--- a/packages/libndsfpc/examples/audio/micrecord/Makefile
+++ b/packages/libndsfpc/examples/audio/micrecord/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=micrecord
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=micrecord
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=micrecord
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=micrecord
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=micrecord
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/card/Makefile b/packages/libndsfpc/examples/card/Makefile
index fd898fbc73..3233dbf395 100644
--- a/packages/libndsfpc/examples/card/Makefile
+++ b/packages/libndsfpc/examples/card/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=eeprom
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=eeprom
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_EEPROM=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_EEPROM=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_EEPROM=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_EEPROM=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_EEPROM=1
+endif
ifdef TARGET_DIRS_EEPROM
eeprom_all:
$(MAKE) -C eeprom all
diff --git a/packages/libndsfpc/examples/card/eeprom/Makefile b/packages/libndsfpc/examples/card/eeprom/Makefile
index 94b145c1f2..fe0028d15a 100644
--- a/packages/libndsfpc/examples/card/eeprom/Makefile
+++ b/packages/libndsfpc/examples/card/eeprom/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=eeprom
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=eeprom
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=eeprom
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/debugging/Makefile b/packages/libndsfpc/examples/debugging/Makefile
index 0773b93e33..fcede8591d 100644
--- a/packages/libndsfpc/examples/debugging/Makefile
+++ b/packages/libndsfpc/examples/debugging/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=exceptionTest
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=exceptionTest
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_EXCEPTIONTEST=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_EXCEPTIONTEST=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_EXCEPTIONTEST=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_EXCEPTIONTEST=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_EXCEPTIONTEST=1
+endif
ifdef TARGET_DIRS_EXCEPTIONTEST
exceptionTest_all:
$(MAKE) -C exceptionTest all
diff --git a/packages/libndsfpc/examples/debugging/exceptionTest/Makefile b/packages/libndsfpc/examples/debugging/exceptionTest/Makefile
index 230ea48cb3..09d42dcd18 100644
--- a/packages/libndsfpc/examples/debugging/exceptionTest/Makefile
+++ b/packages/libndsfpc/examples/debugging/exceptionTest/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=exceptionTest
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=exceptionTest
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=exceptionTest
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/ds_motion/Makefile b/packages/libndsfpc/examples/ds_motion/Makefile
index 8a5ee83d6f..9c94e3e444 100644
--- a/packages/libndsfpc/examples/ds_motion/Makefile
+++ b/packages/libndsfpc/examples/ds_motion/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=dsMotion
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=dsMotion
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=dsMotion
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=dsMotion
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=dsMotion
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/dswifi/Makefile b/packages/libndsfpc/examples/dswifi/Makefile
index c6b8f13168..93c8713d75 100644
--- a/packages/libndsfpc/examples/dswifi/Makefile
+++ b/packages/libndsfpc/examples/dswifi/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=ap_search autoconnect httpget
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=ap_search autoconnect httpget
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=ap_search autoconnect httpget
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=ap_search autoconnect httpget
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=ap_search autoconnect httpget
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3065,6 +3114,26 @@ TARGET_DIRS_AP_SEARCH=1
TARGET_DIRS_AUTOCONNECT=1
TARGET_DIRS_HTTPGET=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_AP_SEARCH=1
+TARGET_DIRS_AUTOCONNECT=1
+TARGET_DIRS_HTTPGET=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_AP_SEARCH=1
+TARGET_DIRS_AUTOCONNECT=1
+TARGET_DIRS_HTTPGET=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_AP_SEARCH=1
+TARGET_DIRS_AUTOCONNECT=1
+TARGET_DIRS_HTTPGET=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_AP_SEARCH=1
+TARGET_DIRS_AUTOCONNECT=1
+TARGET_DIRS_HTTPGET=1
+endif
ifdef TARGET_DIRS_AP_SEARCH
ap_search_all:
$(MAKE) -C ap_search all
diff --git a/packages/libndsfpc/examples/dswifi/ap_search/Makefile b/packages/libndsfpc/examples/dswifi/ap_search/Makefile
index 5f43a88702..58e6f100b2 100644
--- a/packages/libndsfpc/examples/dswifi/ap_search/Makefile
+++ b/packages/libndsfpc/examples/dswifi/ap_search/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=apSearch
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=apSearch
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=apSearch
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=apSearch
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=apSearch
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/dswifi/autoconnect/Makefile b/packages/libndsfpc/examples/dswifi/autoconnect/Makefile
index f5ca271d27..e0f922c70e 100644
--- a/packages/libndsfpc/examples/dswifi/autoconnect/Makefile
+++ b/packages/libndsfpc/examples/dswifi/autoconnect/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=autoconnect
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=autoconnect
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=autoconnect
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=autoconnect
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=autoconnect
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/dswifi/httpget/Makefile b/packages/libndsfpc/examples/dswifi/httpget/Makefile
index 5dcfa9d42c..b4cd39adc3 100644
--- a/packages/libndsfpc/examples/dswifi/httpget/Makefile
+++ b/packages/libndsfpc/examples/dswifi/httpget/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=httpget
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=httpget
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=httpget
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=httpget
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=httpget
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/filesystem/Makefile b/packages/libndsfpc/examples/filesystem/Makefile
index d31c083da2..3cdcc32ae6 100644
--- a/packages/libndsfpc/examples/filesystem/Makefile
+++ b/packages/libndsfpc/examples/filesystem/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=libfat nitrofs
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=libfat nitrofs
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=libfat nitrofs
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=libfat nitrofs
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=libfat nitrofs
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2980,6 +3029,22 @@ ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_LIBFAT=1
TARGET_DIRS_NITROFS=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_LIBFAT=1
+TARGET_DIRS_NITROFS=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_LIBFAT=1
+TARGET_DIRS_NITROFS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_LIBFAT=1
+TARGET_DIRS_NITROFS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_LIBFAT=1
+TARGET_DIRS_NITROFS=1
+endif
ifdef TARGET_DIRS_LIBFAT
libfat_all:
$(MAKE) -C libfat all
diff --git a/packages/libndsfpc/examples/filesystem/embedded_gbfs/Makefile b/packages/libndsfpc/examples/filesystem/embedded_gbfs/Makefile
index c1020a65d1..fb66e3b4de 100644
--- a/packages/libndsfpc/examples/filesystem/embedded_gbfs/Makefile
+++ b/packages/libndsfpc/examples/filesystem/embedded_gbfs/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -597,6 +597,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=embedded_gbfs
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=embedded_gbfs
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=embedded_gbfs
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=embedded_gbfs
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=embedded_gbfs
+endif
ifeq ($(FULL_TARGET),i386-linux)
override TARGET_LOADERS+=data.gbfs
endif
@@ -852,6 +864,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_LOADERS+=data.gbfs
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_LOADERS+=data.gbfs
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_LOADERS+=data.gbfs
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_LOADERS+=data.gbfs
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_LOADERS+=data.gbfs
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -1107,6 +1131,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1618,6 +1666,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1873,6 +1933,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -2128,6 +2200,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2502,6 +2586,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3558,6 +3643,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/filesystem/libfat/Makefile b/packages/libndsfpc/examples/filesystem/libfat/Makefile
index 6587c369e2..ef62900966 100644
--- a/packages/libndsfpc/examples/filesystem/libfat/Makefile
+++ b/packages/libndsfpc/examples/filesystem/libfat/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=libfatdir
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=libfatdir
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_LIBFATDIR=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_LIBFATDIR=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_LIBFATDIR=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_LIBFATDIR=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_LIBFATDIR=1
+endif
ifdef TARGET_DIRS_LIBFATDIR
libfatdir_all:
$(MAKE) -C libfatdir all
diff --git a/packages/libndsfpc/examples/filesystem/libfat/access_dir/Makefile b/packages/libndsfpc/examples/filesystem/libfat/access_dir/Makefile
index d141796d13..e102d6bad6 100644
--- a/packages/libndsfpc/examples/filesystem/libfat/access_dir/Makefile
+++ b/packages/libndsfpc/examples/filesystem/libfat/access_dir/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=access_dir
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=access_dir
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=access_dir
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=access_dir
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=access_dir
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/filesystem/libfat/access_file/Makefile b/packages/libndsfpc/examples/filesystem/libfat/access_file/Makefile
index 3ab5bd0d1a..24039f90a7 100644
--- a/packages/libndsfpc/examples/filesystem/libfat/access_file/Makefile
+++ b/packages/libndsfpc/examples/filesystem/libfat/access_file/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=access_file
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=access_file
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=access_file
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=access_file
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=access_file
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/filesystem/libfat/libfatdir/Makefile b/packages/libndsfpc/examples/filesystem/libfat/libfatdir/Makefile
index 1df3fb1f8e..1e9cf05f13 100644
--- a/packages/libndsfpc/examples/filesystem/libfat/libfatdir/Makefile
+++ b/packages/libndsfpc/examples/filesystem/libfat/libfatdir/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -596,6 +596,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=libfatdir
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=libfatdir
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=libfatdir
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -851,6 +863,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1106,6 +1130,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1362,6 +1398,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1617,6 +1665,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1872,6 +1932,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2246,6 +2318,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3302,6 +3375,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/filesystem/nitrofs/Makefile b/packages/libndsfpc/examples/filesystem/nitrofs/Makefile
index 5b67610612..354d247478 100644
--- a/packages/libndsfpc/examples/filesystem/nitrofs/Makefile
+++ b/packages/libndsfpc/examples/filesystem/nitrofs/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=nitrodir
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=nitrodir
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_NITRODIR=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_NITRODIR=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_NITRODIR=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_NITRODIR=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_NITRODIR=1
+endif
ifdef TARGET_DIRS_NITRODIR
nitrodir_all:
$(MAKE) -C nitrodir all
diff --git a/packages/libndsfpc/examples/filesystem/nitrofs/nitrodir/Makefile b/packages/libndsfpc/examples/filesystem/nitrofs/nitrodir/Makefile
index b4527fc87e..a948d11f6f 100644
--- a/packages/libndsfpc/examples/filesystem/nitrofs/nitrodir/Makefile
+++ b/packages/libndsfpc/examples/filesystem/nitrofs/nitrodir/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=nitrodir
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=nitrodir
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=nitrodir
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/2Dplus3D/Makefile b/packages/libndsfpc/examples/gl2d/2Dplus3D/Makefile
index 55e9d0a7be..02e776a771 100644
--- a/packages/libndsfpc/examples/gl2d/2Dplus3D/Makefile
+++ b/packages/libndsfpc/examples/gl2d/2Dplus3D/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=2Dplus3D
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=2Dplus3D
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=2Dplus3D
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=2Dplus3D
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=2Dplus3D
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/Makefile b/packages/libndsfpc/examples/gl2d/Makefile
index 2f75279578..c2c6bcd3ea 100644
--- a/packages/libndsfpc/examples/gl2d/Makefile
+++ b/packages/libndsfpc/examples/gl2d/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=2Dplus3D dual_screen fonts primitives scrolling sprites
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=2Dplus3D dual_screen fonts primitives scrolling sprites
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=2Dplus3D dual_screen fonts primitives scrolling sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=2Dplus3D dual_screen fonts primitives scrolling sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=2Dplus3D dual_screen fonts primitives scrolling sprites
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3320,6 +3369,38 @@ TARGET_DIRS_PRIMITIVES=1
TARGET_DIRS_SCROLLING=1
TARGET_DIRS_SPRITES=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_2DPLUS3D=1
+TARGET_DIRS_DUAL_SCREEN=1
+TARGET_DIRS_FONTS=1
+TARGET_DIRS_PRIMITIVES=1
+TARGET_DIRS_SCROLLING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_2DPLUS3D=1
+TARGET_DIRS_DUAL_SCREEN=1
+TARGET_DIRS_FONTS=1
+TARGET_DIRS_PRIMITIVES=1
+TARGET_DIRS_SCROLLING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_2DPLUS3D=1
+TARGET_DIRS_DUAL_SCREEN=1
+TARGET_DIRS_FONTS=1
+TARGET_DIRS_PRIMITIVES=1
+TARGET_DIRS_SCROLLING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_2DPLUS3D=1
+TARGET_DIRS_DUAL_SCREEN=1
+TARGET_DIRS_FONTS=1
+TARGET_DIRS_PRIMITIVES=1
+TARGET_DIRS_SCROLLING=1
+TARGET_DIRS_SPRITES=1
+endif
ifdef TARGET_DIRS_2DPLUS3D
2Dplus3D_all:
$(MAKE) -C 2Dplus3D all
diff --git a/packages/libndsfpc/examples/gl2d/dual_screen/Makefile b/packages/libndsfpc/examples/gl2d/dual_screen/Makefile
index 6a3c5ad8b3..9b31fac267 100644
--- a/packages/libndsfpc/examples/gl2d/dual_screen/Makefile
+++ b/packages/libndsfpc/examples/gl2d/dual_screen/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=dual_screen
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=dual_screen
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=dual_screen
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=dual_screen
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=dual_screen
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/fonts/Makefile b/packages/libndsfpc/examples/gl2d/fonts/Makefile
index a793672c8e..3e862a7b86 100644
--- a/packages/libndsfpc/examples/gl2d/fonts/Makefile
+++ b/packages/libndsfpc/examples/gl2d/fonts/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=fonts
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=fonts
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=fonts
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=fonts
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=fonts
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/primitives/Makefile b/packages/libndsfpc/examples/gl2d/primitives/Makefile
index 1d54ce3fff..9017a8af4a 100644
--- a/packages/libndsfpc/examples/gl2d/primitives/Makefile
+++ b/packages/libndsfpc/examples/gl2d/primitives/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=primitives
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=primitives
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=primitives
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=primitives
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=primitives
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/scrolling/Makefile b/packages/libndsfpc/examples/gl2d/scrolling/Makefile
index 7b7e7a67d7..fdc4876b0b 100644
--- a/packages/libndsfpc/examples/gl2d/scrolling/Makefile
+++ b/packages/libndsfpc/examples/gl2d/scrolling/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=scrolling
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=scrolling
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=scrolling
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=scrolling
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=scrolling
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/gl2d/sprites/Makefile b/packages/libndsfpc/examples/gl2d/sprites/Makefile
index 49eae2980e..363a1558bd 100644
--- a/packages/libndsfpc/examples/gl2d/sprites/Makefile
+++ b/packages/libndsfpc/examples/gl2d/sprites/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=sprites
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=sprites
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=sprites
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/3D_Both_Screens/Makefile b/packages/libndsfpc/examples/graphics/3D/3D_Both_Screens/Makefile
index 19ec937db9..5b8822c5a2 100644
--- a/packages/libndsfpc/examples/graphics/3D/3D_Both_Screens/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/3D_Both_Screens/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=3DBothScreens
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=3DBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=3DBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=3DBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=3DBothScreens
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/BoxTest/Makefile b/packages/libndsfpc/examples/graphics/3D/BoxTest/Makefile
index 90003f80f7..e0ca1b9a2b 100644
--- a/packages/libndsfpc/examples/graphics/3D/BoxTest/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/BoxTest/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=BoxTest
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=BoxTest
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=BoxTest
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=BoxTest
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=BoxTest
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Display_List/Makefile b/packages/libndsfpc/examples/graphics/3D/Display_List/Makefile
index 85e125d204..8a142771db 100644
--- a/packages/libndsfpc/examples/graphics/3D/Display_List/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Display_List/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=DisplayList
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=DisplayList
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=DisplayList
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=DisplayList
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=DisplayList
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Display_List_2/Makefile b/packages/libndsfpc/examples/graphics/3D/Display_List_2/Makefile
index ffb30feb8d..abb49ba78e 100644
--- a/packages/libndsfpc/examples/graphics/3D/Display_List_2/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Display_List_2/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=DisplayList2
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=DisplayList2
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=DisplayList2
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=DisplayList2
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=DisplayList2
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Env_Mapping/Makefile b/packages/libndsfpc/examples/graphics/3D/Env_Mapping/Makefile
index fc1a1f4bf0..04ad4a9cca 100644
--- a/packages/libndsfpc/examples/graphics/3D/Env_Mapping/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Env_Mapping/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=EnvMapping
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=EnvMapping
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=EnvMapping
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=EnvMapping
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=EnvMapping
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Makefile b/packages/libndsfpc/examples/graphics/3D/Makefile
index 3f0534f44e..1743491fc4 100644
--- a/packages/libndsfpc/examples/graphics/3D/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=3D_Both_Screens BoxTest Display_List Display_List_2 Env_Mapping Mixed_Text_3D Ortho Paletted_Cube Picking Simple_Quad Simple_Tri Textured_Cube Textured_Quad Toon_Shading nehe
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=3D_Both_Screens BoxTest Display_List Display_List_2 Env_Mapping Mixed_Text_3D Ortho Paletted_Cube Picking Simple_Quad Simple_Tri Textured_Cube Textured_Quad Toon_Shading nehe
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=3D_Both_Screens BoxTest Display_List Display_List_2 Env_Mapping Mixed_Text_3D Ortho Paletted_Cube Picking Simple_Quad Simple_Tri Textured_Cube Textured_Quad Toon_Shading nehe
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=3D_Both_Screens BoxTest Display_List Display_List_2 Env_Mapping Mixed_Text_3D Ortho Paletted_Cube Picking Simple_Quad Simple_Tri Textured_Cube Textured_Quad Toon_Shading nehe
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=3D_Both_Screens BoxTest Display_List Display_List_2 Env_Mapping Mixed_Text_3D Ortho Paletted_Cube Picking Simple_Quad Simple_Tri Textured_Cube Textured_Quad Toon_Shading nehe
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -4085,6 +4134,74 @@ TARGET_DIRS_TEXTURED_QUAD=1
TARGET_DIRS_TOON_SHADING=1
TARGET_DIRS_NEHE=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_3D_BOTH_SCREENS=1
+TARGET_DIRS_BOXTEST=1
+TARGET_DIRS_DISPLAY_LIST=1
+TARGET_DIRS_DISPLAY_LIST_2=1
+TARGET_DIRS_ENV_MAPPING=1
+TARGET_DIRS_MIXED_TEXT_3D=1
+TARGET_DIRS_ORTHO=1
+TARGET_DIRS_PALETTED_CUBE=1
+TARGET_DIRS_PICKING=1
+TARGET_DIRS_SIMPLE_QUAD=1
+TARGET_DIRS_SIMPLE_TRI=1
+TARGET_DIRS_TEXTURED_CUBE=1
+TARGET_DIRS_TEXTURED_QUAD=1
+TARGET_DIRS_TOON_SHADING=1
+TARGET_DIRS_NEHE=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_3D_BOTH_SCREENS=1
+TARGET_DIRS_BOXTEST=1
+TARGET_DIRS_DISPLAY_LIST=1
+TARGET_DIRS_DISPLAY_LIST_2=1
+TARGET_DIRS_ENV_MAPPING=1
+TARGET_DIRS_MIXED_TEXT_3D=1
+TARGET_DIRS_ORTHO=1
+TARGET_DIRS_PALETTED_CUBE=1
+TARGET_DIRS_PICKING=1
+TARGET_DIRS_SIMPLE_QUAD=1
+TARGET_DIRS_SIMPLE_TRI=1
+TARGET_DIRS_TEXTURED_CUBE=1
+TARGET_DIRS_TEXTURED_QUAD=1
+TARGET_DIRS_TOON_SHADING=1
+TARGET_DIRS_NEHE=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_3D_BOTH_SCREENS=1
+TARGET_DIRS_BOXTEST=1
+TARGET_DIRS_DISPLAY_LIST=1
+TARGET_DIRS_DISPLAY_LIST_2=1
+TARGET_DIRS_ENV_MAPPING=1
+TARGET_DIRS_MIXED_TEXT_3D=1
+TARGET_DIRS_ORTHO=1
+TARGET_DIRS_PALETTED_CUBE=1
+TARGET_DIRS_PICKING=1
+TARGET_DIRS_SIMPLE_QUAD=1
+TARGET_DIRS_SIMPLE_TRI=1
+TARGET_DIRS_TEXTURED_CUBE=1
+TARGET_DIRS_TEXTURED_QUAD=1
+TARGET_DIRS_TOON_SHADING=1
+TARGET_DIRS_NEHE=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_3D_BOTH_SCREENS=1
+TARGET_DIRS_BOXTEST=1
+TARGET_DIRS_DISPLAY_LIST=1
+TARGET_DIRS_DISPLAY_LIST_2=1
+TARGET_DIRS_ENV_MAPPING=1
+TARGET_DIRS_MIXED_TEXT_3D=1
+TARGET_DIRS_ORTHO=1
+TARGET_DIRS_PALETTED_CUBE=1
+TARGET_DIRS_PICKING=1
+TARGET_DIRS_SIMPLE_QUAD=1
+TARGET_DIRS_SIMPLE_TRI=1
+TARGET_DIRS_TEXTURED_CUBE=1
+TARGET_DIRS_TEXTURED_QUAD=1
+TARGET_DIRS_TOON_SHADING=1
+TARGET_DIRS_NEHE=1
+endif
ifdef TARGET_DIRS_3D_BOTH_SCREENS
3D_Both_Screens_all:
$(MAKE) -C 3D_Both_Screens all
diff --git a/packages/libndsfpc/examples/graphics/3D/Mixed_Text_3D/Makefile b/packages/libndsfpc/examples/graphics/3D/Mixed_Text_3D/Makefile
index b728343747..283e3e3c1f 100644
--- a/packages/libndsfpc/examples/graphics/3D/Mixed_Text_3D/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Mixed_Text_3D/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=MixedText3D
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=MixedText3D
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=MixedText3D
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=MixedText3D
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=MixedText3D
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Ortho/Makefile b/packages/libndsfpc/examples/graphics/3D/Ortho/Makefile
index 9f918017e8..91c54142f8 100644
--- a/packages/libndsfpc/examples/graphics/3D/Ortho/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Ortho/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=Ortho
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=Ortho
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=Ortho
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=Ortho
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=Ortho
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Paletted_Cube/Makefile b/packages/libndsfpc/examples/graphics/3D/Paletted_Cube/Makefile
index cc5d00f3cb..01f1193d0a 100644
--- a/packages/libndsfpc/examples/graphics/3D/Paletted_Cube/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Paletted_Cube/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=PalettedCube
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=PalettedCube
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=PalettedCube
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=PalettedCube
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=PalettedCube
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Picking/Makefile b/packages/libndsfpc/examples/graphics/3D/Picking/Makefile
index 0637af4b12..868f788a2e 100644
--- a/packages/libndsfpc/examples/graphics/3D/Picking/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Picking/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=Picking
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=Picking
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=Picking
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=Picking
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=Picking
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Simple_Quad/Makefile b/packages/libndsfpc/examples/graphics/3D/Simple_Quad/Makefile
index 0c1449c446..14facb7487 100644
--- a/packages/libndsfpc/examples/graphics/3D/Simple_Quad/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Simple_Quad/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=SimpleQuad
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=SimpleQuad
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=SimpleQuad
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=SimpleQuad
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=SimpleQuad
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Simple_Tri/Makefile b/packages/libndsfpc/examples/graphics/3D/Simple_Tri/Makefile
index 028cddb1f1..1fcd2b02ce 100644
--- a/packages/libndsfpc/examples/graphics/3D/Simple_Tri/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Simple_Tri/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=SimpleTri
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=SimpleTri
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=SimpleTri
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=SimpleTri
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=SimpleTri
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Textured_Cube/Makefile b/packages/libndsfpc/examples/graphics/3D/Textured_Cube/Makefile
index 22954151b0..9d582db65b 100644
--- a/packages/libndsfpc/examples/graphics/3D/Textured_Cube/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Textured_Cube/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=TexturedCube
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=TexturedCube
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=TexturedCube
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=TexturedCube
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=TexturedCube
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Textured_Quad/Makefile b/packages/libndsfpc/examples/graphics/3D/Textured_Quad/Makefile
index bf2292ebfd..7833f2347e 100644
--- a/packages/libndsfpc/examples/graphics/3D/Textured_Quad/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Textured_Quad/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=TexturedQuad
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=TexturedQuad
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=TexturedQuad
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=TexturedQuad
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=TexturedQuad
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/Toon_Shading/Makefile b/packages/libndsfpc/examples/graphics/3D/Toon_Shading/Makefile
index 804b3b4248..472b7c6d84 100644
--- a/packages/libndsfpc/examples/graphics/3D/Toon_Shading/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/Toon_Shading/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=ToonShading
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=ToonShading
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=ToonShading
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=ToonShading
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=ToonShading
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/Makefile
index e587540276..551f744b94 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=lesson01 lesson02 lesson03 lesson04 lesson05 lesson06 lesson07 lesson08 lesson09 lesson10 lesson10b lesson11
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=lesson01 lesson02 lesson03 lesson04 lesson05 lesson06 lesson07 lesson08 lesson09 lesson10 lesson10b lesson11
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=lesson01 lesson02 lesson03 lesson04 lesson05 lesson06 lesson07 lesson08 lesson09 lesson10 lesson10b lesson11
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=lesson01 lesson02 lesson03 lesson04 lesson05 lesson06 lesson07 lesson08 lesson09 lesson10 lesson10b lesson11
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=lesson01 lesson02 lesson03 lesson04 lesson05 lesson06 lesson07 lesson08 lesson09 lesson10 lesson10b lesson11
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3830,6 +3879,62 @@ TARGET_DIRS_LESSON10=1
TARGET_DIRS_LESSON10B=1
TARGET_DIRS_LESSON11=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_LESSON01=1
+TARGET_DIRS_LESSON02=1
+TARGET_DIRS_LESSON03=1
+TARGET_DIRS_LESSON04=1
+TARGET_DIRS_LESSON05=1
+TARGET_DIRS_LESSON06=1
+TARGET_DIRS_LESSON07=1
+TARGET_DIRS_LESSON08=1
+TARGET_DIRS_LESSON09=1
+TARGET_DIRS_LESSON10=1
+TARGET_DIRS_LESSON10B=1
+TARGET_DIRS_LESSON11=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_LESSON01=1
+TARGET_DIRS_LESSON02=1
+TARGET_DIRS_LESSON03=1
+TARGET_DIRS_LESSON04=1
+TARGET_DIRS_LESSON05=1
+TARGET_DIRS_LESSON06=1
+TARGET_DIRS_LESSON07=1
+TARGET_DIRS_LESSON08=1
+TARGET_DIRS_LESSON09=1
+TARGET_DIRS_LESSON10=1
+TARGET_DIRS_LESSON10B=1
+TARGET_DIRS_LESSON11=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_LESSON01=1
+TARGET_DIRS_LESSON02=1
+TARGET_DIRS_LESSON03=1
+TARGET_DIRS_LESSON04=1
+TARGET_DIRS_LESSON05=1
+TARGET_DIRS_LESSON06=1
+TARGET_DIRS_LESSON07=1
+TARGET_DIRS_LESSON08=1
+TARGET_DIRS_LESSON09=1
+TARGET_DIRS_LESSON10=1
+TARGET_DIRS_LESSON10B=1
+TARGET_DIRS_LESSON11=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_LESSON01=1
+TARGET_DIRS_LESSON02=1
+TARGET_DIRS_LESSON03=1
+TARGET_DIRS_LESSON04=1
+TARGET_DIRS_LESSON05=1
+TARGET_DIRS_LESSON06=1
+TARGET_DIRS_LESSON07=1
+TARGET_DIRS_LESSON08=1
+TARGET_DIRS_LESSON09=1
+TARGET_DIRS_LESSON10=1
+TARGET_DIRS_LESSON10B=1
+TARGET_DIRS_LESSON11=1
+endif
ifdef TARGET_DIRS_LESSON01
lesson01_all:
$(MAKE) -C lesson01 all
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson01/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson01/Makefile
index 5412764938..9ad5d93130 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson01/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson01/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson01
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson01
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson01
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson01
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson01
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson02/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson02/Makefile
index c98c4692f1..d6190578d5 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson02/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson02/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson02
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson02
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson02
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson02
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson02
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson03/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson03/Makefile
index 528534acdb..0aa640f349 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson03/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson03/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson03
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson03
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson03
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson03
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson03
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson04/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson04/Makefile
index 966a35b22b..9e6c57c355 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson04/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson04/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson04
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson04
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson04
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson04
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson04
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson05/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson05/Makefile
index b11530e657..95620435c5 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson05/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson05/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson05
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson05
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson05
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson05
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson05
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson06/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson06/Makefile
index ee9f936afe..3d1911a65a 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson06/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson06/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson06
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson06
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson06
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson06
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson06
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson07/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson07/Makefile
index b6e5447ebe..b8c98fd3b9 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson07/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson07/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson07
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson07
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson07
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson07
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson07
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson08/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson08/Makefile
index a067c9cae7..0ebb00c877 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson08/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson08/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson08
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson08
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson08
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson08
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson08
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson09/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson09/Makefile
index 401261966d..9c2340bb22 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson09/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson09/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson09
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson09
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson09
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson09
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson09
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson10/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson10/Makefile
index acf7065ff6..6b2b9284ea 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson10/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson10/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson10
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson10
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson10
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson10
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson10
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson10b/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson10b/Makefile
index 3b79ba270c..6193aaa878 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson10b/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson10b/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson10b
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson10b
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson10b
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson10b
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson10b
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/3D/nehe/lesson11/Makefile b/packages/libndsfpc/examples/graphics/3D/nehe/lesson11/Makefile
index 917313d6a1..ed0d093df2 100644
--- a/packages/libndsfpc/examples/graphics/3D/nehe/lesson11/Makefile
+++ b/packages/libndsfpc/examples/graphics/3D/nehe/lesson11/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=lesson11
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=lesson11
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=lesson11
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=lesson11
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=lesson11
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/16bit_color_bmp/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/16bit_color_bmp/Makefile
index d88e407b97..f5e6e995c2 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/16bit_color_bmp/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/16bit_color_bmp/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=16bitColorBmp
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=16bitColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=16bitColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=16bitColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=16bitColorBmp
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/256_color_bmp/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/256_color_bmp/Makefile
index ad3f10ea26..7162bda7ff 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/256_color_bmp/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/256_color_bmp/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=256ColorBmp
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=256ColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=256ColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=256ColorBmp
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=256ColorBmp
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/Double_Buffer/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/Double_Buffer/Makefile
index 595c6d7a22..53a94d7ae2 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/Double_Buffer/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/Double_Buffer/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=DoubleBuffer
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=DoubleBuffer
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=DoubleBuffer
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=DoubleBuffer
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=DoubleBuffer
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/Makefile
index 28e90e68bd..3f39ea4dd9 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=16bit_color_bmp 256_color_bmp all_in_one Double_Buffer rotation
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=16bit_color_bmp 256_color_bmp all_in_one Double_Buffer rotation
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=16bit_color_bmp 256_color_bmp all_in_one Double_Buffer rotation
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=16bit_color_bmp 256_color_bmp all_in_one Double_Buffer rotation
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=16bit_color_bmp 256_color_bmp all_in_one Double_Buffer rotation
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3235,6 +3284,34 @@ TARGET_DIRS_ALL_IN_ONE=1
TARGET_DIRS_DOUBLE_BUFFER=1
TARGET_DIRS_ROTATION=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_16BIT_COLOR_BMP=1
+TARGET_DIRS_256_COLOR_BMP=1
+TARGET_DIRS_ALL_IN_ONE=1
+TARGET_DIRS_DOUBLE_BUFFER=1
+TARGET_DIRS_ROTATION=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_16BIT_COLOR_BMP=1
+TARGET_DIRS_256_COLOR_BMP=1
+TARGET_DIRS_ALL_IN_ONE=1
+TARGET_DIRS_DOUBLE_BUFFER=1
+TARGET_DIRS_ROTATION=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_16BIT_COLOR_BMP=1
+TARGET_DIRS_256_COLOR_BMP=1
+TARGET_DIRS_ALL_IN_ONE=1
+TARGET_DIRS_DOUBLE_BUFFER=1
+TARGET_DIRS_ROTATION=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_16BIT_COLOR_BMP=1
+TARGET_DIRS_256_COLOR_BMP=1
+TARGET_DIRS_ALL_IN_ONE=1
+TARGET_DIRS_DOUBLE_BUFFER=1
+TARGET_DIRS_ROTATION=1
+endif
ifdef TARGET_DIRS_16BIT_COLOR_BMP
16bit_color_bmp_all:
$(MAKE) -C 16bit_color_bmp all
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/all_in_one/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/all_in_one/Makefile
index 897cb22e5f..7d12cd3e36 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/all_in_one/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/all_in_one/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -599,6 +599,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=BackgroundAllInOne
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=BackgroundAllInOne
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=BackgroundAllInOne
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=BackgroundAllInOne
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=BackgroundAllInOne
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -854,6 +866,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1109,6 +1133,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1365,6 +1401,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1620,6 +1668,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1875,6 +1935,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2249,6 +2321,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3305,6 +3378,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Backgrounds/rotation/Makefile b/packages/libndsfpc/examples/graphics/Backgrounds/rotation/Makefile
index d79c2596fe..77eca5f3f4 100644
--- a/packages/libndsfpc/examples/graphics/Backgrounds/rotation/Makefile
+++ b/packages/libndsfpc/examples/graphics/Backgrounds/rotation/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=Rotation
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=Rotation
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=Rotation
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=Rotation
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=Rotation
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Effects/Makefile b/packages/libndsfpc/examples/graphics/Effects/Makefile
index 14bdb2ee60..6a0e81e916 100644
--- a/packages/libndsfpc/examples/graphics/Effects/Makefile
+++ b/packages/libndsfpc/examples/graphics/Effects/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=windows
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=windows
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_WINDOWS=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_WINDOWS=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_WINDOWS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_WINDOWS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_WINDOWS=1
+endif
ifdef TARGET_DIRS_WINDOWS
windows_all:
$(MAKE) -C windows all
diff --git a/packages/libndsfpc/examples/graphics/Effects/windows/Makefile b/packages/libndsfpc/examples/graphics/Effects/windows/Makefile
index 394cd20138..0b3082d5a3 100644
--- a/packages/libndsfpc/examples/graphics/Effects/windows/Makefile
+++ b/packages/libndsfpc/examples/graphics/Effects/windows/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=windows
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=windows
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=windows
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Ext_Palettes/Makefile b/packages/libndsfpc/examples/graphics/Ext_Palettes/Makefile
index 3d7c6c0867..73270d7ef1 100644
--- a/packages/libndsfpc/examples/graphics/Ext_Palettes/Makefile
+++ b/packages/libndsfpc/examples/graphics/Ext_Palettes/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=backgrounds
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=backgrounds
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2895,6 +2944,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_BACKGROUNDS=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_BACKGROUNDS=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_BACKGROUNDS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_BACKGROUNDS=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_BACKGROUNDS=1
+endif
ifdef TARGET_DIRS_BACKGROUNDS
backgrounds_all:
$(MAKE) -C backgrounds all
diff --git a/packages/libndsfpc/examples/graphics/Ext_Palettes/backgrounds/Makefile b/packages/libndsfpc/examples/graphics/Ext_Palettes/backgrounds/Makefile
index 704173c318..ea3ecf6c26 100644
--- a/packages/libndsfpc/examples/graphics/Ext_Palettes/backgrounds/Makefile
+++ b/packages/libndsfpc/examples/graphics/Ext_Palettes/backgrounds/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=backgrounds
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=backgrounds
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=backgrounds
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Makefile b/packages/libndsfpc/examples/graphics/Makefile
index 80d29b4caa..c51269b109 100644
--- a/packages/libndsfpc/examples/graphics/Makefile
+++ b/packages/libndsfpc/examples/graphics/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=3D Backgrounds Effects Ext_Palettes Printing Sprites
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=3D Backgrounds Effects Ext_Palettes Printing Sprites
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=3D Backgrounds Effects Ext_Palettes Printing Sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=3D Backgrounds Effects Ext_Palettes Printing Sprites
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=3D Backgrounds Effects Ext_Palettes Printing Sprites
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3320,6 +3369,38 @@ TARGET_DIRS_EXT_PALETTES=1
TARGET_DIRS_PRINTING=1
TARGET_DIRS_SPRITES=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_3D=1
+TARGET_DIRS_BACKGROUNDS=1
+TARGET_DIRS_EFFECTS=1
+TARGET_DIRS_EXT_PALETTES=1
+TARGET_DIRS_PRINTING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_3D=1
+TARGET_DIRS_BACKGROUNDS=1
+TARGET_DIRS_EFFECTS=1
+TARGET_DIRS_EXT_PALETTES=1
+TARGET_DIRS_PRINTING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_3D=1
+TARGET_DIRS_BACKGROUNDS=1
+TARGET_DIRS_EFFECTS=1
+TARGET_DIRS_EXT_PALETTES=1
+TARGET_DIRS_PRINTING=1
+TARGET_DIRS_SPRITES=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_3D=1
+TARGET_DIRS_BACKGROUNDS=1
+TARGET_DIRS_EFFECTS=1
+TARGET_DIRS_EXT_PALETTES=1
+TARGET_DIRS_PRINTING=1
+TARGET_DIRS_SPRITES=1
+endif
ifdef TARGET_DIRS_3D
3D_all:
$(MAKE) -C 3D all
diff --git a/packages/libndsfpc/examples/graphics/Printing/Makefile b/packages/libndsfpc/examples/graphics/Printing/Makefile
index a3a8487aac..04d9f480bf 100644
--- a/packages/libndsfpc/examples/graphics/Printing/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=ansi_console console_windows custom_font print_both_screens rotscale_text
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=ansi_console console_windows custom_font print_both_screens rotscale_text
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=ansi_console console_windows custom_font print_both_screens rotscale_text
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=ansi_console console_windows custom_font print_both_screens rotscale_text
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=ansi_console console_windows custom_font print_both_screens rotscale_text
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3235,6 +3284,34 @@ TARGET_DIRS_CUSTOM_FONT=1
TARGET_DIRS_PRINT_BOTH_SCREENS=1
TARGET_DIRS_ROTSCALE_TEXT=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_CONSOLE_WINDOWS=1
+TARGET_DIRS_CUSTOM_FONT=1
+TARGET_DIRS_PRINT_BOTH_SCREENS=1
+TARGET_DIRS_ROTSCALE_TEXT=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_CONSOLE_WINDOWS=1
+TARGET_DIRS_CUSTOM_FONT=1
+TARGET_DIRS_PRINT_BOTH_SCREENS=1
+TARGET_DIRS_ROTSCALE_TEXT=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_CONSOLE_WINDOWS=1
+TARGET_DIRS_CUSTOM_FONT=1
+TARGET_DIRS_PRINT_BOTH_SCREENS=1
+TARGET_DIRS_ROTSCALE_TEXT=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_ANSI_CONSOLE=1
+TARGET_DIRS_CONSOLE_WINDOWS=1
+TARGET_DIRS_CUSTOM_FONT=1
+TARGET_DIRS_PRINT_BOTH_SCREENS=1
+TARGET_DIRS_ROTSCALE_TEXT=1
+endif
ifdef TARGET_DIRS_ANSI_CONSOLE
ansi_console_all:
$(MAKE) -C ansi_console all
diff --git a/packages/libndsfpc/examples/graphics/Printing/ansi_console/Makefile b/packages/libndsfpc/examples/graphics/Printing/ansi_console/Makefile
index 8e4466ecac..fd58cbf8f3 100644
--- a/packages/libndsfpc/examples/graphics/Printing/ansi_console/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/ansi_console/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=AnsiConsole
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=AnsiConsole
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=AnsiConsole
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=AnsiConsole
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=AnsiConsole
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Printing/console_windows/Makefile b/packages/libndsfpc/examples/graphics/Printing/console_windows/Makefile
index 8a45432587..1374bb73b0 100644
--- a/packages/libndsfpc/examples/graphics/Printing/console_windows/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/console_windows/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=ConsoleWindows
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=ConsoleWindows
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=ConsoleWindows
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=ConsoleWindows
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=ConsoleWindows
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Printing/custom_font/Makefile b/packages/libndsfpc/examples/graphics/Printing/custom_font/Makefile
index 74563fed1a..8bad1ca232 100644
--- a/packages/libndsfpc/examples/graphics/Printing/custom_font/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/custom_font/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=CustomFont
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=CustomFont
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=CustomFont
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=CustomFont
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=CustomFont
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Printing/print_both_screens/Makefile b/packages/libndsfpc/examples/graphics/Printing/print_both_screens/Makefile
index 48e0567732..751ccdb853 100644
--- a/packages/libndsfpc/examples/graphics/Printing/print_both_screens/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/print_both_screens/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=printBothScreens
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=printBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=printBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=printBothScreens
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=printBothScreens
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Printing/rotscale_text/Makefile b/packages/libndsfpc/examples/graphics/Printing/rotscale_text/Makefile
index ff4aeacc1f..a22cfd94b5 100644
--- a/packages/libndsfpc/examples/graphics/Printing/rotscale_text/Makefile
+++ b/packages/libndsfpc/examples/graphics/Printing/rotscale_text/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=RotscaleText
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=RotscaleText
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=RotscaleText
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=RotscaleText
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=RotscaleText
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/Makefile b/packages/libndsfpc/examples/graphics/Sprites/Makefile
index e72f548530..77b4ba6352 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=allocation_test animate_simple bitmap_sprites fire_and_sprites simple sprite_extended_palettes sprite_rotate
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=allocation_test animate_simple bitmap_sprites fire_and_sprites simple sprite_extended_palettes sprite_rotate
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=allocation_test animate_simple bitmap_sprites fire_and_sprites simple sprite_extended_palettes sprite_rotate
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=allocation_test animate_simple bitmap_sprites fire_and_sprites simple sprite_extended_palettes sprite_rotate
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=allocation_test animate_simple bitmap_sprites fire_and_sprites simple sprite_extended_palettes sprite_rotate
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3405,6 +3454,42 @@ TARGET_DIRS_SIMPLE=1
TARGET_DIRS_SPRITE_EXTENDED_PALETTES=1
TARGET_DIRS_SPRITE_ROTATE=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_ALLOCATION_TEST=1
+TARGET_DIRS_ANIMATE_SIMPLE=1
+TARGET_DIRS_BITMAP_SPRITES=1
+TARGET_DIRS_FIRE_AND_SPRITES=1
+TARGET_DIRS_SIMPLE=1
+TARGET_DIRS_SPRITE_EXTENDED_PALETTES=1
+TARGET_DIRS_SPRITE_ROTATE=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_ALLOCATION_TEST=1
+TARGET_DIRS_ANIMATE_SIMPLE=1
+TARGET_DIRS_BITMAP_SPRITES=1
+TARGET_DIRS_FIRE_AND_SPRITES=1
+TARGET_DIRS_SIMPLE=1
+TARGET_DIRS_SPRITE_EXTENDED_PALETTES=1
+TARGET_DIRS_SPRITE_ROTATE=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_ALLOCATION_TEST=1
+TARGET_DIRS_ANIMATE_SIMPLE=1
+TARGET_DIRS_BITMAP_SPRITES=1
+TARGET_DIRS_FIRE_AND_SPRITES=1
+TARGET_DIRS_SIMPLE=1
+TARGET_DIRS_SPRITE_EXTENDED_PALETTES=1
+TARGET_DIRS_SPRITE_ROTATE=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_ALLOCATION_TEST=1
+TARGET_DIRS_ANIMATE_SIMPLE=1
+TARGET_DIRS_BITMAP_SPRITES=1
+TARGET_DIRS_FIRE_AND_SPRITES=1
+TARGET_DIRS_SIMPLE=1
+TARGET_DIRS_SPRITE_EXTENDED_PALETTES=1
+TARGET_DIRS_SPRITE_ROTATE=1
+endif
ifdef TARGET_DIRS_ALLOCATION_TEST
allocation_test_all:
$(MAKE) -C allocation_test all
diff --git a/packages/libndsfpc/examples/graphics/Sprites/allocation_test/Makefile b/packages/libndsfpc/examples/graphics/Sprites/allocation_test/Makefile
index 1824757261..c736ea7dbe 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/allocation_test/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/allocation_test/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=AllocationTest
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=AllocationTest
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=AllocationTest
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=AllocationTest
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=AllocationTest
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/animate_simple/Makefile b/packages/libndsfpc/examples/graphics/Sprites/animate_simple/Makefile
index 47f648a5a1..8580de9948 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/animate_simple/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/animate_simple/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=AnimateSimple
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=AnimateSimple
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=AnimateSimple
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=AnimateSimple
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=AnimateSimple
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/bitmap_sprites/Makefile b/packages/libndsfpc/examples/graphics/Sprites/bitmap_sprites/Makefile
index 051711c6d5..a43ebfb7fc 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/bitmap_sprites/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/bitmap_sprites/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=BitmapSprites
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=BitmapSprites
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=BitmapSprites
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=BitmapSprites
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=BitmapSprites
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/fire_and_sprites/Makefile b/packages/libndsfpc/examples/graphics/Sprites/fire_and_sprites/Makefile
index 29b8f812bc..258dea0582 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/fire_and_sprites/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/fire_and_sprites/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=FireAndSprites
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=FireAndSprites
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=FireAndSprites
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=FireAndSprites
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=FireAndSprites
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/simple/Makefile b/packages/libndsfpc/examples/graphics/Sprites/simple/Makefile
index 61f807cccb..c0ff9d8bed 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/simple/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/simple/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=Simple
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=Simple
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=Simple
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=Simple
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=Simple
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/sprite_extended_palettes/Makefile b/packages/libndsfpc/examples/graphics/Sprites/sprite_extended_palettes/Makefile
index 53f6173b35..90796f18df 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/sprite_extended_palettes/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/sprite_extended_palettes/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=SpriteExtendedPalettes
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=SpriteExtendedPalettes
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=SpriteExtendedPalettes
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=SpriteExtendedPalettes
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=SpriteExtendedPalettes
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/graphics/Sprites/sprite_rotate/Makefile b/packages/libndsfpc/examples/graphics/Sprites/sprite_rotate/Makefile
index 27ed15847e..382e182409 100644
--- a/packages/libndsfpc/examples/graphics/Sprites/sprite_rotate/Makefile
+++ b/packages/libndsfpc/examples/graphics/Sprites/sprite_rotate/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=SpriteRotate
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=SpriteRotate
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=SpriteRotate
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=SpriteRotate
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=SpriteRotate
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/hello_world/Makefile b/packages/libndsfpc/examples/hello_world/Makefile
index e3ed2f026d..e85269d46a 100644
--- a/packages/libndsfpc/examples/hello_world/Makefile
+++ b/packages/libndsfpc/examples/hello_world/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=helloWorld
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=helloWorld
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=helloWorld
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=helloWorld
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=helloWorld
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/input/Makefile b/packages/libndsfpc/examples/input/Makefile
index ca1d6824e4..f0351a080b 100644
--- a/packages/libndsfpc/examples/input/Makefile
+++ b/packages/libndsfpc/examples/input/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=keyboard Touch_Pad
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=keyboard Touch_Pad
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=keyboard Touch_Pad
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=keyboard Touch_Pad
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=keyboard Touch_Pad
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2980,6 +3029,22 @@ ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_KEYBOARD=1
TARGET_DIRS_TOUCH_PAD=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_KEYBOARD=1
+TARGET_DIRS_TOUCH_PAD=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_KEYBOARD=1
+TARGET_DIRS_TOUCH_PAD=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_KEYBOARD=1
+TARGET_DIRS_TOUCH_PAD=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_KEYBOARD=1
+TARGET_DIRS_TOUCH_PAD=1
+endif
ifdef TARGET_DIRS_KEYBOARD
keyboard_all:
$(MAKE) -C keyboard all
diff --git a/packages/libndsfpc/examples/input/Touch_Pad/Makefile b/packages/libndsfpc/examples/input/Touch_Pad/Makefile
index bd07b3bf5b..6b6caffd50 100644
--- a/packages/libndsfpc/examples/input/Touch_Pad/Makefile
+++ b/packages/libndsfpc/examples/input/Touch_Pad/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=touch_area touch_look touch_test
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=touch_area touch_look touch_test
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=touch_area touch_look touch_test
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=touch_area touch_look touch_test
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=touch_area touch_look touch_test
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3065,6 +3114,26 @@ TARGET_DIRS_TOUCH_AREA=1
TARGET_DIRS_TOUCH_LOOK=1
TARGET_DIRS_TOUCH_TEST=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_TOUCH_AREA=1
+TARGET_DIRS_TOUCH_LOOK=1
+TARGET_DIRS_TOUCH_TEST=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_TOUCH_AREA=1
+TARGET_DIRS_TOUCH_LOOK=1
+TARGET_DIRS_TOUCH_TEST=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_TOUCH_AREA=1
+TARGET_DIRS_TOUCH_LOOK=1
+TARGET_DIRS_TOUCH_TEST=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_TOUCH_AREA=1
+TARGET_DIRS_TOUCH_LOOK=1
+TARGET_DIRS_TOUCH_TEST=1
+endif
ifdef TARGET_DIRS_TOUCH_AREA
touch_area_all:
$(MAKE) -C touch_area all
diff --git a/packages/libndsfpc/examples/input/Touch_Pad/touch_area/Makefile b/packages/libndsfpc/examples/input/Touch_Pad/touch_area/Makefile
index 7884caaa04..a39c31be03 100644
--- a/packages/libndsfpc/examples/input/Touch_Pad/touch_area/Makefile
+++ b/packages/libndsfpc/examples/input/Touch_Pad/touch_area/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=touchArea
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=touchArea
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=touchArea
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=touchArea
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=touchArea
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/input/Touch_Pad/touch_look/Makefile b/packages/libndsfpc/examples/input/Touch_Pad/touch_look/Makefile
index 940ed35b6e..d0e32d156b 100644
--- a/packages/libndsfpc/examples/input/Touch_Pad/touch_look/Makefile
+++ b/packages/libndsfpc/examples/input/Touch_Pad/touch_look/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=touchLook
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=touchLook
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=touchLook
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=touchLook
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=touchLook
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/input/Touch_Pad/touch_test/Makefile b/packages/libndsfpc/examples/input/Touch_Pad/touch_test/Makefile
index a92c737ead..9e78707710 100644
--- a/packages/libndsfpc/examples/input/Touch_Pad/touch_test/Makefile
+++ b/packages/libndsfpc/examples/input/Touch_Pad/touch_test/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=touchTest
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=touchTest
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=touchTest
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=touchTest
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=touchTest
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/input/keyboard/Makefile b/packages/libndsfpc/examples/input/keyboard/Makefile
index 0b372f655e..6d44ea5a98 100644
--- a/packages/libndsfpc/examples/input/keyboard/Makefile
+++ b/packages/libndsfpc/examples/input/keyboard/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=keyboard_async keyboard_stdin
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=keyboard_async keyboard_stdin
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=keyboard_async keyboard_stdin
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=keyboard_async keyboard_stdin
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=keyboard_async keyboard_stdin
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -2980,6 +3029,22 @@ ifeq ($(FULL_TARGET),sparc64-linux)
TARGET_DIRS_KEYBOARD_ASYNC=1
TARGET_DIRS_KEYBOARD_STDIN=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_KEYBOARD_ASYNC=1
+TARGET_DIRS_KEYBOARD_STDIN=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_KEYBOARD_ASYNC=1
+TARGET_DIRS_KEYBOARD_STDIN=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_KEYBOARD_ASYNC=1
+TARGET_DIRS_KEYBOARD_STDIN=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_KEYBOARD_ASYNC=1
+TARGET_DIRS_KEYBOARD_STDIN=1
+endif
ifdef TARGET_DIRS_KEYBOARD_ASYNC
keyboard_async_all:
$(MAKE) -C keyboard_async all
diff --git a/packages/libndsfpc/examples/input/keyboard/keyboard_async/Makefile b/packages/libndsfpc/examples/input/keyboard/keyboard_async/Makefile
index 116e4ac8c3..726f2fb2eb 100644
--- a/packages/libndsfpc/examples/input/keyboard/keyboard_async/Makefile
+++ b/packages/libndsfpc/examples/input/keyboard/keyboard_async/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=keyboardAsync
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=keyboardAsync
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=keyboardAsync
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=keyboardAsync
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=keyboardAsync
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/input/keyboard/keyboard_stdin/Makefile b/packages/libndsfpc/examples/input/keyboard/keyboard_stdin/Makefile
index fded741b03..ceb8afcc2f 100644
--- a/packages/libndsfpc/examples/input/keyboard/keyboard_stdin/Makefile
+++ b/packages/libndsfpc/examples/input/keyboard/keyboard_stdin/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=keyboardStdin
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=keyboardStdin
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=keyboardStdin
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=keyboardStdin
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=keyboardStdin
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/time/Makefile b/packages/libndsfpc/examples/time/Makefile
index 6e448cb5bb..f54b62bde1 100644
--- a/packages/libndsfpc/examples/time/Makefile
+++ b/packages/libndsfpc/examples/time/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -586,6 +586,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_DIRS+=RealTimeClock timercallback stopwatch
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_DIRS+=RealTimeClock timercallback stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_DIRS+=RealTimeClock timercallback stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_DIRS+=RealTimeClock timercallback stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_DIRS+=RealTimeClock timercallback stopwatch
+endif
override INSTALL_FPCPACKAGE=y
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
@@ -961,6 +973,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -2017,6 +2030,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
@@ -3065,6 +3114,26 @@ TARGET_DIRS_REALTIMECLOCK=1
TARGET_DIRS_TIMERCALLBACK=1
TARGET_DIRS_STOPWATCH=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+TARGET_DIRS_REALTIMECLOCK=1
+TARGET_DIRS_TIMERCALLBACK=1
+TARGET_DIRS_STOPWATCH=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+TARGET_DIRS_REALTIMECLOCK=1
+TARGET_DIRS_TIMERCALLBACK=1
+TARGET_DIRS_STOPWATCH=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+TARGET_DIRS_REALTIMECLOCK=1
+TARGET_DIRS_TIMERCALLBACK=1
+TARGET_DIRS_STOPWATCH=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+TARGET_DIRS_REALTIMECLOCK=1
+TARGET_DIRS_TIMERCALLBACK=1
+TARGET_DIRS_STOPWATCH=1
+endif
ifdef TARGET_DIRS_REALTIMECLOCK
RealTimeClock_all:
$(MAKE) -C RealTimeClock all
diff --git a/packages/libndsfpc/examples/time/RealTimeClock/Makefile b/packages/libndsfpc/examples/time/RealTimeClock/Makefile
index df98891c1b..be46aa1b62 100644
--- a/packages/libndsfpc/examples/time/RealTimeClock/Makefile
+++ b/packages/libndsfpc/examples/time/RealTimeClock/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=RealTimeClock
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=RealTimeClock
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=RealTimeClock
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=RealTimeClock
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=RealTimeClock
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/time/stopwatch/Makefile b/packages/libndsfpc/examples/time/stopwatch/Makefile
index 4d7c02ef7b..3c60663368 100644
--- a/packages/libndsfpc/examples/time/stopwatch/Makefile
+++ b/packages/libndsfpc/examples/time/stopwatch/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=stopwatch
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=stopwatch
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=stopwatch
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)
diff --git a/packages/libndsfpc/examples/time/timercallback/Makefile b/packages/libndsfpc/examples/time/timercallback/Makefile
index d0e3b82b38..4af875176e 100644
--- a/packages/libndsfpc/examples/time/timercallback/Makefile
+++ b/packages/libndsfpc/examples/time/timercallback/Makefile
@@ -2,7 +2,7 @@
# Don't edit, this file is generated by FPCMake Version 2.0.0
#
default: all
-MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux
+MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm sparc64-linux riscv32-linux riscv32-embedded riscv64-linux riscv64-embedded
BSDs = freebsd netbsd openbsd darwin dragonfly
UNIXs = linux $(BSDs) solaris qnx haiku aix
LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari
@@ -598,6 +598,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override TARGET_PROGRAMS+=timercallback
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override TARGET_PROGRAMS+=timercallback
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override TARGET_PROGRAMS+=timercallback
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override TARGET_PROGRAMS+=timercallback
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override TARGET_PROGRAMS+=timercallback
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_UNITS+=*
endif
@@ -853,6 +865,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_UNITS+=*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_UNITS+=*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_UNITS+=*
+endif
ifeq ($(FULL_TARGET),i386-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
@@ -1108,6 +1132,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override CLEAN_FILES+=*.elf *.o *.s *.nds *.nef *.h *.bin *.map $(BUILD)/* $(INC)/* $(BIN)/*
+endif
override INSTALL_FPCPACKAGE=y
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_OPTIONS+=-Xm
@@ -1364,6 +1400,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_OPTIONS+=-Xm
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_OPTIONS+=-Xm
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_OPTIONS+=-Xm
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
@@ -1619,6 +1667,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_TARGETDIR+=$(BIN)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_TARGETDIR+=$(BIN)
+endif
ifeq ($(FULL_TARGET),i386-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
@@ -1874,6 +1934,18 @@ endif
ifeq ($(FULL_TARGET),sparc64-linux)
override COMPILER_UNITTARGETDIR+=$(BUILD)
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+override COMPILER_UNITTARGETDIR+=$(BUILD)
+endif
ifdef REQUIRE_UNITSDIR
override UNITSDIR+=$(REQUIRE_UNITSDIR)
endif
@@ -2248,6 +2320,7 @@ endif
ifeq ($(OS_TARGET),aix)
BATCHEXT=.sh
EXEEXT=
+SHAREDLIBEXT=.a
SHORTSUFFIX=aix
endif
ifeq ($(OS_TARGET),java)
@@ -3304,6 +3377,42 @@ REQUIRE_PACKAGES_LIBTAR=1
REQUIRE_PACKAGES_FPMKUNIT=1
REQUIRE_PACKAGES_LIBNDSFPC=1
endif
+ifeq ($(FULL_TARGET),riscv32-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv32-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-linux)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
+ifeq ($(FULL_TARGET),riscv64-embedded)
+REQUIRE_PACKAGES_RTL=1
+REQUIRE_PACKAGES_PASZLIB=1
+REQUIRE_PACKAGES_FCL-PROCESS=1
+REQUIRE_PACKAGES_HASH=1
+REQUIRE_PACKAGES_LIBTAR=1
+REQUIRE_PACKAGES_FPMKUNIT=1
+REQUIRE_PACKAGES_LIBNDSFPC=1
+endif
ifdef REQUIRE_PACKAGES_RTL
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
ifneq ($(PACKAGEDIR_RTL),)