@@ -74,11 +74,9 @@ if (NOT TARGET pico_standard_link)
7474 target_compile_definitions (pico_standard_linkINTERFACE PICO_DEOPTIMIZED_DEBUG=1)
7575 endif ()
7676
77- # -nostartfiles will be added if not using C++ exceptions (which is the only thing that seems to need it)
78- if (PICO_C_COMPILER_IS_GNUAND NOT PICO_CXX_ENABLE_EXCEPTIONS)
79- # target_link_options(pico_standard_link INTERFACE $<$<IF:$<STREQUAL:$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>,no_flash>,1,$<AND:$<BOOL:${PICO_NO_FLASH}>,$<STREQUAL:,$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>>>>:-nostartfiles>)
80- target_link_options (pico_standard_linkINTERFACE -nostartfiles)
81- endif ()
77+ # this (arguably wrong) code is restored for 1.5.1 as setting -nostartfiles on many C++ binaries causes link errors. see issue #1368
78+ # -nostartfiles will be added if PICO_NO_FLASH would be defined to 1
79+ target_link_options (pico_standard_linkINTERFACE $<$<IF:$<STREQUAL :$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>,no_flash>,1,$<AND :$<BOOL :${PICO_NO_FLASH} >,$<STREQUAL :,$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>>>>:-nostartfiles>)
8280# boot_stage2 will be linked if PICO_NO_FLASH would be defined to 0
8381 target_link_libraries (pico_standard_linkINTERFACE $<$<NOT :$<IF:$<STREQUAL :$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>,no_flash>,1,$<AND :$<BOOL :${PICO_NO_FLASH} >,$<STREQUAL :,$<TARGET_PROPERTY:PICO_TARGET_BINARY_TYPE>>>>>:$<IF:$<BOOL :$<TARGET_PROPERTY:PICO_TARGET_BOOT_STAGE2>>,$<TARGET_PROPERTY:PICO_TARGET_BOOT_STAGE2>,bs2_default>_library>)
8482