Add shstrtab section for lld (#403)

Now required since you can use lld as the linker. However, still have
the 'cannot represent a difference across sections' error :(.

- [x] Changelog updated / no changelog update needed
This commit is contained in:
Gwilym Inzani 2023-04-03 19:10:39 +01:00 committed by GitHub
commit 33620aaf09
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 53 additions and 0 deletions

View file

@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Alpha channel is now considered by `include_gfx!()` even when `transparent_colour` is absent. - Alpha channel is now considered by `include_gfx!()` even when `transparent_colour` is absent.
- 256 colour backgrounds are now correctly rendered (breaking change). - 256 colour backgrounds are now correctly rendered (breaking change).
- The `#[agb::entry]` macro now reports errors better. - The `#[agb::entry]` macro now reports errors better.
- Added the shstrtab section to the linker to ensure that agb builds with lld.
## [0.13.0] - 2023/01/19 ## [0.13.0] - 2023/01/19

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -74,6 +74,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }

View file

@ -72,6 +72,10 @@ SECTIONS {
__ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start; __ewram_rom_length_bytes = __ewram_data_end - __ewram_data_start;
__ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2; __ewram_rom_length_halfwords = (__ewram_rom_length_bytes + 1) / 2;
.shstrtab : {
*(.shstrtab)
}
/* debugging sections */ /* debugging sections */
/* Stabs */ /* Stabs */
.stab 0 : { *(.stab) } .stab 0 : { *(.stab) }