diff --git a/boards/arm/a1x/pcduino-a10/scripts/sdram.ld b/boards/arm/a1x/pcduino-a10/scripts/sdram.ld index 00b4c7bf9d0..08df7d57726 100644 --- a/boards/arm/a1x/pcduino-a10/scripts/sdram.ld +++ b/boards/arm/a1x/pcduino-a10/scripts/sdram.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/am335x/beaglebone-black/scripts/sdram.ld b/boards/arm/am335x/beaglebone-black/scripts/sdram.ld index 5caae5b09fc..eaa1d306bf8 100644 --- a/boards/arm/am335x/beaglebone-black/scripts/sdram.ld +++ b/boards/arm/am335x/beaglebone-black/scripts/sdram.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ddr diff --git a/boards/arm/cxd56xx/spresense/scripts/ramconfig-new.ld b/boards/arm/cxd56xx/spresense/scripts/ramconfig-new.ld index 12d08499d44..521fd8c58bb 100644 --- a/boards/arm/cxd56xx/spresense/scripts/ramconfig-new.ld +++ b/boards/arm/cxd56xx/spresense/scripts/ramconfig-new.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ram diff --git a/boards/arm/cxd56xx/spresense/scripts/ramconfig.ld b/boards/arm/cxd56xx/spresense/scripts/ramconfig.ld index 19056a298f9..b2842e960c3 100644 --- a/boards/arm/cxd56xx/spresense/scripts/ramconfig.ld +++ b/boards/arm/cxd56xx/spresense/scripts/ramconfig.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ram diff --git a/boards/arm/efm32/efm32-g8xx-stk/scripts/efm32-g8xx-stk.ld b/boards/arm/efm32/efm32-g8xx-stk/scripts/efm32-g8xx-stk.ld index c29491e5b85..fc086840650 100644 --- a/boards/arm/efm32/efm32-g8xx-stk/scripts/efm32-g8xx-stk.ld +++ b/boards/arm/efm32/efm32-g8xx-stk/scripts/efm32-g8xx-stk.ld @@ -48,7 +48,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/efm32/efm32gg-stk3700/scripts/ld.script b/boards/arm/efm32/efm32gg-stk3700/scripts/ld.script index cb72954bde2..7474d038d55 100644 --- a/boards/arm/efm32/efm32gg-stk3700/scripts/ld.script +++ b/boards/arm/efm32/efm32gg-stk3700/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/efm32/olimex-efm32g880f128-stk/scripts/ld.script b/boards/arm/efm32/olimex-efm32g880f128-stk/scripts/ld.script index 2cd2182aa74..f0817761117 100644 --- a/boards/arm/efm32/olimex-efm32g880f128-stk/scripts/ld.script +++ b/boards/arm/efm32/olimex-efm32g880f128-stk/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/eoss3/quickfeather/scripts/ld.script b/boards/arm/eoss3/quickfeather/scripts/ld.script index e9738252928..1897ffbea19 100644 --- a/boards/arm/eoss3/quickfeather/scripts/ld.script +++ b/boards/arm/eoss3/quickfeather/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/gd32f4/gd32f450zk-eval/scripts/kernel-space.ld b/boards/arm/gd32f4/gd32f450zk-eval/scripts/kernel-space.ld index b72d44101e4..7018a914599 100644 --- a/boards/arm/gd32f4/gd32f450zk-eval/scripts/kernel-space.ld +++ b/boards/arm/gd32f4/gd32f450zk-eval/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/gd32f4/gd32f450zk-eval/scripts/ld.script b/boards/arm/gd32f4/gd32f450zk-eval/scripts/ld.script index 174ffdb121e..bb0866acc1c 100644 --- a/boards/arm/gd32f4/gd32f450zk-eval/scripts/ld.script +++ b/boards/arm/gd32f4/gd32f450zk-eval/scripts/ld.script @@ -61,7 +61,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/gd32f4/gd32f450zk-eval/scripts/user-space.ld b/boards/arm/gd32f4/gd32f450zk-eval/scripts/user-space.ld index 7258e052ef0..6a02688b69c 100644 --- a/boards/arm/gd32f4/gd32f450zk-eval/scripts/user-space.ld +++ b/boards/arm/gd32f4/gd32f450zk-eval/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/imx6/sabre-6quad/scripts/dramboot.ld b/boards/arm/imx6/sabre-6quad/scripts/dramboot.ld index fa6a730c9a2..66da05a5753 100644 --- a/boards/arm/imx6/sabre-6quad/scripts/dramboot.ld +++ b/boards/arm/imx6/sabre-6quad/scripts/dramboot.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ddr3 diff --git a/boards/arm/imxrt/imxrt1020-evk/scripts/flash-ocram.ld b/boards/arm/imxrt/imxrt1020-evk/scripts/flash-ocram.ld index facca7e0e84..4c5068b3b3c 100644 --- a/boards/arm/imxrt/imxrt1020-evk/scripts/flash-ocram.ld +++ b/boards/arm/imxrt/imxrt1020-evk/scripts/flash-ocram.ld @@ -77,7 +77,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1050-evk/scripts/flash-ocram.ld b/boards/arm/imxrt/imxrt1050-evk/scripts/flash-ocram.ld index bfc6a33cf43..244fc51a1d8 100644 --- a/boards/arm/imxrt/imxrt1050-evk/scripts/flash-ocram.ld +++ b/boards/arm/imxrt/imxrt1050-evk/scripts/flash-ocram.ld @@ -76,7 +76,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1050-evk/scripts/kernel-space.ld b/boards/arm/imxrt/imxrt1050-evk/scripts/kernel-space.ld index 2676860f42e..b9ee7cd4cf6 100644 --- a/boards/arm/imxrt/imxrt1050-evk/scripts/kernel-space.ld +++ b/boards/arm/imxrt/imxrt1050-evk/scripts/kernel-space.ld @@ -48,7 +48,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/imxrt/imxrt1050-evk/scripts/user-space.ld b/boards/arm/imxrt/imxrt1050-evk/scripts/user-space.ld index c1eb7327134..27004464fbe 100644 --- a/boards/arm/imxrt/imxrt1050-evk/scripts/user-space.ld +++ b/boards/arm/imxrt/imxrt1050-evk/scripts/user-space.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/imxrt/imxrt1060-evk/scripts/flash-ocram.ld b/boards/arm/imxrt/imxrt1060-evk/scripts/flash-ocram.ld index 3e42779e0d5..b5651874406 100644 --- a/boards/arm/imxrt/imxrt1060-evk/scripts/flash-ocram.ld +++ b/boards/arm/imxrt/imxrt1060-evk/scripts/flash-ocram.ld @@ -122,7 +122,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1060-evk/scripts/flash.ld b/boards/arm/imxrt/imxrt1060-evk/scripts/flash.ld index f8c45ec771d..3f565cb796d 100644 --- a/boards/arm/imxrt/imxrt1060-evk/scripts/flash.ld +++ b/boards/arm/imxrt/imxrt1060-evk/scripts/flash.ld @@ -75,7 +75,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1060-evk/scripts/kernel-space.ld b/boards/arm/imxrt/imxrt1060-evk/scripts/kernel-space.ld index 3aa0e1a15a3..aa888d5c45d 100644 --- a/boards/arm/imxrt/imxrt1060-evk/scripts/kernel-space.ld +++ b/boards/arm/imxrt/imxrt1060-evk/scripts/kernel-space.ld @@ -69,7 +69,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/imxrt/imxrt1060-evk/scripts/user-space.ld b/boards/arm/imxrt/imxrt1060-evk/scripts/user-space.ld index a3f84983267..61792ff3bba 100644 --- a/boards/arm/imxrt/imxrt1060-evk/scripts/user-space.ld +++ b/boards/arm/imxrt/imxrt1060-evk/scripts/user-space.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/imxrt/imxrt1064-evk/scripts/flash-ocram.ld b/boards/arm/imxrt/imxrt1064-evk/scripts/flash-ocram.ld index 7ed246245bc..0d95dd7cc5c 100644 --- a/boards/arm/imxrt/imxrt1064-evk/scripts/flash-ocram.ld +++ b/boards/arm/imxrt/imxrt1064-evk/scripts/flash-ocram.ld @@ -122,7 +122,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1064-evk/scripts/flash.ld b/boards/arm/imxrt/imxrt1064-evk/scripts/flash.ld index 963fcda1715..a4aec329b1e 100644 --- a/boards/arm/imxrt/imxrt1064-evk/scripts/flash.ld +++ b/boards/arm/imxrt/imxrt1064-evk/scripts/flash.ld @@ -75,7 +75,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/imxrt1064-evk/scripts/kernel-space.ld b/boards/arm/imxrt/imxrt1064-evk/scripts/kernel-space.ld index d91918c91cd..a1ebc83d6cb 100644 --- a/boards/arm/imxrt/imxrt1064-evk/scripts/kernel-space.ld +++ b/boards/arm/imxrt/imxrt1064-evk/scripts/kernel-space.ld @@ -48,7 +48,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/imxrt/imxrt1064-evk/scripts/user-space.ld b/boards/arm/imxrt/imxrt1064-evk/scripts/user-space.ld index 54349cb7f13..6c5abe4837f 100644 --- a/boards/arm/imxrt/imxrt1064-evk/scripts/user-space.ld +++ b/boards/arm/imxrt/imxrt1064-evk/scripts/user-space.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/imxrt/teensy-4.x/scripts/flash-ocram.ld b/boards/arm/imxrt/teensy-4.x/scripts/flash-ocram.ld index 3d380faea7e..a9bf28ddb91 100644 --- a/boards/arm/imxrt/teensy-4.x/scripts/flash-ocram.ld +++ b/boards/arm/imxrt/teensy-4.x/scripts/flash-ocram.ld @@ -122,7 +122,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/teensy-4.x/scripts/flash.ld b/boards/arm/imxrt/teensy-4.x/scripts/flash.ld index 679283f584c..cb4a821e65c 100644 --- a/boards/arm/imxrt/teensy-4.x/scripts/flash.ld +++ b/boards/arm/imxrt/teensy-4.x/scripts/flash.ld @@ -75,7 +75,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/imxrt/teensy-4.x/scripts/kernel-space.ld b/boards/arm/imxrt/teensy-4.x/scripts/kernel-space.ld index 48d8bddfcba..3c4d9097c89 100644 --- a/boards/arm/imxrt/teensy-4.x/scripts/kernel-space.ld +++ b/boards/arm/imxrt/teensy-4.x/scripts/kernel-space.ld @@ -48,7 +48,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/imxrt/teensy-4.x/scripts/user-space.ld b/boards/arm/imxrt/teensy-4.x/scripts/user-space.ld index ee2645d9291..ddd76bdbf04 100644 --- a/boards/arm/imxrt/teensy-4.x/scripts/user-space.ld +++ b/boards/arm/imxrt/teensy-4.x/scripts/user-space.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/kinetis/freedom-k28f/scripts/flash.ld b/boards/arm/kinetis/freedom-k28f/scripts/flash.ld index 48ff5da17cf..3a92048a998 100644 --- a/boards/arm/kinetis/freedom-k28f/scripts/flash.ld +++ b/boards/arm/kinetis/freedom-k28f/scripts/flash.ld @@ -84,7 +84,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/freedom-k64f/scripts/flash.ld b/boards/arm/kinetis/freedom-k64f/scripts/flash.ld index a6ce88ccf58..8ea85ecdb95 100644 --- a/boards/arm/kinetis/freedom-k64f/scripts/flash.ld +++ b/boards/arm/kinetis/freedom-k64f/scripts/flash.ld @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/freedom-k66f/scripts/flash.ld b/boards/arm/kinetis/freedom-k66f/scripts/flash.ld index 7c20bd124fb..862759cc653 100644 --- a/boards/arm/kinetis/freedom-k66f/scripts/flash.ld +++ b/boards/arm/kinetis/freedom-k66f/scripts/flash.ld @@ -68,7 +68,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/kwikstik-k40/scripts/kwikstik-k40.ld b/boards/arm/kinetis/kwikstik-k40/scripts/kwikstik-k40.ld index 025c76cf1db..8f04be691d3 100644 --- a/boards/arm/kinetis/kwikstik-k40/scripts/kwikstik-k40.ld +++ b/boards/arm/kinetis/kwikstik-k40/scripts/kwikstik-k40.ld @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/teensy-3.x/scripts/mk20dx128vlh5.ld b/boards/arm/kinetis/teensy-3.x/scripts/mk20dx128vlh5.ld index 604ea2e8ebc..a82ef840a84 100644 --- a/boards/arm/kinetis/teensy-3.x/scripts/mk20dx128vlh5.ld +++ b/boards/arm/kinetis/teensy-3.x/scripts/mk20dx128vlh5.ld @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/teensy-3.x/scripts/mk20dx256vlh7.ld b/boards/arm/kinetis/teensy-3.x/scripts/mk20dx256vlh7.ld index f628d1b836c..0d079c4c96a 100644 --- a/boards/arm/kinetis/teensy-3.x/scripts/mk20dx256vlh7.ld +++ b/boards/arm/kinetis/teensy-3.x/scripts/mk20dx256vlh7.ld @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/twr-k60n512/scripts/twr-k60n512.ld b/boards/arm/kinetis/twr-k60n512/scripts/twr-k60n512.ld index 33eb5b213ea..074d3aaf5ec 100644 --- a/boards/arm/kinetis/twr-k60n512/scripts/twr-k60n512.ld +++ b/boards/arm/kinetis/twr-k60n512/scripts/twr-k60n512.ld @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kinetis/twr-k64f120m/scripts/ld.script b/boards/arm/kinetis/twr-k64f120m/scripts/ld.script index df64a98a3b7..583c7e34e90 100644 --- a/boards/arm/kinetis/twr-k64f120m/scripts/ld.script +++ b/boards/arm/kinetis/twr-k64f120m/scripts/ld.script @@ -72,7 +72,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kl/freedom-kl25z/scripts/freedom-kl25z.ld b/boards/arm/kl/freedom-kl25z/scripts/freedom-kl25z.ld index baef9b0bf4e..b47a0bdb413 100644 --- a/boards/arm/kl/freedom-kl25z/scripts/freedom-kl25z.ld +++ b/boards/arm/kl/freedom-kl25z/scripts/freedom-kl25z.ld @@ -63,7 +63,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kl/freedom-kl26z/scripts/freedom-kl26z.ld b/boards/arm/kl/freedom-kl26z/scripts/freedom-kl26z.ld index 5338d9c1d11..f7cf3faa45d 100644 --- a/boards/arm/kl/freedom-kl26z/scripts/freedom-kl26z.ld +++ b/boards/arm/kl/freedom-kl26z/scripts/freedom-kl26z.ld @@ -63,7 +63,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/kl/teensy-lc/scripts/teensy-lc.ld b/boards/arm/kl/teensy-lc/scripts/teensy-lc.ld index 16b06ea6069..4fff2178ebe 100644 --- a/boards/arm/kl/teensy-lc/scripts/teensy-lc.ld +++ b/boards/arm/kl/teensy-lc/scripts/teensy-lc.ld @@ -63,7 +63,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progflash diff --git a/boards/arm/lc823450/lc823450-xgevk/scripts/ld-ipl2.script b/boards/arm/lc823450/lc823450-xgevk/scripts/ld-ipl2.script index 8d7ab12e97f..8c18461e93c 100644 --- a/boards/arm/lc823450/lc823450-xgevk/scripts/ld-ipl2.script +++ b/boards/arm/lc823450/lc823450-xgevk/scripts/ld-ipl2.script @@ -49,7 +49,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lc823450/lc823450-xgevk/scripts/ld-spif-boot.script b/boards/arm/lc823450/lc823450-xgevk/scripts/ld-spif-boot.script index 681d24d0e56..093b264ebdb 100644 --- a/boards/arm/lc823450/lc823450-xgevk/scripts/ld-spif-boot.script +++ b/boards/arm/lc823450/lc823450-xgevk/scripts/ld-spif-boot.script @@ -50,7 +50,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lc823450/lc823450-xgevk/scripts/ld.script b/boards/arm/lc823450/lc823450-xgevk/scripts/ld.script index 7827a8d9927..3a4e1c31e9d 100644 --- a/boards/arm/lc823450/lc823450-xgevk/scripts/ld.script +++ b/boards/arm/lc823450/lc823450-xgevk/scripts/ld.script @@ -57,7 +57,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lc823450/lc823450-xgevk/scripts/user-space.ld b/boards/arm/lc823450/lc823450-xgevk/scripts/user-space.ld index dd627c21d0a..6cc651dd893 100644 --- a/boards/arm/lc823450/lc823450-xgevk/scripts/user-space.ld +++ b/boards/arm/lc823450/lc823450-xgevk/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/lincoln60/scripts/ld.script b/boards/arm/lpc17xx_40xx/lincoln60/scripts/ld.script index cf8a923f21d..b5ed5fd8f59 100644 --- a/boards/arm/lpc17xx_40xx/lincoln60/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/lincoln60/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/kernel-space.ld b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/kernel-space.ld index 4be12f0b07b..2e1ad6291a8 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/kernel-space.ld +++ b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/ld.script b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/ld.script index 71ce85a6162..6cef896a018 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > FLASH diff --git a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/user-space.ld b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/user-space.ld index 4a599d00e7d..b998e3ea271 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/user-space.ld +++ b/boards/arm/lpc17xx_40xx/lpc4088-devkit/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/kernel-space.ld b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/kernel-space.ld index 7d45e96533a..01dc9b481aa 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/kernel-space.ld +++ b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/ld.script b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/ld.script index 0437b290613..454a6984895 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > FLASH diff --git a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/user-space.ld b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/user-space.ld index 88527e81ddf..f3d8e3800c6 100644 --- a/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/user-space.ld +++ b/boards/arm/lpc17xx_40xx/lpc4088-quickstart/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/lpcxpresso-lpc1768/scripts/ld.script b/boards/arm/lpc17xx_40xx/lpcxpresso-lpc1768/scripts/ld.script index 7d78fde37e2..0945cf042e2 100644 --- a/boards/arm/lpc17xx_40xx/lpcxpresso-lpc1768/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/lpcxpresso-lpc1768/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/kernel-space.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/kernel-space.ld index aee89e2c602..02894f073a9 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/kernel-space.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld index 2b3e1ef36c4..7087dd6827d 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-app.ld @@ -64,7 +64,8 @@ SECTIONS .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > FLASH diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld index adfb45dd149..d23fd849815 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-flash-boot.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > FLASH diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld index e13f9a000ed..0dddda92d24 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/link-sdram.ld @@ -65,7 +65,8 @@ SECTIONS .init_section : ALIGN(16) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > SDRAM diff --git a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/user-space.ld b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/user-space.ld index 7434c589267..132c09c8112 100644 --- a/boards/arm/lpc17xx_40xx/lx_cpu/scripts/user-space.ld +++ b/boards/arm/lpc17xx_40xx/lx_cpu/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/mbed/scripts/ld.script b/boards/arm/lpc17xx_40xx/mbed/scripts/ld.script index 36ad1a95473..086318dff93 100644 --- a/boards/arm/lpc17xx_40xx/mbed/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/mbed/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc17xx_40xx/mcb1700/scripts/ld.script b/boards/arm/lpc17xx_40xx/mcb1700/scripts/ld.script index fd804854114..60794d58952 100644 --- a/boards/arm/lpc17xx_40xx/mcb1700/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/mcb1700/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc17xx_40xx/olimex-lpc1766stk/scripts/ld.script b/boards/arm/lpc17xx_40xx/olimex-lpc1766stk/scripts/ld.script index c81388ac678..fdb4a0ebca8 100644 --- a/boards/arm/lpc17xx_40xx/olimex-lpc1766stk/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/olimex-lpc1766stk/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc17xx_40xx/open1788/scripts/kernel-space.ld b/boards/arm/lpc17xx_40xx/open1788/scripts/kernel-space.ld index d8ecc7a51da..7a2acc2820f 100644 --- a/boards/arm/lpc17xx_40xx/open1788/scripts/kernel-space.ld +++ b/boards/arm/lpc17xx_40xx/open1788/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/lpc17xx_40xx/open1788/scripts/ld.script b/boards/arm/lpc17xx_40xx/open1788/scripts/ld.script index f4e72ff5ade..d5643512682 100644 --- a/boards/arm/lpc17xx_40xx/open1788/scripts/ld.script +++ b/boards/arm/lpc17xx_40xx/open1788/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > FLASH diff --git a/boards/arm/lpc17xx_40xx/open1788/scripts/user-space.ld b/boards/arm/lpc17xx_40xx/open1788/scripts/user-space.ld index 2af86d0e6e3..5c9285d6696 100644 --- a/boards/arm/lpc17xx_40xx/open1788/scripts/user-space.ld +++ b/boards/arm/lpc17xx_40xx/open1788/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/pnev5180b/scripts/kernel-space.ld b/boards/arm/lpc17xx_40xx/pnev5180b/scripts/kernel-space.ld index 2d50ce38e9c..c6952faaf0a 100644 --- a/boards/arm/lpc17xx_40xx/pnev5180b/scripts/kernel-space.ld +++ b/boards/arm/lpc17xx_40xx/pnev5180b/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/lpc17xx_40xx/pnev5180b/scripts/user-space.ld b/boards/arm/lpc17xx_40xx/pnev5180b/scripts/user-space.ld index 311671f3ee4..772cd551249 100644 --- a/boards/arm/lpc17xx_40xx/pnev5180b/scripts/user-space.ld +++ b/boards/arm/lpc17xx_40xx/pnev5180b/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc17xx_40xx/u-blox-c027/scripts/u-blox-c027.ld b/boards/arm/lpc17xx_40xx/u-blox-c027/scripts/u-blox-c027.ld index 975d6ed0a07..d1e262d254a 100644 --- a/boards/arm/lpc17xx_40xx/u-blox-c027/scripts/u-blox-c027.ld +++ b/boards/arm/lpc17xx_40xx/u-blox-c027/scripts/u-blox-c027.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc214x/mcu123-lpc214x/scripts/ld.script b/boards/arm/lpc214x/mcu123-lpc214x/scripts/ld.script index 7adcad23be9..6aad5946fd8 100644 --- a/boards/arm/lpc214x/mcu123-lpc214x/scripts/ld.script +++ b/boards/arm/lpc214x/mcu123-lpc214x/scripts/ld.script @@ -57,7 +57,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc214x/zp214xpa/scripts/ld.script b/boards/arm/lpc214x/zp214xpa/scripts/ld.script index 7098507581b..7687f78dc54 100644 --- a/boards/arm/lpc214x/zp214xpa/scripts/ld.script +++ b/boards/arm/lpc214x/zp214xpa/scripts/ld.script @@ -57,7 +57,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/lpc2378/olimex-lpc2378/scripts/ld.script b/boards/arm/lpc2378/olimex-lpc2378/scripts/ld.script index f781e6ae027..67167245362 100644 --- a/boards/arm/lpc2378/olimex-lpc2378/scripts/ld.script +++ b/boards/arm/lpc2378/olimex-lpc2378/scripts/ld.script @@ -68,7 +68,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ROM diff --git a/boards/arm/lpc31xx/ea3131/scripts/ld.script b/boards/arm/lpc31xx/ea3131/scripts/ld.script index baf6a907778..c0aa48e71a0 100644 --- a/boards/arm/lpc31xx/ea3131/scripts/ld.script +++ b/boards/arm/lpc31xx/ea3131/scripts/ld.script @@ -51,7 +51,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/lpc31xx/ea3131/scripts/pg-ld.script b/boards/arm/lpc31xx/ea3131/scripts/pg-ld.script index bef05171683..7b12a818c40 100644 --- a/boards/arm/lpc31xx/ea3131/scripts/pg-ld.script +++ b/boards/arm/lpc31xx/ea3131/scripts/pg-ld.script @@ -80,7 +80,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > locked diff --git a/boards/arm/lpc31xx/ea3152/scripts/ea3152.ld b/boards/arm/lpc31xx/ea3152/scripts/ea3152.ld index 5b98e99bc7f..0bff77795d6 100644 --- a/boards/arm/lpc31xx/ea3152/scripts/ea3152.ld +++ b/boards/arm/lpc31xx/ea3152/scripts/ea3152.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/lpc31xx/olimex-lpc-h3131/scripts/ld.script b/boards/arm/lpc31xx/olimex-lpc-h3131/scripts/ld.script index c89aa2f1933..e8ac907bd9e 100644 --- a/boards/arm/lpc31xx/olimex-lpc-h3131/scripts/ld.script +++ b/boards/arm/lpc31xx/olimex-lpc-h3131/scripts/ld.script @@ -51,7 +51,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/lpc43xx/bambino-200e/scripts/ramconfig.ld b/boards/arm/lpc43xx/bambino-200e/scripts/ramconfig.ld index b8e6274d9f5..178849d7262 100644 --- a/boards/arm/lpc43xx/bambino-200e/scripts/ramconfig.ld +++ b/boards/arm/lpc43xx/bambino-200e/scripts/ramconfig.ld @@ -89,7 +89,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/bambino-200e/scripts/spificonfig.ld b/boards/arm/lpc43xx/bambino-200e/scripts/spificonfig.ld index 4c5c146126d..15822c98256 100644 --- a/boards/arm/lpc43xx/bambino-200e/scripts/spificonfig.ld +++ b/boards/arm/lpc43xx/bambino-200e/scripts/spificonfig.ld @@ -85,7 +85,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/bambino-200e/scripts/user-space.ld b/boards/arm/lpc43xx/bambino-200e/scripts/user-space.ld index 76232caff2f..b9f5e271867 100644 --- a/boards/arm/lpc43xx/bambino-200e/scripts/user-space.ld +++ b/boards/arm/lpc43xx/bambino-200e/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/lpc43xx/lpc4330-xplorer/scripts/ramconfig.ld b/boards/arm/lpc43xx/lpc4330-xplorer/scripts/ramconfig.ld index 1968ca388e5..777c7f59ec6 100644 --- a/boards/arm/lpc43xx/lpc4330-xplorer/scripts/ramconfig.ld +++ b/boards/arm/lpc43xx/lpc4330-xplorer/scripts/ramconfig.ld @@ -89,7 +89,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4330-xplorer/scripts/spificonfig.ld b/boards/arm/lpc43xx/lpc4330-xplorer/scripts/spificonfig.ld index 5620f670735..2437eeeaf39 100644 --- a/boards/arm/lpc43xx/lpc4330-xplorer/scripts/spificonfig.ld +++ b/boards/arm/lpc43xx/lpc4330-xplorer/scripts/spificonfig.ld @@ -85,7 +85,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4337-ws/scripts/flashaconfig.ld b/boards/arm/lpc43xx/lpc4337-ws/scripts/flashaconfig.ld index 8690b7c1891..242b359affa 100644 --- a/boards/arm/lpc43xx/lpc4337-ws/scripts/flashaconfig.ld +++ b/boards/arm/lpc43xx/lpc4337-ws/scripts/flashaconfig.ld @@ -90,7 +90,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4337-ws/scripts/ramconfig.ld b/boards/arm/lpc43xx/lpc4337-ws/scripts/ramconfig.ld index a9820506806..2e37e2a834a 100644 --- a/boards/arm/lpc43xx/lpc4337-ws/scripts/ramconfig.ld +++ b/boards/arm/lpc43xx/lpc4337-ws/scripts/ramconfig.ld @@ -89,7 +89,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4357-evb/scripts/flashaconfig.ld b/boards/arm/lpc43xx/lpc4357-evb/scripts/flashaconfig.ld index cb8eb16b4cc..7b886ad1325 100644 --- a/boards/arm/lpc43xx/lpc4357-evb/scripts/flashaconfig.ld +++ b/boards/arm/lpc43xx/lpc4357-evb/scripts/flashaconfig.ld @@ -90,7 +90,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4357-evb/scripts/ramconfig.ld b/boards/arm/lpc43xx/lpc4357-evb/scripts/ramconfig.ld index 64d2a1f109a..dfcfbbe3a31 100644 --- a/boards/arm/lpc43xx/lpc4357-evb/scripts/ramconfig.ld +++ b/boards/arm/lpc43xx/lpc4357-evb/scripts/ramconfig.ld @@ -79,7 +79,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4357-evb/scripts/spificonfig.ld b/boards/arm/lpc43xx/lpc4357-evb/scripts/spificonfig.ld index 105059e0be2..24b1ca8b9b3 100644 --- a/boards/arm/lpc43xx/lpc4357-evb/scripts/spificonfig.ld +++ b/boards/arm/lpc43xx/lpc4357-evb/scripts/spificonfig.ld @@ -69,7 +69,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4370-link2/scripts/ramconfig.ld b/boards/arm/lpc43xx/lpc4370-link2/scripts/ramconfig.ld index c0e36b0221f..4a4e7ed5952 100644 --- a/boards/arm/lpc43xx/lpc4370-link2/scripts/ramconfig.ld +++ b/boards/arm/lpc43xx/lpc4370-link2/scripts/ramconfig.ld @@ -89,7 +89,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc43xx/lpc4370-link2/scripts/spificonfig.ld b/boards/arm/lpc43xx/lpc4370-link2/scripts/spificonfig.ld index ba98a638f92..acd661753e7 100644 --- a/boards/arm/lpc43xx/lpc4370-link2/scripts/spificonfig.ld +++ b/boards/arm/lpc43xx/lpc4370-link2/scripts/spificonfig.ld @@ -85,7 +85,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/lpc54xx/lpcxpresso-lpc54628/scripts/flash.ld b/boards/arm/lpc54xx/lpcxpresso-lpc54628/scripts/flash.ld index 73f8f81a7a3..3fc3559f251 100644 --- a/boards/arm/lpc54xx/lpcxpresso-lpc54628/scripts/flash.ld +++ b/boards/arm/lpc54xx/lpcxpresso-lpc54628/scripts/flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/max326xx/max32660-evsys/scripts/flash.ld b/boards/arm/max326xx/max32660-evsys/scripts/flash.ld index 191790fee65..353f005a574 100644 --- a/boards/arm/max326xx/max32660-evsys/scripts/flash.ld +++ b/boards/arm/max326xx/max32660-evsys/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/max326xx/max32660-evsys/scripts/sram.ld b/boards/arm/max326xx/max32660-evsys/scripts/sram.ld index d7aeb1fc3d9..aece6eab179 100644 --- a/boards/arm/max326xx/max32660-evsys/scripts/sram.ld +++ b/boards/arm/max326xx/max32660-evsys/scripts/sram.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/moxart/moxa/scripts/moxa.ld b/boards/arm/moxart/moxa/scripts/moxa.ld index 596793bc19e..acc80afe026 100644 --- a/boards/arm/moxart/moxa/scripts/moxa.ld +++ b/boards/arm/moxart/moxa/scripts/moxa.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram0 diff --git a/boards/arm/mx8mp/verdin-mx8mp/scripts/ddr.ld b/boards/arm/mx8mp/verdin-mx8mp/scripts/ddr.ld index 0b54256c508..7924ba0d20d 100644 --- a/boards/arm/mx8mp/verdin-mx8mp/scripts/ddr.ld +++ b/boards/arm/mx8mp/verdin-mx8mp/scripts/ddr.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/mx8mp/verdin-mx8mp/scripts/itcm.ld b/boards/arm/mx8mp/verdin-mx8mp/scripts/itcm.ld index f3a417f88ea..8522ff443b4 100644 --- a/boards/arm/mx8mp/verdin-mx8mp/scripts/itcm.ld +++ b/boards/arm/mx8mp/verdin-mx8mp/scripts/itcm.ld @@ -55,7 +55,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/nrf52/nrf52-feather/scripts/flash_config.ld b/boards/arm/nrf52/nrf52-feather/scripts/flash_config.ld index 4ed66eb60ca..1cd293e982e 100644 --- a/boards/arm/nrf52/nrf52-feather/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52-feather/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/nrf52832-dk/scripts/flash_config.ld b/boards/arm/nrf52/nrf52832-dk/scripts/flash_config.ld index a102c54ad70..e0abe91a4d3 100644 --- a/boards/arm/nrf52/nrf52832-dk/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52832-dk/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/nrf52832-mdk/scripts/flash_config.ld b/boards/arm/nrf52/nrf52832-mdk/scripts/flash_config.ld index 8c76b17eb1f..5365f4a6aec 100644 --- a/boards/arm/nrf52/nrf52832-mdk/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52832-mdk/scripts/flash_config.ld @@ -48,7 +48,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/nrf52832-sparkfun/scripts/flash_config.ld b/boards/arm/nrf52/nrf52832-sparkfun/scripts/flash_config.ld index 92afb0f996f..39952b04f2f 100644 --- a/boards/arm/nrf52/nrf52832-sparkfun/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52832-sparkfun/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/nrf52840-dk/scripts/flash_config.ld b/boards/arm/nrf52/nrf52840-dk/scripts/flash_config.ld index eba00fc8508..f392cf5c9d3 100644 --- a/boards/arm/nrf52/nrf52840-dk/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52840-dk/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/nrf52840-dongle/scripts/flash_config.ld b/boards/arm/nrf52/nrf52840-dongle/scripts/flash_config.ld index 17e67d643af..18e0047dc48 100644 --- a/boards/arm/nrf52/nrf52840-dongle/scripts/flash_config.ld +++ b/boards/arm/nrf52/nrf52840-dongle/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf52/thingy52/scripts/flash_config.ld b/boards/arm/nrf52/thingy52/scripts/flash_config.ld index 3a68d23b893..9b023af3988 100644 --- a/boards/arm/nrf52/thingy52/scripts/flash_config.ld +++ b/boards/arm/nrf52/thingy52/scripts/flash_config.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nrf53/thingy53/scripts/flash_net.ld b/boards/arm/nrf53/thingy53/scripts/flash_net.ld index 5c1ccb0ded4..0320baa13e7 100644 --- a/boards/arm/nrf53/thingy53/scripts/flash_net.ld +++ b/boards/arm/nrf53/thingy53/scripts/flash_net.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/arm/nuc1xx/nutiny-nuc120/scripts/nutiny-nuc120.ld b/boards/arm/nuc1xx/nutiny-nuc120/scripts/nutiny-nuc120.ld index 80ec8c40115..b28fc234ab3 100644 --- a/boards/arm/nuc1xx/nutiny-nuc120/scripts/nutiny-nuc120.ld +++ b/boards/arm/nuc1xx/nutiny-nuc120/scripts/nutiny-nuc120.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/phy62xx/phy6222/scripts/flash.ld b/boards/arm/phy62xx/phy6222/scripts/flash.ld index c58dfa7bfbd..d0235b4ac56 100644 --- a/boards/arm/phy62xx/phy6222/scripts/flash.ld +++ b/boards/arm/phy62xx/phy6222/scripts/flash.ld @@ -23,7 +23,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/qemu/qemu-armv7a/scripts/dramboot.ld b/boards/arm/qemu/qemu-armv7a/scripts/dramboot.ld index 30a16e65bfb..e1ccbbe8689 100644 --- a/boards/arm/qemu/qemu-armv7a/scripts/dramboot.ld +++ b/boards/arm/qemu/qemu-armv7a/scripts/dramboot.ld @@ -38,7 +38,8 @@ SECTIONS . = ALIGN(4096); .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } :text . = ALIGN(4096); diff --git a/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-flash.ld b/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-flash.ld index 94202cff59c..7f2dbca1205 100644 --- a/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-flash.ld +++ b/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-sram.ld b/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-sram.ld index ae4e325c4a8..ba4e93086ff 100644 --- a/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-sram.ld +++ b/boards/arm/rp2040/adafruit-feather-rp2040/scripts/adafruit-feather-rp2040-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-flash.ld b/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-flash.ld index d760de5a9ef..2f331d044c8 100644 --- a/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-flash.ld +++ b/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-sram.ld b/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-sram.ld index 0a07af5ff3f..dfa70b74edc 100644 --- a/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-sram.ld +++ b/boards/arm/rp2040/adafruit-kb2040/scripts/adafruit-kb2040-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-flash.ld b/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-flash.ld index cf826b55aee..21a9d69f9dd 100644 --- a/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-flash.ld +++ b/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-sram.ld b/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-sram.ld index f8cf82dad64..57cc1572ab3 100644 --- a/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-sram.ld +++ b/boards/arm/rp2040/adafruit-qt-py-rp2040/scripts/adafruit-qt-py-rp2040-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-flash.ld b/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-flash.ld index c7ae9f1e17d..eb55c34ba57 100644 --- a/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-flash.ld +++ b/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-sram.ld b/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-sram.ld index 014e6cc3c5a..41a6fde0182 100644 --- a/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-sram.ld +++ b/boards/arm/rp2040/pimoroni-tiny2040/scripts/pimoroni-tiny2040-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-flash.ld b/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-flash.ld index e693a0b5489..c0b41aade30 100644 --- a/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-flash.ld +++ b/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-sram.ld b/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-sram.ld index 504cecac6c8..06898175092 100644 --- a/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-sram.ld +++ b/boards/arm/rp2040/raspberrypi-pico-w/scripts/raspberrypi-pico-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-flash.ld b/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-flash.ld index e693a0b5489..c0b41aade30 100644 --- a/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-flash.ld +++ b/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-sram.ld b/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-sram.ld index 504cecac6c8..06898175092 100644 --- a/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-sram.ld +++ b/boards/arm/rp2040/raspberrypi-pico/scripts/raspberrypi-pico-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-flash.ld b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-flash.ld index e693a0b5489..c0b41aade30 100644 --- a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-flash.ld +++ b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-sram.ld b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-sram.ld index 504cecac6c8..06898175092 100644 --- a/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-sram.ld +++ b/boards/arm/rp2040/waveshare-rp2040-lcd-1.28/scripts/waveshare-rp2040-lcd-1-28-sram.ld @@ -50,7 +50,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k1xx/rddrone-bms772/scripts/flash.ld b/boards/arm/s32k1xx/rddrone-bms772/scripts/flash.ld index c70a0a7d3d0..3a3910eed92 100644 --- a/boards/arm/s32k1xx/rddrone-bms772/scripts/flash.ld +++ b/boards/arm/s32k1xx/rddrone-bms772/scripts/flash.ld @@ -75,7 +75,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/rddrone-bms772/scripts/sram.ld b/boards/arm/s32k1xx/rddrone-bms772/scripts/sram.ld index 4dca199ae2c..4b68442a1c9 100644 --- a/boards/arm/s32k1xx/rddrone-bms772/scripts/sram.ld +++ b/boards/arm/s32k1xx/rddrone-bms772/scripts/sram.ld @@ -63,7 +63,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k1xx/s32k118evb/scripts/flash.ld b/boards/arm/s32k1xx/s32k118evb/scripts/flash.ld index 631e586ee2b..a6afdd70719 100644 --- a/boards/arm/s32k1xx/s32k118evb/scripts/flash.ld +++ b/boards/arm/s32k1xx/s32k118evb/scripts/flash.ld @@ -73,7 +73,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/s32k144evb/scripts/flash.ld b/boards/arm/s32k1xx/s32k144evb/scripts/flash.ld index a50eca86ca3..98e9c91673e 100644 --- a/boards/arm/s32k1xx/s32k144evb/scripts/flash.ld +++ b/boards/arm/s32k1xx/s32k144evb/scripts/flash.ld @@ -73,7 +73,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/s32k144evb/scripts/sram.ld b/boards/arm/s32k1xx/s32k144evb/scripts/sram.ld index 325f83b5418..6c92ce7905f 100644 --- a/boards/arm/s32k1xx/s32k144evb/scripts/sram.ld +++ b/boards/arm/s32k1xx/s32k144evb/scripts/sram.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k1xx/s32k146evb/scripts/flash.ld b/boards/arm/s32k1xx/s32k146evb/scripts/flash.ld index 58fde13a794..2f244c43441 100644 --- a/boards/arm/s32k1xx/s32k146evb/scripts/flash.ld +++ b/boards/arm/s32k1xx/s32k146evb/scripts/flash.ld @@ -73,7 +73,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/s32k146evb/scripts/sram.ld b/boards/arm/s32k1xx/s32k146evb/scripts/sram.ld index 9d1b0940e59..077e46ac105 100644 --- a/boards/arm/s32k1xx/s32k146evb/scripts/sram.ld +++ b/boards/arm/s32k1xx/s32k146evb/scripts/sram.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k1xx/s32k148evb/scripts/flash.ld b/boards/arm/s32k1xx/s32k148evb/scripts/flash.ld index 8dfcc75bf7e..1155a816c2c 100644 --- a/boards/arm/s32k1xx/s32k148evb/scripts/flash.ld +++ b/boards/arm/s32k1xx/s32k148evb/scripts/flash.ld @@ -73,7 +73,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/s32k148evb/scripts/sram.ld b/boards/arm/s32k1xx/s32k148evb/scripts/sram.ld index 7b716e63081..754fc8ba7f0 100644 --- a/boards/arm/s32k1xx/s32k148evb/scripts/sram.ld +++ b/boards/arm/s32k1xx/s32k148evb/scripts/sram.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k1xx/ucans32k146/scripts/flash.ld b/boards/arm/s32k1xx/ucans32k146/scripts/flash.ld index 30f7f8fec39..083e5d2f2bc 100644 --- a/boards/arm/s32k1xx/ucans32k146/scripts/flash.ld +++ b/boards/arm/s32k1xx/ucans32k146/scripts/flash.ld @@ -73,7 +73,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dflash diff --git a/boards/arm/s32k1xx/ucans32k146/scripts/sram.ld b/boards/arm/s32k1xx/ucans32k146/scripts/sram.ld index fe0c291b747..a00014fd181 100644 --- a/boards/arm/s32k1xx/ucans32k146/scripts/sram.ld +++ b/boards/arm/s32k1xx/ucans32k146/scripts/sram.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/s32k3xx/mr-canhubk3/scripts/flash.ld b/boards/arm/s32k3xx/mr-canhubk3/scripts/flash.ld index 79a40f6392a..b5806758d77 100644 --- a/boards/arm/s32k3xx/mr-canhubk3/scripts/flash.ld +++ b/boards/arm/s32k3xx/mr-canhubk3/scripts/flash.ld @@ -80,7 +80,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/s32k3xx/mr-canhubk3/scripts/kernel-space.ld b/boards/arm/s32k3xx/mr-canhubk3/scripts/kernel-space.ld index c9c2c5e1f64..8ffc7a294f3 100644 --- a/boards/arm/s32k3xx/mr-canhubk3/scripts/kernel-space.ld +++ b/boards/arm/s32k3xx/mr-canhubk3/scripts/kernel-space.ld @@ -92,7 +92,8 @@ SECTIONS */ .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/s32k3xx/mr-canhubk3/scripts/user-space.ld b/boards/arm/s32k3xx/mr-canhubk3/scripts/user-space.ld index e19ddea7560..d7717c8b86f 100644 --- a/boards/arm/s32k3xx/mr-canhubk3/scripts/user-space.ld +++ b/boards/arm/s32k3xx/mr-canhubk3/scripts/user-space.ld @@ -64,7 +64,8 @@ SECTIONS */ .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/s32k3xx/s32k344evb/scripts/flash.ld b/boards/arm/s32k3xx/s32k344evb/scripts/flash.ld index a0e549bb09a..64f60da6bc0 100644 --- a/boards/arm/s32k3xx/s32k344evb/scripts/flash.ld +++ b/boards/arm/s32k3xx/s32k344evb/scripts/flash.ld @@ -77,7 +77,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/arduino-due/scripts/arduino-due.ld b/boards/arm/sam34/arduino-due/scripts/arduino-due.ld index 7e4a4920759..7925c6a95ed 100644 --- a/boards/arm/sam34/arduino-due/scripts/arduino-due.ld +++ b/boards/arm/sam34/arduino-due/scripts/arduino-due.ld @@ -55,7 +55,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/flipnclick-sam3x/scripts/flash.ld b/boards/arm/sam34/flipnclick-sam3x/scripts/flash.ld index 49147ad06f3..7d43a7aee5d 100644 --- a/boards/arm/sam34/flipnclick-sam3x/scripts/flash.ld +++ b/boards/arm/sam34/flipnclick-sam3x/scripts/flash.ld @@ -55,7 +55,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/sam3u-ek/scripts/kernel-space.ld b/boards/arm/sam34/sam3u-ek/scripts/kernel-space.ld index 4dbcf2bfa7a..104cf1ad1ef 100644 --- a/boards/arm/sam34/sam3u-ek/scripts/kernel-space.ld +++ b/boards/arm/sam34/sam3u-ek/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/sam34/sam3u-ek/scripts/ld.script b/boards/arm/sam34/sam3u-ek/scripts/ld.script index 0d56fe0fc3e..3af59a502d4 100644 --- a/boards/arm/sam34/sam3u-ek/scripts/ld.script +++ b/boards/arm/sam34/sam3u-ek/scripts/ld.script @@ -56,7 +56,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/sam3u-ek/scripts/user-space.ld b/boards/arm/sam34/sam3u-ek/scripts/user-space.ld index 9fbfee90861..b7c157cf32e 100644 --- a/boards/arm/sam34/sam3u-ek/scripts/user-space.ld +++ b/boards/arm/sam34/sam3u-ek/scripts/user-space.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/sam34/sam4cmp-db/scripts/sam4cmp-db.ld b/boards/arm/sam34/sam4cmp-db/scripts/sam4cmp-db.ld index 211c776be7a..ac057dcc9b0 100644 --- a/boards/arm/sam34/sam4cmp-db/scripts/sam4cmp-db.ld +++ b/boards/arm/sam34/sam4cmp-db/scripts/sam4cmp-db.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/sam4e-ek/scripts/flash.ld b/boards/arm/sam34/sam4e-ek/scripts/flash.ld index dd0358739f7..b10fb75c0f2 100644 --- a/boards/arm/sam34/sam4e-ek/scripts/flash.ld +++ b/boards/arm/sam34/sam4e-ek/scripts/flash.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/sam4l-xplained/scripts/sam4l-xplained.ld b/boards/arm/sam34/sam4l-xplained/scripts/sam4l-xplained.ld index a7c626ca587..31a13a314c0 100644 --- a/boards/arm/sam34/sam4l-xplained/scripts/sam4l-xplained.ld +++ b/boards/arm/sam34/sam4l-xplained/scripts/sam4l-xplained.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sam34/sam4s-xplained-pro/scripts/sam4s-xplained-pro.ld b/boards/arm/sam34/sam4s-xplained-pro/scripts/sam4s-xplained-pro.ld index 2a636cd3436..6c45ac7f482 100644 --- a/boards/arm/sam34/sam4s-xplained-pro/scripts/sam4s-xplained-pro.ld +++ b/boards/arm/sam34/sam4s-xplained-pro/scripts/sam4s-xplained-pro.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash0 diff --git a/boards/arm/sam34/sam4s-xplained/scripts/sam4s-xplained.ld b/boards/arm/sam34/sam4s-xplained/scripts/sam4s-xplained.ld index fa7e3e6be39..68c180dd9ce 100644 --- a/boards/arm/sam34/sam4s-xplained/scripts/sam4s-xplained.ld +++ b/boards/arm/sam34/sam4s-xplained/scripts/sam4s-xplained.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/sama5/giant-board/scripts/dramboot.ld b/boards/arm/sama5/giant-board/scripts/dramboot.ld index 31b45818916..a19c2f3da04 100644 --- a/boards/arm/sama5/giant-board/scripts/dramboot.ld +++ b/boards/arm/sama5/giant-board/scripts/dramboot.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/giant-board/scripts/isram.ld b/boards/arm/sama5/giant-board/scripts/isram.ld index efecf81de26..2beb3044b03 100644 --- a/boards/arm/sama5/giant-board/scripts/isram.ld +++ b/boards/arm/sama5/giant-board/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/giant-board/scripts/uboot.ld b/boards/arm/sama5/giant-board/scripts/uboot.ld index e6a771b9d76..5e323a45750 100644 --- a/boards/arm/sama5/giant-board/scripts/uboot.ld +++ b/boards/arm/sama5/giant-board/scripts/uboot.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/jupiter-nano/scripts/dramboot.ld b/boards/arm/sama5/jupiter-nano/scripts/dramboot.ld index 2249a48138d..23bd38e06e5 100644 --- a/boards/arm/sama5/jupiter-nano/scripts/dramboot.ld +++ b/boards/arm/sama5/jupiter-nano/scripts/dramboot.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/jupiter-nano/scripts/isram.ld b/boards/arm/sama5/jupiter-nano/scripts/isram.ld index c922f698d5c..857d75d3b79 100644 --- a/boards/arm/sama5/jupiter-nano/scripts/isram.ld +++ b/boards/arm/sama5/jupiter-nano/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/jupiter-nano/scripts/uboot.ld b/boards/arm/sama5/jupiter-nano/scripts/uboot.ld index fe65968c05a..af8359b0694 100644 --- a/boards/arm/sama5/jupiter-nano/scripts/uboot.ld +++ b/boards/arm/sama5/jupiter-nano/scripts/uboot.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d2-xult/scripts/dramboot.ld b/boards/arm/sama5/sama5d2-xult/scripts/dramboot.ld index 2249a48138d..23bd38e06e5 100644 --- a/boards/arm/sama5/sama5d2-xult/scripts/dramboot.ld +++ b/boards/arm/sama5/sama5d2-xult/scripts/dramboot.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d2-xult/scripts/isram.ld b/boards/arm/sama5/sama5d2-xult/scripts/isram.ld index c922f698d5c..857d75d3b79 100644 --- a/boards/arm/sama5/sama5d2-xult/scripts/isram.ld +++ b/boards/arm/sama5/sama5d2-xult/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/sama5d2-xult/scripts/uboot.ld b/boards/arm/sama5/sama5d2-xult/scripts/uboot.ld index fe65968c05a..af8359b0694 100644 --- a/boards/arm/sama5/sama5d2-xult/scripts/uboot.ld +++ b/boards/arm/sama5/sama5d2-xult/scripts/uboot.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d3-xplained/scripts/ddram.ld b/boards/arm/sama5/sama5d3-xplained/scripts/ddram.ld index 5a6f454cf31..e8b373acb24 100644 --- a/boards/arm/sama5/sama5d3-xplained/scripts/ddram.ld +++ b/boards/arm/sama5/sama5d3-xplained/scripts/ddram.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d3-xplained/scripts/isram.ld b/boards/arm/sama5/sama5d3-xplained/scripts/isram.ld index 40c1fdb6056..6a193d2f8a2 100644 --- a/boards/arm/sama5/sama5d3-xplained/scripts/isram.ld +++ b/boards/arm/sama5/sama5d3-xplained/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/sama5d3x-ek/scripts/ddram.ld b/boards/arm/sama5/sama5d3x-ek/scripts/ddram.ld index 99b05c1432a..678807c76f6 100644 --- a/boards/arm/sama5/sama5d3x-ek/scripts/ddram.ld +++ b/boards/arm/sama5/sama5d3x-ek/scripts/ddram.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d3x-ek/scripts/isram.ld b/boards/arm/sama5/sama5d3x-ek/scripts/isram.ld index 24cbafea615..7501d190597 100644 --- a/boards/arm/sama5/sama5d3x-ek/scripts/isram.ld +++ b/boards/arm/sama5/sama5d3x-ek/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/sama5d3x-ek/scripts/nor-ddram.ld b/boards/arm/sama5/sama5d3x-ek/scripts/nor-ddram.ld index 2d323b62cd7..f317780db23 100644 --- a/boards/arm/sama5/sama5d3x-ek/scripts/nor-ddram.ld +++ b/boards/arm/sama5/sama5d3x-ek/scripts/nor-ddram.ld @@ -65,7 +65,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > norflash diff --git a/boards/arm/sama5/sama5d3x-ek/scripts/nor-isram.ld b/boards/arm/sama5/sama5d3x-ek/scripts/nor-isram.ld index eeaf780f253..8e9a66396e0 100644 --- a/boards/arm/sama5/sama5d3x-ek/scripts/nor-isram.ld +++ b/boards/arm/sama5/sama5d3x-ek/scripts/nor-isram.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > norflash diff --git a/boards/arm/sama5/sama5d3x-ek/scripts/pg-sram.ld b/boards/arm/sama5/sama5d3x-ek/scripts/pg-sram.ld index 104d7939ee4..cef2b97d297 100644 --- a/boards/arm/sama5/sama5d3x-ek/scripts/pg-sram.ld +++ b/boards/arm/sama5/sama5d3x-ek/scripts/pg-sram.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > locked diff --git a/boards/arm/sama5/sama5d4-ek/scripts/dramboot.ld b/boards/arm/sama5/sama5d4-ek/scripts/dramboot.ld index 18d2f1434bc..37163a9d801 100644 --- a/boards/arm/sama5/sama5d4-ek/scripts/dramboot.ld +++ b/boards/arm/sama5/sama5d4-ek/scripts/dramboot.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/sama5/sama5d4-ek/scripts/isram.ld b/boards/arm/sama5/sama5d4-ek/scripts/isram.ld index 45f0145809a..0b12243de56 100644 --- a/boards/arm/sama5/sama5d4-ek/scripts/isram.ld +++ b/boards/arm/sama5/sama5d4-ek/scripts/isram.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > isram diff --git a/boards/arm/sama5/sama5d4-ek/scripts/uboot.ld b/boards/arm/sama5/sama5d4-ek/scripts/uboot.ld index c7ffaeeaf6c..b4823bf0e6d 100644 --- a/boards/arm/sama5/sama5d4-ek/scripts/uboot.ld +++ b/boards/arm/sama5/sama5d4-ek/scripts/uboot.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sdram diff --git a/boards/arm/samd2l2/arduino-m0/scripts/flash.ld b/boards/arm/samd2l2/arduino-m0/scripts/flash.ld index 8bcf4997fc5..2c79fc9e37c 100644 --- a/boards/arm/samd2l2/arduino-m0/scripts/flash.ld +++ b/boards/arm/samd2l2/arduino-m0/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd2l2/circuit-express/scripts/flash.ld b/boards/arm/samd2l2/circuit-express/scripts/flash.ld index 50840da3124..725fa486e41 100644 --- a/boards/arm/samd2l2/circuit-express/scripts/flash.ld +++ b/boards/arm/samd2l2/circuit-express/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd2l2/samd20-xplained/scripts/flash.ld b/boards/arm/samd2l2/samd20-xplained/scripts/flash.ld index 636e63a23d3..07a60ea1a61 100644 --- a/boards/arm/samd2l2/samd20-xplained/scripts/flash.ld +++ b/boards/arm/samd2l2/samd20-xplained/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd2l2/samd21-xplained/scripts/flash.ld b/boards/arm/samd2l2/samd21-xplained/scripts/flash.ld index 0480459e974..42c5a489796 100644 --- a/boards/arm/samd2l2/samd21-xplained/scripts/flash.ld +++ b/boards/arm/samd2l2/samd21-xplained/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd2l2/saml21-xplained/scripts/flash.ld b/boards/arm/samd2l2/saml21-xplained/scripts/flash.ld index 0ebfbdc68e7..bd4c5bb9cf1 100644 --- a/boards/arm/samd2l2/saml21-xplained/scripts/flash.ld +++ b/boards/arm/samd2l2/saml21-xplained/scripts/flash.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd5e5/metro-m4/scripts/flash.ld b/boards/arm/samd5e5/metro-m4/scripts/flash.ld index 96917c3bf5f..edf37ec0224 100644 --- a/boards/arm/samd5e5/metro-m4/scripts/flash.ld +++ b/boards/arm/samd5e5/metro-m4/scripts/flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd5e5/metro-m4/scripts/sram.ld b/boards/arm/samd5e5/metro-m4/scripts/sram.ld index 0acc008ad73..975ce1ed18a 100644 --- a/boards/arm/samd5e5/metro-m4/scripts/sram.ld +++ b/boards/arm/samd5e5/metro-m4/scripts/sram.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/samd5e5/same54-xplained-pro/scripts/flash.ld b/boards/arm/samd5e5/same54-xplained-pro/scripts/flash.ld index fe2d7231476..8f7ffc13528 100644 --- a/boards/arm/samd5e5/same54-xplained-pro/scripts/flash.ld +++ b/boards/arm/samd5e5/same54-xplained-pro/scripts/flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/samd5e5/same54-xplained-pro/scripts/sram.ld b/boards/arm/samd5e5/same54-xplained-pro/scripts/sram.ld index 925e9431d5f..6cdeed56047 100644 --- a/boards/arm/samd5e5/same54-xplained-pro/scripts/sram.ld +++ b/boards/arm/samd5e5/same54-xplained-pro/scripts/sram.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/samv7/common/scripts/flash.ld.template b/boards/arm/samv7/common/scripts/flash.ld.template index bb2a77cd5fc..b8ef5b21b9d 100644 --- a/boards/arm/samv7/common/scripts/flash.ld.template +++ b/boards/arm/samv7/common/scripts/flash.ld.template @@ -72,7 +72,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); -KEEP(*(.init_array .init_array.*)) _einit = ABSOLUTE(.); +KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash .ARM.extab : { diff --git a/boards/arm/samv7/common/scripts/kernel-space.ld b/boards/arm/samv7/common/scripts/kernel-space.ld index c814f20dc5b..149238c9ed6 100644 --- a/boards/arm/samv7/common/scripts/kernel-space.ld +++ b/boards/arm/samv7/common/scripts/kernel-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/samv7/common/scripts/user-space.ld b/boards/arm/samv7/common/scripts/user-space.ld index 4c2a213dac2..60acb6e1681 100644 --- a/boards/arm/samv7/common/scripts/user-space.ld +++ b/boards/arm/samv7/common/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/axoloti/scripts/kernel-space.ld b/boards/arm/stm32/axoloti/scripts/kernel-space.ld index 8127a483b14..22bf4118eed 100644 --- a/boards/arm/stm32/axoloti/scripts/kernel-space.ld +++ b/boards/arm/stm32/axoloti/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/axoloti/scripts/ld.script b/boards/arm/stm32/axoloti/scripts/ld.script index 1d45b365acf..409204c6b0b 100644 --- a/boards/arm/stm32/axoloti/scripts/ld.script +++ b/boards/arm/stm32/axoloti/scripts/ld.script @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/axoloti/scripts/user-space.ld b/boards/arm/stm32/axoloti/scripts/user-space.ld index aff5a0490f0..25beb6c60ca 100644 --- a/boards/arm/stm32/axoloti/scripts/user-space.ld +++ b/boards/arm/stm32/axoloti/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/b-g431b-esc1/scripts/ld.script b/boards/arm/stm32/b-g431b-esc1/scripts/ld.script index c522c98354f..cc747d6ceb8 100644 --- a/boards/arm/stm32/b-g431b-esc1/scripts/ld.script +++ b/boards/arm/stm32/b-g431b-esc1/scripts/ld.script @@ -73,7 +73,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script b/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script index 6dd4ebfc023..3428c1d1bdd 100644 --- a/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script +++ b/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script @@ -73,7 +73,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script.dfu b/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script.dfu index a7369afac12..37140d33259 100644 --- a/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script.dfu +++ b/boards/arm/stm32/b-g474e-dpow1/scripts/ld.script.dfu @@ -76,7 +76,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/clicker2-stm32/scripts/flash.ld b/boards/arm/stm32/clicker2-stm32/scripts/flash.ld index aa4465b10ae..054ed735724 100644 --- a/boards/arm/stm32/clicker2-stm32/scripts/flash.ld +++ b/boards/arm/stm32/clicker2-stm32/scripts/flash.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/clicker2-stm32/scripts/kernel-space.ld b/boards/arm/stm32/clicker2-stm32/scripts/kernel-space.ld index 42ebbf89593..a56795db11f 100644 --- a/boards/arm/stm32/clicker2-stm32/scripts/kernel-space.ld +++ b/boards/arm/stm32/clicker2-stm32/scripts/kernel-space.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/clicker2-stm32/scripts/user-space.ld b/boards/arm/stm32/clicker2-stm32/scripts/user-space.ld index ac312da571e..76c2ef19c96 100644 --- a/boards/arm/stm32/clicker2-stm32/scripts/user-space.ld +++ b/boards/arm/stm32/clicker2-stm32/scripts/user-space.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/cloudctrl/scripts/cloudctrl-dfu.ld b/boards/arm/stm32/cloudctrl/scripts/cloudctrl-dfu.ld index e99bd01bc8a..7e5fc3663b6 100644 --- a/boards/arm/stm32/cloudctrl/scripts/cloudctrl-dfu.ld +++ b/boards/arm/stm32/cloudctrl/scripts/cloudctrl-dfu.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/cloudctrl/scripts/cloudctrl.ld b/boards/arm/stm32/cloudctrl/scripts/cloudctrl.ld index bbb27924687..db145408f2a 100644 --- a/boards/arm/stm32/cloudctrl/scripts/cloudctrl.ld +++ b/boards/arm/stm32/cloudctrl/scripts/cloudctrl.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/emw3162/scripts/ld.script b/boards/arm/stm32/emw3162/scripts/ld.script index 1c7a00f4179..1523670f59e 100644 --- a/boards/arm/stm32/emw3162/scripts/ld.script +++ b/boards/arm/stm32/emw3162/scripts/ld.script @@ -65,7 +65,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/et-stm32-stamp/scripts/ld.script b/boards/arm/stm32/et-stm32-stamp/scripts/ld.script index f48b175b554..677c67657a7 100644 --- a/boards/arm/stm32/et-stm32-stamp/scripts/ld.script +++ b/boards/arm/stm32/et-stm32-stamp/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2-dfu.ld b/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2-dfu.ld index 5c703d53f16..db80a0b3d99 100644 --- a/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2-dfu.ld +++ b/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2-dfu.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2.ld b/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2.ld index 7f235122c7e..4173ca985c8 100644 --- a/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2.ld +++ b/boards/arm/stm32/fire-stm32v2/scripts/fire-stm32v2.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/hymini-stm32v/scripts/ld.script b/boards/arm/stm32/hymini-stm32v/scripts/ld.script index a1de005a4fd..3233b9fdca0 100644 --- a/boards/arm/stm32/hymini-stm32v/scripts/ld.script +++ b/boards/arm/stm32/hymini-stm32v/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/maple/scripts/ld.script b/boards/arm/stm32/maple/scripts/ld.script index cd8fd1764b5..ad015f0bb98 100644 --- a/boards/arm/stm32/maple/scripts/ld.script +++ b/boards/arm/stm32/maple/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/maple/scripts/ld.script.dfu b/boards/arm/stm32/maple/scripts/ld.script.dfu index f2e515aad85..99013c98b52 100644 --- a/boards/arm/stm32/maple/scripts/ld.script.dfu +++ b/boards/arm/stm32/maple/scripts/ld.script.dfu @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/mikroe-stm32f4/scripts/kernel-space.ld b/boards/arm/stm32/mikroe-stm32f4/scripts/kernel-space.ld index 05932f34fa1..37cf9df4a7a 100644 --- a/boards/arm/stm32/mikroe-stm32f4/scripts/kernel-space.ld +++ b/boards/arm/stm32/mikroe-stm32f4/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/mikroe-stm32f4/scripts/ld.script b/boards/arm/stm32/mikroe-stm32f4/scripts/ld.script index f97cf5f03cb..153dbe90eba 100644 --- a/boards/arm/stm32/mikroe-stm32f4/scripts/ld.script +++ b/boards/arm/stm32/mikroe-stm32f4/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/mikroe-stm32f4/scripts/user-space.ld b/boards/arm/stm32/mikroe-stm32f4/scripts/user-space.ld index 102461a067c..4d0f0c54588 100644 --- a/boards/arm/stm32/mikroe-stm32f4/scripts/user-space.ld +++ b/boards/arm/stm32/mikroe-stm32f4/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/nucleo-f103rb/scripts/ld.script b/boards/arm/stm32/nucleo-f103rb/scripts/ld.script index 0b4203273e8..86a61479242 100644 --- a/boards/arm/stm32/nucleo-f103rb/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f103rb/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f207zg/scripts/ld.script b/boards/arm/stm32/nucleo-f207zg/scripts/ld.script index 2f25c9970e3..a22d1751129 100644 --- a/boards/arm/stm32/nucleo-f207zg/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f207zg/scripts/ld.script @@ -58,7 +58,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f302r8/scripts/ld.script b/boards/arm/stm32/nucleo-f302r8/scripts/ld.script index b2565071a22..a8b0cb0e201 100644 --- a/boards/arm/stm32/nucleo-f302r8/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f302r8/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f303re/scripts/ld.script b/boards/arm/stm32/nucleo-f303re/scripts/ld.script index 15ba0d53e88..13e741e47cc 100644 --- a/boards/arm/stm32/nucleo-f303re/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f303re/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f303ze/scripts/ld.script b/boards/arm/stm32/nucleo-f303ze/scripts/ld.script index 7cfc11cf12d..ac6d5d47703 100644 --- a/boards/arm/stm32/nucleo-f303ze/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f303ze/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f334r8/scripts/ld.script b/boards/arm/stm32/nucleo-f334r8/scripts/ld.script index 915eaf70ed8..d03d2c24adf 100644 --- a/boards/arm/stm32/nucleo-f334r8/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f334r8/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f410rb/scripts/f410rb.ld b/boards/arm/stm32/nucleo-f410rb/scripts/f410rb.ld index fc5d0d4603b..09bf80e1ed0 100644 --- a/boards/arm/stm32/nucleo-f410rb/scripts/f410rb.ld +++ b/boards/arm/stm32/nucleo-f410rb/scripts/f410rb.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f412zg/scripts/f412zg.ld b/boards/arm/stm32/nucleo-f412zg/scripts/f412zg.ld index 9d210be9534..aaa379da13d 100644 --- a/boards/arm/stm32/nucleo-f412zg/scripts/f412zg.ld +++ b/boards/arm/stm32/nucleo-f412zg/scripts/f412zg.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f429zi/scripts/kernel-space.ld b/boards/arm/stm32/nucleo-f429zi/scripts/kernel-space.ld index 5e3cd0beb26..ee61aa749a6 100644 --- a/boards/arm/stm32/nucleo-f429zi/scripts/kernel-space.ld +++ b/boards/arm/stm32/nucleo-f429zi/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/nucleo-f429zi/scripts/ld.script b/boards/arm/stm32/nucleo-f429zi/scripts/ld.script index 6f673cc3d44..b5be9f3e1b8 100644 --- a/boards/arm/stm32/nucleo-f429zi/scripts/ld.script +++ b/boards/arm/stm32/nucleo-f429zi/scripts/ld.script @@ -61,7 +61,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f429zi/scripts/user-space.ld b/boards/arm/stm32/nucleo-f429zi/scripts/user-space.ld index 044e9ea859f..1daafb6539c 100644 --- a/boards/arm/stm32/nucleo-f429zi/scripts/user-space.ld +++ b/boards/arm/stm32/nucleo-f429zi/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/nucleo-f446re/scripts/f446re.ld b/boards/arm/stm32/nucleo-f446re/scripts/f446re.ld index 6e400594ef3..49831612e5c 100644 --- a/boards/arm/stm32/nucleo-f446re/scripts/f446re.ld +++ b/boards/arm/stm32/nucleo-f446re/scripts/f446re.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld b/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld index 61f4bc3f756..6586dea7fd3 100644 --- a/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld +++ b/boards/arm/stm32/nucleo-f4x1re/scripts/f401re.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld b/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld index 4c3d7927cbd..e1ff533857e 100644 --- a/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld +++ b/boards/arm/stm32/nucleo-f4x1re/scripts/f411re.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-g431kb/scripts/ld.script b/boards/arm/stm32/nucleo-g431kb/scripts/ld.script index abdaf8ad1a6..b2dab100975 100644 --- a/boards/arm/stm32/nucleo-g431kb/scripts/ld.script +++ b/boards/arm/stm32/nucleo-g431kb/scripts/ld.script @@ -73,7 +73,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-g431rb/scripts/ld.script b/boards/arm/stm32/nucleo-g431rb/scripts/ld.script index 6f03b188a37..c0d0e1f2795 100644 --- a/boards/arm/stm32/nucleo-g431rb/scripts/ld.script +++ b/boards/arm/stm32/nucleo-g431rb/scripts/ld.script @@ -73,7 +73,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-g474re/scripts/ld.script b/boards/arm/stm32/nucleo-g474re/scripts/ld.script index 35062f6c10c..ce1c9951a1c 100644 --- a/boards/arm/stm32/nucleo-g474re/scripts/ld.script +++ b/boards/arm/stm32/nucleo-g474re/scripts/ld.script @@ -73,7 +73,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-g474re/scripts/ld.script.dfu b/boards/arm/stm32/nucleo-g474re/scripts/ld.script.dfu index 9418785fe0b..fe1d6989799 100644 --- a/boards/arm/stm32/nucleo-g474re/scripts/ld.script.dfu +++ b/boards/arm/stm32/nucleo-g474re/scripts/ld.script.dfu @@ -76,7 +76,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/nucleo-l152re/scripts/ld.script b/boards/arm/stm32/nucleo-l152re/scripts/ld.script index 745cae915d9..e9e43c2e032 100644 --- a/boards/arm/stm32/nucleo-l152re/scripts/ld.script +++ b/boards/arm/stm32/nucleo-l152re/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-e407/scripts/f407ze.ld b/boards/arm/stm32/olimex-stm32-e407/scripts/f407ze.ld index 02519fdf03f..69d8c8d65b6 100644 --- a/boards/arm/stm32/olimex-stm32-e407/scripts/f407ze.ld +++ b/boards/arm/stm32/olimex-stm32-e407/scripts/f407ze.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-e407/scripts/f407zg.ld b/boards/arm/stm32/olimex-stm32-e407/scripts/f407zg.ld index 077b81d8bc4..6229fc00ede 100644 --- a/boards/arm/stm32/olimex-stm32-e407/scripts/f407zg.ld +++ b/boards/arm/stm32/olimex-stm32-e407/scripts/f407zg.ld @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-h405/scripts/ld.script b/boards/arm/stm32/olimex-stm32-h405/scripts/ld.script index 7c737fcae40..7706043267d 100644 --- a/boards/arm/stm32/olimex-stm32-h405/scripts/ld.script +++ b/boards/arm/stm32/olimex-stm32-h405/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-h407/scripts/ld.script b/boards/arm/stm32/olimex-stm32-h407/scripts/ld.script index e7663a16fd8..d44802734aa 100644 --- a/boards/arm/stm32/olimex-stm32-h407/scripts/ld.script +++ b/boards/arm/stm32/olimex-stm32-h407/scripts/ld.script @@ -59,7 +59,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script b/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script index 265ef92d27e..9217659aaef 100644 --- a/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script +++ b/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script @@ -47,7 +47,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script.dfu b/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script.dfu index 82d41c538dd..819e4790a88 100644 --- a/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script.dfu +++ b/boards/arm/stm32/olimex-stm32-p107/scripts/ld.script.dfu @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script b/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script index cd822a32639..9ccfc7e7b23 100644 --- a/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script +++ b/boards/arm/stm32/olimex-stm32-p207/scripts/ld.script @@ -59,7 +59,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-p407/scripts/flash.ld b/boards/arm/stm32/olimex-stm32-p407/scripts/flash.ld index a52ab84761c..4426029ee19 100644 --- a/boards/arm/stm32/olimex-stm32-p407/scripts/flash.ld +++ b/boards/arm/stm32/olimex-stm32-p407/scripts/flash.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimex-stm32-p407/scripts/kernel-space.ld b/boards/arm/stm32/olimex-stm32-p407/scripts/kernel-space.ld index b61ac34f85c..7262cabc10f 100644 --- a/boards/arm/stm32/olimex-stm32-p407/scripts/kernel-space.ld +++ b/boards/arm/stm32/olimex-stm32-p407/scripts/kernel-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/olimex-stm32-p407/scripts/user-space.ld b/boards/arm/stm32/olimex-stm32-p407/scripts/user-space.ld index 36c78ea521b..1a9c039fbf4 100644 --- a/boards/arm/stm32/olimex-stm32-p407/scripts/user-space.ld +++ b/boards/arm/stm32/olimex-stm32-p407/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/olimexino-stm32/scripts/ld.script b/boards/arm/stm32/olimexino-stm32/scripts/ld.script index 0034b0b3aef..c1ba24d02ed 100644 --- a/boards/arm/stm32/olimexino-stm32/scripts/ld.script +++ b/boards/arm/stm32/olimexino-stm32/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/olimexino-stm32/scripts/ld.script.dfu b/boards/arm/stm32/olimexino-stm32/scripts/ld.script.dfu index b83c0757481..7f5eab082ae 100644 --- a/boards/arm/stm32/olimexino-stm32/scripts/ld.script.dfu +++ b/boards/arm/stm32/olimexino-stm32/scripts/ld.script.dfu @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/omnibusf4/scripts/kernel-space.ld b/boards/arm/stm32/omnibusf4/scripts/kernel-space.ld index fe7e72b640f..69868597a63 100644 --- a/boards/arm/stm32/omnibusf4/scripts/kernel-space.ld +++ b/boards/arm/stm32/omnibusf4/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/omnibusf4/scripts/ld.script b/boards/arm/stm32/omnibusf4/scripts/ld.script index 82aedd7fb75..ecbb8ec7ac8 100644 --- a/boards/arm/stm32/omnibusf4/scripts/ld.script +++ b/boards/arm/stm32/omnibusf4/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/omnibusf4/scripts/user-space.ld b/boards/arm/stm32/omnibusf4/scripts/user-space.ld index 6897a8f1696..be4dc786ad3 100644 --- a/boards/arm/stm32/omnibusf4/scripts/user-space.ld +++ b/boards/arm/stm32/omnibusf4/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/photon/scripts/photon_dfu.ld b/boards/arm/stm32/photon/scripts/photon_dfu.ld index e32a1012a50..6721234a691 100644 --- a/boards/arm/stm32/photon/scripts/photon_dfu.ld +++ b/boards/arm/stm32/photon/scripts/photon_dfu.ld @@ -68,7 +68,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/photon/scripts/photon_jtag.ld b/boards/arm/stm32/photon/scripts/photon_jtag.ld index 91526951706..b9977bfe94f 100644 --- a/boards/arm/stm32/photon/scripts/photon_jtag.ld +++ b/boards/arm/stm32/photon/scripts/photon_jtag.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/shenzhou/scripts/ld.script b/boards/arm/stm32/shenzhou/scripts/ld.script index 0aebf1a486d..abfbcf6490c 100644 --- a/boards/arm/stm32/shenzhou/scripts/ld.script +++ b/boards/arm/stm32/shenzhou/scripts/ld.script @@ -51,7 +51,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/shenzhou/scripts/ld.script.dfu b/boards/arm/stm32/shenzhou/scripts/ld.script.dfu index 1115d637d71..b3e5fb79b0e 100644 --- a/boards/arm/stm32/shenzhou/scripts/ld.script.dfu +++ b/boards/arm/stm32/shenzhou/scripts/ld.script.dfu @@ -53,7 +53,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm3210e-eval/scripts/ld.script b/boards/arm/stm32/stm3210e-eval/scripts/ld.script index e795ab8389d..ad75658a278 100644 --- a/boards/arm/stm32/stm3210e-eval/scripts/ld.script +++ b/boards/arm/stm32/stm3210e-eval/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm3210e-eval/scripts/ld.script.dfu b/boards/arm/stm32/stm3210e-eval/scripts/ld.script.dfu index fc2381a6b29..57187218212 100644 --- a/boards/arm/stm32/stm3210e-eval/scripts/ld.script.dfu +++ b/boards/arm/stm32/stm3210e-eval/scripts/ld.script.dfu @@ -53,7 +53,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm3220g-eval/scripts/ld.script b/boards/arm/stm32/stm3220g-eval/scripts/ld.script index ecb61d483ec..2594407f392 100644 --- a/boards/arm/stm32/stm3220g-eval/scripts/ld.script +++ b/boards/arm/stm32/stm3220g-eval/scripts/ld.script @@ -59,7 +59,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm3240g-eval/scripts/kernel-space.ld b/boards/arm/stm32/stm3240g-eval/scripts/kernel-space.ld index 3c992720042..fc915180193 100644 --- a/boards/arm/stm32/stm3240g-eval/scripts/kernel-space.ld +++ b/boards/arm/stm32/stm3240g-eval/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/stm3240g-eval/scripts/ld.script b/boards/arm/stm32/stm3240g-eval/scripts/ld.script index 1e27d3c6b97..9da2880e91a 100644 --- a/boards/arm/stm32/stm3240g-eval/scripts/ld.script +++ b/boards/arm/stm32/stm3240g-eval/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm3240g-eval/scripts/user-space.ld b/boards/arm/stm32/stm3240g-eval/scripts/user-space.ld index 7cff5ea653f..1914fa3c164 100644 --- a/boards/arm/stm32/stm3240g-eval/scripts/user-space.ld +++ b/boards/arm/stm32/stm3240g-eval/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/stm32_tiny/scripts/ld.script b/boards/arm/stm32/stm32_tiny/scripts/ld.script index 9f917a33a50..23c86930d0a 100644 --- a/boards/arm/stm32/stm32_tiny/scripts/ld.script +++ b/boards/arm/stm32/stm32_tiny/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32butterfly2/scripts/dfu.ld b/boards/arm/stm32/stm32butterfly2/scripts/dfu.ld index 14351428daa..9800c52d64c 100644 --- a/boards/arm/stm32/stm32butterfly2/scripts/dfu.ld +++ b/boards/arm/stm32/stm32butterfly2/scripts/dfu.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32butterfly2/scripts/flash.ld b/boards/arm/stm32/stm32butterfly2/scripts/flash.ld index d22e096b395..1f11b7ec429 100644 --- a/boards/arm/stm32/stm32butterfly2/scripts/flash.ld +++ b/boards/arm/stm32/stm32butterfly2/scripts/flash.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f103-minimum/scripts/ld.script b/boards/arm/stm32/stm32f103-minimum/scripts/ld.script index 8d7a9bb21ae..ddf57612148 100644 --- a/boards/arm/stm32/stm32f103-minimum/scripts/ld.script +++ b/boards/arm/stm32/stm32f103-minimum/scripts/ld.script @@ -59,7 +59,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f103-minimum/scripts/ld.script.dfu b/boards/arm/stm32/stm32f103-minimum/scripts/ld.script.dfu index 92e0d454b0d..05a61559582 100644 --- a/boards/arm/stm32/stm32f103-minimum/scripts/ld.script.dfu +++ b/boards/arm/stm32/stm32f103-minimum/scripts/ld.script.dfu @@ -53,7 +53,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f334-disco/scripts/ld.script b/boards/arm/stm32/stm32f334-disco/scripts/ld.script index 2358bfde7a6..d511a5f0ac4 100644 --- a/boards/arm/stm32/stm32f334-disco/scripts/ld.script +++ b/boards/arm/stm32/stm32f334-disco/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f3discovery/scripts/ld.script b/boards/arm/stm32/stm32f3discovery/scripts/ld.script index 6773786954b..db2fb68a81a 100644 --- a/boards/arm/stm32/stm32f3discovery/scripts/ld.script +++ b/boards/arm/stm32/stm32f3discovery/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f411-minimum/scripts/stm32f411ce.ld b/boards/arm/stm32/stm32f411-minimum/scripts/stm32f411ce.ld index 5d0f136bf77..5e570fe1805 100644 --- a/boards/arm/stm32/stm32f411-minimum/scripts/stm32f411ce.ld +++ b/boards/arm/stm32/stm32f411-minimum/scripts/stm32f411ce.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f411e-disco/scripts/f411ve.ld b/boards/arm/stm32/stm32f411e-disco/scripts/f411ve.ld index ec326a17c25..8f6299c33f4 100644 --- a/boards/arm/stm32/stm32f411e-disco/scripts/f411ve.ld +++ b/boards/arm/stm32/stm32f411e-disco/scripts/f411ve.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f429i-disco/scripts/kernel-space.ld b/boards/arm/stm32/stm32f429i-disco/scripts/kernel-space.ld index 85e25d17afa..7e9153bf543 100644 --- a/boards/arm/stm32/stm32f429i-disco/scripts/kernel-space.ld +++ b/boards/arm/stm32/stm32f429i-disco/scripts/kernel-space.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/stm32f429i-disco/scripts/ld.script b/boards/arm/stm32/stm32f429i-disco/scripts/ld.script index 1cc3b9df607..ae9a3fa2e62 100644 --- a/boards/arm/stm32/stm32f429i-disco/scripts/ld.script +++ b/boards/arm/stm32/stm32f429i-disco/scripts/ld.script @@ -61,7 +61,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f429i-disco/scripts/ofloader.ld b/boards/arm/stm32/stm32f429i-disco/scripts/ofloader.ld index 8f521fee813..fe5009eaa72 100644 --- a/boards/arm/stm32/stm32f429i-disco/scripts/ofloader.ld +++ b/boards/arm/stm32/stm32f429i-disco/scripts/ofloader.ld @@ -65,7 +65,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/stm32/stm32f429i-disco/scripts/user-space.ld b/boards/arm/stm32/stm32f429i-disco/scripts/user-space.ld index 79fdd2b7165..23c2ab4c025 100644 --- a/boards/arm/stm32/stm32f429i-disco/scripts/user-space.ld +++ b/boards/arm/stm32/stm32f429i-disco/scripts/user-space.ld @@ -59,7 +59,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/stm32f4discovery/scripts/kernel-space.ld b/boards/arm/stm32/stm32f4discovery/scripts/kernel-space.ld index 038880a5ff3..c4ea7dc7ce2 100644 --- a/boards/arm/stm32/stm32f4discovery/scripts/kernel-space.ld +++ b/boards/arm/stm32/stm32f4discovery/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32/stm32f4discovery/scripts/ld.script b/boards/arm/stm32/stm32f4discovery/scripts/ld.script index cfa333796ff..90b7eb83eda 100644 --- a/boards/arm/stm32/stm32f4discovery/scripts/ld.script +++ b/boards/arm/stm32/stm32f4discovery/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32f4discovery/scripts/user-space.ld b/boards/arm/stm32/stm32f4discovery/scripts/user-space.ld index 68feeace6fc..158df123151 100644 --- a/boards/arm/stm32/stm32f4discovery/scripts/user-space.ld +++ b/boards/arm/stm32/stm32f4discovery/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rb.ld b/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rb.ld index dbf7c020d12..0f9b5f46125 100644 --- a/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rb.ld +++ b/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rb.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rc.ld b/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rc.ld index 4ce14c8b89b..424b45a6792 100644 --- a/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rc.ld +++ b/boards/arm/stm32/stm32ldiscovery/scripts/stm32l152rc.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/stm32vldiscovery/scripts/stm32vldiscovery.ld b/boards/arm/stm32/stm32vldiscovery/scripts/stm32vldiscovery.ld index 032e435bff1..88b53e452a3 100644 --- a/boards/arm/stm32/stm32vldiscovery/scripts/stm32vldiscovery.ld +++ b/boards/arm/stm32/stm32vldiscovery/scripts/stm32vldiscovery.ld @@ -54,7 +54,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/viewtool-stm32f107/scripts/dfu.ld b/boards/arm/stm32/viewtool-stm32f107/scripts/dfu.ld index f8de529d2eb..1406444dc08 100644 --- a/boards/arm/stm32/viewtool-stm32f107/scripts/dfu.ld +++ b/boards/arm/stm32/viewtool-stm32f107/scripts/dfu.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32/viewtool-stm32f107/scripts/flash.ld b/boards/arm/stm32/viewtool-stm32f107/scripts/flash.ld index af038413dd2..c7118d42469 100644 --- a/boards/arm/stm32/viewtool-stm32f107/scripts/flash.ld +++ b/boards/arm/stm32/viewtool-stm32f107/scripts/flash.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/b-l072z-lrwan1/scripts/ld.script b/boards/arm/stm32f0l0g0/b-l072z-lrwan1/scripts/ld.script index 82a0d3f3814..f6e2186c535 100644 --- a/boards/arm/stm32f0l0g0/b-l072z-lrwan1/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/b-l072z-lrwan1/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/nucleo-f072rb/scripts/flash.ld b/boards/arm/stm32f0l0g0/nucleo-f072rb/scripts/flash.ld index e83b13484ae..8c96b940a6c 100644 --- a/boards/arm/stm32f0l0g0/nucleo-f072rb/scripts/flash.ld +++ b/boards/arm/stm32f0l0g0/nucleo-f072rb/scripts/flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/nucleo-f091rc/scripts/flash.ld b/boards/arm/stm32f0l0g0/nucleo-f091rc/scripts/flash.ld index 1edfed3a153..6bd638196cf 100644 --- a/boards/arm/stm32f0l0g0/nucleo-f091rc/scripts/flash.ld +++ b/boards/arm/stm32f0l0g0/nucleo-f091rc/scripts/flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/nucleo-g070rb/scripts/ld.script b/boards/arm/stm32f0l0g0/nucleo-g070rb/scripts/ld.script index 73eddd1e665..cc206499944 100644 --- a/boards/arm/stm32f0l0g0/nucleo-g070rb/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/nucleo-g070rb/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/nucleo-g071rb/scripts/ld.script b/boards/arm/stm32f0l0g0/nucleo-g071rb/scripts/ld.script index 94da78601bc..ecf4743ac5d 100644 --- a/boards/arm/stm32f0l0g0/nucleo-g071rb/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/nucleo-g071rb/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/nucleo-l073rz/scripts/ld.script b/boards/arm/stm32f0l0g0/nucleo-l073rz/scripts/ld.script index 087ac07f240..39637dbc80f 100644 --- a/boards/arm/stm32f0l0g0/nucleo-l073rz/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/nucleo-l073rz/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/stm32f051-discovery/scripts/flash.ld b/boards/arm/stm32f0l0g0/stm32f051-discovery/scripts/flash.ld index 56bce7f05d7..4ae6c099d5f 100644 --- a/boards/arm/stm32f0l0g0/stm32f051-discovery/scripts/flash.ld +++ b/boards/arm/stm32f0l0g0/stm32f051-discovery/scripts/flash.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/stm32f072-discovery/scripts/flash.ld b/boards/arm/stm32f0l0g0/stm32f072-discovery/scripts/flash.ld index 07fd70c309c..5581af674c2 100644 --- a/boards/arm/stm32f0l0g0/stm32f072-discovery/scripts/flash.ld +++ b/boards/arm/stm32f0l0g0/stm32f072-discovery/scripts/flash.ld @@ -56,7 +56,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/stm32g071b-disco/scripts/ld.script b/boards/arm/stm32f0l0g0/stm32g071b-disco/scripts/ld.script index 9b87a39e107..b724c696633 100644 --- a/boards/arm/stm32f0l0g0/stm32g071b-disco/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/stm32g071b-disco/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f0l0g0/stm32l0538-disco/scripts/ld.script b/boards/arm/stm32f0l0g0/stm32l0538-disco/scripts/ld.script index 2c47e67b988..3a9c76e21e8 100644 --- a/boards/arm/stm32f0l0g0/stm32l0538-disco/scripts/ld.script +++ b/boards/arm/stm32f0l0g0/stm32l0538-disco/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/nucleo-144/scripts/f722-flash.ld b/boards/arm/stm32f7/nucleo-144/scripts/f722-flash.ld index 4004f23b3ca..ca23340a624 100644 --- a/boards/arm/stm32f7/nucleo-144/scripts/f722-flash.ld +++ b/boards/arm/stm32f7/nucleo-144/scripts/f722-flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/nucleo-144/scripts/f746-flash.ld b/boards/arm/stm32f7/nucleo-144/scripts/f746-flash.ld index 803b59337f9..f8eaf24c362 100644 --- a/boards/arm/stm32f7/nucleo-144/scripts/f746-flash.ld +++ b/boards/arm/stm32f7/nucleo-144/scripts/f746-flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/nucleo-144/scripts/f767-flash.ld b/boards/arm/stm32f7/nucleo-144/scripts/f767-flash.ld index ec065cd08c9..9b5391cd037 100644 --- a/boards/arm/stm32f7/nucleo-144/scripts/f767-flash.ld +++ b/boards/arm/stm32f7/nucleo-144/scripts/f767-flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/nucleo-144/scripts/kernel-space.ld b/boards/arm/stm32f7/nucleo-144/scripts/kernel-space.ld index 4bb5a3e8284..1a21a36c97e 100644 --- a/boards/arm/stm32f7/nucleo-144/scripts/kernel-space.ld +++ b/boards/arm/stm32f7/nucleo-144/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32f7/nucleo-144/scripts/user-space.ld b/boards/arm/stm32f7/nucleo-144/scripts/user-space.ld index e0b98130f2d..4d82afc6204 100644 --- a/boards/arm/stm32f7/nucleo-144/scripts/user-space.ld +++ b/boards/arm/stm32f7/nucleo-144/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32f7/steval-eth001v1/scripts/flash.ld b/boards/arm/stm32f7/steval-eth001v1/scripts/flash.ld index a93633ba1cc..765262b6162 100644 --- a/boards/arm/stm32f7/steval-eth001v1/scripts/flash.ld +++ b/boards/arm/stm32f7/steval-eth001v1/scripts/flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/stm32f746-ws/scripts/flash.ld b/boards/arm/stm32f7/stm32f746-ws/scripts/flash.ld index c7992329f60..e8c4d88c6f9 100644 --- a/boards/arm/stm32f7/stm32f746-ws/scripts/flash.ld +++ b/boards/arm/stm32f7/stm32f746-ws/scripts/flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/stm32f746-ws/scripts/kernel-space.ld b/boards/arm/stm32f7/stm32f746-ws/scripts/kernel-space.ld index 1f4996693ea..51f5eed390c 100644 --- a/boards/arm/stm32f7/stm32f746-ws/scripts/kernel-space.ld +++ b/boards/arm/stm32f7/stm32f746-ws/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32f7/stm32f746-ws/scripts/user-space.ld b/boards/arm/stm32f7/stm32f746-ws/scripts/user-space.ld index 79532d3b609..02caad188f5 100644 --- a/boards/arm/stm32f7/stm32f746-ws/scripts/user-space.ld +++ b/boards/arm/stm32f7/stm32f746-ws/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32f7/stm32f746g-disco/scripts/flash.ld b/boards/arm/stm32f7/stm32f746g-disco/scripts/flash.ld index 9d47136616f..f276d5faf99 100644 --- a/boards/arm/stm32f7/stm32f746g-disco/scripts/flash.ld +++ b/boards/arm/stm32f7/stm32f746g-disco/scripts/flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/stm32f746g-disco/scripts/kernel-space.ld b/boards/arm/stm32f7/stm32f746g-disco/scripts/kernel-space.ld index ca4bdc71342..3165bf8b1d9 100644 --- a/boards/arm/stm32f7/stm32f746g-disco/scripts/kernel-space.ld +++ b/boards/arm/stm32f7/stm32f746g-disco/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32f7/stm32f746g-disco/scripts/user-space.ld b/boards/arm/stm32f7/stm32f746g-disco/scripts/user-space.ld index 9d5e29c0666..21650949398 100644 --- a/boards/arm/stm32f7/stm32f746g-disco/scripts/user-space.ld +++ b/boards/arm/stm32f7/stm32f746g-disco/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32f7/stm32f769i-disco/scripts/flash.ld b/boards/arm/stm32f7/stm32f769i-disco/scripts/flash.ld index 19f56d8d8c5..8c302fa7c81 100644 --- a/boards/arm/stm32f7/stm32f769i-disco/scripts/flash.ld +++ b/boards/arm/stm32f7/stm32f769i-disco/scripts/flash.ld @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/stm32f769i-disco/scripts/kernel-space.ld b/boards/arm/stm32f7/stm32f769i-disco/scripts/kernel-space.ld index d56c64be59e..c77b88ba1f7 100644 --- a/boards/arm/stm32f7/stm32f769i-disco/scripts/kernel-space.ld +++ b/boards/arm/stm32f7/stm32f769i-disco/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32f7/stm32f769i-disco/scripts/user-space.ld b/boards/arm/stm32f7/stm32f769i-disco/scripts/user-space.ld index bb3748740aa..7862bd846c0 100644 --- a/boards/arm/stm32f7/stm32f769i-disco/scripts/user-space.ld +++ b/boards/arm/stm32f7/stm32f769i-disco/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/kernel-space.ld b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/kernel-space.ld index 4fcdb917157..0374e0fcaf4 100644 --- a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/kernel-space.ld +++ b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/ld.script b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/ld.script index 281ae4f7fd0..217a2f56ae2 100644 --- a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/ld.script +++ b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/ld.script @@ -82,7 +82,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/user-space.ld b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/user-space.ld index d1a5ccf5dee..40744b3a0fe 100644 --- a/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/user-space.ld +++ b/boards/arm/stm32f7/stm32f777zit6-meadow/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-app.ld b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-app.ld index 090efb81b8f..a6e3469e1a6 100644 --- a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-app.ld +++ b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-app.ld @@ -132,7 +132,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-loader.ld b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-loader.ld index 50d7e5ac17a..96e0f03de44 100644 --- a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-loader.ld +++ b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash-mcuboot-loader.ld @@ -132,7 +132,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash.ld b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash.ld index 5b5cbcb7baf..af9189e8249 100644 --- a/boards/arm/stm32h7/nucleo-h743zi/scripts/flash.ld +++ b/boards/arm/stm32h7/nucleo-h743zi/scripts/flash.ld @@ -132,7 +132,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32h7/nucleo-h743zi/scripts/kernel.space.ld b/boards/arm/stm32h7/nucleo-h743zi/scripts/kernel.space.ld index c4edc92208f..897b6d58d3e 100644 --- a/boards/arm/stm32h7/nucleo-h743zi/scripts/kernel.space.ld +++ b/boards/arm/stm32h7/nucleo-h743zi/scripts/kernel.space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32h7/nucleo-h743zi/scripts/user-space.ld b/boards/arm/stm32h7/nucleo-h743zi/scripts/user-space.ld index bbbeec12c0e..f7cdb7a37a6 100644 --- a/boards/arm/stm32h7/nucleo-h743zi/scripts/user-space.ld +++ b/boards/arm/stm32h7/nucleo-h743zi/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32h7/nucleo-h743zi2/scripts/flash.ld b/boards/arm/stm32h7/nucleo-h743zi2/scripts/flash.ld index a4a796e3f61..18de35fa289 100644 --- a/boards/arm/stm32h7/nucleo-h743zi2/scripts/flash.ld +++ b/boards/arm/stm32h7/nucleo-h743zi2/scripts/flash.ld @@ -132,7 +132,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32h7/nucleo-h743zi2/scripts/user-space.ld b/boards/arm/stm32h7/nucleo-h743zi2/scripts/user-space.ld index 737c4f0e142..dc7f44ab90a 100644 --- a/boards/arm/stm32h7/nucleo-h743zi2/scripts/user-space.ld +++ b/boards/arm/stm32h7/nucleo-h743zi2/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32h7/stm32h747i-disco/scripts/flash.ld b/boards/arm/stm32h7/stm32h747i-disco/scripts/flash.ld index 4ebaede3ae1..c05ebd19a0d 100644 --- a/boards/arm/stm32h7/stm32h747i-disco/scripts/flash.ld +++ b/boards/arm/stm32h7/stm32h747i-disco/scripts/flash.ld @@ -130,7 +130,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32h7/stm32h747i-disco/scripts/kernel.space.ld b/boards/arm/stm32h7/stm32h747i-disco/scripts/kernel.space.ld index 565b17858db..adcd5c6817c 100644 --- a/boards/arm/stm32h7/stm32h747i-disco/scripts/kernel.space.ld +++ b/boards/arm/stm32h7/stm32h747i-disco/scripts/kernel.space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32h7/stm32h747i-disco/scripts/user-space.ld b/boards/arm/stm32h7/stm32h747i-disco/scripts/user-space.ld index 22eeb27c37a..8a5dc8a871b 100644 --- a/boards/arm/stm32h7/stm32h747i-disco/scripts/user-space.ld +++ b/boards/arm/stm32h7/stm32h747i-disco/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32l4/b-l475e-iot01a/scripts/flash.ld b/boards/arm/stm32l4/b-l475e-iot01a/scripts/flash.ld index f5adf55cbeb..876b5b66f5a 100644 --- a/boards/arm/stm32l4/b-l475e-iot01a/scripts/flash.ld +++ b/boards/arm/stm32l4/b-l475e-iot01a/scripts/flash.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/nucleo-l432kc/scripts/l432kc.ld b/boards/arm/stm32l4/nucleo-l432kc/scripts/l432kc.ld index ca1ac83f7a1..53dc3e9015f 100644 --- a/boards/arm/stm32l4/nucleo-l432kc/scripts/l432kc.ld +++ b/boards/arm/stm32l4/nucleo-l432kc/scripts/l432kc.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/nucleo-l452re/scripts/l452re-flash.ld b/boards/arm/stm32l4/nucleo-l452re/scripts/l452re-flash.ld index 66431a2af7d..81408febc6b 100644 --- a/boards/arm/stm32l4/nucleo-l452re/scripts/l452re-flash.ld +++ b/boards/arm/stm32l4/nucleo-l452re/scripts/l452re-flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/nucleo-l476rg/scripts/l476rg.ld b/boards/arm/stm32l4/nucleo-l476rg/scripts/l476rg.ld index 67a80e3f4ca..646cece2f7f 100644 --- a/boards/arm/stm32l4/nucleo-l476rg/scripts/l476rg.ld +++ b/boards/arm/stm32l4/nucleo-l476rg/scripts/l476rg.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/nucleo-l496zg/scripts/kernel-space.ld b/boards/arm/stm32l4/nucleo-l496zg/scripts/kernel-space.ld index 4d373a257bf..6215f6d66ca 100644 --- a/boards/arm/stm32l4/nucleo-l496zg/scripts/kernel-space.ld +++ b/boards/arm/stm32l4/nucleo-l496zg/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32l4/nucleo-l496zg/scripts/l496zg-flash.ld b/boards/arm/stm32l4/nucleo-l496zg/scripts/l496zg-flash.ld index 284c0f27250..27873124689 100644 --- a/boards/arm/stm32l4/nucleo-l496zg/scripts/l496zg-flash.ld +++ b/boards/arm/stm32l4/nucleo-l496zg/scripts/l496zg-flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/nucleo-l496zg/scripts/user-space.ld b/boards/arm/stm32l4/nucleo-l496zg/scripts/user-space.ld index 820ae270936..221ccc3c7cb 100644 --- a/boards/arm/stm32l4/nucleo-l496zg/scripts/user-space.ld +++ b/boards/arm/stm32l4/nucleo-l496zg/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32l4/steval-stlcs01v1/scripts/ld.script b/boards/arm/stm32l4/steval-stlcs01v1/scripts/ld.script index c8a3e56cc76..c6a234c8089 100644 --- a/boards/arm/stm32l4/steval-stlcs01v1/scripts/ld.script +++ b/boards/arm/stm32l4/steval-stlcs01v1/scripts/ld.script @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/stm32l476-mdk/scripts/stm32l476-mdk.ld b/boards/arm/stm32l4/stm32l476-mdk/scripts/stm32l476-mdk.ld index 93586697c78..e86e0ddbdc3 100644 --- a/boards/arm/stm32l4/stm32l476-mdk/scripts/stm32l476-mdk.ld +++ b/boards/arm/stm32l4/stm32l476-mdk/scripts/stm32l476-mdk.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/stm32l476vg-disco/scripts/kernel-space.ld b/boards/arm/stm32l4/stm32l476vg-disco/scripts/kernel-space.ld index 5b6f7b770bc..f49e719d862 100644 --- a/boards/arm/stm32l4/stm32l476vg-disco/scripts/kernel-space.ld +++ b/boards/arm/stm32l4/stm32l476vg-disco/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32l4/stm32l476vg-disco/scripts/stm32l476vg-disco.ld b/boards/arm/stm32l4/stm32l476vg-disco/scripts/stm32l476vg-disco.ld index e621dcbb453..b6b903a81c6 100644 --- a/boards/arm/stm32l4/stm32l476vg-disco/scripts/stm32l476vg-disco.ld +++ b/boards/arm/stm32l4/stm32l476vg-disco/scripts/stm32l476vg-disco.ld @@ -58,7 +58,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/stm32l476vg-disco/scripts/user-space.ld b/boards/arm/stm32l4/stm32l476vg-disco/scripts/user-space.ld index c9a79e0143f..fbf1081b8b7 100644 --- a/boards/arm/stm32l4/stm32l476vg-disco/scripts/user-space.ld +++ b/boards/arm/stm32l4/stm32l476vg-disco/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/kernel-space.ld b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/kernel-space.ld index 689dac8652a..3f70e971640 100644 --- a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/kernel-space.ld +++ b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/stm32l4r9ai-disco.ld b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/stm32l4r9ai-disco.ld index f6c61e8ea98..7abbd7607e8 100644 --- a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/stm32l4r9ai-disco.ld +++ b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/stm32l4r9ai-disco.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/user-space.ld b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/user-space.ld index 3f362f4ce82..24372af5dc9 100644 --- a/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/user-space.ld +++ b/boards/arm/stm32l4/stm32l4r9ai-disco/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/stm32l5/nucleo-l552ze/scripts/flash.ld b/boards/arm/stm32l5/nucleo-l552ze/scripts/flash.ld index b5765e8118e..3cacf78875f 100644 --- a/boards/arm/stm32l5/nucleo-l552ze/scripts/flash.ld +++ b/boards/arm/stm32l5/nucleo-l552ze/scripts/flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32l5/stm32l562e-dk/scripts/tfm-ns.ld b/boards/arm/stm32l5/stm32l562e-dk/scripts/tfm-ns.ld index 447c2ee2d79..6d04c9cd94c 100644 --- a/boards/arm/stm32l5/stm32l562e-dk/scripts/tfm-ns.ld +++ b/boards/arm/stm32l5/stm32l562e-dk/scripts/tfm-ns.ld @@ -64,7 +64,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32u5/b-u585i-iot02a/scripts/flash.ld b/boards/arm/stm32u5/b-u585i-iot02a/scripts/flash.ld index 7792d460994..e2ebef35c57 100644 --- a/boards/arm/stm32u5/b-u585i-iot02a/scripts/flash.ld +++ b/boards/arm/stm32u5/b-u585i-iot02a/scripts/flash.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32u5/b-u585i-iot02a/scripts/tfm-ns.ld b/boards/arm/stm32u5/b-u585i-iot02a/scripts/tfm-ns.ld index ce3aa0e4245..07f04e04f68 100644 --- a/boards/arm/stm32u5/b-u585i-iot02a/scripts/tfm-ns.ld +++ b/boards/arm/stm32u5/b-u585i-iot02a/scripts/tfm-ns.ld @@ -64,7 +64,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32wb/flipperzero/scripts/flipperzero.ld b/boards/arm/stm32wb/flipperzero/scripts/flipperzero.ld index b3c6559e15b..f2c0f4d4d80 100644 --- a/boards/arm/stm32wb/flipperzero/scripts/flipperzero.ld +++ b/boards/arm/stm32wb/flipperzero/scripts/flipperzero.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32wb/nucleo-wb55rg/scripts/wb55rg.ld b/boards/arm/stm32wb/nucleo-wb55rg/scripts/wb55rg.ld index 8e91a26a62c..470f4df5324 100644 --- a/boards/arm/stm32wb/nucleo-wb55rg/scripts/wb55rg.ld +++ b/boards/arm/stm32wb/nucleo-wb55rg/scripts/wb55rg.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/stm32wl5/nucleo-wl55jc/scripts/wl55jc.ld b/boards/arm/stm32wl5/nucleo-wl55jc/scripts/wl55jc.ld index f1b4f681a6c..9b414f76d81 100644 --- a/boards/arm/stm32wl5/nucleo-wl55jc/scripts/wl55jc.ld +++ b/boards/arm/stm32wl5/nucleo-wl55jc/scripts/wl55jc.ld @@ -53,7 +53,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/str71x/olimex-strp711/scripts/ld.script b/boards/arm/str71x/olimex-strp711/scripts/ld.script index af404b02e8f..8a50d20e897 100644 --- a/boards/arm/str71x/olimex-strp711/scripts/ld.script +++ b/boards/arm/str71x/olimex-strp711/scripts/ld.script @@ -60,7 +60,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/dk-tm4c129x/scripts/ld.script b/boards/arm/tiva/dk-tm4c129x/scripts/ld.script index 6175a885357..cec5e3eeb71 100644 --- a/boards/arm/tiva/dk-tm4c129x/scripts/ld.script +++ b/boards/arm/tiva/dk-tm4c129x/scripts/ld.script @@ -52,7 +52,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/eagle100/scripts/ld.script b/boards/arm/tiva/eagle100/scripts/ld.script index 891f39413fa..093721bdc37 100644 --- a/boards/arm/tiva/eagle100/scripts/ld.script +++ b/boards/arm/tiva/eagle100/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/ekk-lm3s9b96/scripts/ekk-lm3s9b96.ld b/boards/arm/tiva/ekk-lm3s9b96/scripts/ekk-lm3s9b96.ld index d81d766b9b8..1bd6fcb4b6c 100644 --- a/boards/arm/tiva/ekk-lm3s9b96/scripts/ekk-lm3s9b96.ld +++ b/boards/arm/tiva/ekk-lm3s9b96/scripts/ekk-lm3s9b96.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/launchxl-cc1310/scripts/flash.ld b/boards/arm/tiva/launchxl-cc1310/scripts/flash.ld index ef67dab13f8..c5573a52929 100644 --- a/boards/arm/tiva/launchxl-cc1310/scripts/flash.ld +++ b/boards/arm/tiva/launchxl-cc1310/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/launchxl-cc1312r1/scripts/flash.ld b/boards/arm/tiva/launchxl-cc1312r1/scripts/flash.ld index 15b120c03fb..268a19a60c1 100644 --- a/boards/arm/tiva/launchxl-cc1312r1/scripts/flash.ld +++ b/boards/arm/tiva/launchxl-cc1312r1/scripts/flash.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/launchxl-cc1312r1/scripts/sram.ld b/boards/arm/tiva/launchxl-cc1312r1/scripts/sram.ld index 80807a6aabb..6154e2bd1ca 100644 --- a/boards/arm/tiva/launchxl-cc1312r1/scripts/sram.ld +++ b/boards/arm/tiva/launchxl-cc1312r1/scripts/sram.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > sram diff --git a/boards/arm/tiva/lm3s6432-s2e/scripts/lm3s6432-s2e.ld b/boards/arm/tiva/lm3s6432-s2e/scripts/lm3s6432-s2e.ld index 378e37f0df9..7cc8f83c5fe 100644 --- a/boards/arm/tiva/lm3s6432-s2e/scripts/lm3s6432-s2e.ld +++ b/boards/arm/tiva/lm3s6432-s2e/scripts/lm3s6432-s2e.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/lm3s6965-ek/scripts/kernel-space.ld b/boards/arm/tiva/lm3s6965-ek/scripts/kernel-space.ld index c62c0376dfa..cce0cee994d 100644 --- a/boards/arm/tiva/lm3s6965-ek/scripts/kernel-space.ld +++ b/boards/arm/tiva/lm3s6965-ek/scripts/kernel-space.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/arm/tiva/lm3s6965-ek/scripts/ld.script b/boards/arm/tiva/lm3s6965-ek/scripts/ld.script index b20a9d7ec91..13379348913 100644 --- a/boards/arm/tiva/lm3s6965-ek/scripts/ld.script +++ b/boards/arm/tiva/lm3s6965-ek/scripts/ld.script @@ -51,7 +51,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/lm3s6965-ek/scripts/user-space.ld b/boards/arm/tiva/lm3s6965-ek/scripts/user-space.ld index bb4ef2ea9d2..6a3ad3a1fb3 100644 --- a/boards/arm/tiva/lm3s6965-ek/scripts/user-space.ld +++ b/boards/arm/tiva/lm3s6965-ek/scripts/user-space.ld @@ -46,7 +46,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/arm/tiva/lm3s8962-ek/scripts/ld.script b/boards/arm/tiva/lm3s8962-ek/scripts/ld.script index d0a5b852c4b..5b0d02447dc 100644 --- a/boards/arm/tiva/lm3s8962-ek/scripts/ld.script +++ b/boards/arm/tiva/lm3s8962-ek/scripts/ld.script @@ -51,7 +51,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/lm4f120-launchpad/scripts/lm4f120-launchpad.ld b/boards/arm/tiva/lm4f120-launchpad/scripts/lm4f120-launchpad.ld index 18007be8cb9..cca6edad830 100644 --- a/boards/arm/tiva/lm4f120-launchpad/scripts/lm4f120-launchpad.ld +++ b/boards/arm/tiva/lm4f120-launchpad/scripts/lm4f120-launchpad.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/tm4c123g-launchpad/scripts/tm4c123g-launchpad.ld b/boards/arm/tiva/tm4c123g-launchpad/scripts/tm4c123g-launchpad.ld index 64d8cea8117..cf6346e06d9 100644 --- a/boards/arm/tiva/tm4c123g-launchpad/scripts/tm4c123g-launchpad.ld +++ b/boards/arm/tiva/tm4c123g-launchpad/scripts/tm4c123g-launchpad.ld @@ -52,7 +52,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/tm4c1294-launchpad/scripts/ld.script b/boards/arm/tiva/tm4c1294-launchpad/scripts/ld.script index 613c41eed00..26f2738d933 100644 --- a/boards/arm/tiva/tm4c1294-launchpad/scripts/ld.script +++ b/boards/arm/tiva/tm4c1294-launchpad/scripts/ld.script @@ -52,7 +52,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tiva/tm4c129e-launchpad/scripts/ld.script b/boards/arm/tiva/tm4c129e-launchpad/scripts/ld.script index 94fcb6f4d5c..3124a9f159d 100644 --- a/boards/arm/tiva/tm4c129e-launchpad/scripts/ld.script +++ b/boards/arm/tiva/tm4c129e-launchpad/scripts/ld.script @@ -52,7 +52,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tms570/launchxl-tms57004/scripts/flash-sram.ld b/boards/arm/tms570/launchxl-tms57004/scripts/flash-sram.ld index 1580d98af3b..22340545f2b 100644 --- a/boards/arm/tms570/launchxl-tms57004/scripts/flash-sram.ld +++ b/boards/arm/tms570/launchxl-tms57004/scripts/flash-sram.ld @@ -51,7 +51,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/tms570/tms570ls31x-usb-kit/scripts/flash-sram.ld b/boards/arm/tms570/tms570ls31x-usb-kit/scripts/flash-sram.ld index 1fb591b2170..381697f4ea4 100644 --- a/boards/arm/tms570/tms570ls31x-usb-kit/scripts/flash-sram.ld +++ b/boards/arm/tms570/tms570ls31x-usb-kit/scripts/flash-sram.ld @@ -55,7 +55,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/xmc4/xmc4500-relax/scripts/flash.ld b/boards/arm/xmc4/xmc4500-relax/scripts/flash.ld index e263308dd4e..803890beccc 100644 --- a/boards/arm/xmc4/xmc4500-relax/scripts/flash.ld +++ b/boards/arm/xmc4/xmc4500-relax/scripts/flash.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm/xmc4/xmc4700-relax/scripts/flash.ld b/boards/arm/xmc4/xmc4700-relax/scripts/flash.ld index 94f9c2ba042..6619531a2be 100644 --- a/boards/arm/xmc4/xmc4700-relax/scripts/flash.ld +++ b/boards/arm/xmc4/xmc4700-relax/scripts/flash.ld @@ -62,7 +62,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/arm64/a64/pinephone/scripts/dramboot.ld b/boards/arm64/a64/pinephone/scripts/dramboot.ld index fb6a52fe218..15c82c9d323 100644 --- a/boards/arm64/a64/pinephone/scripts/dramboot.ld +++ b/boards/arm64/a64/pinephone/scripts/dramboot.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } diff --git a/boards/arm64/fvp-v8r/fvp-armv8r/scripts/dramboot.ld b/boards/arm64/fvp-v8r/fvp-armv8r/scripts/dramboot.ld index 813599a6e9e..ec2d6956c52 100644 --- a/boards/arm64/fvp-v8r/fvp-armv8r/scripts/dramboot.ld +++ b/boards/arm64/fvp-v8r/fvp-armv8r/scripts/dramboot.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } diff --git a/boards/arm64/imx8/imx8qm-mek/scripts/dramboot.ld b/boards/arm64/imx8/imx8qm-mek/scripts/dramboot.ld index e7e74b5e182..160a5f8f86d 100644 --- a/boards/arm64/imx8/imx8qm-mek/scripts/dramboot.ld +++ b/boards/arm64/imx8/imx8qm-mek/scripts/dramboot.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } diff --git a/boards/arm64/qemu/qemu-armv8a/scripts/dramboot.ld b/boards/arm64/qemu/qemu-armv8a/scripts/dramboot.ld index 5f9a662bcf2..4cedc61326e 100644 --- a/boards/arm64/qemu/qemu-armv8a/scripts/dramboot.ld +++ b/boards/arm64/qemu/qemu-armv8a/scripts/dramboot.ld @@ -44,7 +44,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } diff --git a/boards/arm64/rk3399/pinephonepro/scripts/dramboot.ld b/boards/arm64/rk3399/pinephonepro/scripts/dramboot.ld index b6b314a09f8..e50ea0b0ea1 100644 --- a/boards/arm64/rk3399/pinephonepro/scripts/dramboot.ld +++ b/boards/arm64/rk3399/pinephonepro/scripts/dramboot.ld @@ -45,7 +45,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } diff --git a/boards/or1k/mor1kx/or1k/scripts/flash.ld b/boards/or1k/mor1kx/or1k/scripts/flash.ld index 518991075be..d8fff419bb8 100644 --- a/boards/or1k/mor1kx/or1k/scripts/flash.ld +++ b/boards/or1k/mor1kx/or1k/scripts/flash.ld @@ -49,7 +49,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > dram diff --git a/boards/renesas/rx65n/rx65n-grrose/scripts/linker_script.ld b/boards/renesas/rx65n/rx65n-grrose/scripts/linker_script.ld index bd58c25e7d0..497a6d3dd74 100644 --- a/boards/renesas/rx65n/rx65n-grrose/scripts/linker_script.ld +++ b/boards/renesas/rx65n/rx65n-grrose/scripts/linker_script.ld @@ -57,8 +57,8 @@ SECTIONS KEEP(*(.preinit_array)) __preinit_array_end = .; __init_array_start = (. + 3) & ~ 3; - KEEP(*(.init_array)) - KEEP(*(SORT(.init_array.*))) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) __init_array_end = .; __fini_array_start = .; KEEP(*(.fini_array)) diff --git a/boards/renesas/rx65n/rx65n-rsk1mb/scripts/linker_script.ld b/boards/renesas/rx65n/rx65n-rsk1mb/scripts/linker_script.ld index 99b6d11b753..9264dd708c6 100644 --- a/boards/renesas/rx65n/rx65n-rsk1mb/scripts/linker_script.ld +++ b/boards/renesas/rx65n/rx65n-rsk1mb/scripts/linker_script.ld @@ -48,8 +48,8 @@ SECTIONS KEEP(*(.preinit_array)) __preinit_array_end = .; __init_array_start = (. + 3) & ~ 3; - KEEP(*(.init_array)) - KEEP(*(SORT(.init_array.*))) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) __init_array_end = .; __fini_array_start = .; KEEP(*(.fini_array)) diff --git a/boards/renesas/rx65n/rx65n-rsk2mb/scripts/linker_script.ld b/boards/renesas/rx65n/rx65n-rsk2mb/scripts/linker_script.ld index c1b8e8fd741..e5339f09168 100644 --- a/boards/renesas/rx65n/rx65n-rsk2mb/scripts/linker_script.ld +++ b/boards/renesas/rx65n/rx65n-rsk2mb/scripts/linker_script.ld @@ -49,8 +49,8 @@ SECTIONS KEEP(*(.preinit_array)) __preinit_array_end = .; __init_array_start = (. + 3) & ~ 3; - KEEP(*(.init_array)) - KEEP(*(SORT(.init_array.*))) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) __init_array_end = .; __fini_array_start = .; KEEP(*(.fini_array)) diff --git a/boards/renesas/rx65n/rx65n/scripts/linker_script.ld b/boards/renesas/rx65n/rx65n/scripts/linker_script.ld index 6a698eeee71..9d2a86fb0d8 100644 --- a/boards/renesas/rx65n/rx65n/scripts/linker_script.ld +++ b/boards/renesas/rx65n/rx65n/scripts/linker_script.ld @@ -57,8 +57,8 @@ SECTIONS KEEP(*(.preinit_array)) __preinit_array_end = .; __init_array_start = (. + 3) & ~ 3; - KEEP(*(.init_array)) - KEEP(*(SORT(.init_array.*))) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) __init_array_end = .; __fini_array_start = .; KEEP(*(.fini_array)) diff --git a/boards/risc-v/c906/smartl-c906/scripts/ld-qemu.script b/boards/risc-v/c906/smartl-c906/scripts/ld-qemu.script index a833207cda0..5e351953be7 100644 --- a/boards/risc-v/c906/smartl-c906/scripts/ld-qemu.script +++ b/boards/risc-v/c906/smartl-c906/scripts/ld-qemu.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/c906/smartl-c906/scripts/ld.script b/boards/risc-v/c906/smartl-c906/scripts/ld.script index 3c2582c6f15..e08da1680e0 100644 --- a/boards/risc-v/c906/smartl-c906/scripts/ld.script +++ b/boards/risc-v/c906/smartl-c906/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/c906/smartl-c906/scripts/user-space.ld b/boards/risc-v/c906/smartl-c906/scripts/user-space.ld index c94d729c4b7..65494b46308 100644 --- a/boards/risc-v/c906/smartl-c906/scripts/user-space.ld +++ b/boards/risc-v/c906/smartl-c906/scripts/user-space.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/risc-v/fe310/hifive1-revb/scripts/ld-qemu.script b/boards/risc-v/fe310/hifive1-revb/scripts/ld-qemu.script index 6a3bf1bd266..287fc0ebfc9 100644 --- a/boards/risc-v/fe310/hifive1-revb/scripts/ld-qemu.script +++ b/boards/risc-v/fe310/hifive1-revb/scripts/ld-qemu.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/risc-v/fe310/hifive1-revb/scripts/ld.script b/boards/risc-v/fe310/hifive1-revb/scripts/ld.script index 8f596f7f7c5..4b49cfa45d4 100644 --- a/boards/risc-v/fe310/hifive1-revb/scripts/ld.script +++ b/boards/risc-v/fe310/hifive1-revb/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/risc-v/hpm6750/hpm6750evk2/scripts/ld.script b/boards/risc-v/hpm6750/hpm6750evk2/scripts/ld.script index 250ebe680cc..dd225da6773 100644 --- a/boards/risc-v/hpm6750/hpm6750evk2/scripts/ld.script +++ b/boards/risc-v/hpm6750/hpm6750evk2/scripts/ld.script @@ -47,7 +47,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > ilm diff --git a/boards/risc-v/k210/maix-bit/scripts/ld.script b/boards/risc-v/k210/maix-bit/scripts/ld.script index 38bac560026..44370ae567c 100644 --- a/boards/risc-v/k210/maix-bit/scripts/ld.script +++ b/boards/risc-v/k210/maix-bit/scripts/ld.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(8) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) . = ALIGN(8); _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/k210/maix-bit/scripts/user-space.ld b/boards/risc-v/k210/maix-bit/scripts/user-space.ld index 72f14856aa5..d51266a3a6e 100644 --- a/boards/risc-v/k210/maix-bit/scripts/user-space.ld +++ b/boards/risc-v/k210/maix-bit/scripts/user-space.ld @@ -47,7 +47,8 @@ SECTIONS .init_section : ALIGN(8) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) . = ALIGN(8); _einit = ABSOLUTE(.); } > uflash diff --git a/boards/risc-v/litex/arty_a7/scripts/ld-kernel.script b/boards/risc-v/litex/arty_a7/scripts/ld-kernel.script index fae0d03fba8..bfd7aebac00 100644 --- a/boards/risc-v/litex/arty_a7/scripts/ld-kernel.script +++ b/boards/risc-v/litex/arty_a7/scripts/ld-kernel.script @@ -70,7 +70,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/risc-v/litex/arty_a7/scripts/ld.script b/boards/risc-v/litex/arty_a7/scripts/ld.script index 3ba230a788b..a702629f07f 100644 --- a/boards/risc-v/litex/arty_a7/scripts/ld.script +++ b/boards/risc-v/litex/arty_a7/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/mpfs/icicle/scripts/kernel-space.ld b/boards/risc-v/mpfs/icicle/scripts/kernel-space.ld index 20ecbffab50..071d7fd8e90 100644 --- a/boards/risc-v/mpfs/icicle/scripts/kernel-space.ld +++ b/boards/risc-v/mpfs/icicle/scripts/kernel-space.ld @@ -61,7 +61,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/risc-v/mpfs/icicle/scripts/ld-envm-opensbi.script b/boards/risc-v/mpfs/icicle/scripts/ld-envm-opensbi.script index bc23abdb619..62e52a3dbff 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld-envm-opensbi.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld-envm-opensbi.script @@ -71,7 +71,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > envm diff --git a/boards/risc-v/mpfs/icicle/scripts/ld-envm.script b/boards/risc-v/mpfs/icicle/scripts/ld-envm.script index ceaf236ef46..f371cf58e80 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld-envm.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld-envm.script @@ -53,7 +53,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > envm diff --git a/boards/risc-v/mpfs/icicle/scripts/ld-ihc-ch2.script b/boards/risc-v/mpfs/icicle/scripts/ld-ihc-ch2.script index e7305abd58e..e5e9361a758 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld-ihc-ch2.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld-ihc-ch2.script @@ -77,7 +77,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/mpfs/icicle/scripts/ld-ihc.script b/boards/risc-v/mpfs/icicle/scripts/ld-ihc.script index 8e004b6c703..5f093114835 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld-ihc.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld-ihc.script @@ -77,7 +77,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/mpfs/icicle/scripts/ld-kernel.script b/boards/risc-v/mpfs/icicle/scripts/ld-kernel.script index cea4ae18576..f5586f08f3a 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld-kernel.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld-kernel.script @@ -67,7 +67,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > kflash diff --git a/boards/risc-v/mpfs/icicle/scripts/ld.script b/boards/risc-v/mpfs/icicle/scripts/ld.script index 90039790749..85dc8503f8d 100644 --- a/boards/risc-v/mpfs/icicle/scripts/ld.script +++ b/boards/risc-v/mpfs/icicle/scripts/ld.script @@ -52,7 +52,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/mpfs/icicle/scripts/user-space.ld b/boards/risc-v/mpfs/icicle/scripts/user-space.ld index 1b3aa8bfe28..1590c24b24f 100644 --- a/boards/risc-v/mpfs/icicle/scripts/user-space.ld +++ b/boards/risc-v/mpfs/icicle/scripts/user-space.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/risc-v/mpfs/m100pfsevp/scripts/ld-envm.script b/boards/risc-v/mpfs/m100pfsevp/scripts/ld-envm.script index 4b256f09f12..39392ee21f8 100644 --- a/boards/risc-v/mpfs/m100pfsevp/scripts/ld-envm.script +++ b/boards/risc-v/mpfs/m100pfsevp/scripts/ld-envm.script @@ -49,7 +49,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > envm diff --git a/boards/risc-v/mpfs/m100pfsevp/scripts/ld.script b/boards/risc-v/mpfs/m100pfsevp/scripts/ld.script index 09650571a73..cc153d847a5 100644 --- a/boards/risc-v/mpfs/m100pfsevp/scripts/ld.script +++ b/boards/risc-v/mpfs/m100pfsevp/scripts/ld.script @@ -48,7 +48,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > progmem diff --git a/boards/risc-v/mpfs/m100pfsevp/scripts/user-space.ld b/boards/risc-v/mpfs/m100pfsevp/scripts/user-space.ld index 4be0f7853dd..52f55e9216d 100644 --- a/boards/risc-v/mpfs/m100pfsevp/scripts/user-space.ld +++ b/boards/risc-v/mpfs/m100pfsevp/scripts/user-space.ld @@ -57,7 +57,8 @@ SECTIONS .init_section : { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > uflash diff --git a/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld-itcm.script b/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld-itcm.script index 34b6bf0fff5..563ec026dfd 100644 --- a/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld-itcm.script +++ b/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld-itcm.script @@ -55,7 +55,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash diff --git a/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld.script b/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld.script index 8298410d28e..71d58f6aa73 100644 --- a/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld.script +++ b/boards/risc-v/rv32m1/rv32m1-vega/scripts/ld.script @@ -54,7 +54,8 @@ SECTIONS .init_section : ALIGN(4) { _sinit = ABSOLUTE(.); - KEEP(*(.init_array .init_array.*)) + KEEP(*(SORT_BY_INIT_PRIORITY(.init_array.*) SORT_BY_INIT_PRIORITY(.ctors.*))) + KEEP(*(.init_array .ctors)) _einit = ABSOLUTE(.); } > flash