rockbox/apps/plugins
Aidan MacDonald 91ec6f1e1e make: allow building flat binary plugins on USE_ELF targets
From what I can see the Creative Zen Vision ports, which
were the only ones to set USE_ELF prior to the Echo R1 port,
do not work except for a bootloader and never even got to
the point of booting Rockbox. This explains why they build
codecs and plugins as ELF binaries, yet there is no code to
load ELF format codecs or plugins.

Anyhow, add a new setting, PLUGIN_USE_ELF, which controls
whether plugins & codecs are left as ELF or converted to
flat binaries. This makes it possible for the Echo R1 to
use the flat binary .rock format, and makes it possible to
have ELF plugins/codecs on targets with non-ELF main binaries.

Seeing as nothing needs ELF plugins/codecs right now, the
new default is to generate them as flat binaries unless
the target requests otherwise.

Change-Id: I9ffae669978de5cc7ad214cd50d97ad6e8938394
2026-02-04 07:32:43 -05:00
..
beatbox sound: update global volume state in sound_set_volume() 2025-10-02 14:32:54 -04:00
bitmaps Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
chessbox make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
clock plugins: clock: adjust defaults, don't restore color 2025-06-08 11:31:14 -04:00
doom 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
fft Remove NVRAM infavor of a separate cfg file 2025-01-21 00:04:32 -05:00
fractals 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
frotz unicode: Support characters beyond the first unicode plane 2025-09-12 09:24:30 -04:00
goban make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
imageviewer make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
lib [FIX Yellow] kbd_helper.c unsigned / signed 2026-01-23 23:00:12 -05:00
lua make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
lua_scripts rliimg add flip image example (#FS13745) Try #2 2026-01-24 01:43:58 -05:00
midi 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
mikmod 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
mpegplayer mpegplayer: remove IRAM save/restore hack 2026-02-01 09:55:04 -05:00
pacbox Replace all uses of PLUGIN_USE_IRAM with USE_IRAM 2026-02-02 17:11:04 -05:00
pdbox 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
picross Allow first level folders in plugin menu 2024-05-05 14:01:43 -04:00
pictureflow make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
puzzles make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
reversi 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
rockboy make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
sdl make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
searchengine [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
shortcuts [Feature] shortcuts_view plugin remember last item and return to it on menu cancel 2025-01-21 22:10:46 -05:00
sudoku 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
tagcache pass event data to usb_acknowledge 2026-01-26 19:47:09 -05:00
text_viewer Reduce list title glitches when switching between menus 2026-01-13 20:06:33 -05:00
xrick plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
xworld plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
zxbox make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
2048.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
alarmclock.c plugins: alarmclock: fix input lag 2024-01-12 13:15:49 -05:00
amaze.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
announce_status.c pass event data to usb_acknowledge 2026-01-26 19:47:09 -05:00
battery_bench.c pass event data to usb_acknowledge 2026-01-26 19:47:09 -05:00
bench_mem_jpeg.c
bench_scaler.c
blackjack.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
boomshine.lua lua boomshine update to use rockevents library 2020-06-25 13:50:57 +00:00
bounce.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
brickmania.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
bubbles.c Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
BUILD_OVERLAY
calculator.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
calendar.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
CATEGORIES Show Track Info: Support fs tags in Playlist Viewer, Properties, and PictureFlow 2024-12-16 00:20:10 +01:00
chessbox.c
chessclock.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
chip8.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
chopper.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
clix.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
codebuster.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
credits.c plugins: Credits: Fix logo sizes 2023-01-05 23:45:41 -05:00
credits.pl
crypt_firmware.c Fix nano2g build from 88a1d902 2024-11-26 20:12:59 -05:00
cube.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
cue_playlist.c [Feature] Playlis to cue plugin 2024-07-20 07:27:01 -04:00
dart_scorer.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
db_folder_select.c plugins: db_folder_select, disktidy, main_menu_config: Fix selection dialog with Show Icons set to No 2025-04-10 12:30:29 +03:00
demystify.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
dice.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
dict.c keyboard add ability to specify temporary custom layouts 2020-07-22 06:48:28 -04:00
disktidy.c plugins: Disk Tidy: wait for dircache 2025-12-27 16:29:16 +01:00
disktidy.config
duke3d.c Port of Duke Nukem 3D 2017-12-23 21:01:26 -05:00
elfdep.pl
file_picker.c logf: Fix warnings that only happen with simulator builds. 2024-11-25 09:34:03 -05:00
fire.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
fireworks.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
flipit.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
goban.c
greyscale.c Nuke the never-functional iriver ifp-7xx port 2021-04-26 07:42:58 -04:00
helloworld.c
helloworld.lua
invadrox.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
iriver_flash.c iriver: rename SECTOR_SIZE to FLASH_SECTOR_SIZE 2025-08-25 10:34:02 -04:00
iriverify.c iriverify: Fix a build warning 2025-04-22 09:34:30 -04:00
jackpot.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
jewels.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
keybox.c list: remove redundant setting of icon callback to NULL 2024-07-28 15:33:11 +02:00
keyremap.c unicode: Support characters beyond the first unicode plane 2025-09-12 09:24:30 -04:00
lamp.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
lastfm_scrobbler.c misc: Properly annotate some intentional case fallthroughs 2025-04-22 20:54:37 -04:00
lastfm_scrobbler_viewer.c scrobbler / log viewer allow cancel button long press to exit plugin 2025-12-05 12:03:58 -05:00
logo.c Convert non-ASCII characters to UTF-8 2024-12-15 21:16:12 -05:00
lrcplayer.c plugin lrcplayer: Fix late rewinding at lrcplayer 2025-12-29 12:58:47 -05:00
main_menu_config.c Use user preferred touchscreen mode in 'Main Menu Config' plugin instead of defaulting to 'button' mode. 2026-01-03 20:25:13 -05:00
matrix.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
maze.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
mazezam.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
md5sum.c md5sum: clean up whitespace 2020-07-26 15:41:54 -04:00
metronome.c metronome: increase rectangle sizes to use a greater portion of the screen 2025-06-04 09:44:31 -04:00
minesweeper.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
mosaique.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
mp3_encoder.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
multiboot_select.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
open_plugins.c misc: More fallthrough annotations 2025-09-07 08:06:56 -04:00
oscilloscope.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
otp.c plugin otp: Stop freezing display when generate OTP 2025-12-27 12:08:16 -05:00
pegbox.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
periodic_table.c misc: Clean up a pile of -Wunused-const-variable warnings 2025-04-21 21:13:59 -04:00
picross.lua Allow first level folders in plugin menu 2024-05-05 14:01:43 -04:00
pictureflow.c
pitch_detector.c Replace all uses of PLUGIN_USE_IRAM with USE_IRAM 2026-02-02 17:11:04 -05:00
pitch_screen.c [Feature] Persist pitch settings through reboots part deux 2025-01-19 00:29:47 -05:00
pixel-painter.lua plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
plasma.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
playing_time.c Reduce list title glitches when switching between menus 2026-01-13 20:06:33 -05:00
plugin.lds Nuke GDB stub 2026-02-03 10:55:53 +00:00
plugin_crt0.c Replace all uses of PLUGIN_USE_IRAM with USE_IRAM 2026-02-02 17:11:04 -05:00
plugins.make make: allow building flat binary plugins on USE_ELF targets 2026-02-04 07:32:43 -05:00
pong.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
properties.c plugins: properties: make file info displayable in fullscreen 2024-12-16 01:44:53 -05:00
quake.c sdl: Fix path substitution in log messages, fix game names in comments 2019-08-22 22:00:43 +03:00
random_folder_advance_config.c plugins: random folder advance: misc improvements 2026-01-16 16:49:38 +01:00
rb_info.c list: remove redundant setting of icon callback to NULL 2024-07-28 15:33:11 +02:00
remote_control.c
resistor.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
robotfindskitten.c FS13585: Display corruption in robotfindskitten game 2025-09-06 12:44:11 -04:00
rockblox.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
rockblox1d.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockbox-fonts.config FS#9059: Add WenQangYi Unibt font (William Poetra Yoga Hadisoeseno) 2024-10-27 22:04:54 -04:00
rockboy.c
rocklife.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
rockpaint.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
search.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
settings_dumper.c Move cfg_vals from settings_list, expand settings_dumper 2024-11-10 21:53:22 -05:00
shopper.c gui: Remove "enum list_wrap" from list action functions 2022-10-05 11:22:55 -04:00
sliding_puzzle.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
snake.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
snake2.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
snake2.levels
snow.c plugins: Improve usability of iPod keymaps 2022-12-29 04:39:22 +01:00
sokoban.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
sokoban.levels
solitaire.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
sort.c plugins: sort, vbrfix: add warning 2025-12-23 09:58:23 -05:00
SOURCES Add 240x240 support to various plugins and rgnano manual updates 2025-08-20 20:50:42 -04:00
SOURCES.app_build Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
spacerocks.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
speedread.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
star.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
starfield.c plugins: starfield: enable USB audio 2025-12-15 07:48:45 -05:00
stats.c plugins: extract redundant functionality from stats/properties 2024-07-28 20:18:41 +02:00
stopwatch.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
stopwatch.lua New port: Shanling Q1 native 2021-07-13 22:01:33 +01:00
SUBDIRS 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
SUBDIRS.app_build Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
superdom.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
test_boost.c Fix two variable-set-but-not-used warnings 2020-07-24 23:26:15 -04:00
test_codec.c usbaudio: send through dsp (new) 2025-11-15 07:38:19 -05:00
test_core_jpeg.c
test_disk.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
test_fps.c test_fps add log buffering 2024-11-29 11:06:53 -05:00
test_gfx.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_grey.c plugins HAVE_BACKLIGHT helper remove ifdefs in favor of dummy functions 2022-11-23 23:00:29 -05:00
test_greylib_bitmap_scale.c
test_kbd.c keyboard.c Use viewports, move text box pos 2022-04-07 19:46:56 -04:00
test_mem.c Replace all uses of PLUGIN_USE_IRAM with USE_IRAM 2026-02-02 17:11:04 -05:00
test_mem_jpeg.c
test_resize.c LCD core move buf ptr and address look up function viewport struct 2020-10-26 12:28:48 -04:00
test_sampr.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
test_scanrate.c [1/4] Remove SH support and all archos targets 2020-07-24 21:20:13 +00:00
test_touchscreen.c Rockbox for the HiBy R3 Pro II/R1 2025-12-27 15:44:54 -05:00
test_usb.c pass event data to usb_acknowledge 2026-01-26 19:47:09 -05:00
test_viewports.c Bug Fix test_viewports.c call scroll_stop before changing viewports 2022-11-16 01:49:41 -05:00
test_viewports.lua
text_editor.c plugins & debug menu: apply consistent titles 2025-12-23 10:25:05 -05:00
theme_remove.c Settings: Rename INT/BOOL setting type enum to RB_INT/RB_BOOL 2023-09-22 10:00:46 -04:00
vbrfix.c plugins: sort, vbrfix: add warning 2025-12-23 09:58:23 -05:00
view_text.c plugins: view-text, zxbox: fix panic when called without parameter 2025-12-21 23:58:04 -05:00
viewers.config [Feature] Playlis to cue plugin 2024-07-20 07:27:01 -04:00
vu_meter.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
wav2wv.c [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice. 2020-07-24 21:20:13 +00:00
wavview.c
windows_lnk.c plugin windows_lnk: fix missing return-on-error 2020-07-07 02:36:33 +00:00
wolf3d.c sdl: Fix path substitution in log messages, fix game names in comments 2019-08-22 22:00:43 +03:00
wormlet.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
xobox.c 3ds: Enable plugins for the 3ds platform. 2025-12-31 21:13:34 -05:00
zxbox.c