58 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
Import("ENV")
 | 
						|
 | 
						|
 | 
						|
from fbt.appmanifest import FlipperAppType
 | 
						|
 | 
						|
 | 
						|
appenv = ENV.Clone(tools=["fbt_extapps"])
 | 
						|
 | 
						|
appenv.Replace(
 | 
						|
    LINKER_SCRIPT="application-ext",
 | 
						|
    STRIPFLAGS=[
 | 
						|
        "--strip-debug",
 | 
						|
        "--strip-unneeded",
 | 
						|
        "-d",
 | 
						|
        "-g",
 | 
						|
        "-S",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
appenv.AppendUnique(
 | 
						|
    CCFLAGS=[
 | 
						|
        "-Os",
 | 
						|
        "-ggdb3",
 | 
						|
        "-mword-relocations",
 | 
						|
        "-mlong-calls",
 | 
						|
        "-fno-common",
 | 
						|
        "-nostdlib",
 | 
						|
        "-fvisibility=hidden",
 | 
						|
    ],
 | 
						|
    LINKFLAGS=[
 | 
						|
        "-r",
 | 
						|
        "-s",
 | 
						|
        # "-Bsymbolic",
 | 
						|
        "-nostartfiles",
 | 
						|
        "-mlong-calls",
 | 
						|
        "-fno-common",
 | 
						|
        "-nostdlib",
 | 
						|
        "-Wl,--gc-sections",
 | 
						|
        "-Wl,--no-export-dynamic",
 | 
						|
        "-fvisibility=hidden",
 | 
						|
        "-Wl,-e${APP_ENTRY}",
 | 
						|
    ],
 | 
						|
)
 | 
						|
 | 
						|
 | 
						|
extapps = []
 | 
						|
for apptype in (FlipperAppType.PLUGIN, FlipperAppType.EXTERNAL):
 | 
						|
    for app in appenv["APPBUILD"].get_apps_of_type(apptype):
 | 
						|
        extapps.append(appenv.BuildAppElf(app))
 | 
						|
 | 
						|
# Ugly access to global option
 | 
						|
if extra_app_list := GetOption("extra_ext_apps"):
 | 
						|
    for extra_app in extra_app_list.split(","):
 | 
						|
        extapps.append(appenv.BuildAppElf(appenv["APPMGR"].get(extra_app)))
 | 
						|
 | 
						|
Alias(appenv["FIRMWARE_BUILD_CFG"] + "_extapps", extapps)
 | 
						|
Return("extapps")
 |