[FL-2052] New build system based on scons (#1269)
This commit is contained in:
57
applications/extapps.scons
Normal file
57
applications/extapps.scons
Normal file
@@ -0,0 +1,57 @@
|
||||
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")
|
Reference in New Issue
Block a user