@@ -171,6 +171,8 @@ def parse_nuclei_soc_predefined_cores(core_mk):
171171
172172env .SConscript ("_bare.py" , exports = "env" )
173173
174+ target_map = join ("$BUILD_DIR" , "${PROGNAME}.map" )
175+
174176env .Append (
175177 CCFLAGS = [
176178 "-march=%s" % build_march ,
@@ -188,6 +190,10 @@ def parse_nuclei_soc_predefined_cores(core_mk):
188190 "-march=%s" % build_march ,
189191 "-mabi=%s" % build_mabi ,
190192 "-mcmodel=%s" % build_mcmodel ,
193+ "-Wl,-Map,%s" % target_map ,
194+ "-nostartfiles" ,
195+ "--specs=nano.specs" ,
196+ "--specs=nosys.specs" ,
191197 "-u" , "_isatty" ,
192198 "-u" , "_write" ,
193199 "-u" , "_sbrk" ,
@@ -214,14 +220,18 @@ def parse_nuclei_soc_predefined_cores(core_mk):
214220 ],
215221
216222 LIBPATH = [
217- "$BUILD_DIR" ,
218223 join (FRAMEWORK_DIR , "NMSIS" , "Library" , "DSP" , "GCC" ),
219224 join (FRAMEWORK_DIR , "NMSIS" , "Library" , "NN" , "GCC" )
220225 ],
221226
222227 LIBS = ["gcc" , "m" , "stdc++" ]
223228)
224229
230+ # WORKAROUND: If RT-Thread used, force it to include symbols from finsh
231+ # otherwise it will not be included
232+ if build_rtthread_msh == "1" :
233+ env .Append (LINKFLAGS = ["-u" , "finsh_system_init" ])
234+
225235extra_incdirs = get_extra_soc_board_incdirs (build_soc , build_board )
226236if extra_incdirs :
227237 env .Append (
@@ -235,20 +245,20 @@ def parse_nuclei_soc_predefined_cores(core_mk):
235245#
236246# Target: Build Nuclei SDK Libraries
237247#
238-
248+ soclibname = "soc_" + build_soc
249+ boardlibname = "board_" + build_board
239250libs = [
240251 env .BuildLibrary (
241- join ("$BUILD_DIR" , "SoC" , build_soc , "Common" ),
252+ join ("$BUILD_DIR" , "SoC" , build_soc , soclibname ),
242253 join (FRAMEWORK_DIR , "SoC" , build_soc , "Common" )
243254 ),
244255
245256 env .BuildLibrary (
246- join ("$BUILD_DIR" , "SoC" , build_soc , "Board" , build_board ),
257+ join ("$BUILD_DIR" , "SoC" , build_soc , "Board" , boardlibname ),
247258 join (FRAMEWORK_DIR , "SoC" , build_soc , "Board" , build_board )
248259 )
249260]
250261
251- rtoslibs = []
252262if selected_rtos == "FreeRTOS" :
253263 libs .append (env .BuildLibrary (
254264 join ("$BUILD_DIR" , "RTOS" , "FreeRTOS" ),
0 commit comments