diff options
| author | Jens Arnold <amiconn@rockbox.org> | 2006-01-08 22:50:14 +0000 |
|---|---|---|
| committer | Jens Arnold <amiconn@rockbox.org> | 2006-01-08 22:50:14 +0000 |
| commit | 07c4254135aecc6ae0964d6d6413a40251e8f6a8 (patch) | |
| tree | dac473efeb9f49cb6fefeb43c053f2dd0dc1b6cc /apps/plugins/plugin.lds | |
| parent | e8b1787296dae2a69893bd0fe97b2361fb6180ba (diff) | |
| download | rockbox-07c4254135aecc6ae0964d6d6413a40251e8f6a8.zip rockbox-07c4254135aecc6ae0964d6d6413a40251e8f6a8.tar.gz rockbox-07c4254135aecc6ae0964d6d6413a40251e8f6a8.tar.bz2 rockbox-07c4254135aecc6ae0964d6d6413a40251e8f6a8.tar.xz | |
Don't include the .bss and .ibss sections in the binary image for codecs and plugins. Saves quite some disk space (and buffer space in case of codec changes during playback).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8308 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/plugin.lds')
| -rw-r--r-- | apps/plugins/plugin.lds | 48 |
1 files changed, 32 insertions, 16 deletions
diff --git a/apps/plugins/plugin.lds b/apps/plugins/plugin.lds index 83825b9..fc9d4d4 100644 --- a/apps/plugins/plugin.lds +++ b/apps/plugins/plugin.lds @@ -60,7 +60,8 @@ MEMORY SECTIONS { - .text : { + .text : + { KEEP(*(.entry)) *(.text*) #if CONFIG_CPU==PP5020 @@ -69,26 +70,25 @@ SECTIONS #endif } > PLUGIN_RAM - .data : { - *(.data*) - } > PLUGIN_RAM - - /DISCARD/ : { - *(.eh_frame) - } - - .bss : { - *(.bss*) - } > PLUGIN_RAM - - .rodata : { + .rodata : + { *(.rodata*) . = ALIGN(0x4); + } > PLUGIN_RAM + + .data : + { + *(.data*) #if defined(ARCH_IRIVER) || defined(ARCH_IPOD) iramcopy = .; #endif } > PLUGIN_RAM + /DISCARD/ : + { + *(.eh_frame) + } + #if defined(ARCH_IRIVER) || defined(ARCH_IPOD) .iram IRAMORIG : AT ( iramcopy) { @@ -96,13 +96,29 @@ SECTIONS *(.icode) *(.irodata) *(.idata) - *(.ibss) iramend = .; } > PLUGIN_IRAM + + .ibss (NOLOAD) : + { + iedata = .; + *(.ibss) + . = ALIGN(0x4); + iend = .; + } > PLUGIN_IRAM + + .bss ADDR(.data) + SIZEOF(.data) + SIZEOF(.iram): +#else + .bss : #endif + { + *(.bss*) + } > PLUGIN_RAM + /* Special trick to avoid a linker error when no other sections are left after garbage collection (plugin not for this platform) */ - .comment 0 : { + .comment 0 : + { KEEP(*(.comment)) } } |